:root{--color-background:#eee;--color-background-tint:#fff;--color-on-background:#1f2d2f;--color-primary:#4a919e;--color-secondary:#acc6cb;--color-on-primary:#fff;--color-on-secondary:#1f2d2f;--color-darker:#0002;--left-menu-width:260px}@media (prefers-color-scheme:dark){:root{--color-background:#1c1b22;--color-background-tint:#323234;--color-on-background:#e3e3e9;--color-primary:#377a87;--color-darker:#0004}}@keyframes loadBar{0%{background-image:repeating-linear-gradient(-45deg,#945eb8,#945eb8 5px,#44225c 5px 10px);background-position:0 0}to{background-image:repeating-linear-gradient(-45deg,#945eb8,#945eb8 5px,#44225c 5px 10px);background-position:15px 0}}@keyframes loadContent{0%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#0000)}6%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#0000)}7%{background-image:linear-gradient(45deg,#fff6,#0000,#0000,#0000,#0000,#0000)}8%{background-image:linear-gradient(45deg,#0000,#fff6,#0000,#0000,#0000,#0000)}9%{background-image:linear-gradient(45deg,#0000,#0000,#fff6,#0000,#0000,#0000)}10%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#fff6,#0000,#0000)}11%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#fff6,#0000)}12%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#fff6)}13%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#0000)}16%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#0000)}17%{background-image:linear-gradient(45deg,#fff6,#0000,#0000,#0000,#0000,#0000)}18%{background-image:linear-gradient(45deg,#0000,#fff6,#0000,#0000,#0000,#0000)}19%{background-image:linear-gradient(45deg,#0000,#0000,#fff6,#0000,#0000,#0000)}20%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#fff6,#0000,#0000)}21%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#fff6,#0000)}22%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#fff6)}23%{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#0000)}to{background-image:linear-gradient(45deg,#0000,#0000,#0000,#0000,#0000,#0000)}}*{margin:0;padding:0}a,[onclick],label,button,.action,.button,input[type=submit],select{cursor:pointer;color:inherit;text-decoration:none}table{border-collapse:collapse;width:100%;font-size:.85em}table thead tr{background-color:var(--color-secondary);color:var(--color-on-secondary)}table th,table td{text-align:left;padding:3px 6px}table td{border-bottom:1px solid #d6d6d6}input,select{color:#000}.middleVerticalAlign{vertical-align:middle;width:100%;display:inline-block}.middleVerticalAligner{content:"";vertical-align:middle;width:0;height:100%;display:inline-block}.inputNoStyle{color:inherit;background:0 0;border:0;margin:auto}.align-right{text-align:right;display:block}.button{border:1px solid var(--color-primary);color:var(--color-on-primary);background:var(--color-primary);border-radius:3px;padding:6px 8px;font-family:inherit;font-size:1.1em;text-decoration:none;transition:background .2s,text-shadow .2s}.button.button-small{margin-bottom:2px;padding:2px 4px;font-size:.9em}.button.button-small-height{padding-top:2px;padding-bottom:2px}.button[disabled],.button[disabled]:hover{color:var(--color-on-primary);background:#8c8c8c;border-color:#353535}.button:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-on-secondary);transition-delay:.1s}[disabled]{cursor:not-allowed!important}.tag{color:#fff;text-align:center;text-shadow:0 0 6px #000;background:#bbb;border-radius:3px;margin-top:2px;margin-bottom:1px;padding:1px 4px;font-size:.85em;display:inline-block}.tag.ok{background:#41ac56}.tag.not-ok{background:#ff4c4b}.tag.maybe{background:#ff8a0c}.infoblock{color:#002968;background-color:#809dca;border:1px solid #598ad6;border-radius:5px;padding:5px}.infoblock.error{color:#442321;background-color:#d65f59;border:1px solid #442321}.infoblock.valid{color:#33482f;background-color:#79ca69;border:1px solid #33482f}.loading-content *{background:#8884;border-radius:3px;width:80%;height:1em;margin:10px;animation:2.5s linear infinite loadContent;display:block}.appblock header .loading-content.no-margin *{margin:0}.loading-content :nth-child(4n+2){width:50%}.loading-content :nth-child(4n+3){width:53%}.loading-content :nth-child(4n+4){width:43%}.loading-content :nth-child(4n+5){margin-top:30px}.grid{padding:0;transition:padding .4s}.grid>.row1,.grid>.row1-2,.grid>.row1-3,.grid>.row2-3{vertical-align:top;width:100%;display:inline-block}.grid>*>.appblock+.appblock{margin-top:15px}.appblock{background:#fff;border-radius:3px;margin:7.5px;display:block;box-shadow:0 0 5px #e1e1e1}.appblock>*{padding:10px;overflow-x:auto}.appblock header{background:var(--color-secondary);color:var(--color-on-secondary);border-top-left-radius:3px;border-top-right-radius:3px;font-weight:700}.appblock .full-content{padding:0}.appblock .full-content .options{background-color:var(--color-secondary);color:var(--color-on-secondary);padding:0 15px 5px}.appblock .full-content .appblock-sub{padding:10px}.appblock .app-parent>:nth-child(2n){background-color:#f4f4f4}.appblock .app-parent>:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.appblock .app-parent>:hover{background-color:#ffde4c75}.app-accordion{color:#444;text-align:left;background-color:#eee;border:0;border-radius:5px;width:100%;margin-top:10px;padding:8px;font-size:15px;transition:border-radius .2s .4s,background .5s}.app-accordion.active{border-bottom-right-radius:0;border-bottom-left-radius:0;transition:border-radius .2s,background .5s}.app-accordion:hover{background-color:#ccc}.app-panel{border:0 solid #eee;border-bottom-right-radius:5px;border-bottom-left-radius:5px;max-height:0;padding:0 8px;transition:padding .4s,max-height .4s,border-width .1s .3s,border-color .5s;overflow:hidden}.app-accordion.active+.app-panel{border-width:1px;max-height:none;padding:8px;transition:padding .4s .2s,max-height .4s .2s,border-width .1s .2s,border-color .5s}.app-accordion:hover+.app-panel{border-color:#ccc}html,body{background-color:var(--color-background);width:100%;min-width:320px;height:100%;margin:0;padding:0;font-family:Roboto,Open Sans,sans-serif;font-size:1em;position:relative}body .page>header{height:48px;color:var(--color-on-primary);background:var(--color-primary);-o-box-shadow:1px 1px 2px #0000004d;box-sizing:border-box;padding:0 10px;line-height:48px;box-shadow:1px 1px 2px #0000004d}body>.page header a{color:inherit;text-decoration:none}body>.page header .logo{letter-spacing:-.03em;font-size:1.5em;font-weight:700}body>.page header .logo.active{text-shadow:0 0 2px #e1e1e1}body>.page header .search{text-align:center;background:var(--color-primary);color:var(--color-on-primary);border-bottom:1px solid #357a85}body>.page header .search>*{box-sizing:content-box;border:0;border-radius:0;height:18px;padding:6px}body>.page header .search input[type=search]{border-radius:3px;width:85%}body>.page header .search select{appearance:none;background-image:url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIj48cGF0aCBmaWxsPSIjMUUxRTFFIiBkPSJNMCwyNSAxMDAsMjUgNTAsNzV6Ii8+PC9zdmc+);background-position:right .7em top 50%;background-repeat:no-repeat;background-size:.65em;border-top-left-radius:3px;border-bottom-left-radius:3px;padding-right:1.5em}body>.page header .search input[type=submit]{background:var(--color-secondary);color:var(--color-on-secondary);border-top-right-radius:3px;border-bottom-right-radius:3px}body>.page header .menuItem{vertical-align:middle;padding:0 5px}body>.page header .menuItem i{margin-right:.5em}body>.page header .menuItem:hover{background-color:var(--color-darker)}body>.page header .menu-right .menuItem.active{color:#fff}body>.page header .menu-switch{vertical-align:middle;margin-right:5px;font-size:2.3em}body>.page.no-menu header .menu-switch{display:none}body>.page header .menu-switch:before,body>.page header .menu-switch:before{font-size:1.5em;line-height:48px;position:relative;left:-6px}body>.page header .menu-right{float:right}#mobile-menu{z-index:100;background-color:var(--color-background-tint);-o-box-shadow:1px 1px 2px #0000004d;-webkit-overflow-scrolling:touch;width:0;max-width:450px;transition:width .1s;position:fixed;top:48px;bottom:0;left:0;overflow:hidden auto;box-shadow:1px 1px 2px #0000004d}#mobile-menu:target{width:70%;transition:width .5s}.page.no-menu #mobile-menu:target{width:0}#menu-cover{z-index:99;transition:background-color .5s;display:none;position:fixed;inset:0}#mobile-menu:target+#menu-cover{background-color:#00000080;display:block}.page.no-menu #mobile-menu:target+#menu-cover{display:none}#menu-cover a{display:block;position:absolute;inset:0}#menu{color:var(--color-on-background);background-color:var(--color-background-tint);padding:8px}#menu .menuCategoryTitle{letter-spacing:.08em;text-transform:uppercase;color:var(--color-primary);padding:14px 10px 6px;font-size:.75em;font-weight:700}#menu .menuItem{min-width:250px;color:inherit;box-sizing:border-box;border-radius:12px;margin-bottom:4px;padding:12px 14px;line-height:1.25;display:block}#menu .menuItem.active{color:var(--color-on-secondary);background-color:var(--color-secondary);font-weight:700}#menu .menuItem:hover{background:color-mix(in srgb, var(--color-secondary) 60%, transparent)}#menu .menuItem.forbidden,.no-small,.no-medium{display:none}#appContent{z-index:0;-webkit-overflow-scrolling:touch;color:var(--color-on-background);padding:15px 10px;transition:left .5s;position:absolute;inset:48px 0 0;overflow:hidden auto}#appContent:before{content:" ";background-color:var(--color-secondary);width:0;height:3px;position:absolute;top:0;left:0}#appContent[class^=load]:before{transition:width .5s}#appContent.load10:before{width:10%}#appContent.load20:before{width:20%}#appContent.load30:before{width:30%}#appContent.load40:before{width:40%}#appContent.load50:before{width:50%}#appContent.load60:before{width:60%}#appContent.load70:before{width:70%}#appContent.load80:before{width:80%}#appContent.load90:before{width:90%}#appContent[data-load]:before{width:attr(data-load);width:attr(data-load "%")}#appContent.load100:before{width:100%;transition:width .2s}#appContent.load0:before{transition:width}#appContent:after{content:"";transition:left .5s,right .5s;position:absolute;bottom:0;left:-100%;right:100%}#appContent[class^=load].slow:before{height:5px;animation-name:loadBar;animation-duration:.5s;animation-timing-function:linear;animation-iteration-count:infinite}#appContent[class^=load].slow:after{content:"La requête Internet est anormalement longue. Vérifiez votre connexion...";color:#fff;background-color:#000;padding:10px;animation-name:loadBar;animation-duration:.5s;animation-timing-function:linear;animation-iteration-count:infinite;left:0;right:0}#appContent .margin{padding:15px 10px}#appContent .fullheight{box-sizing:border-box;height:100%;min-height:100%}#appContent .center{text-align:center}#appContent .block-center{margin-left:auto;margin-right:auto}#appContent .hidden-switch{opacity:1;transition:opacity .5s}#appContent .hidden{opacity:0;display:none}#appFooter{color:#fff;background:#b2b2b2;border-top-left-radius:5px;padding:2px 4px 0;font-size:.7em;position:absolute;bottom:0;right:0}@media (min-width:768px){.no-small{display:inherit}.grid{padding:12.5px}.grid.notfull{max-width:1280px;margin:auto}.grid>.row1{width:100%}.grid>.row1-2{width:50%}.grid>.row1-3{width:33.33%}.grid>.row2-3{width:66.66%}.menu-switch,.menu-switch:before,.menu-switch:before{display:none}body>.page header .search{background:0 0;border-bottom:0;transition:top .25s;position:relative;top:0}body>.page.no-menu header .search{top:-50px}body>.page header .search input[type=search]{border:0;border-top-right-radius:0;border-bottom-right-radius:0;width:auto}body>.page header .search select{border:0;border-left:1px solid #e1e1e1;border-top-left-radius:0;border-bottom-left-radius:0}body>.page header .search input[type=submit]{border:0}#mobile-menu{vertical-align:top;width:auto;max-width:none;-webkit-box-shadow:none;-moz-box-shadow:none;-o-box-shadow:none;box-shadow:none;background:0 0;display:inline-block;position:static;top:0;left:0}#mobile-menu:target,.page.no-menu #mobile-menu:target{width:auto}#menu{z-index:100;-o-box-shadow:1px 1px 2px #0000004d;-webkit-overflow-scrolling:touch;width:0;transition:width .5s;position:fixed;top:48px;bottom:0;left:0;overflow:hidden auto;box-shadow:1px 1px 2px #0000004d}#menu,#menu:target{width:var(--left-menu-width)}#menu .menuItem{text-align:center;width:auto;min-width:auto;padding:10px 0;line-height:1.5em}#menu .menuItem i{margin-right:0;font-size:1.5em;display:block}#menu .menuCategoryTitle{text-align:center;padding:18px 8px 8px;font-size:.68em}.page.no-menu #menu,.page.no-menu #menu:target,.page.no-menu #menu:focus{width:0}#mobile-menu:target+#menu-cover{display:none}#appContent{left:var(--left-menu-width)}.page.no-menu #appContent{left:0}#appContent .margin{padding:15px 25px}}@media (min-width:1080px){.not-medium{display:inherit}}@media (max-height:380px){#appContent{position:relative;top:0}}@media (prefers-color-scheme:dark){.appblock{color:#e3e3e9;background:#23222b;box-shadow:0 0 #000}.appblock .app-parent>:nth-child(2n){background-color:#484848}}
#appContent{padding:20px}#appContent h2{letter-spacing:-.03em;margin-bottom:6px;font-size:clamp(2rem,3vw,2.5rem);line-height:1.05}#appContent p{margin-bottom:0;line-height:1.55}#appContent a{text-underline-offset:.18em;font-style:normal;text-decoration:underline}#appContent .note{color:var(--color-on-secondary);background:linear-gradient(180deg, color-mix(in srgb, var(--color-secondary) 72%, white 28%), var(--color-secondary));border:1px solid #4a919e33;border-radius:14px;padding:14px 16px;display:block}#appContent .note.note-privacy{color:#1f5e2b;background:#dff4df;border:1px solid #78c28a;align-items:center;gap:10px;font-weight:700;display:flex}#appContent .note.note-privacy:before{content:"✓";color:#fff;background:#2e9b47;border-radius:999px;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.95em;display:inline-flex}#appContent .interface{text-align:left;flex-direction:column;gap:18px;margin-top:8px;display:flex}#appContent .interface>.hidden,#appContent .tool-mode-panel.hidden,#appContent [hidden]{display:none!important}#appContent .interface .controls{margin-top:0;margin-bottom:0}#appContent .qr-options{flex-wrap:wrap;justify-content:flex-start;align-items:end;gap:12px;display:flex}#appContent .qr-options label{text-align:left;flex-direction:column;gap:6px;display:flex}#appContent .qr-options input[type=text]{min-width:260px;padding:6px 8px}#appContent .qr-mode-switch{flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-bottom:10px;display:flex}#appContent .qr-mode-button{min-width:150px}#appContent .qr-mode-button.active{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-on-secondary)}#appContent .tool-mode-switch{flex-wrap:wrap;justify-content:flex-start;gap:10px;margin-bottom:10px;display:flex}#appContent .tool-mode-button{min-width:132px}#appContent .tool-mode-button.active,#appContent .qr-mode-button.active{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-on-secondary);box-shadow:inset 0 0 0 1px #ffffff59}#appContent #qr-result{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}#appContent .qr-item{flex-direction:column;align-items:center;display:inline-flex}#appContent .qr-item canvas,#appContent .qr-item img{max-width:100%}#appContent .tool-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;gap:18px;display:grid}#appContent .tool-mode-panel{flex-direction:column;gap:18px;display:flex}#appContent .tool-card{background:var(--color-background-tint);text-align:left;box-shadow:0 16px 34px var(--color-darker);border:1px solid #4a919e38;border-radius:18px;padding:20px}#appContent .tool-grid>.file-gate-loader-card{grid-column:1/-1}#appContent .tool-card h3{margin-bottom:4px;font-size:1.08rem}#appContent .tool-card>p{color:color-mix(in srgb, var(--color-on-background) 74%, transparent)}#appContent .form-help{color:color-mix(in srgb, var(--color-on-background) 72%, transparent);font-size:.95em}#appContent .tool-form{flex-direction:column;gap:14px;display:flex}#appContent .tool-form label{flex-direction:column;gap:6px;font-weight:600;display:flex}#appContent .tool-form label:has(>input[type=checkbox]){grid-template-columns:auto 1fr;align-items:center;gap:10px;font-weight:500;display:grid}#appContent .tool-form label:has(>input[type=checkbox])>input[type=checkbox]{margin:0}#appContent .tool-form input[type=text],#appContent .tool-form input[type=password],#appContent .tool-form input[type=number],#appContent .tool-form input[type=file],#appContent .tool-form textarea,#appContent .tool-form select,#appContent textarea[readonly],#appContent textarea,#appContent select{box-sizing:border-box;background:color-mix(in srgb, var(--color-background-tint) 82%, var(--color-background) 18%);width:100%;min-width:0;color:var(--color-on-background);border:1px solid #4a919e4d;border-radius:12px;padding:10px 12px;transition:border-color .2s,box-shadow .2s,background .2s}#appContent .tool-form input[type=file]{box-shadow:none;background:0 0;border:0;padding:0}#appContent .tool-form input[type=file]::file-selector-button{display:none}#appContent .tool-form input[type=checkbox]{margin-right:6px}#appContent .tool-form input[type=range]{width:100%}#appContent input[type=text]:focus,#appContent input[type=password]:focus,#appContent input[type=number]:focus,#appContent input[type=file]:focus,#appContent textarea:focus,#appContent select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-primary) 18%, transparent);outline:none}#appContent .tool-form label:has(>input[type=file]){gap:10px}#appContent .file-picker-native{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#appContent .file-picker-shell{box-sizing:border-box;flex-direction:column;gap:12px;width:100%;min-width:0;max-width:100%;display:flex}#appContent .file-picker-dropzone{box-sizing:border-box;background:color-mix(in srgb, var(--color-background-tint) 84%, var(--color-background) 16%);width:100%;min-width:0;max-width:100%;color:var(--color-on-background);text-align:left;cursor:pointer;border:2px dashed #4a919e59;border-radius:18px;flex-direction:column;justify-content:center;align-items:flex-start;gap:6px;padding:18px 20px;transition:border-color .2s,background .2s,transform .15s;display:flex}#appContent .file-picker-shell:not(.has-files) .file-picker-preview-list{display:none}#appContent .file-picker-shell:not(.has-files) .file-picker-dropzone{min-height:104px}#appContent .file-picker-shell.has-files:not(.file-picker-multiple) .file-picker-dropzone{display:none}#appContent #pdf-merge-loader .file-picker-shell.has-files .file-picker-dropzone,#appContent #pdf-split-loader .file-picker-shell.has-files .file-picker-dropzone,#appContent #pdf-reorder-loader .file-picker-shell.has-files .file-picker-dropzone{display:flex}#appContent .file-picker-dropzone:hover,#appContent .file-picker-dropzone.is-dragover{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-background-tint) 90%);transform:translateY(-1px)}#appContent .file-picker-dropzone-title{font-size:1rem;font-weight:700}#appContent .file-picker-dropzone-subtitle{color:color-mix(in srgb, var(--color-on-background) 66%, transparent);word-break:break-word;font-size:.9rem}#appContent .csv-source-switch{background:color-mix(in srgb, var(--color-background-tint) 80%, white 20%);border:1px solid #4a919e29;border-radius:18px;flex-direction:column;gap:12px;margin-bottom:14px;padding:14px;display:flex}#appContent .csv-source-head{flex-direction:column;gap:10px;display:flex}#appContent .csv-source-tabs{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}#appContent .csv-source-help{color:color-mix(in srgb, var(--color-on-background) 72%, transparent);margin:0;font-size:.94rem;line-height:1.45}#appContent .csv-source-tabs .button.active{background:var(--color-primary);color:var(--color-on-primary);border-color:#0000}#appContent .csv-source-text,#appContent .csv-source-text-list{flex-direction:column;gap:12px;display:flex}#appContent .csv-source-text-item{background:#ffffffa8;border:1px dashed #4a919e47;border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}#appContent .csv-source-text-item-head{justify-content:space-between;align-items:center;gap:12px;display:flex}#appContent .csv-source-text-item-head strong{font-size:.95rem}#appContent .csv-source-text textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:180px}#appContent .csv-source-text-actions{justify-content:flex-start;display:flex}#appContent .file-picker-preview-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}#appContent .file-picker-preview{background:var(--color-background);border:1px solid #4a919e2e;border-radius:16px;align-items:center;gap:12px;min-height:78px;padding:12px 52px 12px 12px;display:flex;position:relative;box-shadow:0 10px 24px #4a919e14}#appContent .file-picker-shell.has-files:not(.file-picker-multiple) .file-picker-preview{border-left-width:5px;border-left-color:color-mix(in srgb, var(--color-primary) 55%, white 45%)}#appContent .file-picker-preview-loading{flex-direction:column;align-items:stretch;gap:12px;padding-right:12px}#appContent .file-picker-loader-thumb,#appContent .file-picker-loader-line{background:linear-gradient(90deg,#4a919e14 0%,#4a919e33 50%,#4a919e14 100%) 0 0/220% 100%;animation:1.2s ease-in-out infinite galleryLoaderPulse;display:block}#appContent .file-picker-loader-thumb{border-radius:12px;width:54px;height:54px}#appContent .file-picker-loader-line{border-radius:999px;width:100%;height:14px}#appContent .file-picker-loader-line.short{width:62%}#appContent .file-picker-actions{align-items:center;gap:8px;margin-left:auto;padding-left:8px;display:flex}#appContent .file-picker-thumb,#appContent .file-picker-icon{border-radius:12px;flex:0 0 54px;width:54px;height:54px}#appContent .file-picker-thumb{object-fit:cover;background:color-mix(in srgb, var(--color-background-tint) 70%, var(--color-background) 30%)}#appContent .file-picker-icon{background:color-mix(in srgb, var(--color-primary) 18%, var(--color-background) 82%);color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.76rem;font-weight:800;display:inline-flex}#appContent .file-picker-meta{flex-direction:column;gap:4px;min-width:0;display:flex}#appContent .file-picker-meta strong,#appContent .file-picker-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#appContent .file-picker-meta span{color:color-mix(in srgb, var(--color-on-background) 68%, transparent);font-size:.9rem}#appContent .file-picker-remove{border-radius:999px;width:34px;min-width:34px;height:34px;padding:0;position:absolute;top:10px;right:10px}#appContent .pdf-page-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;display:grid}#appContent .pdf-page-grid>.pdf-page-section{grid-column:1/-1}#appContent .pdf-page-section>.pdf-page-grid{flex-wrap:wrap;align-items:stretch;width:100%;display:flex}#appContent .pdf-page-section{flex-direction:column;gap:12px;display:flex}#appContent .pdf-page-selection-top{color:color-mix(in srgb, var(--color-on-background) 74%, transparent);justify-content:space-between;align-items:center;gap:12px;display:flex}#appContent .pdf-page-section+.pdf-page-section{margin-top:22px}#appContent .pdf-page-section-deleted h4{margin:0;font-size:1rem}#appContent .pdf-page-grid-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}#appContent .pdf-page-grid-header h3{margin:0}#appContent .pdf-page-grid-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}#appContent .pdf-export-group{align-items:center;gap:6px;display:inline-flex;position:relative}#appContent .pdf-save-button{color:#fff;background:#2f8a49;border-color:#2f8a49}#appContent .pdf-save-button:hover,#appContent .pdf-save-button:focus-visible{color:#fff;background:#246d3a;border-color:#246d3a}#appContent .pdf-export-more{width:38px;min-width:38px;padding-left:0;padding-right:0}#appContent .pdf-reopen-menu{z-index:5;background:var(--color-background);border:1px solid #4a919e38;border-radius:14px;flex-direction:column;gap:8px;min-width:180px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 36px #4a919e2e}#appContent .pdf-reopen-menu strong{font-size:.92rem}#appContent .pdf-range-picker{align-items:center;gap:8px;display:flex}#appContent .pdf-range-picker input{width:160px;min-width:160px}#appContent .pdf-page-dropzone{border-radius:999px;flex:0 0 8px;justify-content:center;align-self:stretch;align-items:center;width:8px;min-height:260px;display:flex}#appContent .pdf-page-dropzone span{background:0 0;border-radius:999px;width:2px;height:100%;transition:background .15s,box-shadow .15s}#appContent .pdf-page-dropzone.active span{background:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-primary) 20%, transparent)}#appContent .pdf-page-tile{border:1px solid var(--pdf-page-accent,#4a919e33);background:linear-gradient(180deg, var(--pdf-page-accent-soft,var(--color-background)) 0, var(--color-background) 56px);border-radius:16px;flex-direction:column;flex:0 0 150px;gap:10px;width:150px;padding:12px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #4a919e14}#appContent .pdf-page-grid .file-list-empty{width:100%}#appContent .pdf-page-tile.is-selected{box-shadow:0 0 0 3px color-mix(in srgb, var(--pdf-page-accent,var(--color-primary)) 28%, transparent), 0 10px 24px #4a919e14}#appContent .pdf-page-tile.is-deleted{opacity:.68;background:linear-gradient(180deg, color-mix(in srgb, var(--pdf-page-accent-soft,var(--color-background)) 72%, #c7ced1 28%) 0, color-mix(in srgb, var(--color-background) 88%, #c7ced1 12%) 56px)}#appContent .pdf-page-accent{background:var(--pdf-page-accent,var(--color-primary));height:8px;position:absolute;inset:0 0 auto}#appContent .pdf-page-check{z-index:2;opacity:0;justify-content:center;align-items:center;width:28px;height:28px;transition:opacity .15s;display:inline-flex;position:absolute;top:16px;left:16px}#appContent .pdf-page-tile:hover .pdf-page-check,#appContent .pdf-page-tile:focus-within .pdf-page-check,#appContent .pdf-page-tile.show-checks .pdf-page-check{opacity:1}#appContent .pdf-page-check input{opacity:0;position:absolute;inset:0}#appContent .pdf-page-check span{background:#ffffffeb;border:1px solid #4a919e59;border-radius:8px;width:22px;height:22px;box-shadow:0 4px 10px #00000014}#appContent .pdf-page-check input:checked+span{background:var(--pdf-page-accent,var(--color-primary));border-color:var(--pdf-page-accent,var(--color-primary));box-shadow:inset 0 0 0 5px #ffffffeb}#appContent .pdf-page-tile:hover .pdf-page-remove,#appContent .pdf-page-tile:focus-within .pdf-page-remove{opacity:1;pointer-events:auto}#appContent .pdf-page-tile.dragging{opacity:.55}#appContent .pdf-page-thumb-frame{background:color-mix(in srgb, var(--color-background-tint) 80%, var(--color-secondary) 20%);border-radius:12px;justify-content:center;align-items:center;min-height:180px;padding:8px;display:flex}#appContent .pdf-page-thumb{border-radius:6px;max-width:100%;max-height:180px;box-shadow:0 6px 18px #0000001f}#appContent .pdf-page-meta{flex-direction:column;gap:4px;min-width:0;display:flex}#appContent .pdf-page-meta span{color:color-mix(in srgb, var(--color-on-background) 68%, transparent);text-overflow:ellipsis;white-space:nowrap;background:var(--pdf-page-accent-badge,#4a919e1f);border-radius:999px;align-self:flex-start;max-width:100%;padding:2px 8px;font-size:.9rem;display:inline-flex;overflow:hidden}#appContent .pdf-page-remove{opacity:0;pointer-events:none;align-self:flex-end;transition:opacity .15s}#appContent .pdf-page-order{flex-direction:column;gap:6px;font-size:.9rem;font-weight:600;display:flex}#appContent .pdf-page-order input{box-sizing:border-box;background:color-mix(in srgb, var(--color-background-tint) 82%, var(--color-background) 18%);width:100%;color:var(--color-on-background);border:1px solid #4a919e47;border-radius:10px;padding:8px 10px}#appContent .pdf-selection-bar,#appContent .pdf-selection-bar.is-visible{display:none}#appContent #generated-password,#appContent #bcrypt-output,#appContent #uuid-output{box-sizing:border-box;width:100%;min-width:0;font-family:monospace}#appContent #uuid-status code{word-break:break-all}#appContent .file-list,#appContent .measure-list{flex-direction:column;gap:8px;display:flex}#appContent .file-list-item,#appContent .gallery-card{background:var(--color-background);border:1px solid #4a919e2e;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}#appContent .file-rename-row{align-items:flex-start}#appContent .file-rename-meta{flex-direction:column;gap:4px;min-width:0;display:flex}#appContent .file-rename-meta strong,#appContent .file-rename-meta span{overflow-wrap:anywhere}#appContent .file-rename-meta span{color:color-mix(in srgb, var(--color-on-background) 68%, transparent)}#appContent .file-list-empty{text-align:center;color:color-mix(in srgb, var(--color-on-background) 70%, transparent);border:1px dashed #4a919e42;border-radius:12px;padding:16px}#appContent .button-row{flex-wrap:wrap;gap:10px;display:flex}#appContent .security-summary{flex-direction:column;gap:10px;display:flex}#appContent .security-permission-list{flex-wrap:wrap;gap:8px;display:flex}#appContent .security-permission-chip{background:color-mix(in srgb, var(--color-primary-soft) 56%, white 44%);min-height:32px;color:var(--color-on-background);border:1px solid #4a919e33;border-radius:999px;align-items:center;padding:0 12px;font-size:.92em;font-weight:600;display:inline-flex}#appContent .gallery-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px;display:grid}#appContent .gallery-grid.is-loading{align-items:stretch}#appContent .gallery-loader-card{background:var(--color-background);border:1px solid #4a919e2e;border-radius:12px;flex-direction:column;gap:12px;padding:12px;display:flex;box-shadow:0 10px 24px #4a919e0f}#appContent .gallery-loader-thumb,#appContent .gallery-loader-line{background:linear-gradient(90deg,#4a919e14 0%,#4a919e33 50%,#4a919e14 100%) 0 0/220% 100%;animation:1.2s ease-in-out infinite galleryLoaderPulse;display:block}#appContent .gallery-loader-thumb{aspect-ratio:1;border-radius:10px;width:100%}#appContent .gallery-loader-line{border-radius:999px;height:14px}#appContent .gallery-loader-line.short{width:68%}@keyframes galleryLoaderPulse{0%{background-position:100% 0}to{background-position:-100% 0}}#appContent .gallery-card{flex-direction:column;align-items:stretch;gap:12px;position:relative}#appContent .gallery-selectable{cursor:pointer;transition:box-shadow .15s,transform .15s}#appContent .gallery-selectable:hover{transform:translateY(-1px)}#appContent .gallery-selectable.is-selected{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 24%, transparent), 0 10px 24px #4a919e14}#appContent .gallery-check{z-index:2;opacity:0;justify-content:center;align-items:center;width:28px;height:28px;transition:opacity .15s;display:inline-flex;position:absolute;top:14px;left:14px}#appContent .gallery-selectable:hover .gallery-check,#appContent .gallery-selectable:focus-within .gallery-check,#appContent .gallery-selectable.show-checks .gallery-check{opacity:1}#appContent .gallery-check input{opacity:0;position:absolute;inset:0}#appContent .gallery-check span{background:#ffffffeb;border:1px solid #4a919e59;border-radius:8px;width:22px;height:22px;box-shadow:0 4px 10px #00000014}#appContent .gallery-check input:checked+span{background:var(--color-primary);border-color:var(--color-primary);box-shadow:inset 0 0 0 5px #ffffffeb}#appContent .gallery-card img{background:#fff;border-radius:6px;width:100%;height:auto}#appContent .gallery-meta{flex-direction:column;gap:4px;font-size:.9em;display:flex}#appContent .gallery-meta span{color:color-mix(in srgb, var(--color-on-background) 72%, transparent)}#appContent .pdf-page-range-field{min-width:150px}#appContent .gallery-card-actions{flex-direction:column;gap:8px;display:flex}#appContent .gallery-file-hint{color:color-mix(in srgb, var(--color-on-background) 64%, transparent);overflow-wrap:anywhere;font-size:.82rem}#appContent .qr-transfer-code{justify-content:center;align-items:center;min-height:292px;display:flex}#appContent .qr-transfer-code canvas,#appContent .qr-transfer-code img{background:#fff;border-radius:18px;max-width:100%;padding:12px;box-shadow:0 16px 28px #1020221f}#appContent .qr-transfer-reader{background:#fff;border-radius:16px;width:100%;max-width:420px;margin:0 auto;overflow:hidden}#appContent .qr-transfer-reader video{max-width:100%}#appContent .qr-reader-frame{background:color-mix(in srgb, var(--color-background-tint) 86%, var(--color-background) 14%);border:2px dashed #4a919e47;border-radius:20px;width:min(100%,450px);min-height:320px;margin:0 auto;overflow:hidden}#appContent .qr-reader-frame video,#appContent .qr-reader-frame canvas{display:block;width:100%!important;height:auto!important}#appContent .measure-stage{background:#fff;border:1px solid #4a919e38;border-radius:16px;max-width:100%;position:relative;overflow:auto visible}#appContent .measure-surface{position:relative}#appContent .measure-toolbar-shell{top:calc(var(--app-header-height) + 10px);z-index:40;position:sticky;overflow:visible}#appContent .measure-toolbar{flex-direction:column;gap:14px;display:flex;overflow:visible}#appContent .measure-toolbar-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex;overflow:visible}#appContent .measure-toolbar-row-primary{align-items:center}#appContent .measure-page-nav,#appContent .measure-zoom-group,#appContent .measure-tool-buttons{flex-wrap:nowrap;flex:none;align-items:center;gap:8px;display:flex}#appContent .measure-toolbar-separator{background:#4a919e2e;width:1px;height:34px}#appContent .measure-inline-field{flex-direction:column;flex:none;gap:6px;min-width:92px;display:flex}#appContent .measure-inline-field-unit{min-width:72px}#appContent .measure-inline-field span{color:color-mix(in srgb, var(--color-on-background) 72%, transparent);font-size:.85rem;font-weight:600}#appContent .measure-inline-field input,#appContent .measure-inline-field select{min-width:0}#appContent .measure-toolbar-actions{flex-wrap:wrap;gap:8px;display:flex}#appContent .toolbar-menu-group{flex:none;position:relative;overflow:visible}#appContent .toolbar-menu-button{white-space:nowrap}#appContent .measure-tool-button{color:color-mix(in srgb, var(--color-on-background) 82%, transparent);background:#eef2f4;border-color:#2032361f}#appContent .measure-tool-button:hover{background:#e5ecef}#appContent .toolbar-dropdown{background:color-mix(in srgb, var(--color-background-tint) 92%, white 8%);z-index:60;border:1px solid #4a919e2e;border-radius:16px;flex-direction:column;gap:10px;min-width:220px;padding:14px;display:flex;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 18px 34px #1020222e}#appContent .toolbar-dropdown label{flex-direction:column;gap:6px;font-size:.92rem;display:flex}#appContent .toolbar-dropdown .button{align-self:flex-start}#appContent .measure-toolbar .button.active{background:var(--color-primary);color:var(--color-on-primary);border-color:#0000}#appContent .measure-toolbar .measure-tool-button.active:hover{background:color-mix(in srgb, var(--color-primary) 88%, black 12%)}#appContent .measure-workbench{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}#appContent .measure-document-column{min-width:0;overflow:visible}#appContent .measure-document-card{flex-direction:column;gap:16px;display:flex;overflow:visible}#appContent .measure-sidebar{top:calc(var(--app-header-height) + 94px);position:sticky}#appContent .annotate-workbench{grid-template-columns:minmax(0,1fr)}#appContent #pdf-annotate-canvas,#appContent #pdf-annotate-overlay{display:block}#appContent #pdf-annotate-overlay{cursor:crosshair;position:absolute;top:0;left:0}#appContent .pdf-annotate-inline-text{z-index:7;min-width:180px;min-height:56px;color:var(--color-on-background);resize:both;background:#ffffffeb;border:2px solid;border-radius:10px;padding:8px 10px;font-family:inherit;line-height:1.25;position:absolute;box-shadow:0 10px 22px #10202229}#appContent .annotate-signature-menu-pad{background-color:#0000;background-image:linear-gradient(45deg,#4a919e0f 25%,#0000 25% 75%,#4a919e0f 75%,#4a919e0f),linear-gradient(45deg,#4a919e0f 25%,#0000 25% 75%,#4a919e0f 75%,#4a919e0f);background-position:0 0,12px 12px;background-repeat:repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #4a919e2e;border-radius:12px;padding:8px}#appContent #pdf-annotate-signature-menu{min-width:320px}#appContent .measure-list-item{cursor:pointer;background:#fff;border:1px solid #4a919e29;border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}#appContent .measure-list-item:hover{border-color:#4a919e52}#appContent .measure-list-item.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb, var(--color-primary) 18%, transparent)}#appContent .measure-list-item-main{flex-direction:column;gap:6px;display:flex}#appContent .measure-list-item-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}#appContent .measure-list-value{color:color-mix(in srgb, var(--color-on-background) 84%, transparent);font-weight:600}#appContent .measure-color-input{background:0 0;border:0;flex:none;width:42px;height:42px;padding:0}#appContent .measure-label-input{box-sizing:border-box;width:100%}#appContent .measure-loupe{z-index:5;pointer-events:none;background:#fff;border:3px solid #ffffffeb;border-radius:999px;width:160px;height:160px;position:absolute;overflow:hidden;box-shadow:0 18px 34px #10202247}#appContent #pdf-measure-canvas,#appContent #pdf-measure-overlay,#appContent #image-measure-canvas,#appContent #image-measure-overlay{display:block}#appContent #pdf-measure-overlay,#appContent #image-measure-overlay{cursor:crosshair;position:absolute;top:0;left:0}@media (max-width:1320px){#appContent .measure-workbench{grid-template-columns:1fr}#appContent .measure-document-column{order:1}#appContent .measure-sidebar{order:2;width:100%;max-width:none;position:static}#appContent .measure-toolbar-shell{top:calc(var(--app-header-height-mobile) + 8px)}#appContent .annotate-workbench{grid-template-columns:1fr}}@media (max-width:720px){#appContent .measure-page-nav .button{min-width:40px;padding-left:10px;padding-right:10px;font-size:0}#appContent #pdf-measure-prev:before{content:"<";font-size:1rem}#appContent #pdf-measure-next:before{content:">";font-size:1rem}#appContent #pdf-annotate-prev:before{content:"<";font-size:1rem}#appContent #pdf-annotate-next:before{content:">";font-size:1rem}#appContent .measure-page-nav .measure-inline-field span{display:none}#appContent .measure-page-nav .measure-inline-field{min-width:66px}#appContent #pdf-annotate-prev,#appContent #pdf-annotate-next{min-width:40px;padding-left:10px;padding-right:10px;font-size:0}#appContent .measure-toolbar-separator{display:none}#appContent .toolbar-dropdown{left:16px;right:16px;top:calc(var(--app-header-height-mobile) + 74px);min-width:0;position:fixed}}#appContent .csv-column-item{align-items:flex-start}#appContent .csv-column-main{flex:1;align-items:center;gap:8px;display:flex}#appContent .csv-column-main input{flex:1;min-width:0}#appContent .csv-column-disabled{opacity:.6}#appContent .csv-column-actions{flex-wrap:wrap;gap:8px;display:flex}#appContent .csv-preview-table-wrapper{margin-top:12px;overflow:auto}#appContent .csv-mapping-card{flex-direction:column;gap:10px;display:flex}#appContent .csv-mapping-row{grid-template-columns:minmax(120px,1fr) minmax(160px,1fr);align-items:center;gap:10px;display:grid}#appContent .csv-output-stack{flex-direction:column;gap:14px;display:flex}#appContent .csv-output-item{border:1px solid var(--color-secondary);background:var(--color-background);border-radius:8px;flex-direction:column;gap:8px;padding:12px;display:flex}#appContent .csv-output-item textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;font-family:monospace}#appContent .csv-output-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}#appContent .csv-formula-card,#appContent .csv-pipeline-block{padding:0}#appContent .csv-inline-actions{flex-wrap:wrap;gap:8px;display:flex}#appContent .csv-hub-hero{background:radial-gradient(circle at top left, #ffc0cb2e, transparent 32%), radial-gradient(circle at bottom right, #4a919e24, transparent 28%), var(--color-background-tint);flex-direction:column;gap:18px;padding:28px;display:flex}#appContent .csv-hub-hero h3{letter-spacing:-.05em;max-width:980px;margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1.02}#appContent .csv-hub-hero p{max-width:980px;color:color-mix(in srgb, var(--color-on-background) 78%, transparent);font-size:1.08rem}#appContent .tool-explainer-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}#appContent .tool-explainer-card{background:linear-gradient(180deg, color-mix(in srgb, var(--color-secondary) 42%, transparent), transparent 88%), var(--color-surface);border-style:dashed}#appContent .tool-explainer-card h4{color:var(--color-on-surface);margin:0 0 10px;font-size:1.05rem}#appContent .tool-explainer-card p{color:var(--color-text-secondary);margin:0 0 10px;line-height:1.65}#appContent .tool-explainer-card p:last-child{margin-bottom:0}#appContent .tool-explainer-link{color:var(--color-primary);font-weight:700;text-decoration:none}#appContent .tool-explainer-link:hover,#appContent .tool-explainer-link:focus-visible{text-decoration:underline}#appContent .regex-match-card{background:var(--color-background-tint);border:1px solid #4a919e2e;border-radius:16px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}#appContent .regex-match-head{color:color-mix(in srgb, var(--color-on-background) 76%, transparent);justify-content:space-between;align-items:center;gap:12px;display:flex}#appContent .regex-match-value{background:color-mix(in srgb, var(--color-background) 78%, var(--color-secondary) 22%);white-space:pre-wrap;word-break:break-word;border-radius:12px;margin:0;padding:10px 12px;overflow-x:auto}#appContent .regex-groups{flex-direction:column;gap:8px;display:flex}#appContent .regex-group-item{background:color-mix(in srgb, var(--color-secondary) 38%, transparent);border-radius:10px;justify-content:space-between;gap:12px;padding:8px 10px;display:flex}#appContent .csv-hub-tags{flex-wrap:wrap;gap:12px;display:flex}#appContent .csv-hub-tag{background:color-mix(in srgb, var(--color-background-tint) 88%, var(--color-background) 12%);border:1px solid #4a919e33;border-radius:999px;justify-content:center;align-items:center;padding:11px 18px;font-weight:600;display:inline-flex}#appContent .csv-hub-tag.active{color:#fff;background:#2d3038;border-color:#2d3038}#appContent .csv-tool-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;display:grid}#appContent .tool-tile,#appContent .csv-tool-tile{background:var(--color-background-tint);box-shadow:0 16px 34px var(--color-darker);text-align:left;font:inherit;color:inherit;border:1px solid #4a919e33;border-radius:22px;flex-direction:column;align-items:flex-start;gap:14px;padding:22px;text-decoration:none;transition:transform .15s,box-shadow .2s,border-color .2s;display:flex}#appContent .tool-tile *,#appContent .csv-tool-tile *{text-decoration:none}#appContent .tool-tile:hover,#appContent .csv-tool-tile:hover{box-shadow:0 20px 36px var(--color-darker);border-color:#4a919e66;transform:translateY(-2px)}#appContent .tool-tile-title,#appContent .csv-tool-tile strong{font-size:1.15rem}#appContent .tool-tile-description,#appContent .csv-tool-tile span:last-child{color:color-mix(in srgb, var(--color-on-background) 74%, transparent);line-height:1.5}#appContent .tool-tile-icon,#appContent .csv-tool-icon{border-radius:16px;justify-content:center;align-items:center;width:54px;height:54px;font-size:1.35rem;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #ffffff52}#appContent .tool-tile-icon img{object-fit:contain;width:100%;height:100%;display:block}#appContent .csv-tool-icon-blue{color:#305eae;background:#d6e5ff}#appContent .csv-tool-icon-orange{color:#d96f38;background:#ffe1d1}#appContent .csv-tool-icon-green{color:#2f8a49;background:#d9f3dc}#appContent .csv-tool-icon-pink{color:#cb5d8a;background:#ffdce8}#appContent .csv-tool-icon-purple{color:#7a56cb;background:#e7dcff}#appContent .orchestrator-builder-grid{grid-template-columns:minmax(240px,300px) minmax(520px,1fr) minmax(260px,340px);align-items:start}#appContent .orchestrator-sidebar-card,#appContent .orchestrator-board-card,#appContent .orchestrator-inspector-card{min-height:100%}#appContent .orchestrator-palette-groups{flex-direction:column;gap:14px;display:flex}#appContent .orchestrator-palette-group{background:color-mix(in srgb, var(--color-background-tint) 88%, white 12%);border:1px solid #4a919e29;border-radius:18px;flex-direction:column;gap:10px;padding:16px;display:flex}#appContent .orchestrator-palette-group h4{margin:0;font-size:.96rem}#appContent .orchestrator-palette-button{justify-content:flex-start;width:100%}#appContent .orchestrator-board-help{color:color-mix(in srgb, var(--color-on-background) 74%, transparent)}#appContent .orchestrator-board{background:linear-gradient(180deg, #fff9, #ffffff59), radial-gradient(circle at top left, #4a919e14, transparent 24%), linear-gradient(#4a919e17 1px, transparent 1px), linear-gradient(90deg, #4a919e17 1px, transparent 1px), var(--color-background);background-size:auto,auto,28px 28px,28px 28px,auto;border:1px solid #4a919e2e;border-radius:26px;min-height:720px;position:relative;overflow:auto;box-shadow:inset 0 1px #fff6}#appContent .orchestrator-connections,#appContent .orchestrator-block-layer{position:absolute;inset:0}#appContent .orchestrator-connections{pointer-events:none;width:1800px;height:1100px;overflow:visible}#appContent .orchestrator-connection{fill:none;stroke:#4a919e;stroke-width:4px;stroke-linecap:round;opacity:.92;filter:drop-shadow(0 3px 10px #4a919e40)}#appContent .orchestrator-block-layer{width:1800px;height:1100px}#appContent .orchestrator-node{background:color-mix(in srgb, var(--color-background-tint) 92%, white 8%);cursor:default;border:1px solid #4a919e2e;border-radius:22px;width:280px;position:absolute;overflow:hidden;box-shadow:0 16px 30px #27414a24}#appContent .orchestrator-node.selected{border-color:#4a919e8c;box-shadow:0 20px 40px #27414a33}#appContent .orchestrator-node-head{cursor:grab;background:linear-gradient(#4a919e2e,#4a919e0d);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px;display:flex}#appContent .orchestrator-node-head:active{cursor:grabbing}#appContent .orchestrator-node-head strong,#appContent .orchestrator-node-head span{display:block}#appContent .orchestrator-node-head span{color:color-mix(in srgb, var(--color-on-background) 68%, transparent);margin-top:4px;font-size:.85rem}#appContent .orchestrator-node-remove{color:#c43a3a;cursor:pointer;background:#de4a4a24;border:none;border-radius:999px;width:34px;height:34px;font-size:1.2rem;line-height:1}#appContent .orchestrator-node-body{color:color-mix(in srgb, var(--color-on-background) 78%, transparent);padding:14px 18px 6px;line-height:1.45}#appContent .orchestrator-node-ports{flex-direction:column;gap:8px;padding:12px 12px 14px;display:flex}#appContent .orchestrator-node-ports-inputs{border-top:1px solid #4a919e1f}#appContent .orchestrator-node-ports-outputs{border-top:1px dashed #4a919e2e}#appContent .orchestrator-port{width:100%;color:inherit;font:inherit;cursor:pointer;background:#ffffffb8;border:1px solid #4a919e24;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}#appContent .orchestrator-port.connected{border-color:#4a919e6b}#appContent .orchestrator-port.active{background:#4a919e24;border-color:#4a919e85}#appContent .orchestrator-port-dot{background:#4a919e;border-radius:999px;flex:0 0 12px;width:12px;height:12px;box-shadow:0 0 0 4px #4a919e1f}#appContent .orchestrator-port-input .orchestrator-port-dot{order:-1}#appContent .orchestrator-port-output{text-align:right}#appContent .orchestrator-inspector,#appContent .orchestrator-config-form{flex-direction:column;gap:14px;display:flex}#appContent .orchestrator-connection-list{background:#ffffff94;border:1px solid #4a919e24;border-radius:18px;padding:14px 16px}#appContent .orchestrator-connection-list h4{margin:0 0 8px}#appContent .orchestrator-connection-list ul{flex-direction:column;gap:8px;margin:0;padding-left:18px;display:flex}#appContent .orchestrator-connection-list li{line-height:1.4}#appContent .orchestrator-config-form .button-danger{align-self:flex-start}#appContent .home-stack{flex-direction:column;gap:24px;display:flex}#appContent .home-hero{background:radial-gradient(circle at top left, #ffc0cb29, transparent 26%), radial-gradient(circle at 85% 20%, #4a919e24, transparent 24%), radial-gradient(circle at bottom right, #d96f381a, transparent 22%), var(--color-background-tint);grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:22px;padding:30px;display:grid}#appContent .home-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);margin:0;font-size:.84rem;font-weight:800}#appContent .home-hero h3{letter-spacing:-.05em;max-width:820px;margin:0;font-size:clamp(2.3rem,4.2vw,4rem);line-height:.98}#appContent .home-hero>.info-stack p:last-child{max-width:760px;color:color-mix(in srgb, var(--color-on-background) 78%, transparent);font-size:1.08rem}#appContent .home-hero-points{flex-direction:column;gap:14px;display:flex}#appContent .home-point{background:color-mix(in srgb, var(--color-background-tint) 86%, var(--color-background) 14%);border:1px solid #4a919e33;border-radius:18px;flex-direction:column;gap:6px;padding:16px 18px;display:flex}#appContent .home-point strong{font-size:1rem}#appContent .home-point span{color:color-mix(in srgb, var(--color-on-background) 74%, transparent);line-height:1.5}#appContent .home-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#appContent .home-domain-header h3{margin:0 0 6px;font-size:1.5rem}#appContent .home-domain-header p{color:color-mix(in srgb, var(--color-on-background) 74%, transparent);margin:0}#appContent .home-domain-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}#appContent .home-domain-groups{flex-direction:column;gap:28px;display:flex}#appContent .home-domain-group{flex-direction:column;gap:16px;display:flex}#appContent .home-domain-group-header{flex-direction:column;gap:6px;display:flex}#appContent .home-domain-group-header h4{letter-spacing:.01em;margin:0;font-size:1.05rem}#appContent .home-domain-group-header p{color:color-mix(in srgb, var(--color-on-background) 74%, transparent);margin:0}#appContent .home-domain-group-files{--home-group-accent:#c84d42;--home-group-soft:#f8ddd9}#appContent .home-domain-group-structured-data,#appContent .home-domain-group-text{--home-group-accent:#305eae;--home-group-soft:#d6e5ff}#appContent .home-domain-group-security{--home-group-accent:#2f8a49;--home-group-soft:#d9f3dc}#appContent .home-domain-group-utilities{--home-group-accent:#7a56cb;--home-group-soft:#e7dcff}#appContent .tool-tile-home,#appContent .home-domain-card{background:var(--color-background-tint);box-shadow:0 16px 34px var(--color-darker);color:inherit;border:1px solid #4a919e33;border-radius:22px;flex-direction:column;align-items:flex-start;gap:14px;padding:22px;text-decoration:none;transition:transform .15s,box-shadow .2s,border-color .2s;display:flex}#appContent .tool-tile-home:hover,#appContent .home-domain-card:hover{box-shadow:0 20px 36px var(--color-darker);border-color:#4a919e6b;transform:translateY(-2px)}#appContent .tool-tile-home .tool-tile-title,#appContent .home-domain-card strong{font-size:1.12rem}#appContent .tool-tile-home .tool-tile-description,#appContent .home-domain-card span:last-child{color:color-mix(in srgb, var(--color-on-background) 74%, transparent);line-height:1.5}#appContent .tool-tile-icon-home,#appContent .home-domain-icon{letter-spacing:.04em;border-radius:18px;flex:0 0 58px;justify-content:center;align-items:center;width:58px;height:58px;padding:0;font-size:1rem;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #ffffff52}#appContent .tool-tile-icon-home img,#appContent .home-domain-icon img{object-fit:contain;width:40px;height:40px;display:block}#appContent .home-domain-icon-text{font-size:.92rem;line-height:1}#appContent .home-domain-icon-blue,#appContent .home-domain-icon-blue-1{color:#305eae;background:#d6e5ff}#appContent .home-domain-icon-blue-2{color:#3f72c7;background:#deebff}#appContent .home-domain-icon-blue-3{color:#2a5298;background:#dbe7fb}#appContent .home-domain-icon-blue-4{color:#4a7fd1;background:#e2ecff}#appContent .home-domain-icon-blue-5{color:#4b7bce;background:#e3edff}#appContent .home-domain-icon-orange{color:#d96f38;background:#ffe1d1}#appContent .home-domain-icon-red-1{color:#c84d42;background:#f8ddd9}#appContent .home-domain-icon-red-2{color:#d15d35;background:#fae2d5}#appContent .home-domain-icon-red-3{color:#b9412f;background:#f7d7d1}#appContent .home-domain-icon-red-4{color:#de7042;background:#fde7dc}#appContent .home-domain-icon-green,#appContent .home-domain-icon-green-1{color:#2f8a49;background:#d9f3dc}#appContent .home-domain-icon-green-2{color:#24783c;background:#d3efda}#appContent .home-domain-icon-green-3{color:#3a9b57;background:#def6e3}#appContent .home-domain-icon-pink{color:#cb5d8a;background:#ffdce8}#appContent .home-domain-icon-purple,#appContent .home-domain-icon-purple-1{color:#7a56cb;background:#e7dcff}#appContent .home-domain-icon-purple-2{color:#8d63d8;background:#efe6ff}#appContent .progress-block{flex-direction:column;gap:8px;display:flex}#appContent .progress-label{font-size:.95em}#appContent .image-preview-frame{background:linear-gradient(45deg, #4a919e0f 25%, transparent 25%, transparent 75%, #4a919e0f 75%), linear-gradient(45deg, #4a919e0f 25%, transparent 25%, transparent 75%, #4a919e0f 75%), var(--color-background);background-position:0 0,12px 12px,0 0;background-size:24px 24px,24px 24px,auto;border:1px dashed #4a919e47;border-radius:18px;justify-content:center;align-items:center;min-height:220px;padding:16px;display:flex}#appContent .image-preview{object-fit:contain;max-width:100%;max-height:340px;box-shadow:0 14px 28px var(--color-darker);background:#fff;border-radius:12px;display:block}#appContent .diff-list{flex-direction:column;gap:8px;display:flex}#appContent .text-editor{background:var(--color-background);border:1px solid #4a919e33;border-radius:16px;align-items:stretch;overflow:hidden;flex-direction:row!important;display:flex!important}#appContent .text-editor-lines{background:color-mix(in srgb, var(--color-background-tint) 88%, white 12%);color:color-mix(in srgb, var(--color-on-background) 58%, transparent);text-align:right;-webkit-user-select:none;user-select:none;border-right:1px solid #4a919e1f;flex-direction:column;flex:0 0 56px;padding:14px 10px;font:.88rem/1.6 IBM Plex Mono,SFMono-Regular,Consolas,monospace;overflow:hidden;display:flex!important}#appContent .text-editor-lines span{min-height:1.6em;display:block!important}#appContent .text-editor textarea{resize:vertical;white-space:pre;word-break:normal;border:0;border-radius:0;flex:auto;min-height:360px;margin:0;padding:14px 16px;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;line-height:1.6;overflow:auto}#appContent .text-stats{flex-direction:column;gap:10px;margin-top:12px;display:flex}#appContent .text-stats-summary{flex-wrap:wrap;gap:10px;display:flex}#appContent .text-stats-summary span{background:color-mix(in srgb, var(--color-background-tint) 90%, var(--color-background) 10%);color:color-mix(in srgb, var(--color-on-background) 82%, transparent);border:1px solid #4a919e29;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.88rem;display:inline-flex}#appContent .text-stats-advanced{background:color-mix(in srgb, var(--color-background-tint) 92%, var(--color-background) 8%);border:1px solid #4a919e29;border-radius:16px;overflow:hidden}#appContent .text-stats-advanced summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 14px;font-weight:700}#appContent .text-stats-advanced[open] summary{border-bottom:1px solid #4a919e1f}#appContent .text-stats-distribution{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;padding:12px;display:grid}#appContent .text-stats-distribution-item{background:var(--color-background);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}#appContent .text-stats-distribution-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;overflow:hidden}#appContent .diff-list-unified{background:var(--color-background);border:1px solid #4a919e2e;border-radius:16px;overflow:hidden}#appContent .diff-unified-header,#appContent .diff-unified-row{grid-template-columns:56px 56px minmax(0,1fr);align-items:stretch;display:grid}#appContent .diff-unified-header{background:color-mix(in srgb, var(--color-secondary) 55%, var(--color-background) 45%);border-bottom:1px solid #4a919e24}#appContent .diff-unified-header span{text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb, var(--color-on-background) 64%, transparent);padding:8px 10px;font:700 .76rem/1.2 IBM Plex Mono,SFMono-Regular,Consolas,monospace}#appContent .diff-unified-header span:nth-child(-n+2),#appContent .diff-unified-line-number{text-align:right;border-right:1px solid #4a919e1a}#appContent .diff-unified-row+.diff-unified-row{border-top:1px solid #4a919e14}#appContent .diff-unified-line-number{background:color-mix(in srgb, var(--color-background-tint) 88%, white 12%);color:color-mix(in srgb, var(--color-on-background) 58%, transparent);-webkit-user-select:none;user-select:none;padding:7px 10px;font:.82rem/1.5 IBM Plex Mono,SFMono-Regular,Consolas,monospace}#appContent .diff-unified-content{grid-template-columns:18px minmax(0,1fr);align-items:start;padding:7px 10px;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;display:grid}#appContent .diff-unified-marker{color:color-mix(in srgb, var(--color-on-background) 64%, transparent);font:.86rem/1.5 IBM Plex Mono,SFMono-Regular,Consolas,monospace}#appContent .diff-unified-content pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit;line-height:1.5}#appContent .diff-unified-row-same .diff-unified-content{background:0 0}#appContent .diff-unified-row-added .diff-unified-content{background:#2f8a491a}#appContent .diff-unified-row-added .diff-unified-marker{color:#23844a}#appContent .diff-unified-row-removed .diff-unified-content{background:#cb5d8a1a}#appContent .diff-unified-row-removed .diff-unified-marker{color:#b04f7b}#appContent progress{width:100%;height:18px}#appContent #pdf-signature-pad{border:1px solid var(--color-secondary);touch-action:none;background:#ffffff61;border-radius:8px;width:100%;max-width:420px;height:auto}#appContent .choice-grid{flex-wrap:wrap;gap:10px;display:flex}#appContent .choice-grid label{background:var(--color-background);border:1px solid #4a919e38;border-radius:999px;align-items:center;gap:8px;padding:10px 12px;font-weight:500;display:inline-flex}#appContent .choice-grid input[type=radio]{margin:0}#appContent .result-panel{flex-direction:column;gap:14px;min-height:100%;display:flex}#appContent .result-panel.centered{text-align:center;align-items:center}#appContent .info-stack{flex-direction:column;gap:12px;display:flex}#appContent .button{color:var(--color-on-primary);background:linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 90%, white 10%), var(--color-primary));border:1px solid #0000;border-radius:12px;padding:10px 14px;font-family:inherit;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .2s,background .2s,border-color .2s;box-shadow:0 10px 20px #4a919e38}#appContent .button.button-small{margin-bottom:0;padding:8px 11px;font-size:.9rem}#appContent .button.button-danger{background:linear-gradient(#e46363,#c73a3a);box-shadow:0 10px 20px #c73a3a3d}#appContent .button.button-danger:hover{background:linear-gradient(#ec7272,#b92f2f);border-color:#ffffff47}#appContent .button:hover{background:linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 72%, white 28%), color-mix(in srgb, var(--color-primary) 88%, black 12%));color:var(--color-on-primary);border-color:#ffffff4d;transform:translateY(-1px)}#appContent .button[disabled],#appContent .button[disabled]:hover{color:#ffffffe0;box-shadow:none;background:#93a6ab;border-color:#0000;transform:none}#appContent .infoblock{color:#21416c;background-color:#dce8fb;border:1px solid #88aadf;border-radius:12px;padding:10px 12px}#appContent .infoblock.error{color:#6f2f29;background-color:#fde4e2;border:1px solid #d0928e}#appContent .infoblock.valid{color:#1f5e2b;background-color:#ddf3e5;border:1px solid #8ac09c}#appContent .libraries-note{background:color-mix(in srgb, var(--color-background-tint) 76%, var(--color-secondary) 24%);color:color-mix(in srgb, var(--color-on-background) 78%, transparent);border:1px solid #4a919e29;border-radius:14px;margin-top:18px;padding:12px 14px}#appContent .libraries-note a{font-weight:600}#appContent #qr-generate-result,#appContent #qr-read-result{flex-direction:column;gap:12px;display:flex}#appContent .qr-line{background:var(--color-background);border:1px solid #4a919e2e;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}#appContent .qr-text{word-break:break-word}@media (max-width:900px){#appContent{padding:18px 16px 30px}#appContent .home-hero{grid-template-columns:1fr;padding:24px}#appContent .home-info-grid,#appContent .tool-grid{grid-template-columns:1fr}#appContent .csv-hub-hero{padding:22px}#appContent .orchestrator-builder-grid{grid-template-columns:1fr}#appContent .orchestrator-board{min-height:560px}}
html,body{min-height:100%}body{color:var(--color-on-background);background:var(--color-background);margin:0}:root{--app-header-height:50px;--app-header-height-mobile:50px;--color-background:#eef3f4;--color-background-tint:#fff;--color-on-background:#203236;--color-primary:#4a919e;--color-secondary:#d4e5e8;--color-on-primary:#fff;--color-on-secondary:#203236;--color-darker:#1020221f}html[data-theme=light]{--color-background:#eef3f4;--color-background-tint:#fff;--color-on-background:#203236;--color-primary:#4a919e;--color-secondary:#d4e5e8;--color-on-primary:#fff;--color-on-secondary:#203236;--color-darker:#1020221f}html[data-theme=dark]{--color-background:#172024;--color-background-tint:#243138;--color-on-background:#edf4f6;--color-primary:#4f9aa6;--color-secondary:#36525c;--color-on-primary:#fff;--color-on-secondary:#f3fbfc;--color-darker:#00000059}#wrapper.page{min-height:100vh}.app-header{z-index:120;min-height:var(--app-header-height);box-sizing:border-box;color:var(--color-on-primary);background:var(--app-header-bg,var(--color-primary));-webkit-backdrop-filter:none;backdrop-filter:none;align-items:center;gap:4px;padding:0 8px;display:flex;position:sticky;top:0;overflow:visible;box-shadow:0 1px 2px #00000029}.app-header .logo{letter-spacing:-.03em;flex:none;align-self:stretch;align-items:center;font-weight:800;line-height:1;display:inline-flex}.app-header .menuItem{padding-top:0;padding-bottom:0}.app-header-brand-wordmark{white-space:nowrap;width:18ch;font-size:.96em;line-height:1;transition:opacity .32s,transform .32s,filter .32s;display:inline-block;overflow:hidden}.app-header-brand-wordmark.is-transitioning{opacity:0;filter:blur(6px);transform:translateY(-8px)}.header-spacer{flex:1}.app-search{top:calc(var(--app-header-height) + 10px);z-index:140;width:min(680px,100vw - 32px);display:none;position:fixed;left:50%;transform:translate(-50%)}.app-search.is-open{display:block}.app-search-field{background:color-mix(in srgb, var(--color-background-tint) 88%, var(--color-background) 12%);min-height:36px;box-shadow:0 12px 28px var(--color-darker);border:1px solid #4a919e38;border-radius:14px;align-items:center;gap:10px;padding:0 12px;display:flex}.app-search-field input{min-width:0;color:var(--color-on-background);font:inherit;background:0 0;border:0;outline:0;flex:1}.app-search-field input::placeholder{color:color-mix(in srgb, var(--color-on-background) 58%, transparent)}.app-search-icon{color:color-mix(in srgb, var(--color-on-background) 62%, transparent);font-size:1rem}.app-search-clear{background:color-mix(in srgb, var(--color-background) 72%, var(--color-primary) 28%);width:28px;height:28px;color:var(--color-on-background);font:inherit;cursor:pointer;border:0;border-radius:999px;flex:none;padding:0;font-size:1.1rem;line-height:1}.app-search-clear:hover{background:color-mix(in srgb, var(--color-background) 58%, var(--color-primary) 42%)}.app-search-results{background:color-mix(in srgb, var(--color-background-tint) 92%, var(--color-background) 8%);box-shadow:0 20px 40px var(--color-darker);z-index:130;border:1px solid #4a919e33;border-radius:18px;flex-direction:column;gap:8px;max-height:min(70vh,560px);padding:10px;display:flex;position:absolute;top:calc(100% + 10px);left:0;right:0;overflow:auto}.search-toggle-button{min-width:48px;color:inherit;font:inherit;background:0 0;border:0;justify-content:center;align-self:stretch;align-items:center;padding:0 8px;line-height:1;display:inline-flex}.search-toggle-button>span{justify-content:center;align-items:center;font-size:1.55rem;line-height:1;display:inline-flex;transform:translateY(1px)}.search-toggle-button:hover,.search-toggle-button.active{background:color-mix(in srgb, var(--app-header-hover,#ffffff1f) 62%, transparent)}.app-search-result{color:inherit;background:var(--color-background-tint);border:1px solid #4a919e29;border-radius:14px;align-items:center;gap:12px;padding:12px;text-decoration:none;display:flex}.app-search-result:hover{border-color:#4a919e52;transform:translateY(-1px)}.app-search-result-icon{letter-spacing:.04em;border-radius:16px;justify-content:center;align-items:center;width:50px;height:50px;font-size:.95rem;font-weight:800;display:inline-flex}.app-search-result-icon-blue{color:#3664c6;background:#d9e6ff}.app-search-result-icon-orange{color:#c36d2a;background:#fde7d3}.app-search-result-icon-green{color:#23844a;background:#d7f2d9}.app-search-result-icon-pink{color:#b04f7b;background:#f7d9e7}.app-search-result-icon-purple{color:#7a56cb;background:#eadcfb}.app-search-result-text{flex-direction:column;gap:4px;min-width:0;display:flex}.app-search-result-text strong,.app-search-result-text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-search-result-text strong{color:var(--color-on-background)}.app-search-result-text span{color:color-mix(in srgb, var(--color-on-background) 68%, transparent);font-size:.92rem}.app-shell{height:calc(100vh - var(--app-header-height));max-height:calc(100vh - var(--app-header-height));display:flex}.app-shell.app-shell-home{display:block}.app-sidebar{width:var(--left-menu-width);flex:0 0 var(--left-menu-width);background:var(--color-background-tint);border-right:1px solid #4a919e2e;max-height:100%;overflow:hidden auto;box-shadow:inset -1px 0 #ffffff0f}.app-sidebar #menu{width:auto;min-width:0;box-shadow:none;padding:8px 6px 18px;position:static;inset:auto}.app-menu-group{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.app-menu-group:last-child{margin-bottom:0}.app-menu-page{flex-direction:column;gap:4px;display:flex}.app-menu-page-head{position:relative}.app-menu-group-title{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--color-on-background) 48%, transparent);padding:6px 10px 2px;font-size:.72rem;font-weight:800}.app-sidebar #menu .menuItem{align-items:center;gap:10px;min-width:0;padding-right:44px;transition:background-color .18s,color .18s,box-shadow .18s;display:flex;position:relative}.app-menu-expand{width:30px;height:30px;color:color-mix(in srgb, var(--menu-accent,var(--color-primary)) 88%, var(--color-on-background) 12%);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;font-size:.92rem;transition:background-color .18s,transform .18s;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.app-menu-expand:hover{background:color-mix(in srgb, var(--menu-accent-soft,var(--color-secondary)) 72%, transparent)}.app-menu-expand.is-expanded{transform:translateY(-50%)rotate(180deg)}.app-menu-subpages{border-left:2px solid color-mix(in srgb, var(--menu-accent-soft,var(--color-secondary)) 40%, var(--menu-accent,var(--color-primary)) 60%);margin:0 0 4px 15px;padding-left:10px;display:none}.app-menu-subpages.is-open{flex-direction:column;gap:3px;display:flex}.app-menu-subpage{color:color-mix(in srgb, var(--color-on-background) 78%, transparent);border-radius:12px;padding:6px 10px;font-size:.88rem;line-height:1.25;text-decoration:none;transition:background-color .18s,color .18s;display:block}.app-menu-subpage:hover{background:color-mix(in srgb, var(--color-background-tint) 74%, var(--menu-accent-soft,var(--color-secondary)) 26%);color:var(--color-on-background)}.app-menu-subpage.active{background:color-mix(in srgb, var(--color-background-tint) 72%, var(--menu-accent-soft,var(--color-secondary)) 28%);color:var(--menu-accent,var(--color-primary));font-weight:700}.app-menu-item-icon{background:var(--menu-accent-soft,var(--color-secondary));border-radius:10px;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.app-menu-item-icon img{object-fit:contain;width:18px;height:18px;display:block}.app-menu-item-icon span{color:var(--menu-accent,var(--color-primary));letter-spacing:.05em;font-size:.72rem;font-weight:800}.app-menu-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-menu-item-badge{background:color-mix(in srgb, var(--menu-accent-soft,var(--color-secondary)) 55%, white 45%);color:var(--menu-accent,var(--color-primary));letter-spacing:.03em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:2px 7px;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:7px;right:12px}.app-sidebar #menu .menuItem:hover{background:color-mix(in srgb, var(--color-background-tint) 82%, var(--color-background) 18%);color:inherit}.app-sidebar #menu .menuItem.active{background:color-mix(in srgb, var(--color-background-tint) 88%, var(--color-background) 12%);color:inherit;text-underline-offset:.28em;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;box-shadow:inset 0 0 0 1px #20323614}.app-sidebar #menu .menuItem.active:hover{background:color-mix(in srgb, var(--color-background-tint) 88%, var(--color-background) 12%)}.tool-mode-switch:not(.compact){display:none!important}.app-content{flex:1;min-width:0;max-height:100%;overflow:hidden auto}.app-shell.app-shell-home .app-content{width:100%}#appContent{min-height:100%;padding:26px 24px 40px;position:static}.app-shell.app-shell-home #appContent{padding-left:32px;padding-right:32px}.tool-page{max-width:1440px;margin:0 auto}.menu-switch-button{color:inherit;background:0 0;border:0;line-height:1;display:none}.theme-toggle-button{color:inherit;font:inherit;background:0 0;border:0;justify-content:center;align-self:stretch;align-items:center;gap:8px;min-width:56px;height:100%;padding:0;display:inline-flex}.legal-toggle-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-self:stretch;align-items:center;min-width:56px;height:100%;padding:0;display:inline-flex}.offline-toggle-button{color:inherit;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 12px;display:inline-flex}.offline-toggle-button:hover{background:color-mix(in srgb, var(--app-header-hover,#ffffff1f) 62%, transparent)}.offline-toggle-badge{background:#ffffff40;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.78rem;font-weight:700;display:inline-flex}.theme-toggle-button:hover,.legal-toggle-button:hover{background:color-mix(in srgb, var(--app-header-hover,#ffffff1f) 62%, transparent)}.theme-toggle-icon{width:22px;height:22px;display:block}.theme-toggle-text{font-size:.9em}.execution-note{box-shadow:0 10px 24px var(--color-darker);border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;margin:0;padding:14px 16px;font-weight:700;display:flex}.execution-note-wrap{margin:20px 0}.execution-note:before{color:#fff;border-radius:999px;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.9em;display:inline-flex}.execution-note[data-mode=local]{color:#1f5e2b;background:#dff4df;border-color:#78c28a}.execution-note[data-mode=local]:before{content:"✓";background:#2e9b47}.execution-note[data-mode=server]{color:#8a4c05;background:#fff0d8;border-color:#f1b458}.execution-note[data-mode=server]:before{content:"▲";background:#d97904}.execution-badge{letter-spacing:.06em;text-transform:uppercase;background:#ffffffa6;border-radius:999px;justify-content:center;align-items:center;min-width:62px;padding:4px 8px;font-size:.78em;display:inline-flex}.tool-page>section:first-child>h2:first-of-type{margin-top:0}.offline-dialog-backdrop{z-index:220;background:#0c181c6b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.offline-dialog{background:var(--color-background-tint);width:min(720px,100vw - 32px);max-height:min(82vh,820px);color:var(--color-on-background);box-shadow:0 30px 60px var(--color-darker);border:1px solid #4a919e2e;border-radius:24px;padding:22px;overflow:auto}.offline-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.offline-dialog-header h2{margin:0 0 6px}.offline-dialog-header p{color:color-mix(in srgb, var(--color-on-background) 72%, transparent);margin:0}.offline-dialog-close{background:color-mix(in srgb, var(--color-background) 60%, var(--color-primary) 40%);width:38px;height:38px;color:var(--color-on-background);font:inherit;cursor:pointer;border:0;border-radius:999px;font-size:1.4rem;line-height:1}.offline-dialog-actions,.offline-dialog-footer{align-items:center;gap:10px;display:flex}.offline-dialog-actions{margin-bottom:16px}.offline-dialog-footer{justify-content:flex-end;margin-top:18px}.legal-dialog-body{color:var(--color-on-background);flex-direction:column;gap:12px;line-height:1.6;display:flex}.legal-dialog-body p{margin:0}.legal-dialog-body a{color:var(--color-primary);font-weight:700}.offline-module-list{gap:12px;display:grid}.offline-module-item{background:color-mix(in srgb, var(--color-background-tint) 92%, var(--color-background) 8%);cursor:pointer;border:1px solid #4a919e29;border-radius:18px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.offline-module-item input{margin-top:3px}.offline-module-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.offline-module-copy strong{color:var(--color-on-background)}.offline-module-copy span{color:color-mix(in srgb, var(--color-on-background) 68%, transparent)}.offline-toast{z-index:210;color:#1f5e2b;box-shadow:0 16px 32px var(--color-darker);background:#dff4df;border:1px solid #78c28a;border-radius:14px;padding:12px 16px;position:fixed;bottom:18px;right:18px}.app-sidebar-cover{display:none}@media (max-width:900px){.app-header-brand-wordmark{width:auto}:root{--app-header-height:var(--app-header-height-mobile)}.app-search{top:calc(var(--app-header-height) + 8px);width:auto;left:12px;right:12px;transform:none}.menu-switch-button{justify-content:center;align-items:center;width:38px;height:38px;font-size:1.9em;display:inline-flex}.theme-toggle-text{display:none}.offline-toggle-button{min-height:42px;padding:0 10px;font-size:.92rem}.app-shell{height:auto;max-height:none;position:relative}.app-sidebar{top:var(--app-header-height);width:min(var(--left-menu-width), 86vw);flex-basis:min(var(--left-menu-width), 86vw);z-index:100;box-shadow:0 18px 40px var(--color-darker);max-height:none;transition:transform .25s;position:fixed;bottom:0;left:0;transform:translate(-100%)}.app-sidebar #menu .menuItem{padding:14px 16px;font-size:1rem;line-height:1.35}.app-menu-group{margin-bottom:20px}.app-menu-group-title{padding-left:16px;padding-right:16px}.app-shell.menu-open .app-sidebar{transform:translate(0)}.app-sidebar-cover{inset:var(--app-header-height) 0 0 0;z-index:95;background:#00000061;position:fixed}.app-shell.menu-open .app-sidebar-cover{display:block}.app-content{max-height:none;overflow:visible}}
