@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-thai-thai-400-normal.BEOmKAI1.woff2)format("woff2"),url(./noto-sans-thai-thai-400-normal.Dxb_unuU.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-thai-latin-ext-400-normal.nBP59pVw.woff2)format("woff2"),url(./noto-sans-thai-latin-ext-400-normal.B-1H0YkH.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-thai-latin-400-normal.BaWBrqFP.woff2)format("woff2"),url(./noto-sans-thai-latin-400-normal.Dh_FJjOB.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(./noto-sans-thai-thai-500-normal.CU_X86GQ.woff2)format("woff2"),url(./noto-sans-thai-thai-500-normal.BOGXO2tw.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(./noto-sans-thai-latin-ext-500-normal.B-ZWb8SZ.woff2)format("woff2"),url(./noto-sans-thai-latin-ext-500-normal.CrEHO7C8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(./noto-sans-thai-latin-500-normal.fyBKClF1.woff2)format("woff2"),url(./noto-sans-thai-latin-500-normal.BC04jsmm.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(./noto-sans-thai-thai-600-normal.Cs73sVjl.woff2)format("woff2"),url(./noto-sans-thai-thai-600-normal.CmgB8_JK.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(./noto-sans-thai-latin-ext-600-normal.maHHBsez.woff2)format("woff2"),url(./noto-sans-thai-latin-ext-600-normal.PkMZo0xa.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(./noto-sans-thai-latin-600-normal.CemcjnVR.woff2)format("woff2"),url(./noto-sans-thai-latin-600-normal.Dbc-dNO6.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-cyrillic-ext-400-normal.BjDhGU6t.woff2)format("woff2"),url(./noto-sans-cyrillic-ext-400-normal.d9FrwbiD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-cyrillic-400-normal.CHP_ranX.woff2)format("woff2"),url(./noto-sans-cyrillic-400-normal.BDYvNhAR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-devanagari-400-normal.C3FccbrF.woff2)format("woff2"),url(./noto-sans-devanagari-400-normal.g9fsM2jL.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-greek-ext-400-normal.i2oSBwXz.woff2)format("woff2"),url(./noto-sans-greek-ext-400-normal.L11LEhi4.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-greek-400-normal.DCESwnT1.woff2)format("woff2"),url(./noto-sans-greek-400-normal.Be2BcUUc.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-vietnamese-400-normal.D2wP-Vm-.woff2)format("woff2"),url(./noto-sans-vietnamese-400-normal.C3Al4sv4.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-latin-ext-400-normal.CVf-LbaS.woff2)format("woff2"),url(./noto-sans-latin-ext-400-normal.CNh9dRW_.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./noto-sans-latin-400-normal.BTkUljjl.woff2)format("woff2"),url(./noto-sans-latin-400-normal.DPpKfCgK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary:#0ea5e9;--color-primary-hover:#0284c7;--color-primary-soft:#e0f2fe;--color-accent:#2563eb;--color-bg:#f5f7fb;--color-surface:#fff;--color-border:#e4e9f1;--color-text:#172a42;--color-text-muted:#738197;--color-success:#168365;--color-warning:#a9660d;--color-danger:#d43849;--color-info:#2672b8;--color-on-primary:#fff;--color-shadow:#1631500f;--font-page-title:1.8rem;--font-section-title:1.15rem;--font-menu:.9rem;--font-label:.875rem;--font-input:.9rem;--font-table:.875rem;--font-card:1rem;--font-badge:.75rem;--font-button:.9rem;--font-helper:.78rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--color-primary:#38bdf8;--color-primary-hover:#0ea5e9;--color-primary-soft:#142e45;--color-accent:#60a5fa;--color-bg:#0c1522;--color-surface:#131f30;--color-border:#26364b;--color-text:#e6edf7;--color-text-muted:#94a5bc;--color-success:#5cceaa;--color-warning:#f1c062;--color-danger:#ff8693;--color-info:#7bbdfa;--color-on-primary:#08263c;--color-shadow:#00000026;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);margin:0;font-family:Noto Sans Thai,Noto Sans,system-ui,sans-serif;font-size:.9375rem;line-height:1.65}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{transition:background .15s,color .15s}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:var(--font-page-title);font-weight:600;line-height:1.5}h2{font-size:var(--font-section-title);font-weight:600}h3{font-size:1rem;font-weight:500}p{color:var(--color-text-muted)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand{align-items:center;gap:12px;display:flex}.brand-symbol{background:var(--color-primary);width:42px;height:42px;color:var(--color-on-primary);border-radius:12px;place-items:center;font-size:30px;font-weight:600;display:grid}.brand strong{letter-spacing:-.7px;font-family:Noto Sans,sans-serif;font-size:1.4rem}.brand small{letter-spacing:1.6px;color:var(--color-text-muted);margin-top:1px;font-size:.55rem;display:block}.brand-dot{color:var(--color-primary)}.theme-control{color:var(--color-text-muted);align-items:center;gap:6px;font-size:.8rem;display:flex}.theme-control>span{font-size:1.3rem}.theme-control select{color:var(--color-text-muted);background:0 0;border:0;max-width:100px;padding:6px}.theme-control option{background:var(--color-surface)}footer{text-align:center;color:var(--color-text-muted);letter-spacing:.3px;padding:26px 16px;font-size:.72rem}footer a:hover{color:var(--color-primary)}.login-page{background:radial-gradient(ellipse at 25% 60%, var(--color-primary-soft), transparent 55%), var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.login-top{justify-content:space-between;align-items:center;padding:32px 5%;display:flex}.login-main{flex:1;grid-template-columns:1fr 440px;align-items:center;gap:90px;width:min(100% - 48px,1040px);margin:30px auto;display:grid}.eyebrow{letter-spacing:1.7px;color:var(--color-primary-hover);font-size:.7rem;font-weight:600}.login-intro h1{letter-spacing:-1px;margin:16px 0;font-size:2.9rem;line-height:1.45}.login-intro h1 span{color:var(--color-primary-hover)}.login-intro p{font-size:1rem;line-height:1.9}.brand-graphic{width:330px;height:175px;margin-top:35px;position:relative}.route-line{border:2px dashed var(--color-primary);opacity:.45;border-bottom:0;border-left:0;border-radius:20px 20px 20px 0;width:230px;height:75px;position:absolute;top:37px;left:20px;transform:skewY(-12deg)}.route-start{color:var(--color-primary);font-size:30px;position:absolute;top:90px;left:8px}.route-end{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 12px 25px var(--color-shadow);width:65px;height:65px;color:var(--color-primary);border-radius:18px;place-items:center;font-size:36px;display:grid;position:absolute;top:8px;left:220px}.graphic-caption{flex-direction:column;display:flex;position:absolute;top:98px;left:58px}.graphic-caption span{letter-spacing:1px;font-weight:600}.graphic-caption small,.intro-note{color:var(--color-text-muted);font-size:.68rem}.intro-note{letter-spacing:2px}.login-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 20px 70px var(--color-shadow);border-radius:22px;padding:36px 38px}.login-card-icon{background:var(--color-primary-soft);width:44px;height:44px;color:var(--color-primary-hover);border-radius:12px;place-items:center;margin-bottom:22px;font-size:26px;display:grid}.login-card h2{margin:6px 0;font-size:1.8rem}.login-description{margin-bottom:28px;font-size:.85rem}.field{margin-bottom:19px}.field>label{font-size:var(--font-label);margin-bottom:8px;font-weight:500;display:block}.required{color:var(--color-danger)}input:not([type=checkbox]),select.input{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font-size:var(--font-input);border-radius:9px;min-height:48px;padding:12px 14px}input::placeholder{color:var(--color-text-muted);opacity:.8}input:focus{border-color:var(--color-primary)}.field small{color:var(--color-text-muted);font-size:var(--font-helper);margin-top:6px;display:block}.password-field{position:relative}.password-field input{padding-right:65px}.password-toggle{height:32px;color:var(--color-text-muted);background:0 0;border:0;border-radius:5px;padding:0 8px;font-size:.75rem;position:absolute;top:8px;right:8px}.password-toggle:hover{background:var(--color-primary-soft)}.remember{color:var(--color-text-muted);align-items:center;gap:9px;margin:6px 0 25px;font-size:.82rem;display:flex}input[type=checkbox]{width:17px;height:17px;accent-color:var(--color-primary)}.button{min-height:48px;font-weight:500;font-size:var(--font-button);border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:10px;padding:11px 18px;display:inline-flex}.button.primary{background:var(--color-primary);color:var(--color-on-primary)}.button.primary:hover{background:var(--color-primary-hover)}.button.secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.login-card .button{justify-content:space-between;width:100%}.secure-note{text-align:center;border-top:1px solid var(--color-border);color:var(--color-text-muted);margin-top:24px;padding-top:20px;font-size:.7rem}.alert{border:1px solid var(--color-danger);color:var(--color-danger);border-radius:8px;margin-bottom:20px;padding:12px 14px;font-size:.82rem}.error-text{color:var(--color-danger)!important}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.nav-item{font-size:var(--font-menu);border-radius:9px;align-items:center;gap:13px;padding:12px 14px;display:flex}.nav-item>span:first-child{font-size:22px}.nav-item.active{color:var(--color-primary-hover);background:var(--color-primary-soft);font-weight:500}.workspace-status{color:var(--color-text-muted);align-items:center;gap:9px;padding:16px 14px;font-size:.7rem;display:flex}.workspace-status i{background:var(--color-success);border-radius:50%;width:7px;height:7px}.collapsed .workspace-status{justify-content:center}.app-body{flex-direction:column;min-width:0;display:flex}.topbar-left,.topbar-actions{align-items:center;gap:20px;min-width:0;display:flex}.topbar-workspace{white-space:nowrap;font-size:.8rem}.topbar-workspace span{color:var(--color-text-muted)}.search-placeholder{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:8px;align-items:center;gap:12px;padding:8px 12px;font-size:.8rem;display:flex}.search-placeholder kbd{font:inherit;border:1px solid var(--color-border);border-radius:3px;padding:1px 5px;font-size:.6rem}.icon-button{color:var(--color-text-muted);background:0 0;border:0;border-radius:7px;width:36px;height:36px;font-size:21px}.icon-button:hover{background:var(--color-primary-soft)}.user-menu{position:relative}.user-menu summary{cursor:pointer;align-items:center;gap:10px;list-style:none;display:flex}.user-menu summary::-webkit-details-marker{display:none}.avatar{width:36px;height:36px;color:var(--color-primary-hover);background:var(--color-primary-soft);border-radius:50%;place-items:center;font-size:.7rem;font-weight:600;display:grid}.user-name{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:.72rem;overflow:hidden}.user-name small{color:var(--color-text-muted);font-size:.65rem;display:block}.user-dropdown{border:1px solid var(--color-border);background:var(--color-surface);z-index:30;width:260px;max-width:calc(100vw - 30px);box-shadow:0 10px 30px var(--color-shadow);border-radius:12px;padding:16px;position:absolute;top:52px;right:0}.user-dropdown strong{font-size:.85rem}.user-dropdown small{color:var(--color-text-muted);overflow-wrap:anywhere;display:block}.user-dropdown button{text-align:left;width:100%;color:var(--color-danger);background:var(--color-bg);border:0;border-radius:6px;margin-top:15px;padding:10px}.app-content{flex:1;width:100%;max-width:1500px;margin:0 auto;padding:32px}.page-header{justify-content:space-between;gap:16px;margin-bottom:27px;display:flex}.page-header nav{color:var(--color-text-muted);margin-bottom:16px;font-size:.72rem}.page-header nav span[aria-hidden]{margin:0 8px}.page-header p{margin-top:5px;font-size:.85rem}.card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;padding:26px}.welcome-card{background:linear-gradient(115deg, var(--color-surface), var(--color-primary-soft));justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px;padding:34px;display:flex}.welcome-card h2{overflow-wrap:anywhere;margin-top:16px;font-size:1.5rem}.welcome-card p{margin-top:5px}.welcome-note{color:var(--color-text-muted);margin-top:24px;font-size:.8rem;display:block}.welcome-art{border:1px solid var(--color-border);background:var(--color-surface);width:120px;height:120px;color:var(--color-primary);border-radius:30px;flex-shrink:0;place-items:center;font-size:80px;display:grid;transform:rotate(-8deg)}.badge{font-size:var(--font-badge);background:var(--color-bg);color:var(--color-info);border-radius:6px;align-items:center;padding:4px 9px;font-weight:500;display:inline-flex}.badge.success{color:var(--color-success)}.badge.warning{color:var(--color-warning)}.badge.danger{color:var(--color-danger)}.section-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:20px;display:flex}.empty-state{text-align:center;padding:60px 18px}.empty-icon{border:1px solid var(--color-border);background:var(--color-bg);width:62px;height:62px;color:var(--color-text-muted);border-radius:16px;place-items:center;margin:0 auto 20px;font-size:30px;display:grid}.empty-state p{max-width:470px;margin:8px auto;font-size:.85rem}@media (width<=1200px){.topbar-workspace,.shortcut{display:none}.topbar-actions{gap:10px}.login-main{gap:48px}}@media (width<=900px){.login-main{grid-template-columns:1fr;max-width:440px;margin:30px auto}.login-intro{display:none}.login-top{padding:24px}.mobile-menu{display:inline-block}.app-content{padding:26px}.user-name{display:none}}@media (width<=520px){.login-top{padding:20px 18px}.brand strong{font-size:1.2rem}.brand small{font-size:.48rem}.brand-symbol{border-radius:10px;width:36px;height:36px}.login-main{width:calc(100% - 28px);margin:12px auto}.login-card{border-radius:16px;padding:28px 24px}.login-card h2{font-size:1.6rem}.login-description{font-size:.78rem}.theme-control{gap:1px}.theme-control select{max-width:85px;padding:4px;font-size:.7rem}.topbar-left,.topbar-actions{gap:6px}.search-placeholder,.topbar-actions>.icon-button{display:none}.app-content{padding:22px 16px}.page-header h1{font-size:1.5rem}.page-header p{font-size:.78rem}.welcome-card{padding:24px}.welcome-card h2{font-size:1.18rem}.welcome-art{display:none}.card{padding:20px}.section-heading{flex-direction:column;align-items:flex-start}.empty-state{padding:42px 0}.empty-state p{font-size:.78rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.nav-item{gap:12px;padding:8px 12px;font-size:.82rem}.nav-item>span:first-child{text-align:center;width:22px;font-size:19px}.form-grid{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 26px;min-width:0;margin:0;padding:0;display:grid}.form-grid .field{min-width:0;margin:0}.field-wide,.form-section{grid-column:1/-1}.form-section{border-bottom:1px solid var(--color-border);margin-top:12px;padding-bottom:15px;font-size:1rem}.form-grid .form-section:first-child{margin-top:0}textarea{resize:vertical;border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:9px;padding:12px 14px;font-size:.9rem}fieldset:disabled{opacity:.75}.checkbox-field{align-items:center;gap:8px;padding:10px 0;display:flex!important}.form-actions{border-top:1px solid var(--color-border);flex-wrap:wrap;align-items:flex-start;gap:12px;margin-top:25px;padding-top:20px;display:flex}.form-note{color:var(--color-text-muted);margin-top:20px;font-size:.75rem}.detail-meta,.workflow-card,.resource-summary{margin-top:24px}.resource-summary{margin-top:0;margin-bottom:24px}.resource-summary>div{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.detail-meta p{font-size:.75rem}.delete-panel{border:1px solid var(--color-border);color:var(--color-danger);border-radius:10px;margin-top:28px;padding:20px}.delete-panel p{margin-top:12px;font-size:.8rem}.cancel-panel form{padding:12px 0}.success-alert{background:var(--color-surface);border:1px solid var(--color-success);color:var(--color-success);border-radius:9px;margin-bottom:20px;padding:13px 16px;font-size:.85rem}.job-status-bar{justify-content:space-between;gap:16px;margin-bottom:24px;font-size:.8rem;display:flex}.job-status-bar strong{color:var(--color-primary-hover);margin-left:10px}.job-status-bar>span:last-child{color:var(--color-text-muted)}.workflow-card p{margin-top:10px;font-size:.8rem}.workflow-card .success-alert{margin-top:20px;margin-bottom:0}.audit-list{margin:18px 0 0;padding:0;list-style:none}.audit-list li{border-bottom:1px solid var(--color-border);padding:12px 0;font-size:.85rem}.audit-list small{color:var(--color-text-muted);display:block}.permission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;margin-top:20px;display:grid}.permission-grid label{overflow-wrap:anywhere}.permission-grid input{flex-shrink:0}.list-toolbar{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:12px;padding-bottom:24px;display:flex}.search-field{flex:1;min-width:180px}.reset-link{color:var(--color-text-muted);padding:10px;font-size:.78rem}.list-summary{justify-content:space-between;align-items:center;gap:12px;margin:24px 0 18px;display:flex}.list-summary>span{color:var(--color-text-muted);font-size:.8rem}.filter-panel{position:relative}.filter-panel summary{list-style:none}.filter-panel summary::-webkit-details-marker{display:none}.filter-panel[open]>summary{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-hover)}.filter-content{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);width:340px;max-width:calc(100vw - 50px);box-shadow:0 15px 40px var(--color-shadow);border-radius:12px;gap:14px;max-height:70dvh;padding:20px;display:grid;position:absolute;top:58px;right:0;overflow:auto}.filter-content label{gap:6px;font-size:.8rem;display:grid}.filter-content small{color:var(--color-text-muted);font-size:.7rem}.filter-content select[multiple]{min-height:90px;padding:6px}.filter-content select[multiple] option{border-radius:4px;padding:4px}.toolbar-select{max-width:180px}.table-scroll{border:1px solid var(--color-border);border-radius:9px;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--font-table)}th{text-align:left;white-space:nowrap;background:var(--color-bg);color:var(--color-text-muted);padding:13px 15px;font-size:.75rem;font-weight:500}td{border-top:1px solid var(--color-border);overflow-wrap:anywhere;min-width:100px;max-width:260px;padding:14px 15px}tbody tr:hover{background:var(--color-bg)}.action-cell{text-align:right;white-space:nowrap;min-width:115px}.text-link{color:var(--color-primary-hover);font-size:.8rem}.text-link:hover{text-decoration:underline}.pagination{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:12px;padding-top:24px;font-size:.8rem;display:flex}.pagination>div{gap:10px;display:flex}.pagination .button{min-height:40px;padding:8px 13px;font-size:.78rem}.record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.record-card{border:1px solid var(--color-border);border-radius:10px;min-width:0;padding:20px}.record-card>div{justify-content:space-between;gap:18px;margin-bottom:10px;font-size:.8rem;display:flex}.record-card>div>span{color:var(--color-text-muted);flex-shrink:0}.record-card strong{text-align:right;overflow-wrap:anywhere;font-weight:500}.record-card .record-title{border-bottom:1px solid var(--color-border);padding-bottom:10px}.record-card .record-title strong{color:var(--color-primary-hover);font-weight:600}.record-card>a{text-align:right;border-top:1px solid var(--color-border);padding-top:12px;display:block}.loading{opacity:.5;pointer-events:none}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px;display:grid}.metric{justify-content:space-between;align-items:center;padding:23px;display:flex}.metric>div>span{color:var(--color-text-muted);font-size:.8rem}.metric strong{margin-top:10px;font-family:Noto Sans,sans-serif;font-size:2rem;line-height:1.3;display:block}.metric-icon{background:var(--color-primary-soft);width:43px;height:43px;color:var(--color-primary-hover);border-radius:12px;place-items:center;font-size:22px;display:grid}.overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px;display:grid}.overview-bars{gap:20px;margin-top:24px;display:grid}.overview-bars>div{grid-template-columns:minmax(0,1fr) auto;gap:6px;font-size:.8rem;display:grid}.overview-bars>div>span{overflow-wrap:anywhere;color:var(--color-text-muted)}.overview-bars progress{width:100%;height:7px;accent-color:var(--color-primary);background:var(--color-bg);border:0;border-radius:4px;grid-column:1/-1}progress::-webkit-progress-bar{background:var(--color-bg);border-radius:4px}progress::-webkit-progress-value{background:var(--color-primary);border-radius:4px}.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.recent-list>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:16px 0;display:flex}.recent-list>div>div{overflow-wrap:anywhere;min-width:0}.recent-list small{color:var(--color-text-muted);margin-top:4px;font-size:.72rem;display:block}.recent-list>p{padding:25px 0}@media (width<=1100px){.overview-grid{grid-template-columns:minmax(0,1fr)}.overview-bars,.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.form-grid,.record-grid,.recent-grid{grid-template-columns:minmax(0,1fr)}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{padding:18px}.metric-icon{width:32px;height:32px;font-size:18px}.metric strong{font-size:1.7rem}.page-header{flex-direction:column}.page-header>div:last-child .button{width:100%}.list-toolbar{gap:10px}.search-field{flex-basis:100%}.filter-panel{flex:1}.filter-panel summary{width:100%}.filter-content{width:340px;left:0;right:auto}.permission-grid{grid-template-columns:minmax(0,1fr)}.job-status-bar{flex-direction:column}.overview-bars{grid-template-columns:minmax(0,1fr)}.pagination{flex-direction:column;align-items:flex-start}.pagination>div{justify-content:space-between;width:100%}.recent-list .badge{flex-shrink:0;font-size:.65rem}.form-actions>.button{width:100%}.topbar-workspace{display:none}.record-card{padding:16px}}.icon-button{flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:inline-flex}.mobile-menu{display:none}.theme-button{color:var(--color-text-muted)}.topbar-actions{gap:14px}.workspace-heading strong{letter-spacing:.3px;font-family:Noto Sans,sans-serif;font-size:.78rem;font-weight:600}.workspace-heading small{color:var(--color-text-muted);margin-top:3px;font-size:.67rem;display:block}.profile-chevron{display:flex;transform:rotate(90deg)}.quick-menu{position:relative}.quick-menu summary{cursor:pointer;list-style:none}.quick-menu summary::-webkit-details-marker{display:none}.quick-dropdown{z-index:35;border:1px solid var(--color-border);background:var(--color-surface);width:245px;max-width:calc(100vw - 28px);box-shadow:0 14px 40px var(--color-shadow);border-radius:12px;padding:12px;position:absolute;top:50px;right:0}.quick-dropdown>strong{color:var(--color-text-muted);padding:8px 10px;font-size:.75rem;font-weight:500;display:block}.quick-dropdown>a{border-radius:7px;align-items:center;gap:12px;padding:12px 10px;font-size:.83rem;display:flex}.quick-dropdown>a:hover{background:var(--color-primary-soft);color:var(--color-primary-hover)}.sidebar:hover .sidebar-nav,.sidebar.scrolling .sidebar-nav{scrollbar-color:color-mix(in srgb, var(--color-text-muted) 48%, transparent) transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-text-muted) 16%, transparent);border-radius:999px}.sidebar:hover .sidebar-nav::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-text-muted) 48%, transparent)}.sidebar.scrolling .sidebar-nav::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-text-muted) 48%, transparent)}.sidebar-nav .nav-item svg{flex-shrink:0}.data-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.data-toolbar>.list-toolbar{border:0;flex:1;gap:10px;min-width:250px;padding:0}.data-toolbar .view-toggle{flex-shrink:0}.data-toolbar>.button{white-space:nowrap}.data-toolbar .search-field{min-width:170px}.data-toolbar .button{min-height:44px;padding:10px 14px;font-size:.82rem}.data-toolbar .reset-link{padding:6px}.data-toolbar .filter-panel{flex:none}.data-toolbar .filter-panel summary{width:auto}.data-toolbar .filter-content{top:52px}.list-summary{margin:20px 0 14px}.transport-form{gap:20px;display:grid}.form-section-card{min-width:0}.section-card-heading{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;padding-bottom:16px;display:flex}.section-card-heading h2{font-size:1rem}.section-card-heading>span{color:var(--color-text-muted);font-size:.7rem}.incoming-form{gap:20px;display:grid}.received-source{margin-bottom:20px}.received-source .section-card-heading{margin-bottom:12px}.received-date{font-size:.73rem}.received-source blockquote{border-left:3px solid var(--color-primary);background:var(--color-bg);color:var(--color-text);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 8px 8px 0;margin:18px 0 0;padding:16px 18px;font-size:.85rem;line-height:1.85}.received-source>.button{margin-top:20px}.upload-card>label{margin-bottom:12px;font-size:.85rem;font-weight:500;display:block}.upload-card input[type=file]{background:var(--color-bg);border:1px dashed var(--color-border);min-width:0;padding:16px;font-size:.78rem}.upload-card input::file-selector-button{background:var(--color-primary-soft);color:var(--color-primary-hover);font:inherit;cursor:pointer;border:0;border-radius:6px;margin-right:12px;padding:8px 12px}.upload-card .form-note{margin-top:10px}.incoming-save{align-items:center;gap:16px;padding:0 0 6px;display:flex}.incoming-save>span{color:var(--color-text-muted);font-size:.75rem}.attachment-card{margin-top:22px}.attachment-list{gap:12px;display:grid}.attachment-row{border:1px solid var(--color-border);border-radius:9px;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.file-kind{background:var(--color-primary-soft);color:var(--color-primary-hover);border-radius:7px;padding:9px 7px;font-family:Noto Sans,sans-serif;font-size:.65rem;font-weight:600}.attachment-row>div{flex:1;min-width:0}.attachment-row strong{overflow-wrap:anywhere;font-size:.8rem;font-weight:500;display:block}.attachment-row small{color:var(--color-text-muted);font-size:.67rem}.attachment-preview{gap:6px;min-height:36px;padding:6px 10px;font-size:.75rem}.attachment-remove{position:relative}.attachment-remove summary{cursor:pointer;color:var(--color-text-muted);border-radius:6px;padding:6px;list-style:none;display:flex}.attachment-remove summary:hover{color:var(--color-danger);background:var(--color-bg)}.attachment-remove form{z-index:15;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:0 12px 25px var(--color-shadow);white-space:nowrap;border-radius:8px;padding:10px;position:absolute;top:32px;right:0}.attachment-dialog{border:1px solid var(--color-border);background:var(--color-surface);width:min(900px,100vw - 32px);height:min(760px,90dvh);color:var(--color-text);box-shadow:0 25px 80px var(--color-shadow);border-radius:14px;padding:0}.attachment-dialog::backdrop{background:color-mix(in srgb, var(--color-text) 45%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.preview-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;height:68px;padding:14px 20px;display:flex}.preview-header strong{overflow-wrap:anywhere;min-width:0;font-size:.85rem}.preview-body{background:var(--color-bg);justify-content:center;align-items:center;height:calc(100% - 68px);padding:10px;display:flex}.preview-body iframe{border:0;width:100%;height:100%}.preview-body img{object-fit:contain;max-width:100%;max-height:100%;display:block}.receive-next-step{background:linear-gradient(115deg, var(--color-surface), var(--color-primary-soft));justify-content:space-between;align-items:center;gap:24px;margin-top:22px;display:flex}.receive-next-step h2{margin-top:7px}.receive-next-step p{margin-top:7px;font-size:.8rem}.receive-next-step small{color:var(--color-warning);margin-top:10px;font-size:.75rem;display:block}.receive-next-step form{flex-shrink:0}.incoming-backlink{align-items:center;gap:16px;margin:0 0 18px;display:flex}.incoming-backlink>span{color:var(--color-text-muted);font-size:.73rem}.demo-notice{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:10px;align-items:center;gap:12px;margin-bottom:24px;padding:13px 18px;font-size:.78rem;display:flex}.demo-notice>.badge{white-space:nowrap;background:var(--color-primary-soft);color:var(--color-primary-hover)}.receive-layout{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);align-items:start;gap:24px;display:grid}.line-inbox{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;position:sticky;top:24px;overflow:hidden}.inbox-title{justify-content:space-between;align-items:center;gap:12px;padding:20px;display:flex}.inbox-title h2{font-size:1rem}.inbox-title>span{color:var(--color-text-muted);font-size:.72rem}.inbox-search{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:0 20px 18px;display:grid}.inbox-search>input{grid-column:1/-1;font-size:.78rem}.inbox-search select{min-height:40px;padding:8px;font-size:.76rem}.inbox-search .button{min-height:40px;padding:8px 12px;font-size:.75rem}.inbox-items{scrollbar-width:thin;min-height:280px;max-height:calc(100dvh - 340px);overflow:auto}.inbox-item{border-top:1px solid var(--color-border);border-left:3px solid #0000;padding:20px;display:block}.inbox-item.selected{background:var(--color-primary-soft);border-left-color:var(--color-primary)}.inbox-item:hover{background:var(--color-bg)}.inbox-item.selected:hover{background:var(--color-primary-soft)}.inbox-item>div{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.inbox-item .badge{font-size:.65rem}.inbox-item time{color:var(--color-text-muted);font-size:.61rem}.inbox-item strong{overflow-wrap:anywhere;margin-bottom:7px;font-size:.88rem;font-weight:600;display:block}.inbox-item p{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.77rem;display:-webkit-box;overflow:hidden}.inbox-item>small{color:var(--color-text-muted);margin-top:12px;font-size:.65rem;display:block}.inbox-pagination{border-top:1px solid var(--color-border);color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;font-size:.7rem;display:flex}.inbox-pagination a{color:var(--color-primary-hover)}.inbox-empty{color:var(--color-text-muted);padding:24px;font-size:.8rem}.line-detail{min-width:0}.line-detail .card{padding:24px}.line-detail .section-card-heading{align-items:flex-start}.line-detail .section-card-heading h2{font-size:.95rem}.line-detail .section-card-heading>span:not(.badge){text-align:right;max-width:40%}.line-detail .form-grid{gap:18px}.line-detail .receive-next-step{flex-direction:column;align-items:flex-start}.customer-tabs{border-bottom:1px solid var(--color-border);gap:20px;margin-bottom:28px;display:flex;overflow:auto}.customer-tabs button{color:var(--color-text-muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 2px 15px;font-size:.85rem}.customer-tabs button[aria-selected=true]{border-bottom-color:var(--color-primary);color:var(--color-primary-hover);font-weight:500}.customer-history{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.customer-history h3{margin-bottom:16px}.customer-history a{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:14px 0;font-size:.8rem;display:flex}.customer-history a strong{color:var(--color-primary-hover);font-weight:500}.customer-history a span,.customer-history p{color:var(--color-text-muted);font-size:.73rem}@media (width<=1200px){.receive-layout{grid-template-columns:minmax(0,.36fr) minmax(0,.64fr);gap:18px}.line-detail .form-grid{grid-template-columns:minmax(0,1fr)}.data-toolbar>.list-toolbar{flex-basis:100%}.data-toolbar>.button{margin-left:auto}}@media (width<=900px){.mobile-menu{display:inline-flex}.receive-layout{grid-template-columns:minmax(0,1fr)}.line-inbox{position:static}.inbox-items{min-height:0;max-height:330px}.line-detail .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-actions{gap:12px}}@media (width<=767px){.data-toolbar>.list-toolbar{flex-basis:100%;width:100%;min-width:0}.data-toolbar>.list-toolbar .search-field{flex-basis:100%}.data-toolbar>.list-toolbar .filter-panel{flex:1}.data-toolbar .filter-panel summary{width:100%}.data-toolbar>.button{flex:1;margin-left:0}.data-toolbar .view-toggle .button{padding:9px 12px}.section-card-heading{flex-direction:column;align-items:flex-start;gap:8px}.line-detail .section-card-heading>span:not(.badge){text-align:left;max-width:100%}.line-detail .form-grid{grid-template-columns:minmax(0,1fr)}.receive-next-step{flex-direction:column;align-items:stretch}.receive-next-step form .button{width:100%}.incoming-save{flex-direction:column;align-items:stretch}.incoming-save .button{width:100%}.incoming-save>span{text-align:center}.customer-history{grid-template-columns:minmax(0,1fr)}.demo-notice{align-items:flex-start;padding:12px;font-size:.72rem}.attachment-row{gap:8px;padding:10px}.attachment-row strong{font-size:.72rem}.file-kind{padding:8px 5px;font-size:.59rem}.attachment-preview{padding:5px 8px;font-size:.68rem}.incoming-backlink{flex-wrap:wrap;gap:5px}.customer-tabs{gap:20px}.customer-tabs button{font-size:.78rem}.line-detail .card{padding:20px}.preview-header{padding:12px}.topbar-actions .user-menu{margin-left:4px}}.topbar-actions>.theme-button{display:inline-flex}.transport-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.form-section-card.wide-section{grid-column:1/-1}.form-section-card.compact-section .form-grid{grid-template-columns:minmax(0,1fr)}.upload-card input.sr-only{border:0;width:1px;height:1px;min-height:0;padding:0}.upload-chooser{border:1px dashed var(--color-border);background:var(--color-bg);border-radius:10px;align-items:center;gap:16px;padding:18px;display:flex}.upload-chooser>span{color:var(--color-text-muted);font-size:.75rem}.upload-chooser .button{min-height:40px;font-size:.8rem}.selected-files{color:var(--color-text-muted);overflow-wrap:anywhere;gap:6px;margin:14px 0 0;padding-left:20px;font-size:.78rem;display:grid}.back-to-inbox{display:none}#line-detail,#line-inbox{scroll-margin-top:20px}@media (width<=1200px){.line-detail .transport-form{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.line-detail .transport-form{grid-template-columns:repeat(2,minmax(0,1fr))}.back-to-inbox{margin-bottom:14px;display:inline-block}}@media (width<=767px){.transport-form,.line-detail .transport-form{grid-template-columns:minmax(0,1fr)}.upload-chooser{flex-wrap:wrap;gap:10px;padding:14px}}.received-source+.attachment-card{margin-top:0;margin-bottom:20px}.pdf-preview{flex-direction:column;width:100%;min-width:0;height:100%;display:flex}.pdf-controls{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:10px;font-size:.75rem;display:flex}.pdf-controls .button{min-height:34px;padding:6px 10px;font-size:.72rem}.pdf-controls .text-link{margin-left:auto;font-size:.7rem}.pdf-pages{flex-direction:column;flex:1;align-items:center;min-height:0;padding:16px;display:flex;position:relative;overflow:auto}.pdf-pages canvas{max-width:100%;box-shadow:0 6px 24px var(--color-shadow);flex-shrink:0}.pdf-pages canvas.pdf-hidden{visibility:hidden}.pdf-pages .alert{max-width:100%}.pdf-loading{color:var(--color-text-muted);justify-content:center;align-items:center;gap:12px;font-size:.8rem;display:flex;position:absolute;inset:0}@media (width<=520px){.pdf-controls{gap:6px;font-size:.7rem}.pdf-controls .text-link{margin-left:0}.pdf-controls .button{padding:5px 7px;font-size:.65rem}}.app-shell{--sidebar-width:260px;grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100dvh;display:grid}.app-shell.collapsed{--sidebar-width:76px}.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;min-width:0;height:100dvh;padding:0 12px;display:flex;position:sticky;top:0}.brand-link{flex:0 0 88px;justify-content:center;align-items:center;min-width:0;margin:0;padding:0;display:flex}.sidebar-nav{overscroll-behavior:contain;scrollbar-width:thin;flex:1 1 0;min-height:0;padding:0 0 12px;overflow:hidden auto}.sidebar-category{color:var(--color-text-muted);margin:18px 0 8px;padding:0 12px;font-size:.68rem}.sidebar-nav .nav-item{min-height:40px}.sidebar-bottom{border-top:1px solid var(--color-border);flex:0 0 64px;align-items:center;padding:8px 0;display:flex}.collapse-button{width:100%;min-height:40px;color:var(--color-text-muted);background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:0;font-size:.8rem;display:flex}.collapse-button:hover{background:var(--color-primary-soft)}.collapse-button>span:first-child{display:flex;transform:rotate(180deg)}.collapse-button>span.rotate{transform:rotate(0)}.collapsed .nav-label,.collapsed .sidebar-category{display:none}.collapsed .nav-item{justify-content:center;gap:0;padding:8px 0}.topbar{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;min-width:0;height:88px;padding:0 24px;display:flex}.topbar-left{gap:12px}.sidebar-toggle.icon-button{width:40px;height:40px}.workspace-heading{min-width:0}.workspace-heading strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.nav-backdrop{display:none}@media (width<=900px){.app-shell,.app-shell.collapsed{grid-template-columns:minmax(0,1fr)}.sidebar{z-index:50;visibility:hidden;width:260px;max-width:calc(100vw - 48px);transition:transform .2s,visibility .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{visibility:visible;transform:translate(0)}.sidebar-bottom{display:none}.nav-backdrop{background:var(--color-shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:40;border:0;display:block;position:fixed;inset:0}.topbar{gap:8px;height:72px;padding:0 16px}.topbar-actions{flex-shrink:0}}@media (width<=520px){.topbar{padding:0 12px}.topbar-left{gap:6px}.workspace-heading strong{font-size:.62rem}.workspace-heading small{display:none}.topbar-actions{gap:6px}}:root{--control-radius:10px;--control-height:44px;--control-primary:#0ea5e9;--control-hover:#0284c7;--control-accent:#2563eb;--control-secondary:#f1f5f9;--control-border:#cbd5e1;--control-text:#334155;--control-danger:#dc2626;--control-danger-hover:#b91c1c;--control-ring:0 0 0 3px #0ea5e93d}:root[data-theme=dark]{--control-secondary:#1e293b;--control-border:#475569;--control-text:#e2e8f0;--control-danger:#b91c1c;--control-danger-hover:#991b1b}button{appearance:none;font:inherit;border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-secondary);color:var(--control-text);min-height:var(--control-height);padding:9px 14px}.button{min-height:var(--control-height);border-radius:var(--control-radius);gap:8px;padding:9px 16px;font-weight:500;line-height:1.4;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s}.button.primary{background:var(--control-primary);border-color:var(--control-primary);color:#fff}.button.primary:hover:not(:disabled){background:var(--control-hover);border-color:var(--control-hover)}.button.secondary{background:var(--control-secondary);color:var(--control-text);border-color:var(--control-border)}.button.outline{color:var(--control-text);border-color:var(--control-border);background:0 0}.button:is(.secondary,.outline):hover:not(:disabled),button:not([class]):hover:not(:disabled){background:var(--control-secondary);border-color:var(--control-accent);box-shadow:inset 0 0 0 1px var(--control-border)}.button.danger{background:var(--control-danger);border-color:var(--control-danger);color:#fff}.button.danger:hover:not(:disabled){background:var(--control-danger-hover);border-color:var(--control-danger-hover)}.button.icon,.icon-button{border-radius:var(--control-radius);flex-shrink:0;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;display:inline-flex}.button svg,.icon-button svg{flex-shrink:0}:is(button,.button,summary,input,select,textarea):focus-visible{outline:2px solid var(--control-primary);outline-offset:2px;box-shadow:var(--control-ring)}:is(button,.button):active:not(:disabled):not([aria-disabled=true]){filter:brightness(.94)}:is(button,input,select,textarea):disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed;box-shadow:none}.button[aria-disabled=true]{pointer-events:none}button[aria-busy=true]{cursor:progress}:is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea),.demo-root :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){min-width:0;max-width:100%;min-height:var(--control-height);border:1px solid var(--control-border);border-radius:var(--control-radius);background:var(--color-surface);color:var(--color-text);font:inherit;padding:var(--control-padding,9px 12px);box-sizing:border-box;line-height:1.5}select{width:100%}textarea{resize:vertical;width:100%;min-height:104px}:is(input,select,textarea):focus{border-color:var(--control-primary)}input:is([type=checkbox],[type=radio]),.demo-root input:is([type=checkbox],[type=radio]){appearance:none;border:1px solid var(--control-border);background:var(--color-surface);vertical-align:middle;width:20px;height:20px;min-height:20px;accent-color:var(--control-primary);border-radius:5px;flex-shrink:0;place-content:center;padding:0;display:inline-grid}input[type=radio],.demo-root input[type=radio]{border-radius:50%}input:is([type=checkbox],[type=radio]):checked{background:var(--control-primary);border-color:var(--control-primary)}input[type=checkbox]:checked:before{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:9px;height:5px;transform:rotate(-45deg)translateY(-1px)}input[type=radio]:checked:before{content:"";background:#fff;border-radius:50%;width:8px;height:8px}input[type=checkbox]:indeterminate:before{content:"";background:var(--control-primary);width:10px;height:2px}input[type=file]{font-size:.875rem;overflow:hidden}input[type=file]::file-selector-button{font:inherit;border:1px solid var(--control-border);background:var(--control-secondary);min-height:34px;color:var(--control-text);cursor:pointer;border-radius:7px;margin-inline-end:10px;padding:5px 10px}.upload-card input::file-selector-button{font:inherit;border:1px solid var(--control-border);background:var(--control-secondary);min-height:34px;color:var(--control-text);cursor:pointer;border-radius:7px;margin-inline-end:10px;padding:5px 10px}input[type=file]::file-selector-button:hover{border-color:var(--control-primary)}.field-error{color:var(--color-danger);margin:4px 0 0;font-size:.8rem;line-height:1.5;display:block}[aria-invalid=true]{border-color:var(--color-danger)!important}.required-mark{color:var(--color-danger);font-weight:600}.control-hint{color:var(--color-text-muted);margin-top:4px;font-size:.78rem;display:block}.control-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ui-dialog{border:1px solid var(--control-border);background:var(--color-surface);width:min(680px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--color-text);overflow-wrap:anywhere;border-radius:14px;margin:auto;padding:24px;overflow:auto;box-shadow:0 20px 70px #0000004d}.ui-dialog::backdrop{background:#0f172aa6}.ui-dialog header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.ui-dialog h2{margin:0}.ui-dialog p{margin:12px 0}.ui-dialog footer{margin-top:20px}.attachment-button{text-align:left;white-space:normal;justify-content:flex-start;max-width:100%}.attachment-button .attachment-meta{overflow-wrap:anywhere;gap:3px;min-width:0;display:grid}.attachment-button .attachment-type{color:var(--color-text-muted);font-size:.72rem;font-weight:600}@media (width<=767px){.button.icon,.icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.ui-dialog{padding:18px}.control-actions>.button{flex:auto}:is(.demo-root label:has(input[type=checkbox]),.demo-root label:has(input[type=radio])){min-height:44px}}@media (prefers-reduced-motion:reduce){.button{transition:none}.spinner{animation-duration:1.8s}}.button.primary:disabled:hover{background:var(--control-primary);border-color:var(--control-primary)}.demo-root .button.icon{width:40px;min-width:40px;height:40px;min-height:40px}@media (width<=767px){.demo-root .button.icon{width:44px;min-width:44px;height:44px;min-height:44px}}.password-toggle{border-radius:var(--control-radius);justify-content:center;align-items:center;min-width:40px;height:40px;min-height:40px;padding:0 6px;display:inline-flex;top:2px;right:4px}@media (width<=767px){.password-toggle{height:44px;min-height:44px;top:0}}input[type=file]{--control-padding:4px 8px}.list-surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;min-width:0;max-width:100%;padding:16px}.mock-list{min-width:0;margin-block:16px}.list-query-toolbar{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:12px;display:flex}.list-search{flex:280px;align-items:end;gap:8px;min-width:0;display:flex}.list-search label{flex:1;gap:6px;min-width:0;display:grid}.list-search-input{align-items:center;display:flex;position:relative}.list-search-input svg{pointer-events:none;color:var(--color-text-muted);position:absolute;left:12px}.list-search-input input{width:100%;min-width:0;padding-left:40px!important}.list-sort-control{gap:6px;min-width:140px;display:grid}.list-filter-chips,.list-bulk{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.list-filter-chips:empty{display:none}.list-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0;display:grid}.list-filter-fields label{gap:6px;min-width:0;display:grid}.list-surface .table-scroll{border-radius:12px}.list-surface th{padding:6px 12px}.list-sort-heading{text-align:left;white-space:nowrap;color:inherit!important;box-shadow:none!important;background:0 0!important;border:0!important;padding:8px 0!important}.list-cell-text{text-overflow:ellipsis;white-space:nowrap;max-width:260px;display:block;overflow:hidden}.list-cell-text.badge{display:inline-block}.list-surface .numeric{text-align:right;font-variant-numeric:tabular-nums}.list-surface td{font-variant-numeric:tabular-nums}.list-surface .record-card{background:var(--color-surface);border-radius:12px}.list-surface .record-card .list-row-actions{justify-content:flex-end;gap:8px;margin:16px 0 0;display:flex}.list-surface .record-card strong{min-width:0}.list-surface .record-card>div>span{flex-shrink:1}.list-surface .record-card>div{flex-wrap:wrap;gap:6px}.list-surface .selected{background:var(--color-primary-soft);outline:1px solid var(--color-primary)}.list-row-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.list-row-actions>.button{min-height:44px}.list-action-menu{border:1px solid var(--color-border);background:var(--color-surface);width:240px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);color:var(--color-text);z-index:1000;border-radius:12px;margin:0;padding:8px;position:fixed;inset:auto;overflow:auto;box-shadow:0 12px 36px #0003}.list-action-menu:popover-open{gap:4px;display:grid}.list-action-menu button,.list-action-menu a{text-align:left;width:100%;min-height:44px;color:var(--color-text);white-space:normal;background:0 0;border:0;justify-content:flex-start;align-items:center;padding:8px 12px;display:flex}.list-action-menu button:hover,.list-action-menu a:hover{background:var(--color-primary-soft)}.list-surface .pagination{flex-wrap:wrap;padding-top:16px}.list-surface .pagination label{align-items:center;gap:8px;display:flex}.list-surface .pagination select{width:84px}.list-surface .pagination .button{min-height:44px}.list-surface .data-toolbar{margin-bottom:12px}@media (width<=767px){.list-query-toolbar{align-items:stretch}.list-search{flex-basis:100%}.list-sort-control{flex:1;min-width:0}.list-filter-fields{grid-template-columns:1fr}.ui-dialog:has(.list-filter-fields){border-radius:0;flex-direction:column;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:16px;display:flex;overflow:auto}.ui-dialog:has(.list-filter-fields) .control-actions{background:var(--color-surface);margin-top:auto;padding:12px 0;position:sticky;bottom:0}.list-surface{padding:12px}.list-surface .record-grid{grid-template-columns:1fr}.list-surface .pagination>div{justify-content:space-between;width:100%;display:flex}.list-surface .pagination>div>.button{flex:1}.list-surface .record-card{padding:14px}.list-surface .table-scroll{max-width:100%;overflow:auto}.list-surface .table-scroll table{min-width:640px}}.board-mobile-filter{display:none!important}.board-desktop-filters{margin-top:12px}@media (width<=767px){.board-mobile-filter{margin-block:12px;display:inline-flex!important}.board-desktop-filters{display:none}.list-filter-fields>.demo-filters{grid-template-columns:1fr;width:100%;display:grid}.demo-conversations .list-search{margin-bottom:12px}.demo-conversations .list-search .button{width:44px!important;margin:0!important}}.list-surface .table-scroll,.list-row-actions{position:relative}.list-row-actions{width:max-content;max-width:100%}.list-row-actions>.button{flex:none;white-space:nowrap!important}.mock-list .list-surface .badge{white-space:nowrap;max-width:none;overflow:hidden}.list-surface .badge[data-tone=success]{color:var(--color-success);background:color-mix(in srgb, var(--color-success) 12%, var(--color-surface))}.list-surface .badge[data-tone=warning]{color:var(--color-warning);background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface))}.list-surface .badge[data-tone=danger]{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger) 12%, var(--color-surface))}.list-surface :is(th,td).action-cell{background:var(--color-surface);z-index:1;box-shadow:-4px 0 8px color-mix(in srgb, var(--color-text) 5%, transparent);position:sticky;right:0}.list-surface th.action-cell{background:var(--color-bg)}.list-surface tr.selected td.action-cell{background:var(--color-primary-soft)}.list-card-heading{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;padding-bottom:12px;display:flex}.list-card-heading>div{flex:1;gap:4px;min-width:0;display:grid}.list-card-heading>div>span{color:var(--color-text-muted);font-size:.75rem}.list-card-heading strong{color:var(--color-primary-hover);overflow-wrap:anywhere;display:block;text-align:left!important}.list-card-heading>.badge{flex:none;max-width:100%!important}.list-surface .data-toolbar>.list-create-action{margin-left:auto}.page-header{align-items:flex-start;gap:16px;min-width:0;margin-bottom:24px}.page-header>div{min-width:0}.page-header nav{margin-bottom:8px;font-size:12px}.page-header h1{overflow-wrap:anywhere;margin:0;font-size:clamp(24px,2.2vw,28px);line-height:1.35}.page-header p{color:var(--color-text-muted);max-width:70ch;margin:6px 0 0;font-size:14px;line-height:1.6}.page-header .control-actions{flex-wrap:wrap;justify-content:flex-end;margin:0}.card{border-radius:14px;padding:20px}.demo-root{display:block}.demo-root>h2{margin-top:24px}.demo-root .card h2{font-size:17px;line-height:1.5}.demo-root .section-heading h2{margin:0}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-width:0;margin-bottom:16px;display:flex}.section-heading>div{min-width:0}.section-heading p{margin:6px 0 0}.section-heading .button{flex-shrink:0}.demo-root .card>.section-heading:last-child{margin-bottom:0}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px;display:grid}.metric-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:18px;display:flex}.metric-label{color:var(--color-text-muted);justify-content:space-between;align-items:flex-start;gap:12px;font-size:13px;line-height:1.5;display:flex}.metric-label svg{color:var(--color-primary);flex-shrink:0}.metric-value{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--color-text);font-size:clamp(21px,1.9vw,28px);font-weight:600;line-height:1.3}.metric-value small{margin-left:6px;font-size:12px;display:inline}.metric-card.pending .metric-value{color:var(--color-text-muted);font-size:22px}.metric-support,.demo-root .metric-support{color:var(--color-text-muted);margin:auto 0 0;font-size:12px;line-height:1.5}.job-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-summary{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;margin-bottom:24px;display:grid}.dashboard-summary>section{min-width:0}.dashboard-summary>.card{margin-bottom:0}.dashboard-summary .finance-metrics{margin-bottom:16px}.attention-item{border-bottom:1px solid var(--color-border);padding:8px 0}.dashboard-shortcuts{margin:0 0 24px}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;display:grid}.detail-grid>div{min-width:0}.detail-grid dt{color:var(--color-text-muted);margin-bottom:6px;font-size:12px}.detail-grid dd{overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.6}.evidence-link{padding:12px 0;display:block}.section-tabs,.fleet-tabs{scrollbar-width:thin;flex-wrap:nowrap;gap:8px;max-width:100%;margin:0 0 16px;padding:4px 0 12px;display:flex;overflow-x:auto}.section-tabs>a,.section-tabs>button,.fleet-tabs>a{min-height:44px;color:var(--color-text-muted);white-space:nowrap;border-radius:10px;flex-shrink:0;padding:10px 16px;text-decoration:none}.section-tabs [aria-current=page],.section-tabs [aria-pressed=true],.fleet-tabs [aria-current=page]{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-hover);font-weight:600}.environment-indicator{border:1px solid var(--color-border);letter-spacing:.02em;width:fit-content;color:var(--color-text-muted);background:var(--color-bg);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.user-dropdown .environment-indicator{margin:10px 0}.user-dropdown>a{padding:10px 0;display:block}.demo-management{max-width:1040px}.demo-form{max-width:100%;margin:16px 0}.demo-fields{gap:18px}.demo-form label{gap:7px;min-width:0;font-size:14px;display:grid}.demo-form .field-wide,.form-section-title{grid-column:1/-1}.form-section-title{border-top:1px solid var(--color-border);margin:4px 0 0;padding-top:16px;font-size:15px}.form-panel .demo-form{max-width:960px}.demo-form .control-actions{border-top:1px solid var(--color-border);padding-top:16px}.demo-form textarea{resize:vertical;min-height:104px}.ui-dialog .demo-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.ui-dialog:has(.demo-form){width:min(760px,100vw - 40px)}.ui-dialog:has(.demo-form) footer{border-top:1px solid var(--color-border);padding-top:16px}.ui-dialog .demo-form .button{min-height:44px}@media (width>=1440px){.metric-grid:not(.finance-metrics){grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=1200px){.metric-grid,.job-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-summary{grid-template-columns:1fr}.finance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=767px){.page-header{flex-wrap:wrap;gap:12px;margin-bottom:20px}.page-header>div{width:100%}.page-header>div:last-child .control-actions{justify-content:flex-start}.page-header nav{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.page-header h1{font-size:24px}.card{padding:16px}.metric-grid,.job-metrics,.finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.metric-card{gap:10px;padding:14px}.metric-label{gap:8px;font-size:12px}.metric-value{font-size:22px}.metric-card.pending .metric-value{font-size:20px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dashboard-summary{gap:20px;margin-bottom:20px}.demo-fields,.ui-dialog .demo-fields{grid-template-columns:1fr}.section-heading{gap:12px}.section-heading>.button{max-width:100%}.ui-dialog:has(.demo-form){width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:18px 16px;padding-bottom:max(18px, env(safe-area-inset-bottom));border-radius:0;margin:0}.ui-dialog:has(.demo-form)>header{z-index:2;background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:12px 0;position:sticky;top:-18px}.demo-driver .demo-session{border-color:var(--color-border);background:var(--color-bg);font-size:13px}.form-panel>.section-heading>.button{min-height:44px}}@media (width<=379px){.detail-grid{grid-template-columns:1fr}.metric-label svg{display:none}}@media print{.section-tabs,.page-header .control-actions,.environment-indicator{display:none}}.page-header .control-actions{flex-wrap:nowrap}.page-header .control-actions>.list-row-actions{flex:none;width:auto}.page-header .list-row-actions>.button{width:44px;min-width:44px}.section-heading{flex-direction:row}.asset-summary{border-bottom:1px solid var(--color-border);margin-bottom:12px;padding:18px 0}@media (width<=767px){.page-header .control-actions>.button{flex:1;width:auto}.demo-root .section-heading{flex-direction:row;align-items:center}.demo-root .section-heading>h2{margin:0}.form-panel>.section-heading{flex-wrap:wrap;align-items:flex-start}.form-panel>.section-heading>div{flex:140px}}.login-environment{gap:8px;margin:12px 0 20px;display:grid}.login-environment small{color:var(--color-text-muted);font-size:12px}
