@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-prompt), "Prompt", sans-serif;--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-3\.5{height:calc(var(--spacing) * 3.5)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-current{border-color:currentColor}.border-t-transparent{border-top-color:#0000}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root,[data-theme=light]{--bg:#eef0f5;--surface:#fff;--surface-2:#f4f5f9;--surface-3:#eceef4;--rail-bg:#fff;--rail-fg:#6c757d;--rail-fg-active:#3c8cf3;--rail-hover:#3c8cf314;--rail-active-bg:#3c8cf31f;--tooltip-bg:#1b1d27;--tooltip-fg:#fff;--floatbar-bg:#1b1d27;--sidebar-bg:#fff;--navbar-bg:#fff;--text:#1f2733;--text-muted:#5b6470;--text-faint:#9aa1ab;--border:#e7e9ef;--border-strong:#d6d9e1;--primary:#3c8cf3;--primary-hover:#2f7ce0;--primary-fg:#fff;--primary-soft:#e8f1fe;--primary-soft-fg:#2f7ce0;--accent:#745af2;--accent-soft:#efecfe;--success:#05be8a;--success-soft:#e1f7f1;--warning:#ffa726;--warning-soft:#fdf1dd;--danger:#ef5350;--danger-soft:#fdeceb;--info:#3c8cf3;--info-soft:#e8f1fe;--shadow-sm:0 1px 2px #1416280d;--shadow:0 6px 22px -10px #1c28402e;--shadow-lg:0 22px 56px -20px #1c28404d;--ring:#3c8cf352;--scrim:#0f111e73;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#0e0f15;--surface:#171922;--surface-2:#1f2230;--surface-3:#272b3a;--rail-bg:#0a0b10;--rail-fg:#7e8396;--rail-fg-active:#fff;--rail-hover:#ffffff0f;--rail-active-bg:#3c8cf333;--tooltip-bg:#272b3a;--tooltip-fg:#fff;--floatbar-bg:#20222e;--sidebar-bg:#13151d;--navbar-bg:#13151d;--text:#eef0f7;--text-muted:#9aa0b4;--text-faint:#6a7088;--border:#262a38;--border-strong:#333849;--primary:#3c8cf3;--primary-hover:#56a0f6;--primary-fg:#fff;--primary-soft:#16273e;--primary-soft-fg:#7fb4f7;--accent:#8b74f5;--accent-soft:#231f3f;--success:#14c79a;--success-soft:#0c2a22;--warning:#f5b13d;--warning-soft:#2c2113;--danger:#f4625f;--danger-soft:#2c1817;--info:#56a0f6;--info-soft:#13243b;--shadow-sm:0 1px 2px #0006;--shadow:0 10px 30px -8px #0000008c;--shadow-lg:0 30px 70px -18px #000000b8;--ring:#3c8cf373;--scrim:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark2]{--bg:#101826;--surface:#16233a;--surface-2:#1d2e4b;--surface-3:#243759;--rail-bg:#0a1320;--rail-fg:#8095b5;--rail-fg-active:#fff;--rail-hover:#ffffff0f;--rail-active-bg:#3c8cf338;--tooltip-bg:#1d2e4b;--tooltip-fg:#fff;--floatbar-bg:#172843;--sidebar-bg:#0e1a2c;--navbar-bg:#0e1a2c;--text:#eaf1fb;--text-muted:#9db0cf;--text-faint:#63799c;--border:#22314c;--border-strong:#2e405f;--primary:#3c8cf3;--primary-hover:#58a2f6;--primary-fg:#fff;--primary-soft:#102a45;--primary-soft-fg:#86bdf8;--accent:#8b74f5;--accent-soft:#1d2444;--success:#14c79a;--success-soft:#0d2a23;--warning:#f7bf4f;--warning-soft:#2c2415;--danger:#f4625f;--danger-soft:#2e1a1c;--info:#58a2f6;--info-soft:#102a45;--shadow-sm:0 1px 2px #0006;--shadow:0 10px 30px -8px #0000008c;--shadow-lg:0 30px 70px -18px #000000b3;--ring:#3c8cf373;--scrim:#040c189e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--u:4px;--fs:14.5px;--radius:12px;--radius-lg:16px;--ctrl-h:40px;--row-h:48px;--rail-w:74px;--sidebar-w:272px;--nav-h:62px;--gap:16px;--pad:18px;--icon:20px}[data-density=sm]{--u:3px;--fs:12.5px;--radius:9px;--radius-lg:13px;--ctrl-h:30px;--row-h:34px;--rail-w:60px;--sidebar-w:236px;--nav-h:50px;--gap:10px;--pad:12px;--icon:17px}[data-density=compact]{--u:3.5px;--fs:13.5px;--radius:10px;--radius-lg:14px;--ctrl-h:34px;--row-h:40px;--rail-w:66px;--sidebar-w:252px;--nav-h:56px;--gap:12px;--pad:14px;--icon:18px}[data-density=md]{--u:4px;--fs:14.5px;--radius:12px;--radius-lg:16px;--ctrl-h:40px;--row-h:48px;--rail-w:74px;--sidebar-w:272px;--nav-h:62px;--gap:16px;--pad:18px;--icon:20px}[data-density=lg]{--u:5px;--fs:16px;--radius:14px;--radius-lg:18px;--ctrl-h:46px;--row-h:56px;--rail-w:82px;--sidebar-w:296px;--nav-h:70px;--gap:20px;--pad:22px;--icon:22px}*{box-sizing:border-box}html,body{height:100%}html{background:var(--bg)}body{font-family:var(--font-prompt),"Prompt",sans-serif;font-size:var(--fs);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;transition:background .25s,color .25s}button{cursor:pointer;font-family:inherit}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}table,.tabular{font-variant-numeric:tabular-nums}.icn{width:var(--icon);height:var(--icon);vertical-align:middle;flex:none;display:inline-block}.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}.mob-only{display:none!important}@media (max-width:860px){.mob-hide{display:none!important}.mob-only{display:inline-flex!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:content-box;border:2px solid #0000;border-radius:99px}::-webkit-scrollbar-track{background:0 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes dropIn{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes barGrow{0%{opacity:.4;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes onlinePulse{0%{box-shadow:0 0 0 0 var(--ring)}70%{box-shadow:0 0 0 6px #05be8a00}to{box-shadow:0 0 #05be8a00}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.btn{justify-content:center;align-items:center;gap:calc(var(--u)*2);height:var(--ctrl-h);padding:0 calc(var(--u)*4);border-radius:var(--radius);white-space:nowrap;color:inherit;background:0 0;border:none;font-size:.92em;font-weight:500;transition:background .15s,transform .1s,box-shadow .15s,border-color .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-sm{height:calc(var(--ctrl-h) - 8px);padding:0 calc(var(--u)*3);font-size:.82em}.btn-primary{background:var(--primary);color:var(--primary-fg);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-hover);box-shadow:0 8px 18px -10px var(--primary);transform:translateY(-1px)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-outline{background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.btn-outline:hover{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-warning{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning)}@supports (color:color-mix(in lab, red, red)){.btn-warning{border:1px solid color-mix(in srgb,var(--warning) 42%,var(--border))}}.btn-warning:hover{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.btn-warning:hover{background:color-mix(in srgb,var(--warning) 18%,var(--surface))}}.btn-warning:hover{border-color:var(--warning)}.btn-edit{background:var(--warning);color:#3a2200;box-shadow:var(--shadow-sm)}.btn-edit:hover{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.btn-edit:hover{background:color-mix(in srgb,var(--warning) 85%,#000 15%)}}.btn-edit:hover{box-shadow:0 8px 18px -10px var(--warning);transform:translateY(-1px)}.btn-attach{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.btn-attach:hover{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.btn-attach:hover{background:color-mix(in srgb,var(--accent) 82%,#000 18%)}}.btn-attach:hover{box-shadow:0 8px 18px -10px var(--accent);transform:translateY(-1px)}.btn-success{background:var(--success);color:#fff;box-shadow:var(--shadow-sm)}.btn-success:hover{background:var(--success)}@supports (color:color-mix(in lab, red, red)){.btn-success:hover{background:color-mix(in srgb,var(--success) 82%,#000 18%)}}.btn-success:hover{box-shadow:0 8px 18px -10px var(--success);transform:translateY(-1px)}.btn:disabled{opacity:.48;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-icon{width:var(--ctrl-h);height:var(--ctrl-h);border-radius:var(--radius);color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex;position:relative}.btn-icon:hover{background:var(--surface-2);color:var(--text)}.chip{align-items:center;gap:calc(var(--u));padding:calc(var(--u)*.7) calc(var(--u)*2.2);border-radius:99px;font-size:.78em;font-weight:600;line-height:1;display:inline-flex}.chip .dot{border-radius:99px;flex:none;width:7px;height:7px}.chip-success{background:var(--success-soft);color:var(--success)}.chip-warning{background:var(--warning-soft);color:var(--warning)}.chip-danger{background:var(--danger-soft);color:var(--danger)}.chip-info{background:var(--info-soft);color:var(--info)}.chip-muted{background:var(--surface-2);color:var(--text-muted)}.chip-accent{background:var(--accent-soft);color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.field-label{color:var(--text-muted);margin-bottom:calc(var(--u)*1.5);font-size:.82em;font-weight:500;display:block}.field-help{margin-top:calc(var(--u)*1.4);color:var(--text-faint);font-size:.76em;line-height:1.45;display:block}.input{width:100%;height:var(--ctrl-h);padding:0 calc(var(--u)*3);border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text);transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--text-faint)}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.textarea{height:auto;min-height:104px;padding-top:calc(var(--u)*2.5);padding-bottom:calc(var(--u)*2.5);resize:vertical;line-height:1.55}.textarea-sm{min-height:78px}.avatar{background:var(--primary);color:var(--primary-fg);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex;overflow:hidden}.skel{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:800px 100%;border-radius:6px;animation:1.3s linear infinite shimmer}.kbd{background:var(--surface);border:1px solid var(--border);color:var(--text-faint);border-radius:6px;padding:2px 7px;font-size:11px;font-weight:600}.login-wrap{background:var(--bg);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow:auto}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:404px;box-shadow:var(--shadow-lg);padding:40px;animation:.5s cubic-bezier(.2,.9,.3,1) both loginIn}@keyframes loginIn{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}.login-logo{background:var(--primary);color:#fff;width:46px;height:46px;box-shadow:0 8px 22px -10px var(--primary);border-radius:13px;flex:none;place-items:center;font-weight:700;display:grid}.login-top{justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px;display:flex}.login-brand{align-items:center;gap:14px;min-width:0;display:flex}.login-brand-title{color:var(--text);margin:0;font-size:1.04em;font-weight:700;line-height:1.2}.login-brand-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:.82em;line-height:1.35;overflow:hidden}.login-theme-toggle{width:36px;height:36px;color:var(--text-muted);background:0 0;border:0;border-radius:12px;flex:none;place-items:center;transition:background .15s,color .15s,transform .12s;display:grid}.login-theme-toggle:hover{background:var(--surface-2);color:var(--text)}.login-theme-toggle:active{transform:translateY(1px)}.login-theme-toggle .icn{width:18px;height:18px}.login-heading{margin-bottom:26px}.login-heading h1{color:var(--text);margin:0;font-size:1.58em;font-weight:700;line-height:1.15}.login-heading p{color:var(--text-muted);margin:10px 0 0;font-size:.92em;line-height:1.55}.login-label{margin-bottom:8px}.login-input-wrap{margin-bottom:18px;position:relative}.login-input{padding-left:38px;font-weight:500}.login-input-wrap:has(.login-eye) .login-input{padding-right:42px}.login-eye{width:28px;height:28px;color:var(--text-muted);background:0 0;border:0;border-radius:9px;place-items:center;transition:background .15s,color .15s;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.login-eye:hover{background:var(--surface-2);color:var(--text)}.login-eye .icn{width:17px;height:17px}.login-meta-row{justify-content:space-between;align-items:center;gap:14px;margin:-2px 0 24px;display:flex}.login-remember{color:var(--text-muted);align-items:center;gap:9px;min-width:0;font-size:.9em;font-weight:500;display:inline-flex}.login-remember input{opacity:0;pointer-events:none;position:absolute}.login-remember span{border:2px solid var(--border-strong);background:var(--surface);border-radius:6px;flex:none;place-items:center;width:18px;height:18px;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-grid}.login-remember span:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:8px;height:4px;transition:transform .15s;transform:rotate(-45deg)scale(0)}.login-remember input:checked+span{background:var(--primary);border-color:var(--primary)}.login-remember input:checked+span:after{transform:rotate(-45deg)scale(1)}.login-remember input:focus-visible+span{box-shadow:0 0 0 3px var(--ring)}.login-link{color:var(--primary);white-space:nowrap;font-size:.9em;font-weight:600;text-decoration:none}.login-link:hover{text-decoration:underline}.login-card .btn-primary{height:48px;font-weight:700}.login-card .btn-primary .icn{width:17px;height:17px}.login-footnote{color:var(--text-faint);text-align:center;margin-top:18px;font-size:.78em;line-height:1.6}@media (max-width:720px){.login-wrap{align-items:center;padding:18px}.login-card{max-width:404px;margin:auto;padding:34px 28px}.login-top{margin-bottom:28px}.login-heading{margin-bottom:24px}.login-brand-sub{white-space:normal}}@media (max-height:620px){.login-wrap{align-items:flex-start}}.in-icon{width:17px;height:17px;color:var(--text-faint);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.helper.err{color:var(--danger);margin-top:6px;font-size:.78em}.shell{height:100vh;padding:var(--gap);gap:var(--gap);display:flex;overflow:hidden}@media (max-width:860px){.shell{gap:0;padding:0}}.rail{width:var(--rail-w);background:var(--rail-bg);border-radius:var(--radius-lg);padding:calc(var(--u)*3) 0;align-items:center;gap:calc(var(--u)*1.5);box-shadow:var(--shadow-sm);flex-direction:column;flex:none;transition:width .22s;display:flex}.rail-logo{width:calc(var(--rail-w) - var(--u)*6);aspect-ratio:1;border-radius:var(--radius);background:var(--primary);color:#fff;margin-bottom:calc(var(--u)*2);box-shadow:0 6px 16px -8px var(--primary);justify-content:center;align-items:center;font-weight:700;display:flex}.rail-logo:has(img){box-shadow:none;background:0 0}.login-logo:has(img){box-shadow:none;background:0 0}.sb-ws .avatar:has(img){box-shadow:none;background:0 0}.side-nav-brand .avatar:has(img){box-shadow:none;background:0 0}.rail-items{gap:calc(var(--u)*1.2);width:100%;padding:0 calc(var(--u)*2);scrollbar-width:none;flex-direction:column;flex:1;align-items:center;display:flex;overflow:hidden auto}.rail-items::-webkit-scrollbar{display:none}.rail-btn{width:100%;height:calc(var(--rail-w) - var(--u)*5);border-radius:var(--radius);color:var(--rail-fg);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;transition:background .15s,color .15s;display:flex;position:relative}.rail-btn span{letter-spacing:.1px;white-space:nowrap;text-overflow:ellipsis;text-align:center;max-width:100%;font-size:9px;font-weight:500;overflow:hidden}.rail-btn:hover{background:var(--rail-hover);color:var(--rail-fg-active)}.rail-btn.active{background:var(--rail-active-bg);color:var(--rail-fg-active)}.rail-btn.active:before{content:"";background:var(--primary);border-radius:99px;width:3px;position:absolute;top:22%;bottom:22%;left:-9px}.rail-foot{width:100%;padding:0 calc(var(--u)*2)}.sidebar{width:var(--sidebar-w);background:var(--sidebar-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex:none;transition:width .22s,margin .22s,opacity .2s;display:flex;overflow:hidden}.sidebar[data-open=false]{width:0;margin-left:calc(var(--gap)*-1);opacity:0;pointer-events:none;border-width:0}.sb-head{padding:var(--pad);justify-content:space-between;align-items:center;gap:var(--u);border-bottom:1px solid var(--border);display:flex}.sb-ws{align-items:center;gap:calc(var(--u)*2.5);min-width:0;display:flex}.sb-ws .avatar{border-radius:9px;width:30px;height:30px;font-size:13px}.sb-ws .nm{white-space:nowrap;text-overflow:ellipsis;font-size:.95em;font-weight:600;overflow:hidden}.sb-ws .sub{color:var(--text-faint);font-size:.74em}.sb-body{padding:calc(var(--u)*2.5);flex:1;overflow-y:auto}.sb-group{margin-top:calc(var(--u)*3)}.sb-group:first-child{margin-top:0}.sb-glabel{letter-spacing:.6px;text-transform:uppercase;color:var(--text-faint);padding:calc(var(--u)*1.5) calc(var(--u)*2);font-size:.72em;font-weight:600}.sb-item{align-items:center;gap:calc(var(--u)*2.5);padding:calc(var(--u)*2) calc(var(--u)*2.5);border-radius:var(--radius);color:var(--text-muted);text-align:left;background:0 0;border:none;width:100%;font-size:.92em;transition:background .15s,color .15s;display:flex;position:relative}.sb-item i{width:calc(var(--icon) - 2px);height:calc(var(--icon) - 2px);flex:none}.sb-txt{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.sb-item:hover{background:var(--surface-2);color:var(--text)}.sb-item.active{background:var(--primary-soft);color:var(--primary-soft-fg);font-weight:500}.sb-item .count{background:var(--surface-2);color:var(--text-muted);border-radius:99px;flex:none;padding:1px 7px;font-size:.78em;font-weight:600}.side-nav{width:var(--sidebar-w);background:var(--sidebar-bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;flex:none;transition:width .22s,margin .22s,opacity .2s;display:flex;overflow:hidden}.side-nav[data-collapsed=true]{width:0;margin-left:calc(var(--gap)*-1);opacity:0;pointer-events:none;border-width:0}.side-nav-head{padding:var(--pad);justify-content:space-between;align-items:center;gap:var(--u);border-bottom:1px solid var(--border);display:flex}.side-nav-brand{align-items:center;gap:calc(var(--u)*2.5);min-width:0;display:flex}.side-nav-brand .avatar{border-radius:9px;width:30px;height:30px;font-size:13px}.side-nav-brand .nm{white-space:nowrap;text-overflow:ellipsis;font-size:.95em;font-weight:600;overflow:hidden}.side-nav-brand .sub{color:var(--text-faint);font-size:.74em}.side-nav-body{padding:calc(var(--u)*2.5);flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.side-cat{align-items:center;gap:calc(var(--u)*2.5);padding:calc(var(--u)*2.2) calc(var(--u)*2.5);border-radius:var(--radius);color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;width:100%;text-decoration:none;transition:background .15s,color .15s,transform .15s;display:flex;position:relative}.side-cat .icn{width:var(--icon);height:var(--icon);flex:none;transition:color .15s}.side-cat-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.side-cat:hover{background:var(--surface-2);color:var(--primary);transform:translate(3px)}.side-cat.active{background:var(--primary-soft);color:var(--primary-soft-fg);font-weight:600}.side-chevron{color:var(--text-faint);flex:none;transition:transform .15s;transform:rotate(180deg);width:14px!important;height:14px!important}.side-group.expanded>.side-cat .side-chevron{transform:rotate(270deg)}.side-group.expanded>.side-cat{color:var(--text)}.side-sub-wrap{grid-template-rows:0fr;transition:grid-template-rows .22s;display:grid}.side-group.expanded .side-sub-wrap{grid-template-rows:1fr}.side-sub{padding:0 0 0 calc(var(--u)*6);flex-direction:column;gap:1px;min-height:0;display:flex;overflow:hidden}.side-group.expanded .side-sub{padding-top:2px;padding-bottom:6px}.side-sub-item{align-items:center;gap:calc(var(--u)*2);padding:calc(var(--u)*1.6) calc(var(--u)*2.5);border-radius:var(--radius);color:var(--text-muted);font-size:.9em;text-decoration:none;transition:background .15s,color .15s,transform .15s;display:flex}.side-sub-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.side-sub-item:hover{background:var(--surface-2);color:var(--primary);transform:translate(3px)}.side-sub-item.active{background:var(--primary-soft);color:var(--primary-soft-fg);font-weight:500}.side-sub-item .count{background:var(--surface-2);color:var(--text-muted);border-radius:99px;flex:none;padding:1px 7px;font-size:.76em;font-weight:600}.side-sub-item.active .count{background:var(--primary);color:var(--primary-fg)}.folder-icon-wrap{flex:none;width:24px;height:16px;display:inline-block;position:relative}.folder-icon-wrap-sub{width:16px;height:11px}.folder-icon{--fi-back:#d97706;--fi-p3:#fff;--fi-p2:#f4f4f5;--fi-p1:#e4e4e7;--fi-front-a:#f59e0b;--fi-front-b:#fbbf24;transform-origin:0 0;perspective:100px;width:24px;height:16px;position:absolute;top:0;left:0}.folder-icon-sub{--fi-back:#9ca3af;--fi-p3:#a1a1aa;--fi-p2:#d4d4d8;--fi-p1:#e4e4e7;--fi-front-a:#9ca3af;--fi-front-b:#d1d5db}.folder-icon-wrap-sub .folder-icon{transform:scale(.667)}.fi-back{background:var(--fi-back);border-radius:0 4px 4px;position:absolute;inset:0}.fi-back:after{content:"";background:var(--fi-back);border-radius:2px 2px 0 0;width:8px;height:2px;position:absolute;bottom:100%;left:0}.fi-page{transform-origin:bottom;border-radius:3px;transition:transform .4s cubic-bezier(.68,-.55,.265,1.55);position:absolute;inset:2px 2px 0}.fi-page-3{background:var(--fi-p3)}.fi-page-2{background:var(--fi-p2)}.fi-page-1{background:var(--fi-p1)}.fi-front{transform-origin:bottom;background:linear-gradient(to top,var(--fi-front-b),var(--fi-front-a));border-radius:4px 0 4px 4px;width:100%;height:70%;transition:transform .25s,box-shadow .25s;position:absolute;bottom:0;left:0}.fi-front:after{content:"";background:var(--fi-front-a);border-radius:2px 2px 0 0;width:14px;height:2px;position:absolute;bottom:100%;right:0}.side-cat:hover .fi-page-3,.side-sub-item:hover .fi-page-3,.side-cat.active .fi-page-3,.side-sub-item.active .fi-page-3{transform:translateY(-3px)rotate(-6deg)}.side-cat:hover .fi-page-2,.side-sub-item:hover .fi-page-2,.side-cat.active .fi-page-2,.side-sub-item.active .fi-page-2{transform:translateY(-6px)rotate(5deg)}.side-cat:hover .fi-page-1,.side-sub-item:hover .fi-page-1,.side-cat.active .fi-page-1,.side-sub-item.active .fi-page-1{transform:translateY(-9px)rotate(-4deg)}.side-cat:hover .fi-front,.side-sub-item:hover .fi-front,.side-cat.active .fi-front,.side-sub-item.active .fi-front{box-shadow:inset 0 6px 10px var(--fi-front-a),inset 0 -6px 10px var(--fi-front-b);transform:rotateX(-40deg)}.sb-item.active .count{background:var(--primary);color:var(--primary-fg)}.main{gap:var(--gap);flex-direction:column;flex:1;min-width:0;display:flex}@media (max-width:860px){.main{gap:0}}.navbar{height:var(--nav-h);background:var(--navbar-bg);border:1px solid var(--border);border-radius:var(--radius-lg);z-index:80;align-items:center;gap:calc(var(--u)*2.5);padding:0 var(--pad);box-shadow:var(--shadow-sm);flex:none;display:flex;position:relative}.nav-title{flex-direction:column;min-width:0;display:flex}.nav-title .t{white-space:nowrap;font-size:1.05em;font-weight:600;line-height:1.1}.nav-title .b{color:var(--text-faint);align-items:center;gap:5px;font-size:.72em;display:flex}.nav-right{align-items:center;gap:calc(var(--u)*1.5);margin-left:auto;display:flex}.nav-right>.btn,.notice-wrap>.btn-icon,.nav-profile{z-index:72;position:relative}.nav-badge{background:var(--danger);color:#fff;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--navbar-bg);pointer-events:none;z-index:2;border-radius:99px;justify-content:center;align-items:center;padding:0 4px;font-size:9.5px;font-weight:700;line-height:1;display:flex;position:absolute;top:-3px;right:-3px}.notice-wrap{display:flex;position:relative}.nav-profile{background:0 0;border:none;border-radius:99px;align-items:center;gap:9px;max-width:200px;padding:4px 12px 4px 4px;transition:background .15s;display:flex}.nav-profile:hover{background:var(--surface-2)}.np-av{width:var(--ctrl-h);height:var(--ctrl-h);border-radius:calc(var(--radius) + 2px);background:var(--primary);color:var(--primary-fg);box-shadow:inset 0 0 0 1px var(--border);flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex;position:relative}@supports (color:color-mix(in lab, red, red)){.np-av{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 72%,transparent)}}.np-av img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.profile-avatar img{object-fit:cover;width:100%;height:100%;display:block}.np-online{background:var(--success);width:11px;height:11px;box-shadow:0 0 0 2.5px var(--navbar-bg);border-radius:99px;position:absolute;bottom:-1px;right:-1px}.np-online:after{content:"";background:var(--success);border-radius:99px;animation:2s ease-out infinite onlinePulse;position:absolute;inset:0}.np-meta{text-align:left;flex-direction:column;min-width:0;line-height:1.2;display:flex}.np-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.85em;font-weight:600;overflow:hidden}.np-status{color:var(--success);font-size:.7em;font-weight:600}@media (max-width:820px){.nav-profile .np-meta{display:none}.nav-profile{gap:0;padding:3px}}.content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex:1;overflow-y:auto}@media (max-width:860px){.content{border:none;border-radius:0}}.page{padding:clamp(16px,3vw,30px);animation:.25s pageIn}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--gap);margin-bottom:var(--gap);flex-wrap:wrap;display:flex}.page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.page-h1{font-size:1.6em;font-weight:600;line-height:1.1}.page-sub{color:var(--text-muted);margin-top:4px;font-size:.92em}@media (max-width:640px){.page-head{align-items:stretch}.page-actions{justify-content:stretch;width:100%}.page-actions .btn,.page-actions form{flex:100%}.page-actions form .btn{width:100%}}.seg-tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;gap:6px;width:fit-content;max-width:100%;padding:5px;display:flex}.seg-tab{border-radius:var(--radius);color:var(--text-muted);background:0 0;border:none;align-items:center;gap:7px;padding:7px 14px;font-size:.9em;font-weight:500;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.seg-tab:hover{color:var(--text)}.seg-tab.is-active{background:var(--surface);color:var(--primary-soft-fg);box-shadow:var(--shadow-sm)}.seg-count{font-variant-numeric:tabular-nums;background:var(--surface-3);color:var(--text-muted);border-radius:99px;padding:1px 7px;font-size:.8em}.seg-tab.is-active .seg-count{background:var(--primary-soft);color:var(--primary-soft-fg)}.req-list{margin-top:var(--gap);flex-direction:column;gap:12px;display:flex}.req-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:11px;padding:16px 18px;transition:box-shadow .18s,border-color .18s;display:flex}.req-card:hover{box-shadow:var(--shadow)}.req-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.req-who{align-items:center;gap:11px;min-width:0;display:flex}.req-avatar{background:var(--primary-soft);width:40px;height:40px;color:var(--primary-soft-fg);border-radius:12px;flex:none;place-items:center;font-size:1.05em;font-weight:600;display:grid}.req-whotext{flex-direction:column;min-width:0;line-height:1.25;display:flex}.req-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.req-code{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.78em}.req-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.92em;display:flex}.req-type{color:var(--text);font-weight:500}.req-dot{color:var(--text-faint)}.req-reason{color:var(--text-muted);background:var(--surface-2);border-radius:10px;margin:0;padding:9px 12px;font-size:.9em;line-height:1.5}.req-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:11px;display:flex}.req-no{color:var(--text-faint);font-size:.8em}.req-actions{gap:8px;margin-left:auto;display:flex}.req-empty{margin-top:var(--gap);text-align:center;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);padding:48px 20px}.form-error{color:var(--danger);margin:0;font-size:.9em;font-weight:500}.inline-notice{margin-bottom:var(--gap);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:.9em;display:flex}.inline-notice-danger{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.inline-notice-danger{border-color:color-mix(in srgb,var(--danger) 32%,var(--border))}}.inline-notice-danger{background:var(--danger-soft);color:var(--danger)}.inline-notice .btn-icon{flex:none;width:28px;height:28px}.detail-grid{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;display:grid}.detail-grid strong{color:var(--text);font-size:.92em;line-height:1.45;display:block}@media (max-width:560px){.detail-grid{grid-template-columns:1fr}}.tech-job-grid{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));display:grid}.tech-job-card{--tech-act-h:var(--ctrl-h);min-width:0}.tech-admin-note{color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin:0;padding:9px 12px;font-size:.86em;line-height:1.5}.tech-schedule-note{color:var(--text-muted);border:1px solid var(--primary);flex-direction:column;gap:3px;margin:0;font-size:.86em;line-height:1.45;display:flex}@supports (color:color-mix(in lab, red, red)){.tech-schedule-note{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))}}.tech-schedule-note{border-radius:var(--radius);background:var(--primary-soft);padding:9px 12px}.tech-schedule-note strong{color:var(--primary-soft-fg)}.tech-schedule-note span{color:var(--text)}.tech-schedule-note small{color:var(--text-muted);line-height:1.35}.tech-state-note{color:var(--text-muted);margin:0;font-size:.86em;line-height:1.45}.tech-state-note.done{color:var(--success)}.tech-complete-form{flex-direction:column;gap:10px;width:100%;display:flex}.tech-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tech-complete-form .req-actions{justify-content:flex-end}.tech-returned-actions{flex-direction:column;gap:10px;width:100%;display:flex}.tech-card-actions{flex-direction:column;gap:8px;display:flex}.tech-card-actions>.btn{width:100%;height:var(--tech-act-h);flex:none}.tech-card-actions .req-actions{flex-direction:column;align-items:stretch;gap:8px;width:100%;margin-left:0}.tech-card-actions .req-actions>form{width:100%}.tech-card-actions .req-actions>form>.btn,.tech-card-actions .req-actions>.btn{width:100%;height:var(--tech-act-h);flex:none}.tech-card-actions .tech-state-note{margin:0}.tech-parts{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:11px;display:flex}.tech-parts-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.tech-parts-title{color:var(--text);font-size:.92em;font-weight:600}.tech-parts-sub{color:var(--text-faint);margin-top:2px;font-size:.78em;line-height:1.35}.tech-parts-empty{color:var(--text-faint);margin:0;font-size:.84em}.tech-part-lines{flex-direction:column;gap:2px;display:flex}.tech-part-line{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;display:flex}.tech-part-line:last-child{border-bottom:none}.tech-part-main{flex-direction:column;gap:2px;min-width:0;display:flex}.tech-part-main strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.86em;overflow:hidden}.tech-part-main span{color:var(--text-muted);font-size:.8em;line-height:1.35}.tech-part-report{flex-direction:column;gap:10px;display:flex}.tech-part-draft{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.tech-part-draft-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.tech-part-draft-main{flex-direction:column;gap:2px;min-width:0;display:flex}.tech-part-draft-main strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.86em;overflow:hidden}.tech-part-draft-main span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.tech-part-builder{border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:minmax(0,1fr) 96px;align-items:end;gap:8px;padding:11px;display:grid}.tech-part-builder-note{grid-column:1/-1}.tech-part-add{grid-column:1/-1;justify-self:start}.tech-part-submit{justify-content:flex-end;display:flex}.tech-list{flex-direction:column;gap:10px;display:flex}.tech-table-head{grid-template-columns:1.1fr 1.3fr 1.1fr 1fr .9fr .95fr;gap:14px;padding:0 18px;display:grid}.tech-table-head span{color:var(--text-faint);font-size:.78em;font-weight:600}.tech-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:14px 18px;transition:box-shadow .18s,border-color .18s;display:flex}.tech-row:hover{box-shadow:var(--shadow)}.tech-row-main{grid-template-columns:1.1fr 1.3fr 1.1fr 1fr .9fr .95fr;align-items:center;gap:14px;display:grid}.tech-cell{flex-direction:column;gap:2px;min-width:0;display:flex}.tech-cell strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.92em;overflow:hidden}.tech-cell>span{color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.tech-cell-customer{flex-direction:row;align-items:center;gap:9px}.tech-cell-customer .req-avatar{border-radius:9px;flex:none;width:32px;height:32px;font-size:.9em}.tech-cell-customer>div{flex-direction:column;gap:1px;min-width:0;display:flex}.tech-cell-customer>div strong,.tech-cell-customer>div span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tech-cell-status{align-items:flex-end}.tech-chip-sm{width:max-content}.tech-row-stage{align-items:center;gap:12px;display:flex}.tech-stage{flex:none;gap:3px;width:150px;display:flex}.tech-stage-seg{background:var(--surface-3);border-radius:99px;flex:1;height:6px}.tech-stage-seg.is-done{background:var(--primary)}.tech-row-note{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:.84em;line-height:1.4;overflow:hidden}.tech-actions-row{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.tech-actions-row>.tech-attachment-panel{flex:140px;min-width:0}.tech-actions-row .req-actions{flex-wrap:wrap;flex:140px;gap:8px;min-width:0;margin-left:0;display:flex}.tech-actions-row .req-actions>form{flex:140px;min-width:0}.tech-actions-row .req-actions>form>.btn,.tech-actions-row .req-actions>.btn{width:100%;height:var(--tech-act-h,var(--ctrl-h));min-width:0}.tech-actions-row .tech-state-note{flex:auto;align-self:center;margin:0}.tech-kv-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tech-kv{flex-direction:column;gap:2px;min-width:0;display:flex}.tech-kv strong{color:var(--text);font-size:.9em}.tech-kv>span{color:var(--text-faint);font-size:.8em}.tech-clickable{cursor:pointer;border-radius:var(--radius-lg)}.tech-clickable:hover .tech-row,.tech-clickable:hover .tech-job-card{border-color:var(--primary)}.tech-clickable.is-active .tech-row,.tech-clickable.is-active .tech-job-card{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.tech-fb-jobinfo{flex-direction:column;align-items:flex-start;gap:1px;padding:0 12px 0 6px}.tech-fb-jobinfo strong{color:var(--text);white-space:nowrap;font-size:.95em}.fb-count-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;color:var(--text-muted);font-weight:500;overflow:hidden}.tech-floatbar .tech-actions-row{flex-wrap:nowrap}.tech-floatbar .tech-attachment-panel .attachment-open-btn{white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tech-list .chip,.tech-job-card .chip{color:#fff;font-weight:700}.tech-list .chip-warning,.tech-job-card .chip-warning{background:var(--warning)}.tech-list .chip-info,.tech-job-card .chip-info{background:var(--info)}.tech-list .chip-success,.tech-job-card .chip-success{background:var(--success)}.tech-list .chip-danger,.tech-job-card .chip-danger{background:var(--danger)}.tech-list .chip-muted,.tech-job-card .chip-muted{background:#6c757d}.tech-list .tech-job-card{display:none}@media (max-width:900px){.tech-list{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));display:grid}.tech-table-head,.tech-list .tech-row{display:none}.tech-list .tech-job-card{display:flex}.tech-stage{width:100%}}@media (max-width:640px){.tech-job-grid,.tech-form-grid,.tech-part-builder{grid-template-columns:1fr}.tech-part-add{justify-self:stretch}.tech-part-submit .btn{width:100%}.tech-part-line{flex-direction:column;align-items:flex-start}.req-foot{align-items:stretch}.req-actions{justify-content:flex-end;width:100%}.req-actions .btn{flex:1}.tech-job-card{--tech-act-h:44px}.tech-card-actions{gap:10px}}.att-chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.att-tag{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.72em;font-weight:600}.att-tag.late{color:var(--warning);background:var(--warning-soft)}.att-tag.warn{color:var(--danger);background:var(--danger-soft)}.att-times{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.att-time{flex-direction:column;gap:1px;display:flex}.att-time-cap{color:var(--text-muted);font-size:.72em}.att-time-val{color:var(--text);font-size:1.05em;font-weight:600}.att-time-arrow{color:var(--text-faint)}.att-time.worked{text-align:right;margin-left:auto}.att-time.worked .att-time-val{color:var(--primary-soft-fg,var(--primary))}.calendar-toolbar{justify-content:space-between;align-items:center;gap:var(--gap);margin-bottom:var(--gap);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;padding:12px;display:flex}.calendar-switcher{align-items:center;gap:10px;min-width:0;display:flex}.btn-icon-round{width:var(--ctrl-h);height:var(--ctrl-h);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-icon-round:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-strong)}.btn-icon-round .icn{width:16px;height:16px}.calendar-filter{align-items:center;gap:8px;min-width:260px;display:flex}.calendar-filter .input{min-width:170px}.calendar-month-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);width:100%;overflow:hidden}.calendar-weekdays{background:var(--surface);border-bottom:1px solid var(--border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{text-align:left;color:var(--text-faint);text-transform:uppercase;letter-spacing:.02em;padding:10px 12px;font-size:.74em;font-weight:600}.calendar-grid{background:var(--surface);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);cursor:pointer;flex-direction:column;gap:4px;min-height:158px;padding:8px;transition:background .15s;display:flex}.calendar-day:focus{outline:none}.calendar-day:nth-child(7n){border-right:none}.calendar-day:nth-last-child(-n+7){border-bottom:none}.calendar-day.is-outside{opacity:.55}.calendar-day:hover,.calendar-day:focus,.calendar-day:focus-within{background:var(--surface-2)}.calendar-day-head{justify-content:space-between;align-items:center;gap:6px;display:flex}.calendar-day-num{min-width:22px;height:22px;color:var(--text);border-radius:6px;justify-content:center;align-items:center;padding:0 5px;font-size:.86em;font-weight:600;display:inline-flex}.calendar-day.is-outside .calendar-day-num{color:var(--text-faint)}.calendar-day.is-today .calendar-day-num{background:var(--text);color:var(--surface)}.calendar-event-stack{flex-direction:column;gap:3px;min-width:0;display:flex}.calendar-event{background:var(--surface-2);width:100%;min-width:0;color:var(--text);border:none;border-radius:6px;flex-direction:column;gap:3px;padding:4px 7px;text-decoration:none;display:flex}.calendar-event:hover{filter:brightness(.97)}.cal-event-row{align-items:center;gap:6px;width:100%;min-width:0;display:flex}.cal-event-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:inherit;flex:1;font-size:.76em;font-weight:600;overflow:hidden}.calendar-event time{color:inherit;opacity:.8;white-space:nowrap;flex:none;font-size:.68em;font-weight:600}.cal-event-avatars{align-items:center;display:flex}.cal-event-avatar{width:16px;height:16px;color:inherit;background:#ffffff52;border:1.5px solid #ffffffd9;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-left:-5px;font-size:.55em;font-weight:700;display:flex;overflow:hidden}.cal-event-avatar:first-child{margin-left:0}.cal-event-avatar img{object-fit:cover;width:100%;height:100%}.cal-event-avatar-more{background:#0000003d;font-size:.52em}.calendar-event.is-success{background:var(--success);color:#fff}.calendar-event.is-warning{background:var(--warning);color:#fff}.calendar-event.is-danger{background:var(--danger);color:#fff}.calendar-event.is-primary,.calendar-event.is-info{background:var(--info);color:#fff}.calendar-event.is-muted{color:#fff;background:#6c757d}.calendar-more{color:var(--text-muted);padding:2px 4px;font-size:.72em}.calendar-day-dots{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;display:none}.cal-dot{background:var(--primary);border-radius:50%;flex:none;width:5px;height:5px}.cal-dot.is-warning{background:var(--warning)}.cal-dot.is-success{background:var(--success)}.cal-dot.is-danger{background:var(--danger)}.cal-dot.is-primary,.cal-dot.is-info{background:var(--primary)}.cal-dot.is-muted{background:var(--text-faint)}.cal-dot.is-accent{background:var(--accent)}.calendar-legend{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;gap:7px 14px;padding:12px;display:none}.calendar-legend span{color:var(--text-muted);align-items:center;gap:6px;font-size:.76em;display:flex}.calendar-legend .cal-dot{width:7px;height:7px}button.calendar-event{width:100%;font:inherit;text-align:left;cursor:pointer}.calendar-event:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-color:var(--primary)}.calendar-empty{color:var(--text-muted);background:var(--surface-2);border-radius:var(--radius);margin:0;padding:12px;font-size:.86em;line-height:1.45}.calendar-detail-modal{max-width:640px}.calendar-detail-status{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-detail-section{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;gap:8px;padding:12px;display:flex}.calendar-detail-section-head{color:var(--text);align-items:center;gap:8px;font-size:.9em;font-weight:600;display:flex}.calendar-detail-section-head .icn{width:18px;height:18px;color:var(--primary)}.calendar-detail-section p{color:var(--text-muted);white-space:pre-wrap;margin:0;font-size:.9em;line-height:1.55}.jd-people-list{flex-direction:column;gap:10px;display:flex}.jd-people-item{align-items:center;gap:10px;min-width:0;display:flex}.jd-people-item div{flex-direction:column;gap:1px;min-width:0;display:flex}.jd-people-item strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.88em;overflow:hidden}.jd-people-item span{color:var(--text-muted);font-size:.74em}.jd-avatar.jd-avatar-empty{background:var(--surface-3);color:var(--text-faint)}.calendar-detail-foot .btn{min-width:112px}@media (max-width:1180px){.calendar-day{min-height:140px}}@media (max-width:1024px){.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-switcher{justify-content:space-between}.calendar-filter{width:100%;min-width:0}.calendar-filter .input{min-width:0}}@media (max-width:640px){.calendar-detail-grid{grid-template-columns:1fr}.calendar-detail-foot{flex-direction:column-reverse}.calendar-detail-foot .btn{justify-content:center;width:100%}}@media (max-width:560px){.calendar-day{justify-content:flex-start;align-items:center;gap:3px;min-height:46px;padding:5px 2px}.calendar-event-stack{display:none}.calendar-day-head{flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%}.calendar-day-num{font-size:.92em}.calendar-day-dots,.calendar-legend{display:flex}}.calendar-view-toggle{flex:none}.date-pop-wrap{position:relative}.date-pop-trigger{height:var(--ctrl-h);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:0 14px;font-size:.9em;font-weight:600;display:inline-flex}.date-pop-trigger:hover{border-color:var(--border-strong);background:var(--surface-2)}.date-pop-trigger .icn{width:16px;height:16px;color:var(--text-muted);flex:none}.date-pop-trigger .caret{color:var(--text-muted);font-size:.7em}.date-pop{width:290px;padding:14px;top:calc(100% + 8px);left:50%;transform:translate(-50%)}.date-pop-nav{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.date-pop-nav strong{color:var(--text);font-size:.9em}.date-pop-nav button{border:1px solid var(--border);background:var(--surface);width:28px;height:28px;color:var(--text-muted);cursor:pointer;border-radius:8px;flex:none;place-items:center;display:grid}.date-pop-nav button .icn{width:14px;height:14px}.date-pop-nav button:hover{background:var(--surface-2);color:var(--text)}.date-pop-weekdays{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;display:grid}.date-pop-weekdays span{text-align:center;color:var(--text-faint);padding:4px 0;font-size:.7em;font-weight:600}.date-pop-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.date-pop-day{aspect-ratio:1;color:var(--text);border-radius:9px;justify-content:center;align-items:center;font-size:.84em;font-weight:500;text-decoration:none;display:flex}.date-pop-day:hover{background:var(--surface-2)}.date-pop-day.is-outside{color:var(--text-faint)}.date-pop-day.is-today{box-shadow:inset 0 0 0 1.5px var(--primary);color:var(--primary);font-weight:700}.date-pop-day.is-selected{background:var(--primary);color:#fff;box-shadow:none;font-weight:700}@media (max-width:480px){.date-pop{width:min(290px,86vw);left:0;transform:none}}.calendar-day-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);width:100%;min-width:0;padding:14px}.day-view{--hour-h:60px;flex-direction:column;gap:12px;display:flex}.day-grid{border:1px solid var(--border);border-radius:var(--radius);max-height:640px;display:grid;position:relative;overflow:auto}.day-corner{z-index:4;background:var(--surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);position:sticky;top:0;left:0}.day-col-head{z-index:3;background:var(--surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);align-items:center;gap:8px;min-width:0;padding:9px 10px;display:flex;position:sticky;top:0}.day-col-head div{flex-direction:column;gap:1px;min-width:0;display:flex}.day-col-head strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.84em;overflow:hidden}.day-col-head small{color:var(--text-muted);white-space:nowrap;font-size:.72em}.day-col-avatar{background:var(--primary);color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.64em;font-weight:700;display:grid;overflow:hidden}.day-col-avatar img{object-fit:cover;width:100%;height:100%}.day-gutter{z-index:2;background:var(--surface-2);border-right:1px solid var(--border);position:sticky;left:0}.day-hour-label{color:var(--text-faint);text-align:center;padding:0 2px;font-size:.66em;position:absolute;left:0;right:0;transform:translateY(-50%)}.day-col{border-right:1px solid var(--border);background:var(--surface);position:relative}.day-col:last-child{border-right:none}.day-col-empty{color:var(--text-faint);justify-content:center;align-items:center;font-size:.74em;display:flex;position:absolute;inset:0}.day-event{background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer;font:inherit;border:none;border-radius:8px;flex-direction:column;gap:1px;padding:4px 7px;display:flex;position:absolute;overflow:hidden}.day-event time{color:inherit;opacity:.85;white-space:nowrap;font-size:.64em;font-weight:700}.day-event strong{white-space:nowrap;text-overflow:ellipsis;color:inherit;font-size:.78em;overflow:hidden}.day-event small{color:inherit;opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.64em;overflow:hidden}.day-event:hover{filter:brightness(.96);box-shadow:0 4px 10px -6px #00000059}.day-event:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.day-event.is-warning{background:var(--warning);color:#fff}.day-event.is-success{background:var(--success);color:#fff}.day-event.is-danger{background:var(--danger);color:#fff}.day-event.is-primary,.day-event.is-info{background:var(--info);color:#fff}.day-event.is-muted{color:#fff;background:#6c757d}.day-event.is-urgent:after{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 2px var(--surface);border-radius:50%;position:absolute;top:4px;right:4px}.day-now-line{background:var(--danger);pointer-events:none;z-index:3;height:2px;position:absolute;left:0;right:0;transform:translateY(-50%)}.day-now-dot{background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:-4px;transform:translateY(-50%)}.day-now-badge{background:var(--danger);color:#fff;white-space:nowrap;border-radius:5px;padding:1px 5px;font-size:.62em;font-weight:700;line-height:1.6;position:absolute;top:50%;left:6px;transform:translateY(-50%)}@media (max-width:860px){.day-view{--hour-h:50px}.day-grid{max-height:60vh}}@media (max-width:640px){.calendar-day-panel{padding:10px}.day-col-head{padding:7px 6px}.day-col-head small{display:none}.day-col-avatar{width:24px;height:24px}}.stat-grid{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.stat{padding:var(--pad);border-radius:var(--radius-lg);background:var(--stat-c,var(--primary));position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.stat{background:color-mix(in srgb, var(--stat-c,var(--primary)) 94%, #2a3142)}}.stat{border:1px solid #ffffff29;transition:transform .2s cubic-bezier(.2,.9,.3,1),box-shadow .2s;box-shadow:inset 0 1px #ffffff3d,0 4px 14px -10px #080c1c59}.stat:hover{transform:translateY(-4px);box-shadow:inset 0 1px #ffffff3d,0 12px 22px -12px #080c1c66}.stat .ic{width:46px;height:46px;margin-bottom:calc(var(--u)*3);background:#fff;border-radius:13px;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.stat .ic{background:color-mix(in srgb, #fff 86%, var(--stat-c,var(--primary)))}}.stat .ic{color:var(--stat-c,var(--primary));box-shadow:inset 0 1px #fff9}.stat .lbl{color:#ffffffeb;text-shadow:0 1px 2px #00000038;font-size:.84em;font-weight:500}.stat .val{letter-spacing:-.5px;color:#fff;text-shadow:0 1px 3px #00000047;margin-top:2px;font-size:1.85em;font-weight:700;line-height:1.2}.stat .trend{margin-top:calc(var(--u)*1.5);color:#fff;text-shadow:0 1px 2px #00000038;align-items:center;gap:3px;font-size:.78em;font-weight:600;display:inline-flex}@media (max-width:600px){.stat-grid{gap:calc(var(--u)*2.5);grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:calc(var(--u)*3.5);min-height:154px}.stat .ic{width:40px;height:40px;margin-bottom:calc(var(--u)*2.2);border-radius:12px}.stat .lbl{font-size:.8em;line-height:1.35}.stat .val{font-size:1.55em}.stat .trend{font-size:.72em;line-height:1.35}}.grid-2{gap:var(--gap);grid-template-columns:1.6fr 1fr;display:grid}@media (max-width:1100px){.grid-2,.report-chart-grid{grid-template-columns:1fr}}@media (max-width:860px){.overview-chart-grid{grid-template-columns:1fr}}.panel{padding:var(--pad)}.link-inline{font:inherit;color:var(--primary);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;margin:0;padding:0;text-decoration:underline}.link-inline:hover{opacity:.8}.machine-ov-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.machine-ov-cell{border-radius:var(--radius);border:1px solid var(--border);border-left:3px solid var(--mc);background:var(--surface-2);padding:12px}.machine-ov-val{color:var(--mc);font-size:1.5em;font-weight:800;line-height:1.1}.machine-ov-lbl{color:var(--text-muted);margin-top:2px;font-size:.8em}@media (max-width:520px){.machine-ov-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.cost-search{margin-bottom:var(--gap);flex-wrap:wrap;gap:8px;display:flex}.cost-search .input{flex:1;min-width:220px}.cost-search-note{margin:calc(var(--gap) * -.5) 0 var(--gap);color:var(--text-muted);font-size:.85em}.stock-toast{z-index:120;background:var(--danger);color:#fff;border-radius:10px;max-width:90vw;padding:10px 16px;font-size:.88em;font-weight:600;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px -8px #00000073}.toast-viewport{top:calc(var(--nav-h) + 12px);z-index:200;pointer-events:none;flex-direction:column;gap:12px;max-width:min(380px,90vw);display:flex;position:fixed;right:18px}.toast{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);pointer-events:auto;align-items:center;gap:11px;padding:12px 38px 12px 12px;animation:.25s cubic-bezier(.2,.9,.3,1.2) toast-in;display:flex;position:relative}.toast--leaving{animation:.28s forwards toast-out}.toast-badge{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.toast-badge .icn{stroke:#fff;width:13px;height:13px}.toast-glyph{font-family:Georgia,Times New Roman,serif;font-size:.82em;font-weight:800;line-height:1}.toast-glyph--i{font-style:italic}.toast--success{background:var(--success-soft);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.toast--success{border-color:color-mix(in srgb,var(--success) 45%,var(--border))}}.toast--success .toast-badge{background:var(--success)}.toast--warning{background:var(--warning-soft);border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.toast--warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--border))}}.toast--warning .toast-badge{background:var(--warning)}.toast--error{background:var(--danger-soft);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.toast--error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}}.toast--error .toast-badge{background:var(--danger)}.toast--info{background:var(--info-soft);border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.toast--info{border-color:color-mix(in srgb,var(--info) 45%,var(--border))}}.toast--info .toast-badge{background:var(--info)}.toast-msg{color:var(--text);flex:1;font-size:.86em;font-weight:700;line-height:1.4}.toast-close{width:20px;height:20px;color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;right:12px}.toast-close:hover{background:var(--text)}@supports (color:color-mix(in lab, red, red)){.toast-close:hover{background:color-mix(in srgb,var(--text) 10%,transparent)}}.toast-close:hover{color:var(--text-muted)}.toast-close .icn{width:12px;height:12px}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-8px)scale(.96)}}.stock-withdraw-modal{max-width:660px}.withdraw-lines{flex-direction:column;gap:8px;max-height:340px;margin-top:14px;display:flex;overflow-y:auto}.withdraw-line{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.withdraw-line.is-over{border-color:var(--danger);background:var(--danger-soft)}.withdraw-thumb{display:flex}.withdraw-line-main{flex-direction:column;gap:2px;min-width:0;display:flex}.withdraw-line-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9em;overflow:hidden}.withdraw-remaining{color:var(--text-muted);font-size:.78em}.withdraw-remaining.is-empty{color:var(--danger);font-weight:600}.withdraw-qty{align-items:center;gap:6px;display:flex}.withdraw-qty .input{text-align:right;width:88px}.withdraw-unit{color:var(--text-faint);min-width:28px;font-size:.8em}.withdraw-error{color:var(--danger);grid-column:2/-1;font-size:.76em;font-weight:600}.input-danger{box-shadow:0 0 0 2px var(--danger-soft);border-color:var(--danger)!important}.withdraw-foot-note{color:var(--text-muted);margin-right:auto;font-size:.86em}.withdraw-foot-actions{gap:8px;display:flex}.perm-table th.perm-col,.perm-table td.perm-col{text-align:center;width:118px}.perm-table th.perm-col{white-space:normal;line-height:1.3}.perm-table td.perm-col{padding-top:7px;padding-bottom:7px}.perm-master-row td{background:var(--surface-2);color:var(--text);font-size:.86em;font-weight:600}.perm-section-row td{background:var(--surface-3);color:var(--text);font-size:.92em;font-weight:700}.perm-group-row td{background:var(--surface-2);color:var(--text-muted);font-size:.84em;font-weight:600}.perm-item-label{padding-left:18px}.perm-cell{justify-content:center;align-items:center;display:flex}.cb.cb-locked{opacity:.5;cursor:not-allowed;box-shadow:none}.cb.cb-locked:hover{border-color:var(--primary);box-shadow:none}.perm-bulk-btn{border:1px solid var(--border-strong);background:var(--surface);height:26px;color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:0 13px;font-size:.76em;font-weight:600;transition:background .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex}.perm-bulk-btn:hover{box-shadow:0 0 0 3px var(--ring)}.perm-bulk-btn.on{color:var(--primary-soft-fg);border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.perm-bulk-btn.on{border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}}.perm-bulk-btn.on:hover{background:var(--primary-soft);border-color:var(--primary)}.perm-bulk-btn.off{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.perm-bulk-btn.off{border-color:color-mix(in srgb,var(--danger) 34%,var(--border))}}.perm-bulk-btn.off:hover{background:var(--danger-soft);border-color:var(--danger)}.perm-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.perm-hint{color:var(--text-muted);font-size:.82em}.panel-head{margin-bottom:var(--pad);justify-content:space-between;align-items:center;display:flex}.panel-head .pt{font-size:1.02em;font-weight:600}.report-month-form{align-items:center;gap:8px;display:flex}.report-month-input{width:auto;min-width:150px}@media (max-width:640px){.report-month-form{flex:100%}.report-month-input{flex:1;min-width:0}}.overview-chart-grid,.report-chart-grid{gap:var(--gap);margin-bottom:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.report-chart-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.chart-panel{flex-direction:column;min-height:100%;display:flex}.chart-panel .panel-head{margin-bottom:calc(var(--u)*2)}.chart-sub{color:var(--text-muted);margin:4px 0 0;font-size:.82em;line-height:1.45}.chart-empty{text-align:center;min-height:220px;color:var(--text-faint);border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface-2);place-items:center;font-size:.9em;display:grid}.apexcharts-canvas,.apexcharts-svg{max-width:100%}.lst{flex-direction:column;display:flex}.lst-row{align-items:center;gap:calc(var(--u)*3);padding:calc(var(--u)*2.5) 0;border-bottom:1px solid var(--border);display:flex}.lst-row:last-child{border-bottom:none}.report-kpi-grid{gap:var(--gap);margin-bottom:var(--gap);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.report-kpi{padding:var(--pad);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ic label""ic value""hint hint";align-items:center;gap:4px 12px;display:grid;position:relative}.report-kpi-icon{border-radius:var(--radius);background:var(--primary-soft);width:42px;height:42px;color:var(--primary);grid-area:ic;place-items:center;display:grid}.report-kpi-label{color:var(--text-muted);grid-area:label;font-size:.82em;font-weight:600}.report-kpi-value{color:var(--text);white-space:nowrap;text-overflow:ellipsis;grid-area:value;font-size:1.45em;font-weight:700;line-height:1.2;overflow:hidden}.report-kpi-hint{color:var(--text-faint);grid-area:hint;margin-top:6px;font-size:.8em;line-height:1.45}.report-grid{gap:var(--gap);margin-bottom:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,360px);display:grid}.report-grid.wide-left{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}.report-link{color:var(--primary);font-size:.86em;font-weight:600;text-decoration:none}.report-link:hover{text-decoration:underline}.report-bars{flex-direction:column;gap:12px;display:flex}.report-bar-row{flex-direction:column;gap:7px;display:flex}.report-bar-label{justify-content:space-between;align-items:center;gap:10px;display:flex}.report-bar-label strong{color:var(--text);font-size:.9em}.report-bar-track{background:var(--surface-2);border-radius:99px;height:8px;overflow:hidden}.report-bar-track span{height:100%;width:var(--bar-w);border-radius:inherit;background:var(--primary);transition:width .18s;display:block}.report-money-list{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.report-money-list div{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.report-money-list div:last-child{border-bottom:none}.report-money-list span{color:var(--text-muted);font-size:.86em}.report-money-list strong{color:var(--text);white-space:nowrap;font-size:.92em}.report-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.report-split div{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);padding:12px}.report-split span{color:var(--text-muted);font-size:.82em;display:block}.report-split strong{color:var(--text);margin-top:3px;font-size:1.2em;display:block}.report-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow:auto}.report-table{border-collapse:collapse;width:100%;min-width:480px}.report-table th,.report-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:10px 12px;font-size:.88em}.report-table th{background:var(--surface-2);color:var(--text-faint);text-transform:uppercase;letter-spacing:.35px;font-size:.76em;font-weight:700}.report-table tr:last-child td{border-bottom:none}.report-table td{color:var(--text)}.report-table td[colspan]{color:var(--text-faint);text-align:center;padding:24px 12px}.report-list{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.report-grid>.card{flex-direction:column;min-height:0;display:flex;overflow:hidden}.report-grid>.card>.panel{flex-direction:column;flex:1;min-height:0;display:flex}.report-grid .report-list,.report-grid .report-table-wrap{flex:1;min-height:0;overflow-y:auto}.report-list-row{border-bottom:1px solid var(--border);background:var(--surface);color:var(--text);justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;text-decoration:none;display:flex}.report-list-row:last-child{border-bottom:none}.report-list-row.link-row:hover{background:var(--surface-2)}.report-list-row div{flex-direction:column;gap:2px;min-width:0;display:flex}.report-list-row strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.9em;overflow:hidden}.report-list-row span:not(.chip){color:var(--text-muted);font-size:.8em;line-height:1.4}.expense-row{align-items:flex-start}.expense-row>strong{flex:none}.expense-receipt-link{color:var(--primary);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-top:4px;font-size:.78em;font-weight:600;text-decoration:none;overflow:hidden}.expense-receipt-link:hover{text-decoration:underline}.onsite-summary{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.onsite-summary div{min-width:0}.onsite-summary strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.92em;display:block;overflow:hidden}.onsite-summary span{color:var(--text-muted);text-align:right;font-size:.82em;line-height:1.45}.onsite-form-block{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:12px}.report-list-num{text-align:right;flex:none;align-items:flex-end}.report-list-num strong{font-size:.9em}.report-empty{color:var(--text-faint);text-align:center;padding:24px 12px;font-size:.88em}@media (max-width:900px){.report-grid,.report-grid.wide-left{grid-template-columns:1fr}}@media (max-width:640px){.report-kpi-grid{grid-template-columns:1fr}.report-kpi{padding:calc(var(--u)*3.5)}.report-kpi-value{font-size:1.25em}.report-list-row{flex-direction:column;align-items:flex-start;gap:7px}.report-list-num{text-align:left;align-items:flex-start}.expense-row>strong{width:100%}.onsite-summary{flex-direction:column}.onsite-summary span{text-align:left}}.combo{position:relative}.combo-trigger{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:8px;display:flex}.combo-trigger:disabled{opacity:.6;cursor:not-allowed}.combo-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.combo-placeholder{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.combo-caret{width:16px;height:16px;color:var(--text-faint);flex:none;transition:transform .15s;transform:rotate(-90deg)}.combo-trigger[aria-expanded=true]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.combo-trigger[aria-expanded=true] .combo-caret{transform:rotate(90deg)}.combo-panel{z-index:60;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);max-height:300px;box-shadow:var(--shadow-lg);flex-direction:column;animation:.14s both comboIn;display:flex;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}@keyframes comboIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.combo-search{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px 10px;display:flex}.combo-search svg{width:16px;height:16px;color:var(--text-faint);flex:none}.combo-search input{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1}.combo-search-clear{flex:none;width:24px;height:24px}.combo-list{flex-direction:column;gap:2px;padding:6px;display:flex;overflow-y:auto}.combo-option{text-align:left;border-radius:calc(var(--radius) - 4px);cursor:pointer;width:100%;color:var(--text);background:0 0;border:0;flex-direction:row;align-items:center;gap:10px;padding:8px 10px;display:flex}.combo-option.is-active{background:var(--surface-3)}.combo-option.is-selected{background:var(--primary-soft);color:var(--primary-soft-fg)}.combo-option-text{flex-direction:column;gap:1px;min-width:0;display:flex}.combo-option-label{text-overflow:ellipsis;font-size:.95em;line-height:1.3;overflow:hidden}.combo-option-hint{color:var(--text-faint);text-overflow:ellipsis;font-size:.78em;overflow:hidden}.combo-empty{color:var(--text-faint);text-align:center;padding:16px 12px;font-size:.88em}.combo-trigger-label{flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.combo-thumb{background:var(--surface-3);border:1px solid var(--border);border-radius:8px;flex:none;place-items:center;width:30px;height:30px;display:grid;overflow:hidden}.combo-thumb img{object-fit:cover;width:100%;height:100%}.combo-thumb-fallback{color:var(--text-muted);text-transform:uppercase;font-size:.66em;font-weight:700;line-height:1}.combo-trigger .combo-thumb{border-radius:6px;width:24px;height:24px}.settings-section-label{color:var(--text-muted);border-bottom:1px solid var(--border);margin-top:6px;padding-bottom:6px;font-size:.92em;font-weight:700}.settings-logo-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:132px minmax(0,1fr);align-items:stretch;gap:14px;padding:14px;display:grid}.settings-logo-preview-panel{border:1px solid var(--border);border-radius:calc(var(--radius) - 1px);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:9px;min-width:0;padding:10px;display:flex}.settings-logo-current{border-radius:calc(var(--radius) + 2px);background:var(--primary);color:#fff;border:1px solid var(--primary);flex:none;place-items:center;width:96px;height:96px;font-size:1.55em;font-weight:800;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.settings-logo-current{border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border))}}.settings-logo-current img{object-fit:contain;background:var(--surface);width:100%;height:100%;padding:10px}.settings-logo-current-label{max-width:100%;color:var(--text-muted);text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:.76em;font-weight:600;line-height:1.35;overflow:hidden}.settings-logo-field{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.settings-logo-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-logo-title-row .field-label{color:var(--text);margin:0 0 4px;font-size:.93em;font-weight:700}.settings-logo-title-row p{color:var(--text-muted);margin:0;font-size:.82em;line-height:1.45}.settings-logo-badge{border:1px solid var(--border);background:var(--surface);min-height:28px;color:var(--text-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:.76em;font-weight:700;display:inline-flex}.settings-logo-badge .icn{width:15px;height:15px;color:var(--primary)}.settings-logo-picker{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface);grid-template-columns:104px minmax(0,1fr);align-items:center;gap:12px;padding:10px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.settings-logo-picker:focus-within{border-color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.settings-logo-picker:focus-within{background:color-mix(in srgb,var(--primary) 7%,var(--surface))}}.settings-logo-picker:focus-within{box-shadow:0 0 0 3px var(--ring)}.settings-logo-live-preview{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:var(--surface-2);width:104px;height:82px;color:var(--text-faint);text-align:center;place-items:center;padding:8px;font-size:.76em;font-weight:600;line-height:1.35;display:grid;overflow:hidden}.settings-logo-live-preview img,.settings-logo-live-preview video{object-fit:contain;width:100%;height:100%;display:block}.settings-logo-live-preview .upload-preview-doc{width:100%;height:100%}.settings-logo-file-stack{flex-direction:column;justify-content:center;gap:3px;min-width:0;display:flex}.settings-logo-file-input{border:1px solid var(--border);border-radius:calc(var(--radius) - 1px);background:var(--surface-2);color:#0000;width:100%;min-height:42px;font:inherit;padding:6px 8px 6px 6px;font-size:0;line-height:1;transition:border-color .15s,background .15s,box-shadow .15s}.settings-logo-file-input:hover{border-color:var(--border-strong);background:var(--surface-3)}.settings-logo-file-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.settings-logo-file-input::file-selector-button{border-radius:calc(var(--radius) - 5px);background:var(--primary);height:30px;color:var(--primary-fg);cursor:pointer;border:0;margin:0 10px 0 0;padding:0 13px;font-family:inherit;font-size:12px;font-weight:700;line-height:1;transition:background .15s}.settings-logo-file-input::file-selector-button:hover{background:var(--primary-hover)}.settings-logo-picker .field-help{color:var(--text-muted);margin-top:3px;font-size:.76em}.settings-logo-tips{flex-wrap:wrap;gap:6px;display:flex}.settings-logo-tips span{border:1px solid var(--border);background:var(--surface);min-height:26px;color:var(--text-muted);border-radius:999px;align-items:center;padding:0 9px;font-size:.76em;font-weight:700;line-height:1.2;display:inline-flex}.settings-logo-remove{border-color:var(--danger);margin-top:2px}@supports (color:color-mix(in lab, red, red)){.settings-logo-remove{border-color:color-mix(in srgb,var(--danger) 24%,var(--border))}}.settings-logo-remove{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.settings-logo-remove{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}}.settings-toggle.settings-logo-remove input:checked+span{background:var(--danger)}.settings-toggle.settings-logo-remove strong{color:var(--danger)}@media (max-width:640px){.settings-logo-card{grid-template-columns:1fr;padding:12px}.settings-logo-preview-panel{flex-direction:row;justify-content:flex-start;align-items:flex-start}.settings-logo-current{width:74px;height:74px;font-size:1.2em}.settings-logo-title-row{flex-direction:column;gap:8px}.settings-logo-picker{grid-template-columns:76px minmax(0,1fr);gap:10px;padding:9px}.settings-logo-live-preview{width:76px;height:64px}.settings-logo-file-input::file-selector-button{width:100%;margin:0;font-size:12px}}.rail-logo img,.sb-ws .avatar img,.login-logo img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.rail-logo,.login-logo{overflow:hidden}.history-qty{flex:none;align-items:center;gap:10px;display:flex}.history-pager{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.history-pager-info{color:var(--text-muted);margin-right:auto;font-size:.82em}.history-pager .btn{height:32px;padding:0 14px;font-size:.85em}.history-pager .is-disabled{opacity:.45;pointer-events:none}.jd-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.jd-toolbar .jd-back,.jd-toolbar .repair-head-actions{margin-bottom:14px}.jd-back{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:14px;font-size:.88em;text-decoration:none;display:inline-flex}.jd-back:hover{color:var(--primary)}.jd-back svg{width:16px;height:16px}.jd-avatar{background:var(--primary);color:#fff;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.72em;font-weight:700;display:grid;overflow:hidden}.jd-avatar img{object-fit:cover;width:100%;height:100%}.jd-avatar-sm{width:26px;height:26px;font-size:.64em}.jd-hero-card{padding:18px}.jd-hero{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;display:grid}.jd-hero-icon{border-radius:var(--radius);background:var(--primary-soft);width:58px;height:58px;color:var(--primary);flex:none;place-items:center;display:grid}.jd-hero-icon svg{width:28px;height:28px}.jd-hero-main{min-width:0}.jd-hero-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.jd-hero-title h1{color:var(--text);letter-spacing:0;margin:0;font-size:1.62em;font-weight:750;line-height:1.08}.jd-hero-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:.92em;line-height:1.45;overflow:hidden}.jd-hero-stats{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:18px;display:flex}.jd-stat{flex-direction:column;gap:4px;min-width:86px;display:flex}.jd-stat>span{color:var(--text-faint);font-size:.78em}.jd-stat strong{color:var(--text);font-size:.95em}.jd-progress-row{align-items:center;gap:10px;display:flex}.jd-progress{background:var(--surface-3);border-radius:99px;width:132px;height:8px;overflow:hidden}.jd-progress span{height:100%;width:var(--p);background:var(--success);border-radius:99px;transition:width .3s;display:block}.jd-members{align-items:center;display:flex}.jd-members .jd-avatar{border:2px solid var(--surface);margin-left:-8px}.jd-members .jd-avatar:first-child{margin-left:0}.jd-members-more{background:var(--surface-3);border:2px solid var(--surface);width:32px;height:32px;color:var(--text-muted);border-radius:50%;place-items:center;margin-left:-8px;font-size:.7em;font-weight:700;display:grid}.jd-members-empty{color:var(--text-faint);font-size:.82em}.jd-quick-grid{border-top:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:18px;padding-top:16px;display:grid}.jd-quick-item{border-left:1px solid var(--border);grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:0 14px;display:grid}.jd-quick-item:first-child{border-left:none;padding-left:0}.jd-quick-icon{background:var(--surface-2);width:34px;height:34px;color:var(--primary);border-radius:10px;flex:none;place-items:center;display:grid}.jd-quick-icon .icn{width:18px;height:18px}.jd-quick-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.jd-quick-copy>span{color:var(--text-faint);font-size:.76em;font-weight:600}.jd-quick-copy strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.93em;line-height:1.3;overflow:hidden}.jd-quick-copy small{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78em;line-height:1.35;display:-webkit-box;overflow:hidden}.jd-quick-tone{border-radius:99px;width:max-content;max-width:100%;padding:2px 7px;font-size:.82em!important}.jd-quick-tone.chip-warning{background:var(--warning);color:#3a2200}.jd-grid{gap:var(--gap);margin-top:var(--gap);grid-template-columns:minmax(0,1.55fr) minmax(320px,.9fr);align-items:start;display:grid}.jd-col{gap:var(--gap);flex-direction:column;min-width:0;display:flex}.jd-panel{flex-direction:column;display:flex}.jd-panel-head{align-items:flex-start;margin-bottom:14px}.jd-panel-head>div{flex-direction:column;gap:3px;min-width:0;display:flex}.jd-panel-sub{color:var(--text-faint);font-size:.8em;line-height:1.35}.jd-timeline{scrollbar-width:thin;gap:0;margin:4px 0 6px;padding:10px 0 8px;display:flex;overflow-x:auto}.jd-tl-step{text-align:center;flex-direction:column;flex:1 0 92px;align-items:center;gap:3px;padding-top:20px;display:flex;position:relative}.jd-tl-step:before{content:"";background:var(--border-strong);width:100%;height:2px;position:absolute;top:7px;left:-50%}.jd-tl-step:first-child:before{display:none}.jd-tl-dot{background:var(--surface);border:2px solid var(--border-strong);z-index:1;border-radius:50%;width:16px;height:16px;position:absolute;top:0}.jd-tl-step.is-done .jd-tl-dot{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 3px var(--surface)}.jd-tl-step.is-current .jd-tl-dot{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 5px var(--primary-soft)}.jd-tl-step.is-done:before,.jd-tl-step.is-current:before{background:var(--primary)}.jd-tl-label{color:var(--text);font-size:.8em;font-weight:600}.jd-tl-step:not(.is-done):not(.is-current) .jd-tl-label{color:var(--text-faint)}.jd-tl-time{color:var(--text-faint);white-space:nowrap;font-size:.7em}.jd-note-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:14px;display:grid}.jd-note-block{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);min-width:0;padding:12px}.jd-note-block .field-label{color:var(--text-muted);margin-bottom:5px}.jd-note-block p{color:var(--text);white-space:pre-wrap;margin:0;font-size:.9em;line-height:1.55}.jd-muted{color:var(--text-faint);font-size:.82em}.jd-inline-user{align-items:center;gap:7px;display:flex}.jd-mini-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.jd-mini-stats span{border-radius:var(--radius);background:var(--surface-2);min-width:0;color:var(--text-muted);text-align:center;padding:9px 10px;font-size:.8em;line-height:1.35}.jd-mini-stats strong{color:var(--text);font-size:1.12em;line-height:1.15;display:block}.jd-activity{flex-direction:column;gap:6px;max-height:430px;padding-right:2px;display:flex;overflow-y:auto}.jd-activity-row{border-radius:var(--radius);border:1px solid #0000;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:10px;display:grid}.jd-activity-row:hover{background:var(--surface-2);border-color:var(--border)}.jd-activity-body{min-width:0}.jd-activity-body strong{color:var(--text);font-size:.86em;line-height:1.35;display:block}.jd-activity-body p{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:4px 0 2px;font-size:.82em;line-height:1.45;display:-webkit-box;overflow:hidden}.jd-activity-meta{color:var(--text-faint);font-size:.74em}.jd-docs{flex-direction:column;gap:8px;display:flex}.jd-doc{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;text-decoration:none;transition:border-color .15s,background .15s;display:grid}.jd-doc:hover{border-color:var(--primary);background:var(--surface-2)}.jd-doc-icon{background:var(--surface-2);border:1px solid var(--border);width:42px;height:42px;color:var(--danger);border-radius:10px;flex:none;place-items:center;display:grid;overflow:hidden}.jd-doc-icon svg{width:18px;height:18px}.jd-doc-icon img,.jd-doc-icon video{object-fit:cover;width:100%;height:100%;display:block}.jd-doc-body{flex-direction:column;flex:1;min-width:0;display:flex}.jd-doc-body strong{white-space:nowrap;text-overflow:ellipsis;font-size:.86em;overflow:hidden}.jd-doc-body span{color:var(--text-faint);font-size:.74em}.jd-doc-go{width:16px;height:16px;color:var(--text-faint);flex:none}.jd-onsite{flex-direction:column;gap:10px;display:flex}.jd-onsite>div{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);padding:10px}.jd-onsite .field-label{margin-bottom:4px}.jd-onsite strong{color:var(--text);font-size:.92em}.jd-onsite p{color:var(--text-muted);margin:2px 0 0;font-size:.9em;line-height:1.5}.jd-review-bar{margin-top:var(--gap);border-radius:var(--radius-lg);background:var(--warning-soft);border:1px solid var(--warning);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.jd-review-bar{border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border))}}.jd-review-bar-text{flex-direction:column;gap:2px;min-width:0;display:flex}.jd-review-bar-text strong{color:var(--text);font-size:.98em}.jd-review-bar-text span{color:var(--text-muted);font-size:.84em}.jd-review-bar .review-actions{flex:none;gap:8px;display:flex}.jd-reopen-bar{background:var(--surface-2);border-color:var(--border)}@media (max-width:1180px){.jd-hero{grid-template-columns:auto minmax(0,1fr)}.jd-hero-stats{border-top:1px solid var(--border);grid-column:1/-1;justify-content:flex-start;padding-top:12px}.jd-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px}.jd-quick-item:nth-child(odd){border-left:none;padding-left:0}}@media (max-width:1100px){.jd-grid{grid-template-columns:1fr}}@media (max-width:640px){.jd-hero-card{padding:14px}.jd-hero{grid-template-columns:1fr;gap:12px}.jd-hero-icon{border-radius:12px;width:46px;height:46px}.jd-hero-title h1{font-size:1.3em}.jd-hero-sub{white-space:normal}.jd-hero-stats{gap:12px}.jd-stat{flex:120px;min-width:0}.jd-progress{width:100%;min-width:96px}.jd-quick-grid{grid-template-columns:1fr;gap:12px}.jd-quick-item{border-left:none;padding:0}.jd-mini-stats{grid-template-columns:1fr}.jd-doc{grid-template-columns:40px minmax(0,1fr)}.jd-doc-go{display:none}}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.rail,.sidebar,.navbar,.mobile-tabs,.mob-nav,.btn,.theme-controls,.page-actions,.inline-notice{display:none!important}.shell{height:auto;padding:0;display:block;overflow:visible}.main{height:auto!important;overflow:visible!important}body{color:#111;background:#fff}.card,.report-kpi{break-inside:avoid;box-shadow:none!important}.report-chart-grid,.report-grid,.report-grid.wide-left{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:repeat(4,1fr)}@page{margin:14mm}}.user-stat-grid{gap:var(--gap);margin-bottom:var(--gap);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.user-stat{padding:var(--pad);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:12px;display:flex}.user-stat-icon{border-radius:var(--radius);background:var(--primary-soft);width:42px;height:42px;color:var(--primary);flex:none;place-items:center;display:grid}.user-stat span{color:var(--text-muted);font-size:.82em;font-weight:600;display:block}.user-stat strong{color:var(--text);margin-top:2px;font-size:1.42em;line-height:1.15;display:block}.user-stat p{color:var(--text-faint);margin:3px 0 0;font-size:.78em;line-height:1.35}.user-stat-icon{text-align:center;font-size:11px;font-weight:700;line-height:1.15}.user-cell{align-items:center;gap:10px;min-width:220px;display:flex}.user-cell div{flex-direction:column;gap:2px;min-width:0;display:flex}.user-cell strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.92em;overflow:hidden}.user-cell span:not(.avatar){color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.user-avatar{background:var(--primary);color:#fff;border-radius:11px;width:34px;height:34px;font-size:11px}.user-avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}@media (max-width:640px){.user-stat-grid{gap:calc(var(--u)*2.5);grid-template-columns:repeat(2,minmax(0,1fr))}.user-stat{padding:calc(var(--u)*3);flex-direction:column;align-items:flex-start}.user-stat-icon{width:36px;height:36px}}.attachment-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:14px;padding:13px;display:flex}.attachment-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.attachment-head strong{color:var(--text);font-size:1.02em;display:block}.attachment-list{flex-direction:column;gap:9px;max-height:320px;padding-right:2px;display:flex;overflow:auto}.attachment-item{border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:var(--surface-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px;display:grid}.attachment-item:hover{border-color:var(--border-strong);background:var(--surface-3);box-shadow:var(--shadow-sm)}.attachment-open{color:var(--text);grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;min-width:0;text-decoration:none;display:grid}.attachment-open:hover .attachment-meta strong{color:var(--primary)}.attachment-preview{background:var(--surface);border:1px solid var(--border);width:54px;height:54px;color:var(--text-muted);border-radius:10px;place-items:center;display:grid;overflow:hidden}.attachment-preview img,.attachment-preview video{object-fit:cover;width:100%;height:100%;display:block}.attachment-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.attachment-meta strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.86em;overflow:hidden}.attachment-meta span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.76em;line-height:1.35;overflow:hidden}.attachment-delete-form{flex:none}.attachment-delete-button{width:34px;height:34px;color:var(--danger);border-radius:9px}.attachment-delete-button:hover{background:var(--danger-soft);color:var(--danger)}.attachment-upload-form{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;display:grid}.attachment-upload-form:not(.is-compact){border:1px solid var(--border);border-radius:calc(var(--radius) + 2px);background:var(--surface-2);padding:10px}.attachment-upload-field{min-width:0;display:flex}.attachment-upload-preview-row{background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--radius);grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;width:100%;padding:10px 12px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.attachment-upload-preview-row:focus-within{border-color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.attachment-upload-preview-row:focus-within{background:color-mix(in srgb,var(--primary) 8%,var(--surface))}}.attachment-upload-preview-row:focus-within{box-shadow:0 0 0 3px var(--ring)}.attachment-live-preview{border-radius:calc(var(--radius) - 1px);background:var(--surface-2);flex:none;width:76px;height:58px}.attachment-file-stack{flex-direction:column;flex:1;min-width:0;display:flex}.attachment-file-input{color:#0000;background:var(--surface-2);cursor:pointer;align-items:center;height:40px;padding:4px 10px 4px 4px;font-size:0;line-height:0;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.attachment-file-input:hover{border-color:var(--border-strong);background:var(--surface-3)}.attachment-file-input:focus,.attachment-file-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.attachment-file-input::file-selector-button{border-radius:calc(var(--radius) - 5px);background:var(--primary-soft);height:30px;color:var(--primary-soft-fg);cursor:pointer;border:0;margin:0 12px 0 0;padding:0 15px;font-family:inherit;font-size:12px;font-weight:700;line-height:1;transition:background .15s,color .15s}.attachment-file-input::file-selector-button:hover{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.attachment-file-input::file-selector-button:hover{background:color-mix(in srgb,var(--primary) 20%,var(--primary-soft))}}.attachment-file-input::file-selector-button:hover{color:var(--primary-soft-fg)}.profile-asset:has(.attachment-live-preview){grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 12px;display:grid}.profile-asset:has(.attachment-live-preview)>.field-label{grid-column:1/-1;margin-bottom:0}.profile-asset .attachment-live-preview{border-style:dashed}.profile-asset .attachment-live-preview>span:not([class]){color:var(--text-muted);padding:0 6px;font-size:.66em;line-height:1.3}.attachment-upload-submit{border-radius:var(--radius);font-weight:700}.attachment-upload-submit-foot{width:100%}.attachment-upload-form:not(.is-compact) .attachment-upload-submit{align-self:stretch;min-width:120px;height:auto;min-height:80px;padding:0 18px}.upload-preview-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:.76em;line-height:1.35;display:block;overflow:hidden}.upload-preview-doc{max-width:100%;color:var(--text-muted);place-items:center;gap:4px;padding:6px;font-size:.72em;display:grid}.upload-preview-doc .icn{width:22px;height:22px;color:var(--primary)}.upload-preview-doc span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.upload-preview-count{text-align:center;width:100%;height:100%;color:var(--text-muted);place-items:center;gap:1px;padding:4px;display:grid!important}.upload-preview-count strong{color:var(--primary);font-size:1.25em;line-height:1}.upload-preview-count span{color:var(--text-muted);font-size:.72em;line-height:1.15}.upload-preview-multi{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:100%;height:100%;padding:4px;display:grid}.upload-preview-thumb{background:var(--surface-2);border:1px solid var(--border);min-width:0;min-height:0;color:var(--text-muted);border-radius:7px;place-items:center;display:grid;overflow:hidden}.upload-preview-thumb img,.upload-preview-thumb video{object-fit:cover;width:100%;height:100%;display:block}.upload-preview-thumb .upload-preview-doc{width:100%;height:100%;padding:2px;font-size:.58em}.upload-preview-thumb .upload-preview-doc .icn{width:16px;height:16px}.upload-preview-more{background:var(--primary-soft);color:var(--primary-soft-fg);border-color:var(--primary);font-size:.78em;font-weight:800}@supports (color:color-mix(in lab, red, red)){.upload-preview-more{border-color:color-mix(in srgb,var(--primary) 24%,var(--border))}}.upload-selected-list{flex-direction:column;gap:6px;max-height:232px;margin-top:8px;padding-right:2px;display:flex;overflow:auto}.upload-selected-item{border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);background:var(--surface);grid-template-columns:36px minmax(0,1fr) 30px;align-items:center;gap:8px;min-width:0;padding:6px;display:grid}.upload-selected-thumb{border:1px solid var(--border);background:var(--surface-2);width:36px;height:36px;color:var(--text-muted);border-radius:8px;place-items:center;display:grid;overflow:hidden}.upload-selected-thumb img,.upload-selected-thumb video{object-fit:cover;width:100%;height:100%;display:block}.upload-selected-thumb .upload-preview-doc{width:100%;height:100%;padding:2px;font-size:.56em}.upload-selected-thumb .upload-preview-doc .icn{width:15px;height:15px}.upload-selected-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.upload-selected-meta strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.upload-selected-meta span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72em;overflow:hidden}.upload-selected-remove{width:28px;height:28px;color:var(--danger);border-radius:8px}.upload-selected-remove:hover{background:var(--danger-soft);color:var(--danger)}.upload-selected-more{color:var(--text-faint);padding:4px 2px;font-size:.72em;line-height:1.35;display:block}.tech-attachment-panel{background:0 0;border:none;gap:8px;padding:0}.attachment-open-btn{justify-content:center}.tech-attachment-panel .attachment-head{align-items:center}.tech-attachment-panel .attachment-head .field-label{margin-bottom:2px}.tech-attachment-panel .attachment-head strong{font-size:.92em}.tech-attachment-panel .job-cost-empty{color:var(--text-muted);margin:0;font-size:.78em;line-height:1.45}.tech-attachment-panel .attachment-list{gap:6px;max-height:236px}.tech-attachment-panel .attachment-item{grid-template-columns:minmax(0,1fr) 30px;gap:6px;padding:6px}.tech-attachment-panel .attachment-open{grid-template-columns:40px minmax(0,1fr);gap:8px}.tech-attachment-panel .attachment-preview{border-radius:9px;width:40px;height:40px}.tech-attachment-panel .attachment-delete-button{border-radius:8px;width:30px;height:30px}.tech-attachment-panel .attachment-upload-form{grid-template-columns:1fr;gap:8px}.tech-attachment-panel .attachment-upload-preview-row{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:10px;padding:8px;display:grid}.tech-attachment-panel .attachment-live-preview{border-radius:10px;width:72px;height:56px}.tech-attachment-panel .attachment-live-preview>span{text-align:center;padding:0 6px;font-size:.72em;line-height:1.25}.tech-attachment-panel .attachment-live-preview>span.upload-preview-multi{gap:3px;padding:3px}.tech-attachment-panel .attachment-live-preview .upload-preview-thumb{border-radius:6px}.tech-attachment-panel .attachment-live-preview .upload-preview-more{font-size:.72em}.tech-attachment-panel .attachment-file-stack{min-width:0}.tech-attachment-panel .attachment-file-input{color:#0000;min-width:0;height:34px;padding:4px;font-size:0;line-height:1}.tech-attachment-panel .attachment-file-input::file-selector-button{width:100%;height:24px;color:var(--primary-soft-fg);margin:0;padding:0 8px;font-size:12px}.tech-attachment-panel .upload-preview-meta{white-space:nowrap;text-overflow:ellipsis;margin-top:5px;font-size:.72em;overflow:hidden}.tech-attachment-panel .upload-selected-list{gap:5px;max-height:188px;margin-top:7px}.tech-attachment-panel .upload-selected-item{border-radius:8px;grid-template-columns:30px minmax(0,1fr) 28px;gap:6px;padding:5px}.tech-attachment-panel .upload-selected-thumb{border-radius:7px;width:30px;height:30px}.tech-attachment-panel .upload-selected-remove{border-radius:7px;width:26px;height:26px}.tech-attachment-panel .field-help{color:var(--text-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:.7em;line-height:1.3;display:-webkit-box;overflow:hidden}.tech-attachment-panel .btn{width:100%;height:34px}.tech-attachment-panel .attachment-open-btn{height:var(--tech-act-h,34px);flex:none}.machine-history-cell{flex-direction:column;gap:2px;min-width:92px;display:flex}.machine-history-cell strong{color:var(--text);font-size:.9em}.machine-history-cell span{color:var(--text-faint);font-size:.78em}.machine-modal,.customer-modal{max-width:860px}.machine-history-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.machine-history-summary div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:12px}.machine-history-summary span{color:var(--text-muted);font-size:.78em;font-weight:600;display:block}.machine-history-summary strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:1.05em;line-height:1.25;display:block;overflow:hidden}.machine-timeline{flex-direction:column;gap:10px;display:flex}.machine-timeline-head{justify-content:space-between;align-items:center;display:flex}.machine-timeline-item{grid-template-columns:18px minmax(0,1fr);gap:10px;display:grid;position:relative}.machine-timeline-item:before{content:"";background:var(--border);width:1px;position:absolute;top:18px;bottom:-12px;left:8px}.machine-timeline-item:last-child:before{display:none}.machine-timeline-marker{background:var(--primary);width:9px;height:9px;box-shadow:0 0 0 4px var(--primary-soft);z-index:1;border-radius:99px;justify-self:center;margin-top:14px}.machine-timeline-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.machine-timeline-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.machine-timeline-top div{flex-direction:column;gap:2px;min-width:0;display:flex}.machine-timeline-top strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.95em;overflow:hidden}.machine-timeline-top span:not(.chip){color:var(--text-muted);font-size:.8em;line-height:1.35}.machine-timeline-note{color:var(--text);margin:0;font-size:.88em;line-height:1.5}.machine-timeline-cost{border-radius:var(--radius);background:var(--surface-2);justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.machine-timeline-cost span{color:var(--text-muted);font-size:.78em;font-weight:600}.machine-timeline-cost strong{color:var(--text);white-space:nowrap;font-size:.92em}.machine-history-lines{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.machine-history-lines div{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.machine-history-lines div:last-child{border-bottom:none}.machine-history-lines span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.82em;overflow:hidden}.machine-history-lines strong{color:var(--text);white-space:nowrap;font-size:.82em}.machine-history-lines.compact div{padding:7px 10px}.machine-history-notes,.machine-history-log{flex-direction:column;gap:6px;display:flex}.machine-history-notes span,.machine-history-log span{color:var(--text-muted);border-radius:var(--radius);background:var(--surface-2);padding:7px 9px;font-size:.8em;line-height:1.45}.machine-history-attachments{flex-wrap:wrap;gap:8px;display:flex}.machine-history-attachments a{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);max-width:100%;color:var(--text);align-items:center;gap:7px;padding:7px 9px;text-decoration:none;display:inline-flex}.machine-history-attachments span{white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:.82em;overflow:hidden}.machine-history-attachments small{color:var(--text-faint);white-space:nowrap;font-size:.74em}.customer-link-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:8px;padding:12px;display:flex}.customer-link-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.customer-link-row:last-child{border-bottom:none;padding-bottom:0}.customer-link-row:first-of-type{padding-top:0}.customer-link-row div{flex-direction:column;gap:2px;min-width:0;display:flex}.customer-link-row strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.9em;overflow:hidden}.customer-link-row span:not(.chip){color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.settings-grid{gap:var(--gap);margin-bottom:var(--gap);grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);display:grid}.settings-panel{padding:var(--pad);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);gap:var(--gap);flex-direction:column;display:flex}.settings-panel-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.settings-panel-head h2{color:var(--text);margin:0;font-size:1.02em;font-weight:600}.settings-panel-head p{color:var(--text-muted);margin:4px 0 0;font-size:.86em;line-height:1.45}.settings-toggle-list{flex-direction:column;gap:10px;display:flex}.settings-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);cursor:pointer;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;padding:12px;display:grid;position:relative}.settings-toggle input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}.settings-toggle>span{background:var(--border-strong);border-radius:99px;width:36px;height:22px;transition:background .15s,box-shadow .15s;position:relative}.settings-toggle>span:after{content:"";width:18px;height:18px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .16s;position:absolute;top:2px;left:2px}.settings-toggle input:checked+span{background:var(--primary)}.settings-toggle input:checked+span:after{transform:translate(14px)}.settings-toggle input:focus-visible+span{box-shadow:0 0 0 3px var(--ring)}.settings-toggle input:disabled+span{opacity:.55}.settings-toggle div{min-width:0}.settings-toggle strong{color:var(--text);font-size:.9em;display:block}.settings-toggle p{color:var(--text-muted);margin:3px 0 0;font-size:.8em;line-height:1.45}.settings-actions{justify-content:flex-end;display:flex}.settings-current{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.settings-current div{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.settings-current div:last-child{border-bottom:none}.settings-current span{color:var(--text-muted);font-size:.82em}.settings-current strong{color:var(--text);text-align:right;font-size:.9em}@media (max-width:900px){.settings-grid{grid-template-columns:1fr}}@media (max-width:640px){.attachment-upload-form{grid-template-columns:1fr}.attachment-upload-form .btn{width:100%}.attachment-upload-preview-row{grid-template-columns:68px minmax(0,1fr);align-items:center;padding:9px}.attachment-live-preview{width:68px;height:54px}.attachment-upload-form:not(.is-compact) .attachment-upload-submit{min-height:42px}.tech-attachment-panel .attachment-upload-preview-row{grid-template-columns:68px minmax(0,1fr);align-items:center}.tech-attachment-panel .attachment-live-preview{width:68px;height:54px}.machine-history-summary{grid-template-columns:1fr}.machine-timeline-top,.machine-timeline-cost,.machine-history-lines div,.customer-link-row{flex-direction:column;align-items:flex-start;gap:5px}.machine-history-lines span,.customer-link-row span:not(.chip){white-space:normal}.settings-actions .btn{width:100%}.settings-current div{flex-direction:column;align-items:flex-start;gap:4px}.settings-current strong{text-align:left}}.table-toolbar{align-items:center;gap:calc(var(--u)*2);margin-bottom:var(--gap);flex-wrap:wrap;display:flex}.tt-search{min-width:240px;max-width:320px;height:var(--ctrl-h);padding:0 calc(var(--u)*3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);flex:240px;align-items:center;gap:8px;display:flex}.tt-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1}.list-controls{margin-bottom:var(--gap)}.list-toolbar{margin-bottom:10px}.list-search{max-width:480px}.list-search .btn{height:calc(var(--ctrl-h) - 8px);padding-inline:12px}.table-seg{height:var(--ctrl-h);flex:none}.table-seg button{min-width:68px}.table-seg a{border-radius:calc(var(--radius) - 3px);min-width:68px;color:var(--text-muted);white-space:nowrap;justify-content:center;align-items:center;padding:7px 6px;font-size:.82em;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.table-seg a.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.table-seg a:hover:not(.on){color:var(--text)}.table-seg a.tone-warning{color:var(--warning)}.table-seg a.tone-info{color:var(--info)}.table-seg a.tone-accent{color:var(--accent)}.table-seg a.tone-success{color:var(--success)}.table-seg a.tone-danger{color:var(--danger)}.table-seg a.tone-warning.on{background:var(--warning);color:#fff;box-shadow:none}.table-seg a.tone-info.on{background:var(--info);color:#fff;box-shadow:none}.table-seg a.tone-accent.on{background:var(--accent);color:#fff;box-shadow:none}.table-seg a.tone-success.on{background:var(--success);color:#fff;box-shadow:none}.table-seg a.tone-danger.on{background:var(--danger);color:#fff;box-shadow:none}.tt-count{color:var(--text-faint);white-space:nowrap;margin-left:auto;font-size:.82em;font-weight:600}.list-actions{margin:calc(var(--u)*-1) 0 var(--gap);justify-content:flex-end;gap:8px;display:flex}.export-btn{white-space:nowrap}.pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.pager-size{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:4px;padding:3px;display:flex}.pager-size a{border-radius:calc(var(--radius) - 4px);min-width:34px;height:28px;color:var(--text-muted);justify-content:center;align-items:center;font-size:.8em;font-weight:600;text-decoration:none;display:inline-flex}.pager-size a.on{background:var(--surface);color:var(--primary-soft-fg);box-shadow:var(--shadow-sm)}.pager-main{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pager-page{color:var(--text-muted);white-space:nowrap;font-size:.84em}.pager-page strong{color:var(--text)}.btn.disabled{opacity:.48;pointer-events:none}.tbl-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-overflow-scrolling:touch;overflow:auto}table.tbl{border-collapse:collapse;width:100%;min-width:640px}.tbl thead th{text-align:left;letter-spacing:.4px;text-transform:uppercase;color:var(--text-faint);padding:calc(var(--u)*2.5) calc(var(--u)*3);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:.78em;font-weight:600}.tbl tbody td{padding:calc(var(--u)*1.5) calc(var(--u)*3);min-height:var(--row-h);border-bottom:1px solid var(--border);color:var(--text);white-space:nowrap;font-size:.9em}.tbl tbody tr{cursor:pointer;transition:background .12s}.tbl tbody tr:hover{background:var(--surface-2)}.tbl tbody tr.sel{background:var(--primary-soft)}.tbl tbody tr:last-child td{border-bottom:none}.part-visual{align-items:center;gap:10px;min-height:58px;padding:4px 0;display:inline-flex}.part-thumb{border:1px solid var(--border);background:var(--surface-2);width:46px;height:46px;color:var(--text-muted);vertical-align:middle;border-radius:11px;flex:none;place-items:center;font-size:.74em;font-weight:700;line-height:1;display:inline-grid;overflow:hidden}.part-thumb img{object-fit:cover;width:100%;height:100%;display:block}.part-qr{border:1px solid var(--border);background:#fff;border-radius:9px;flex:none;place-items:center;width:42px;height:42px;display:grid;overflow:hidden;box-shadow:inset 0 0 0 3px #fff}.part-qr img{width:100%;height:100%;image-rendering:pixelated;display:block}.part-qr .icn{width:20px;height:20px;color:var(--text-faint)}.modal.stock-part-modal{max-width:760px}.stock-form-section{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding-top:14px;display:flex}.stock-form-section:first-child{border-top:none;padding-top:0}.stock-form-section-head{align-items:flex-start;gap:10px;min-width:0;display:flex}.stock-form-section-head .icn{width:18px;height:18px;color:var(--primary);flex:none;margin-top:1px}.stock-form-section-head strong{color:var(--text);font-size:.94em;font-weight:700;line-height:1.25;display:block}.stock-form-section-head span{color:var(--text-faint);margin-top:2px;font-size:.78em;line-height:1.35;display:block}.stock-image-field{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:112px minmax(0,1fr);align-items:center;gap:14px;padding:12px;display:grid}.stock-image-preview{aspect-ratio:1;border:1px solid var(--border);background:var(--surface);width:112px;color:var(--text-faint);border-radius:12px;place-items:center;display:grid;overflow:hidden}.stock-image-preview img{object-fit:cover;width:100%;height:100%;display:block}.stock-image-preview.has-image{background:#fff}.stock-image-empty{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:8px;font-size:.78em;line-height:1.25;display:flex}.stock-image-empty .icn{width:22px;height:22px;color:var(--text-faint)}.stock-image-copy{flex-direction:column;gap:7px;min-width:0;display:flex}.stock-image-name{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.82em;line-height:1.35;overflow:hidden}.stock-image-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stock-image-actions .btn{height:34px;min-height:34px;padding:0 12px;font-size:.83em}.stock-image-actions .btn .icn{width:16px;height:16px}.stock-image-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.modal.category-modal{max-width:820px}.category-create-form{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr) auto;align-items:end;gap:12px;padding:12px;display:grid}.category-list{flex-direction:column;gap:10px;display:flex}.category-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;padding:10px;display:grid}.category-edit-form{grid-template-columns:minmax(170px,.75fr) minmax(180px,1fr) auto auto;align-items:end;gap:10px;min-width:0;display:grid}.category-delete-form{align-items:end;display:flex}.category-count{height:var(--ctrl-h);white-space:nowrap;align-self:end}.category-lock-note{color:var(--warning);background:var(--warning-soft);border:1px solid var(--warning);grid-column:1/-1;align-items:flex-start;gap:7px;margin:2px 2px 0;padding:7px 9px;font-size:.8em;line-height:1.4;display:flex}@supports (color:color-mix(in lab, red, red)){.category-lock-note{border:1px solid color-mix(in srgb,var(--warning) 28%,var(--border))}}.category-lock-note{border-radius:var(--radius)}.category-lock-note svg{flex:none;width:15px;height:15px;margin-top:1px}.category-lock-note strong{font-weight:700}.category-notice{border-radius:var(--radius);border:1px solid #0000;margin:0 0 12px;padding:9px 12px;font-size:.86em;line-height:1.45}.category-notice.is-done{color:var(--success);background:var(--success-soft);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.category-notice.is-done{border-color:color-mix(in srgb,var(--success) 28%,var(--border))}}.category-notice.is-error{color:var(--danger);background:var(--danger-soft);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.category-notice.is-error{border-color:color-mix(in srgb,var(--danger) 28%,var(--border))}}.category-empty{border:1px dashed var(--border-strong);border-radius:var(--radius);min-height:96px;color:var(--text-muted);background:var(--surface-2);justify-content:center;align-items:center;gap:10px;font-size:.9em;display:flex}.category-empty .icn{width:20px;height:20px;color:var(--text-faint)}.qr-modal{max-width:500px}.qr-video-frame{aspect-ratio:4/3;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);place-items:center;display:grid;position:relative;overflow:hidden}.qr-video-frame video{object-fit:cover;width:100%;height:100%;display:block}.qr-corners{border:2px solid var(--primary);pointer-events:none;border-radius:18px;position:absolute;inset:18%;box-shadow:0 0 0 999px #0000002e}.qr-status{color:var(--text-muted);margin:0;font-size:.86em;line-height:1.45}.qr-manual{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.cell-user{align-items:center;gap:calc(var(--u)*2.5);display:flex}.cell-user .avatar{width:30px;height:30px;font-size:11px}.job-cost-cell{flex-direction:column;gap:2px;min-width:118px;display:flex}.job-cost-cell strong{color:var(--text);font-size:.92em;font-weight:600}.job-cost-cell span{color:var(--text-faint);font-size:.78em;line-height:1.35}.review-actions{align-items:center;gap:6px;display:flex}.review-btn{height:30px;padding:0 10px;font-size:.78em}.review-muted{color:var(--text-faint)}.review-modal{max-width:660px}.review-summary{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);gap:10px;padding:12px;display:grid}.review-summary p{color:var(--text);margin:0;font-size:.9em;line-height:1.5}.job-cost-review{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:10px;padding:12px;display:flex}.job-cost-review-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.job-cost-review-head .field-label{margin-bottom:4px}.job-cost-review-head strong{color:var(--text);font-size:1.02em;font-weight:700;display:block}.job-cost-empty{color:var(--text-faint);margin:0;font-size:.88em}.job-cost-lines,.job-cost-movements{border-top:1px solid var(--border);flex-direction:column;display:flex}.job-cost-line,.job-cost-movement{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.job-cost-line:last-child,.job-cost-movement:last-child{border-bottom:none}.job-cost-line div{flex-direction:column;gap:2px;min-width:0;display:flex}.job-cost-line strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.9em;overflow:hidden}.job-cost-line span:not(.chip),.job-cost-movement span{color:var(--text-muted);font-size:.8em;line-height:1.35}.job-cost-movement strong{color:var(--text);white-space:nowrap;font-size:.86em}.job-cost-warning{color:var(--warning);background:var(--warning-soft);border-radius:var(--radius);margin:0;padding:9px 10px;font-size:.86em;font-weight:600}@media (max-width:900px){.table-toolbar .tt-search{min-width:100%;max-width:none}.table-seg{flex-wrap:wrap;flex:100%;gap:6px;width:100%;max-width:none;height:auto;padding:5px;overflow:visible}.table-seg a,.table-seg button{flex:auto;min-width:0;min-height:38px;padding:8px 12px;font-size:.86em}.tt-count{margin-left:0}}@media (max-width:640px){.list-search{padding-right:6px}.list-search .btn{flex:none}.pager{flex-direction:column;align-items:stretch}.pager-size,.pager-main{justify-content:center;width:100%}.pager-size{gap:6px;padding:4px}.pager-size a{flex:1 1 0;min-width:0;height:36px;font-size:.86em}.pager-main .btn{flex:1;justify-content:center}.review-actions{min-width:170px}.review-btn{flex:1}.job-cost-line,.job-cost-movement{flex-direction:column;align-items:flex-start;gap:4px}.stock-image-field{grid-template-columns:72px minmax(0,1fr)}.stock-image-preview{width:72px}.category-create-form,.category-row,.category-edit-form{grid-template-columns:1fr}.category-create-form .btn,.category-edit-form .btn,.category-delete-form,.category-delete-form .btn,.category-delete-form span{width:100%}.category-count{justify-content:center;height:auto;min-height:30px}.qr-manual{grid-template-columns:1fr}.qr-manual .btn{width:100%}.part-visual{gap:8px;min-height:54px}.part-thumb{border-radius:9px;width:38px;height:38px}.part-qr{border-radius:8px;width:36px;height:36px}}.cb{border:2px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:6px;flex:none;place-items:center;width:19px;height:19px;transition:background .18s,border-color .18s,box-shadow .18s,transform .12s;display:inline-grid;position:relative}.cb:hover{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.cb.on{background:var(--primary);border-color:var(--primary);box-shadow:0 2px 6px -1px var(--ring)}.cb svg{color:#fff;stroke-width:3px;opacity:0;width:13px;height:13px;transition:opacity .14s,transform .16s cubic-bezier(.2,1.3,.4,1);transform:scale(.4)}.cb.on svg{opacity:1;transform:scale(1)}.empty{text-align:center;color:var(--text-faint);padding:48px 20px}.empty .ic{background:var(--surface-2);width:54px;height:54px;margin:0 auto calc(var(--u)*3);color:var(--text-muted);border-radius:16px;place-items:center;display:grid}.usage-queue{margin-bottom:var(--gap);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}.usage-queue-head{padding:var(--pad);border-bottom:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.usage-queue-head h2{color:var(--text);margin:0;font-size:1.02em;font-weight:600}.usage-queue-head p{color:var(--text-muted);margin:4px 0 0;font-size:.88em;line-height:1.45}.usage-empty{padding:22px var(--pad);color:var(--text-faint);font-size:.9em}.usage-list{flex-direction:column;display:flex}.usage-row{padding:var(--pad);border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:14px;display:grid}.usage-row:last-child{border-bottom:none}.usage-main{flex-direction:column;gap:8px;min-width:0;display:flex}.usage-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.usage-title strong{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.95em;overflow:hidden}.usage-meta,.usage-qty{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.82em;line-height:1.4;display:flex}.usage-qty span:first-child{color:var(--text);font-weight:600}.usage-note{color:var(--text-muted);margin:0;font-size:.86em;line-height:1.45}.usage-actions{flex-direction:column;gap:8px;display:flex}.usage-action-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}@media (max-width:760px){.usage-row,.usage-action-form{grid-template-columns:1fr}.usage-actions .btn{width:100%}}.usage-group-list{padding:var(--pad);flex-direction:column;gap:12px;display:flex}.usage-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.usage-group-head{border-bottom:1px solid var(--border);background:var(--surface-3);align-items:center;gap:10px;padding:11px 14px;display:flex}.usage-group-title{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.usage-group-title strong{color:var(--text);font-size:.95em}.usage-group-title span{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.82em;overflow:hidden}.usage-group-lines{flex-direction:column;display:flex}.usage-line{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.usage-line:last-child{border-bottom:none}.usage-line:hover{background:var(--surface-3)}.usage-check{align-items:center;display:flex}.usage-check input{appearance:none;border:2px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:6px;flex:none;width:19px;height:19px;margin:0;transition:border-color .15s,background .15s,box-shadow .15s;position:relative}.usage-check input:hover{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring)}.usage-check input:checked{background:var(--primary);border-color:var(--primary);box-shadow:0 2px 6px -1px var(--ring)}.usage-check input:checked:after{content:"";border:2.5px solid #fff;border-width:0 2.5px 2.5px 0;width:5px;height:9px;position:absolute;top:1.5px;left:5px;transform:rotate(45deg)}.usage-check input:focus-visible{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring);outline:none}.usage-line-main{flex-direction:column;gap:2px;min-width:0;display:flex}.usage-line-main strong{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.88em;overflow:hidden}.usage-line-meta{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78em;overflow:hidden}.usage-line-qty{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:3px;display:flex}.usage-line-qty strong{color:var(--text);font-size:.86em}.usage-group-foot{border-top:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:10px;padding:11px 14px;display:flex}.usage-group-foot .input{flex:1;min-width:160px}.usage-group-actions{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:760px){.usage-group-foot{flex-direction:column;align-items:stretch}.usage-group-actions{flex-direction:column}.usage-group-actions form,.usage-group-actions .btn{width:100%}}.floatbar{left:50%;bottom:calc(var(--gap) + env(safe-area-inset-bottom));z-index:60;background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:99px;align-items:center;gap:8px;padding:10px 16px;transition:transform .28s cubic-bezier(.2,.9,.3,1);display:flex;position:fixed;transform:translate(-50%,220%)}.floatbar.show{transform:translate(-50%)}.fb-count{white-space:nowrap;align-items:center;gap:9px;padding:0 12px 0 6px;font-size:.86em;font-weight:600;display:flex}.fb-count .n{background:var(--primary);color:#fff;border-radius:99px;place-items:center;min-width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.fb-divider{background:var(--border);flex:none;width:1px;height:26px}.fb-btn{color:var(--text-muted);white-space:nowrap;background:0 0;border:none;border-radius:99px;align-items:center;gap:7px;padding:9px 16px;font-size:.86em;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.fb-btn:hover{background:var(--surface-2);color:var(--text)}.fb-btn.danger{background:var(--danger);color:#fff}.fb-btn.danger:hover{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.fb-btn.danger:hover{background:color-mix(in srgb,var(--danger) 82%,#000 18%)}}.fb-btn.danger:hover{color:#fff}.fb-btn.edit{background:var(--warning);color:#3a2200}.fb-btn.edit:hover{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.fb-btn.edit:hover{background:color-mix(in srgb,var(--warning) 85%,#000 15%)}}.fb-btn.edit:hover{color:#3a2200}.fb-btn i{width:16px;height:16px}@media (max-width:600px){.floatbar{left:var(--gap);right:var(--gap);bottom:calc(var(--icon) + var(--u)*22 + env(safe-area-inset-bottom));border-radius:20px;justify-content:space-between;gap:0;padding:8px 6px;transform:translateY(240%)}.floatbar.show{transform:translateY(0)}.fb-btn{flex-direction:column;flex:1;gap:4px;padding:7px 4px;font-size:.68em}.fb-divider{display:none}.fb-count{flex-direction:column;gap:3px;padding:7px 6px;font-size:.66em}}.pop{z-index:70;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:.16s dropIn;position:absolute;overflow:hidden}.pop.hidden{display:none}.pop-backdrop{z-index:69;position:fixed;inset:0}.notification-pop{width:min(360px,100vw - 24px);top:calc(100% + 8px);right:0}.notification-head{padding:var(--pad);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;display:flex}.notification-title{color:var(--text);font-weight:600}.notification-sub{color:var(--text-muted);margin-top:2px;font-size:.8em}.notification-clear{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);height:30px;color:var(--text-muted);white-space:nowrap;padding:0 10px;font-size:.78em;font-weight:600}.notification-clear:hover{background:var(--surface-2);color:var(--text)}.notification-list{flex-direction:column;gap:2px;padding:6px;display:flex}.notification-item{border-radius:var(--radius);color:var(--text);align-items:flex-start;gap:11px;padding:10px;text-decoration:none;transition:background .15s;display:flex}.notification-item:hover{background:var(--surface-2)}.notification-item.read{opacity:.62}.notification-item.read .notification-name{font-weight:500}.notification-ic{background:var(--surface-2);width:34px;height:34px;color:var(--text-muted);border-radius:12px;flex:none;place-items:center;display:grid}.notification-ic i{width:17px;height:17px}.notification-ic.info{background:var(--primary-soft);color:var(--primary-soft-fg)}.notification-ic.warning{color:#b45309;background:#f59e0b24}.notification-ic.accent{color:var(--accent);background:#745af224}.notification-meta{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.notification-row{align-items:center;gap:8px;min-width:0;display:flex}.notification-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9em;font-weight:600;overflow:hidden}.notification-time{color:var(--text-faint);white-space:nowrap;margin-left:auto;font-size:.72em}.notification-detail{color:var(--text-muted);font-size:.78em;line-height:1.45}.prof-head{padding:var(--pad);align-items:center;gap:calc(var(--u)*3);border-bottom:1px solid var(--border);display:flex}.prof-head .avatar{width:44px;height:44px;font-size:16px}.appr{padding:calc(var(--u)*2.5) var(--pad) calc(var(--u)*2)}.appr-lbl{color:var(--text-muted);align-items:center;gap:7px;margin-bottom:7px;font-size:.82em;font-weight:600;display:inline-flex}.appr-lbl i{width:15px;height:15px;color:var(--text-faint)}.seg{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);gap:2px;padding:3px;display:flex}.seg.grid3{grid-template-columns:repeat(3,1fr);display:grid}.seg.grid4{grid-template-columns:repeat(4,1fr);display:grid}.seg button{border-radius:calc(var(--radius) - 3px);color:var(--text-muted);white-space:nowrap;background:0 0;border:none;justify-content:center;align-items:center;gap:5px;padding:7px 6px;font-size:.82em;font-weight:500;transition:all .15s;display:inline-flex}.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.seg button:hover:not(.on){color:var(--text)}.seg button i{width:15px;height:15px}.menu-sep{background:var(--border);height:1px;margin:calc(var(--u)*1.5) 0}.menu-item{align-items:center;gap:calc(var(--u)*3);padding:calc(var(--u)*2.2) var(--pad);color:var(--text);text-align:left;background:0 0;border:none;width:100%;font-size:.9em;transition:background .12s;display:flex}.menu-item i{width:17px;height:17px;color:var(--text-muted)}.menu-item:hover{background:var(--surface-2)}.menu-item.danger,.menu-item.danger i{color:var(--danger)}.cmdk-scrim{z-index:95;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:flex-start;padding-top:14vh;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.cmdk{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:580px;box-shadow:var(--shadow-lg);margin:0 16px;animation:.18s cubic-bezier(.2,.9,.3,1) scaleIn;overflow:hidden}.cmdk-search{padding:calc(var(--u)*3) var(--pad);border-bottom:1px solid var(--border);align-items:center;gap:10px;display:flex}.cmdk-search input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:1.05em}.cmdk-search input::placeholder{color:var(--text-faint)}.cmdk-list{max-height:50vh;padding:8px;overflow-y:auto}.cmdk-group{letter-spacing:.5px;text-transform:uppercase;color:var(--text-faint);padding:8px 10px 4px;font-size:.72em;font-weight:600}.cmdk-item{border-radius:var(--radius);cursor:pointer;color:var(--text);align-items:center;gap:12px;padding:10px 12px;display:flex}.cmdk-item .icn{color:var(--text-muted)}.cmdk-item.on{background:var(--primary-soft)}.cmdk-item.on,.cmdk-item.on .icn,.cmdk-item.on .ci-t{color:var(--primary-soft-fg)}.cmdk-item .ci-t{flex:1;font-size:.92em}.cmdk-item .ci-k{color:var(--text-faint);font-size:.74em}.cmdk-empty{text-align:center;color:var(--text-faint);padding:24px;font-size:.9em}.cmdk-foot{padding:8px var(--pad);border-top:1px solid var(--border);color:var(--text-faint);gap:16px;font-size:.74em;display:flex}.cmdk-foot span{align-items:center;gap:5px;display:inline-flex}.tooltip{z-index:9999;background:var(--tooltip-bg);color:var(--tooltip-fg);pointer-events:none;opacity:0;white-space:nowrap;box-shadow:var(--shadow);border-radius:8px;padding:6px 10px;font-size:12.5px;font-weight:500;transition:opacity .12s,transform .12s;position:fixed;transform:translate(-6px)}.tooltip.show{opacity:1;transform:translate(0)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes modalIn{0%{transform:scale(.98)translateY(6px)}to{transform:scale(1)translateY(0)}}.modal-scrim{z-index:1000;background:var(--scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;padding:20px;animation:.18s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1;isolation:isolate;flex-direction:column;width:100%;max-width:540px;max-height:90vh;animation:.2s cubic-bezier(.2,.9,.3,1) modalIn;display:flex;position:relative}.modal-head{padding:var(--pad);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.modal-head .h{font-size:1.08em;font-weight:600}.modal-sub{color:var(--text-muted);margin-top:3px;font-size:.84em;line-height:1.4}.modal-body{padding:var(--pad);gap:var(--gap);flex-direction:column;display:flex;overflow-y:auto}.modal-body label,.form-grid label{min-width:0;display:block}.modal-foot{padding:var(--pad);justify-content:flex-end;gap:calc(var(--u)*2);border-top:1px solid var(--border);display:flex}.confirm-modal{width:min(100%,420px);max-height:min(92vh,520px);overflow:hidden}.confirm-head{align-items:flex-start}.confirm-title-row{align-items:flex-start;gap:12px;min-width:0;display:flex}.confirm-icon{border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:1.05em;font-weight:800;display:grid}.confirm-modal-danger .confirm-icon{background:var(--danger-soft);color:var(--danger)}.confirm-modal-primary .confirm-icon{background:var(--primary-soft);color:var(--primary-soft-fg)}.confirm-foot .btn{min-width:96px}.job-modal{max-width:760px}.profile-modal{max-width:720px}.expense-modal{max-width:780px}.tech-upload-modal{max-width:460px}.tech-complete-modal{max-width:520px}.profile-asset-grid{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.profile-asset{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:12px}.profile-asset-row{align-items:center;gap:12px;margin-top:8px;display:flex}.profile-asset-preview{background:var(--surface);border:1px solid var(--border);color:var(--text-faint);text-align:center;flex:none;place-items:center;font-size:.74em;display:grid;overflow:hidden}.profile-asset-preview img,.profile-asset-preview video{object-fit:cover;width:100%;height:100%;display:block}.avatar-preview{background:var(--primary);width:58px;height:58px;color:var(--primary-fg);border-radius:50%;font-size:1em;font-weight:600}.signature-preview{border-radius:var(--radius);background:var(--surface);width:118px;height:58px;padding:6px}.signature-preview img{object-fit:contain}.profile-file-stack{flex-direction:column;flex:1;min-width:0;display:flex}.profile-file-input{height:auto;min-height:var(--ctrl-h);padding:9px 10px;font-size:.82em}.signature-tool{flex-direction:column;gap:10px;margin-top:8px;display:flex}.signature-tabs{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.signature-tabs button{color:var(--text-muted);border-radius:calc(var(--radius) - 3px);background:0 0;border:none;padding:8px;font-size:.84em;font-weight:600}.signature-tabs button.on{background:var(--primary);color:var(--primary-fg)}.signature-draw{flex-direction:column;gap:10px;display:flex}.signature-canvas-wrap{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface);width:100%;height:150px;position:relative;overflow:hidden}.signature-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block}.signature-guide{color:var(--text-faint);pointer-events:none;font-size:.76em;position:absolute;bottom:10px;left:12px}.signature-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;min-width:0;display:flex}.signature-controls>div{flex:none;min-width:0}.signature-controls>label{flex:132px;min-width:120px}.signature-controls .btn{white-space:nowrap;flex:none;max-width:100%;margin-left:auto}.signature-colors{gap:6px;margin-top:6px;display:flex}.signature-colors button{border:2px solid var(--border);background:var(--sig-color);border-radius:50%;width:26px;height:26px;box-shadow:inset 0 0 0 2px #ffffffb8}.signature-colors button.on{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring),inset 0 0 0 2px #ffffffb8}.signature-range{width:100%;accent-color:var(--primary)}@media (max-width:600px){.modal-scrim{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%;animation:.26s cubic-bezier(.2,.9,.3,1) slideUp}.confirm-foot{flex-direction:column-reverse}.confirm-foot .btn{width:100%}.profile-asset-grid{grid-template-columns:1fr}.profile-asset-row{align-items:flex-start}.signature-preview{width:104px}.signature-controls{align-items:stretch}.signature-controls>div,.signature-controls>label{flex:100%}.signature-controls .btn{width:100%;margin-left:0}.signature-canvas-wrap{height:170px}}.form-grid{gap:var(--gap);grid-template-columns:1fr 1fr;display:grid}@media (max-width:520px){.form-grid{grid-template-columns:1fr}}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239aa1ab' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(var(--u)*3) center;padding-right:calc(var(--u)*8)}.scrim{z-index:64;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:.18s fadeIn;position:fixed;inset:0}.scrim.hidden{display:none}.mobnav{z-index:50;left:calc(var(--u)*3.5);right:calc(var(--u)*3.5);bottom:calc(var(--u)*3 + env(safe-area-inset-bottom));background:var(--navbar-bg);display:none;position:fixed}@supports (color:color-mix(in lab, red, red)){.mobnav{background:color-mix(in srgb, var(--navbar-bg) 80%, transparent)}}.mobnav{-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);border:1px solid var(--border);border-radius:calc(var(--radius-lg) + 8px);padding:calc(var(--u)*1.6) calc(var(--u)*1.5);justify-content:space-around;align-items:flex-end;box-shadow:0 14px 34px -12px #080c1c4d}.mobnav button{align-items:center;gap:calc(var(--u)*.7);padding:calc(var(--u)*1.2) 0 calc(var(--u)*.6);color:var(--text-faint);font-size:calc(var(--fs) - 3px);background:0 0;border:none;border-radius:14px;flex-direction:column;flex:1;font-weight:500;transition:color .22s;display:flex;position:relative}.mobnav .mn-ic{width:calc(var(--icon) + var(--u)*5.5);height:calc(var(--icon) + var(--u)*5.5);border-radius:40%;place-items:center;transition:transform .32s cubic-bezier(.2,1.3,.32,1),background .25s,color .22s;display:grid;position:relative}.mobnav button i{width:var(--icon);height:var(--icon)}.mobnav button.active{color:var(--primary)}.mobnav button.active .mn-ic{background:var(--primary);color:#fff;transform:translateY(-11px)scale(1.06)}.mobnav button.active span{font-weight:600;transform:translateY(-5px)}@media (max-width:860px){.mobnav{display:flex}.content{padding-bottom:calc(var(--icon) + var(--u)*18 + env(safe-area-inset-bottom))}.rail{z-index:82;border-radius:0;height:100%;transition:transform .26s cubic-bezier(.3,.8,.3,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-110%)}.rail.drawer-open{transform:translate(0)}.sidebar{top:0;bottom:0;left:var(--rail-w);z-index:81;border-radius:0;transition:transform .26s cubic-bezier(.3,.8,.3,1);position:fixed;transform:translate(-130%);opacity:1!important;pointer-events:auto!important;border-width:0 1px 0 0!important;width:min(72vw,288px)!important;margin:0!important}.sidebar.drawer-open{box-shadow:var(--shadow-lg);transform:translate(0)}.side-nav{z-index:81;border-radius:0;height:100%;transition:transform .26s cubic-bezier(.3,.8,.3,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-110%);opacity:1!important;pointer-events:auto!important;border-width:0 1px 0 0!important;width:min(78vw,300px)!important;margin:0!important}.side-nav.drawer-open{box-shadow:var(--shadow-lg);transform:translate(0)}.navbar{border-top:none;border-left:none;border-right:none;border-radius:0}}.page-skeleton{gap:var(--gap);flex-direction:column;display:flex}.sk{background:var(--surface-2);border-radius:var(--radius);position:relative;overflow:hidden}.sk:after{content:"";background:linear-gradient(90deg,transparent,var(--text),transparent);position:absolute;inset:0;transform:translate(-100%)}@supports (color:color-mix(in lab, red, red)){.sk:after{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text) 9%,transparent),transparent)}}.sk:after{animation:1.25s ease-in-out infinite sk-shimmer}.sk-head{margin-bottom:calc(var(--gap) - 6px);flex-direction:column;gap:10px;display:flex}.sk-title{border-radius:8px;width:min(260px,55%);height:26px}.sk-sub{width:min(360px,72%);height:14px}.sk-stats{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));display:grid}.sk-stat{border-radius:var(--radius-lg);height:118px}.sk-panel{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.sk-toolbar{background:var(--surface-3);border-radius:0;height:52px}.sk-rows{flex-direction:column;display:flex}.sk-row{background:var(--surface);border-top:1px solid var(--border);border-radius:0;height:56px}@keyframes sk-shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.sk:after{animation:none}.sk{opacity:.6}}.registry-groups{gap:var(--gap);flex-direction:column;display:flex}.registry-group{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.registry-group-head{border-bottom:1px solid var(--border);background:var(--surface-2);align-items:center;gap:10px;padding:12px 14px;display:flex}.registry-group-avatar{background:var(--primary-soft);width:34px;height:34px;color:var(--primary);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.registry-group-name{color:var(--text);margin:0;font-size:1em;font-weight:650;line-height:1.3}.registry-group-count{color:var(--text-faint);font-size:.8em}.registry-machine-list{flex-direction:column;display:flex}.registry-machine{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.registry-machine:first-child{border-top:0}.registry-machine-main{flex-direction:column;gap:3px;min-width:0;display:flex}.registry-machine-model{color:var(--text);font-size:.95em}.registry-machine-serial{color:var(--text-muted);font-size:.84em}.registry-machine-serial strong{color:var(--text);font-variant-numeric:tabular-nums}.registry-machine-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.registry-machine-job{color:var(--text-faint);margin-top:3px;font-size:.8em;line-height:1.45}.registry-machine-job strong{color:var(--text-muted);font-variant-numeric:tabular-nums}.registry-repair-link{color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger);border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:.76em;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.registry-repair-link{border:1px solid color-mix(in srgb,var(--danger) 28%,var(--border))}}.registry-repair-link{white-space:nowrap;text-decoration:none}.registry-repair-link:hover{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.registry-repair-link:hover{background:color-mix(in srgb,var(--danger) 16%,var(--surface))}}.registry-repair-link svg{width:14px;height:14px}@media (max-width:560px){.registry-machine{flex-direction:column;align-items:flex-start;gap:8px}}.repair-card{margin-bottom:var(--gap);flex-direction:column;gap:12px;padding:14px;display:flex}.repair-section-title{color:var(--text);margin:0;font-size:1em;font-weight:650}.repair-section-sub{color:var(--text-faint);margin:-6px 0 0;font-size:.85em}.repair-head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.repair-job-card{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.repair-job-card{border-color:color-mix(in srgb,var(--primary) 30%,var(--border))}}.repair-job-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.repair-job-line{color:var(--text-muted);border:1px dashed var(--primary);flex-wrap:wrap;align-items:center;gap:7px;padding:7px 10px;font-size:.86em;display:flex}@supports (color:color-mix(in lab, red, red)){.repair-job-line{border:1px dashed color-mix(in srgb,var(--primary) 34%,var(--border))}}.repair-job-line{border-radius:var(--radius);background:var(--primary-soft)}.repair-job-line .field-label{margin:0}.repair-job-line strong{color:var(--text);font-variant-numeric:tabular-nums}.jd-repair-list{flex-direction:column;gap:8px;display:flex}.jd-repair-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.jd-repair-row:hover{border-color:var(--primary);background:var(--surface)}.jd-repair-main{flex-direction:column;gap:2px;min-width:0;display:flex}.jd-repair-main strong{color:var(--text);font-size:.94em}.jd-repair-main span{color:var(--text-muted);text-overflow:ellipsis;font-size:.82em;line-height:1.4;overflow:hidden}.jd-repair-side{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.jd-repair-count{color:var(--text-faint);white-space:nowrap;font-size:.78em}@media (max-width:640px){.jd-repair-row{flex-direction:column;align-items:flex-start}.jd-repair-side{justify-content:flex-start;width:100%}}.btn-back{align-self:flex-start;margin-bottom:8px}.repair-symptom{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:10px 12px}.repair-symptom p{color:var(--text);white-space:pre-wrap;margin:4px 0 0;line-height:1.55}.repair-status-hint{color:var(--text-faint);margin:0;font-size:.84em}.repair-note-form{flex-direction:column;gap:12px;display:flex}.repair-form-actions{justify-content:flex-end;display:flex}.repair-review-actions{flex-wrap:wrap;gap:8px;display:flex}.repair-review-actions .btn{flex:240px;justify-content:center}.repair-submit-row{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.repair-submit-row-standalone{border-top:none;margin-top:0;padding-top:0}.repair-submit-btn:disabled{opacity:.55;cursor:not-allowed}.repair-submit-hint{color:var(--text-faint);font-size:.82em}.repair-danger-row{margin-bottom:var(--gap);justify-content:flex-end;display:flex}.btn-danger-outline{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.btn-danger-outline{border-color:color-mix(in srgb,var(--danger) 32%,var(--border))}}.repair-timeline{flex-direction:column;gap:10px;display:flex}.repair-timeline-scroll{scrollbar-width:thin;max-height:560px;padding-right:4px;overflow-y:auto}.repair-timeline-item{gap:10px;display:flex}.repair-timeline-marker{background:var(--primary);width:9px;height:9px;box-shadow:0 0 0 3px var(--primary-soft);border-radius:50%;flex:none;margin-top:14px}.repair-timeline-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex:auto;min-width:0;padding:10px 12px}.repair-timeline-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.repair-timeline-top strong{color:var(--text);font-size:.92em}.repair-timeline-top span{color:var(--text-faint);font-size:.8em}.repair-timeline-status{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.repair-timeline-note{color:var(--text-muted);white-space:pre-wrap;margin:8px 0 0;font-size:.88em;line-height:1.55}.repair-note-fields{flex-direction:column;gap:8px;margin:8px 0 0;display:flex}.repair-note-fields div{flex-direction:column;gap:2px;display:flex}.repair-note-fields dt{color:var(--text-faint);text-transform:none;font-size:.76em;font-weight:600}.repair-note-fields dd{color:var(--text);white-space:pre-wrap;margin:0;font-size:.9em;line-height:1.55}@media (max-width:640px){.repair-head-actions{width:100%}.repair-head-actions .btn{flex:100%}.repair-head-actions .attachment-panel{flex:100%;width:100%}.repair-form-actions,.repair-danger-row{justify-content:stretch}.repair-form-actions .btn{width:100%}.repair-review-actions{flex-direction:column}.repair-submit-row{flex-direction:column;align-items:stretch}.repair-submit-hint{text-align:center}.repair-card .btn,.repair-head-actions .btn,.repair-danger-row .btn{flex:none;width:100%;height:44px}.repair-review-actions .btn{flex:none}}.req-card.is-focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
