:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f3;--panel:#fff;--panel-soft:#f9faf7;--ink:#18211f;--muted:#66716d;--line:#dfe5de;--line-strong:#c5cec8;--green:#0f766e;--red:#b42318;--orange:#b45309;--amber:#d97706;--blue:#2563eb;--shadow:0 18px 45px #1e292314}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--ink);letter-spacing:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.auth-screen{background:radial-gradient(circle at 18% 18%, #d9f99d6b, transparent 28%), radial-gradient(circle at 86% 24%, #0f766e2e, transparent 28%), linear-gradient(135deg, #0f766e14, #d9f99d29), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card,.phone-block-card{border:1px solid var(--line);width:min(440px,100%);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:28px}.secure-login-card{transform-origin:50%;grid-template-columns:minmax(280px,.95fr) minmax(320px,1fr);width:min(920px,100%);padding:0;transition:opacity .36s,transform .36s cubic-bezier(.22,1,.36,1),filter .36s;animation:.42s cubic-bezier(.22,1,.36,1) both login-card-enter;display:grid;overflow:hidden}.secure-login-card.login-success{opacity:0;filter:blur(6px);transform:translateY(-10px)scale(.985)}.login-hero{color:#f7faf6;background:linear-gradient(150deg,#18211ff0,#0f766ed1),#18211f;flex-direction:column;justify-content:flex-end;min-height:520px;padding:34px;display:flex;position:relative}.secure-login-card.login-success .login-hero{transform:translate(-10px)}.secure-login-card.login-success .login-form-panel{transform:translate(10px)}.login-hero:before{content:"";pointer-events:none;border:1px solid #d9f99d2e;border-radius:18px;position:absolute;inset:20px}.login-hero .auth-mark{border-radius:18px;width:64px;height:64px;margin-bottom:auto}.login-hero h1{letter-spacing:-.05em;max-width:360px;margin:0;font-size:clamp(34px,4vw,54px);line-height:.95;position:relative}.login-hero p:not(.eyebrow){color:#d7e4df;max-width:360px;line-height:1.6;position:relative}.login-form-panel{flex-direction:column;justify-content:center;padding:clamp(26px,5vw,44px);transition:transform .36s cubic-bezier(.22,1,.36,1);display:flex}.login-heading{align-items:center;gap:14px;margin-bottom:22px;display:flex}.login-heading h2{letter-spacing:-.04em;margin:0;font-size:32px}.phone-block-card{text-align:center}.login-card h1,.phone-block-card h1{margin:0 0 16px;font-size:30px}.phone-block-card p:last-child{color:var(--muted);margin-bottom:0;line-height:1.5}.auth-mark{color:#1f2a24;background:#d9f99d;border-radius:8px;place-items:center;width:52px;height:52px;margin-bottom:16px;display:grid}.auth-mark.compact{border-radius:14px;width:48px;height:48px;margin-bottom:0}.phone-block-card .auth-mark{margin-inline:auto}.login-form{gap:14px;display:grid}.password-field{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;transition:border-color .14s,box-shadow .14s;display:grid;overflow:hidden}.password-field:focus-within{border-color:#0f766e9e;box-shadow:0 0 0 4px #0f766e1a}.password-field input{border:0;outline:0;width:100%;min-width:0}.password-field button{border:0;border-left:1px solid var(--line);background:var(--panel-soft);min-height:38px;color:var(--ink);align-items:center;gap:6px;padding:0 10px;font-weight:800;display:inline-flex}.login-form input{min-height:42px}.login-form>label>input{border:1px solid var(--line);border-radius:8px;transition:border-color .14s,box-shadow .14s}.login-form>label>input:focus{border-color:#0f766e9e;outline:0;box-shadow:0 0 0 4px #0f766e1a}.login-form label,.user-create-form label,.job-edit-form label{gap:5px;display:grid}.login-form label span,.user-create-form label span,.job-edit-form label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.login-error{color:#991b1b;background:#fee2e2;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:700;display:inline-flex}.login-success-note{color:#166534;background:#dcfce7;border-radius:8px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:800;display:inline-flex}.login-submit{min-height:44px;margin-top:2px;position:relative;overflow:hidden}.login-submit:after{content:"";opacity:0;background:linear-gradient(90deg,#0000,#ffffff42,#0000);position:absolute;inset:0;transform:translate(-120%)}.login-success .login-submit:after{animation:.62s both login-shimmer}.login-footnote{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.login-code-note{color:#0f766e;margin-top:-6px;font-size:12px;font-weight:700;line-height:1.45;display:block}.invite-auth-screen{padding-block:32px}.invite-card{border:1px solid var(--line);width:min(960px,100%);box-shadow:var(--shadow);background:#fff;border-radius:18px;grid-template-columns:minmax(280px,.88fr) minmax(320px,1.12fr);display:grid;position:relative;overflow:hidden}.invite-hero{color:#fff;background:radial-gradient(circle at 18% 18%,#d9f99d47,#0000 34%),radial-gradient(circle at 92% 18%,#14b8a661,#0000 28%),linear-gradient(145deg,#0f3d3a,#0f766e 52%,#365314);align-content:center;gap:14px;min-height:520px;padding:34px;display:grid}.invite-hero .auth-mark{color:#ecfccb;background:#ffffff29;border:1px solid #ffffff38}.invite-hero .eyebrow{color:#d9f99d}.invite-hero h1{letter-spacing:-.05em;margin:0;font-size:clamp(30px,4vw,48px);line-height:1}.invite-hero p:not(.eyebrow){color:#ffffffc7;max-width:380px;margin:0;line-height:1.6}.invite-form-panel{align-content:center;gap:18px;padding:34px;display:grid}.invite-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.invite-summary div,.invite-state-card{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;gap:5px;padding:12px;display:grid}.invite-summary small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.invite-summary strong{overflow-wrap:anywhere;min-width:0;color:var(--ink)}.invite-form{gap:12px}.invite-state-card{align-content:center;min-height:260px}.invite-state-card h2,.invite-state-card p{margin:0}.invite-auto-mail-note{max-width:calc(100% - 36px);color:var(--muted);align-items:center;gap:7px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;bottom:14px;right:18px}.captcha-panel{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;gap:8px;padding:12px;display:grid}.captcha-panel>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.turnstile-widget{min-height:65px}.app-shell{grid-template-columns:264px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .32s cubic-bezier(.22,1,.36,1);animation:.52s cubic-bezier(.22,1,.36,1) both dashboard-enter;display:grid}.app-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}@keyframes login-card-enter{0%{opacity:0;filter:blur(8px);transform:translateY(16px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes login-shimmer{0%{opacity:0;transform:translate(-120%)}20%{opacity:1}to{opacity:0;transform:translate(120%)}}@keyframes dashboard-enter{0%{opacity:0;filter:blur(8px);transform:translateY(14px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.secure-login-card,.secure-login-card.login-success,.invite-card,.invite-hero,.invite-form-panel,.app-shell{filter:none;transition:none;animation:none;transform:none}.login-success .login-submit:after{animation:none}}.sidebar{color:#f7faf6;background:#18211f;flex-direction:column;gap:22px;height:100vh;padding:20px;transition:padding .32s cubic-bezier(.22,1,.36,1),gap .32s cubic-bezier(.22,1,.36,1);display:flex;position:sticky;top:0;overflow:hidden}.sidebar.collapsed{align-items:center;gap:18px;padding:18px 12px}.brand{align-items:center;gap:12px;width:100%;min-height:48px;transition:gap .26s,justify-content .26s;display:flex}.sidebar.collapsed .brand{justify-content:center;align-self:center;gap:0;width:48px;margin-inline:auto}.brand-mark{color:#1f2a24;background:#d9f99d;border:0;border-radius:8px;flex:none;place-items:center;width:42px;height:42px;padding:0;transition:transform .26s cubic-bezier(.22,1,.36,1),box-shadow .16s;display:grid}.brand-mark:hover{transform:translateY(-1px);box-shadow:0 8px 24px #d9f99d2e}.brand strong,.brand span{display:block}.brand-copy{white-space:nowrap;opacity:1;min-width:0;max-width:180px;transition:max-width .26s cubic-bezier(.22,1,.36,1),opacity .18s,transform .26s;overflow:hidden;transform:translate(0)}.brand span{color:#b8c5bf;margin-top:2px;font-size:12px}.sidebar.collapsed .brand-copy{opacity:0;max-width:0;display:none;transform:translate(-8px)}.user-card{opacity:1;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;max-height:96px;padding:12px;transition:max-height .26s cubic-bezier(.22,1,.36,1),padding .26s,border-width .26s,opacity .18s,transform .26s;overflow:hidden;transform:translate(0)}.sidebar.collapsed .user-card{opacity:0;border-width:0;max-height:0;padding-block:0;transform:translate(-10px)}.user-card strong,.user-card small{display:block}.user-card strong{color:#fff;overflow-wrap:anywhere}.user-card small{color:#b8c5bf;margin-top:4px;font-size:12px}.nav-list{flex:auto;align-content:start;gap:18px;width:100%;min-height:0;padding-right:2px;transition:gap .26s,padding .26s;display:grid;overflow-y:auto}.sidebar.collapsed .nav-list{justify-items:center;gap:10px;width:48px;margin-inline:auto;padding-right:0;overflow:visible}.nav-section{gap:5px;transition:gap .26s,place-items .26s;display:grid}.sidebar.collapsed .nav-section{place-items:center;gap:8px;width:48px;margin-inline:auto}.nav-section-title{color:#94a3a0;letter-spacing:.08em;text-transform:uppercase;opacity:1;max-height:20px;padding:0 8px 2px;font-size:11px;font-weight:800;transition:max-height .22s,padding .22s,opacity .16s,transform .22s;overflow:hidden;transform:translate(0)}.sidebar.collapsed .nav-section-title{opacity:0;max-height:0;padding-block:0;transform:translate(-8px)}.nav-item,.ghost-action,.primary-action,.small-action{border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 12px;transition:background .14s,color .14s,border-color .14s,width .26s cubic-bezier(.22,1,.36,1),min-height .26s,padding .26s,gap .22s;display:inline-flex}.nav-item{color:#d8e2dd;background:0 0;justify-content:flex-start;width:100%}.sidebar.collapsed .nav-item{justify-content:center;gap:0;width:48px;min-height:48px;margin-inline:auto;padding:0}.sidebar.collapsed .brand-mark{border-radius:10px;width:48px;height:48px;margin-inline:auto}.nav-item span,.ghost-action span{white-space:nowrap;opacity:1;max-width:180px;transition:max-width .24s cubic-bezier(.22,1,.36,1),opacity .16s,transform .22s;overflow:hidden;transform:translate(0)}.sidebar.collapsed .nav-item span,.sidebar.collapsed .ghost-action span{opacity:0;max-width:0;transform:translate(-8px)}.nav-item:hover,.nav-item.active{color:#fff;background:#2a3733}.nav-item.sub{padding-left:24px}.sidebar.collapsed .nav-item.sub{padding-left:0}.customer-subnav{opacity:1;border-left:1px solid #ffffff24;gap:2px;max-height:none;margin-left:26px;padding-left:10px;transition:margin .26s,padding .26s,opacity .16s,transform .22s,border-color .22s;display:grid;overflow:visible;transform:translate(0)}.sidebar.collapsed .customer-subnav{opacity:0;border-color:#0000;max-height:0;margin-left:0;padding-left:0;overflow:hidden;transform:translate(-8px)}.sub-nav{color:#b8c5bf;text-align:left;background:0 0;border:0;border-radius:6px;min-height:29px;padding:0 9px;font-size:13px}.sub-nav:hover,.sub-nav.active{color:#fff;background:#2a3733}.fa-customer-subnav{gap:8px}.fa-customer-group{gap:4px;display:grid}.fa-customer-heading{color:#d8e2dd;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;padding:0 9px;font-size:12px;font-weight:800;overflow:hidden}.fa-customer-heading.active{color:#fff}.fa-customer-links{gap:2px;margin-left:12px;display:grid}.fa-sidebar-folders{border-top:1px solid #ffffff1f;gap:6px;margin-top:8px;padding-top:8px;display:grid}.fa-sidebar-folder{min-width:0}.fa-sidebar-folder-toggle{color:#b8c5bf;text-align:left;letter-spacing:0;background:0 0;border:0;border-radius:6px;grid-template-columns:18px minmax(0,1fr) auto 16px;align-items:center;gap:7px;width:100%;min-height:34px;padding:0 9px;font-size:13px;font-weight:800;display:grid}.fa-sidebar-folder-toggle:hover,.fa-sidebar-folder-toggle.active{color:#fff;background:#2a3733}.fa-sidebar-folder-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fa-sidebar-folder-count{font-variant-numeric:tabular-nums;background:#ffffff1a;border-radius:999px;justify-content:center;align-items:center;min-width:21px;min-height:20px;padding:0 5px;font-size:10px;display:inline-flex}.fa-sidebar-folder-toggle>svg:last-child{transition:transform .16s}.fa-sidebar-folder-toggle>svg:last-child.expanded{transform:rotate(180deg)}.fa-folder-customer-subnav{margin-top:5px}.fa-sidebar-folder-empty{color:#829089;padding:3px 9px;font-size:11px;font-weight:700}.sidebar.collapsed .fa-sidebar-folders{display:none}.sidebar-panel{opacity:1;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;max-height:176px;margin-top:auto;padding:14px;transition:max-height .28s cubic-bezier(.22,1,.36,1),padding .26s,border-width .26s,opacity .18s,transform .24s;overflow:hidden;transform:translate(0)}.sidebar.collapsed .sidebar-panel{opacity:0;border-width:0;max-height:0;padding-block:0;transform:translate(-10px)}.sidebar-panel strong,.sidebar-panel small{display:block}.sidebar-panel strong{margin:4px 0;font-size:28px}.sidebar-panel small{color:#b8c5bf}.week-override{grid-template-columns:minmax(0,1fr) auto;gap:6px;margin:10px 0;display:grid}.week-override input,.week-override button{border-radius:8px;min-height:32px}.week-override input{color:#fff;background:#ffffff14;border-color:#ffffff2e;min-width:0;font-weight:800}.week-override button{color:#1f2a24;background:#d9f99d;border:0;padding:0 10px;font-weight:800}.ghost-action{color:inherit;background:0 0;border:1px solid #ffffff2e}.sidebar.collapsed .ghost-action{margin-top:auto;gap:0;width:48px;min-height:48px;margin-inline:auto;padding:0}.ghost-action.inline{color:var(--ink);border-color:var(--line-strong)}.ghost-action.danger-outline{color:#991b1b;background:#fff7f7;border-color:#fecaca}.primary-action{color:#fff;background:var(--green)}.primary-action:disabled{cursor:not-allowed;opacity:.55}.primary-action.danger{background:var(--red)}.small-action{color:#fff;background:#23312d;min-height:32px}.small-action.danger{background:#991b1b}.main-panel{min-width:0;padding:22px}.announcement-banner{z-index:25;color:#fff7ed;background:linear-gradient(90deg,#9a4d00 0%,#c46a00 48%,#9a4d00 100%);border:0;border-radius:0;margin:-22px -22px 18px;position:sticky;top:0;overflow:hidden;box-shadow:0 10px 26px #9a4d0033}.announcement-track{white-space:nowrap;gap:72px;width:max-content;padding:9px 0;animation:24s linear infinite announcement-scroll;display:flex}.announcement-track span{letter-spacing:.01em;text-shadow:0 1px 1px #0000003d;padding-left:72px;font-size:15px;font-style:italic;font-weight:900}@keyframes announcement-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.topbar{justify-content:space-between;align-items:center;gap:18px;min-height:72px;margin-bottom:18px;display:flex}.topbar h1,.panel h2,.planning-toolbar h2{margin:0;line-height:1.05}.topbar h1{font-size:30px}.eyebrow{text-transform:uppercase;color:var(--muted);letter-spacing:.08em;margin:0 0 5px;font-size:11px;font-weight:700}.topbar-actions,.filter-row,.toolbar-actions,.assign-controls{align-items:center;gap:8px;display:flex}.search-box{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:8px;width:min(360px,34vw);height:40px;padding:0 12px;display:flex}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}select,input,textarea{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#fff;border-radius:8px;padding:0 10px}textarea{resize:vertical;min-height:92px;padding:10px;line-height:1.45}.page-grid{grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:16px;display:grid}.dashboard-grid .kpi-strip,.wide{grid-column:1/-1}.kpi-strip{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.kpi-card,.panel,.quick-job{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.kpi-card{align-items:center;gap:14px;min-height:112px;padding:18px;display:flex}.kpi-card>span{background:#eef3ee;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.kpi-card p{color:var(--muted);margin:0 0 8px}.kpi-card strong{font-size:34px;line-height:1}.kpi-card.bad>span{color:var(--red);background:#fee4e2}.kpi-card.warn>span{color:var(--orange);background:#fef3c7}.kpi-card.hot>span{color:#9f1239;background:#ffe4e6}.panel{min-width:0;padding:18px}.panel-heading,.planning-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.live-dot{color:#166534;background:#dcfce7;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.live-dot.warn{color:#92400e;background:#fef3c7}.compact-row.static{cursor:default}.empty-inline{border:1px dashed var(--line-strong);min-height:42px;color:var(--muted);text-align:center;background:#fff;border-radius:8px;place-items:center;padding:10px;display:grid}.utilization-grid{border:1px solid var(--line);border-radius:8px;grid-template-columns:180px repeat(6,minmax(132px,1fr));display:grid;overflow:hidden}.util-header,.util-process,.util-cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-height:72px;padding:10px}.util-header{background:#eef3ee;min-height:42px;font-weight:800}.util-cell.overload{background:#fff1f2}.meter{background:#e5e7eb;border-radius:999px;height:8px;margin-bottom:8px;overflow:hidden}.meter span{border-radius:inherit;background:var(--green);height:100%;display:block}.overload .meter span{background:var(--red)}.util-cell strong,.util-cell small{display:block}.util-cell small{color:var(--muted);margin-top:2px}.compact-list{gap:8px;display:grid}.compact-row,.work-row,.backlog-row{background:var(--panel-soft);width:100%;color:var(--ink);border:0;border-radius:8px}.compact-row{text-align:left;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:flex}.compact-row small,.plain-link small,.job-link span,.job-col small{color:var(--muted);margin-top:3px;display:block}.work-table{gap:6px;display:grid}.work-row{text-align:left;grid-template-columns:1.2fr .8fr .4fr .8fr .8fr;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:grid}.work-row.head,.backlog-row.head{background:#eef3ee;font-weight:800}.fa-dwg-row{grid-template-columns:minmax(190px,1.2fr) .55fr minmax(160px,1fr) minmax(150px,.9fr) .75fr}.fa-dashboard-button-list{gap:10px;display:grid}.fa-dashboard-button-row{border:1px solid var(--line);text-align:left;color:#0f172a;min-height:58px;box-shadow:var(--shadow);background:#fff;border-radius:10px;grid-template-columns:minmax(220px,1.3fr) .65fr .65fr .8fr;align-items:center;gap:12px;padding:12px 16px;display:grid}.fa-dashboard-button-row strong{font-size:15px}.fa-dashboard-button-row span{color:var(--muted);font-size:13px;font-weight:800}.fa-dashboard-button-row:hover{background:#f0f9ff}.planning-layout{gap:12px;display:grid}.planning-toolbar{min-height:58px;margin-bottom:0}.master-toolbar{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:14px 16px}.filter-shell{border:1px solid var(--line);background:linear-gradient(135deg, #0f766e0f, #fff0 45%), var(--panel);box-shadow:var(--shadow);border-radius:12px;gap:10px;padding:14px;display:grid}.filter-shell.compact{box-shadow:none}.fa-inline-search{width:min(440px,100%)}.topbar-actions .fa-inline-search{flex:260px}.fa-row-limit{border:1px solid var(--line);min-height:40px;color:var(--muted);letter-spacing:.03em;text-transform:uppercase;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.fa-row-limit input{width:72px;min-height:30px;padding:0 8px;font-size:13px;font-weight:800}.fa-permission-banner{border:1px solid var(--line);background:var(--panel-soft);border-radius:10px;grid-template-columns:40px minmax(0,1fr);gap:12px;margin-top:16px;padding:12px;display:grid}.fa-permission-banner svg{color:var(--green)}.fa-permission-banner strong,.fa-permission-banner small{display:block}.fa-permission-banner small{color:var(--muted);margin-top:4px;line-height:1.45}.fa-process-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.fa-process-export-actions{margin-top:16px}.fa-process-form label,.fa-process-segment{gap:6px;display:grid}.fa-process-form span,.fa-process-segment span{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:800}.fa-process-preview-row{grid-template-columns:minmax(170px,1fr) minmax(220px,1.4fr) minmax(240px,1.8fr) .45fr minmax(170px,1fr)}.fa-process-list-wrap{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:auto}.fa-process-list-table{border-collapse:collapse;width:100%;min-width:860px}.fa-process-list-table th,.fa-process-list-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px}.fa-process-list-table th{color:#0f172a;letter-spacing:.03em;text-transform:uppercase;background:#eff6ff;font-size:12px;font-weight:900}.fa-process-list-input{border:1px solid var(--line);color:#0f172a;background:#fff;border-radius:8px;width:100%;min-height:42px;padding:10px 12px;font-size:14px;font-weight:700}.fa-process-list-input:focus{border-color:#0f766e61;outline:0;box-shadow:0 0 0 3px #0f766e1f}.fa-process-list-readonly{color:#0f172a;align-items:center;min-height:42px;font-weight:700;display:flex}.fa-process-list-action{width:130px}.fa-folder-toolbar{align-items:flex-end}.fa-folder-create-form{justify-content:flex-end;align-items:center;gap:8px;min-width:min(100%,420px);display:flex}.fa-folder-create-form input,.fa-folder-title input{border:1px solid var(--line-strong);color:#0f172a;letter-spacing:0;background:#fff;border-radius:6px;min-width:0;min-height:38px;padding:0 10px;font-size:14px;font-weight:700}.fa-folder-create-form input{flex:220px}.fa-folder-create-form input:focus,.fa-folder-title input:focus{border-color:#0f766e;outline:0;box-shadow:0 0 0 3px #0f766e1f}.fa-folder-board{grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));align-items:start;gap:14px;display:grid}.fa-folder-column{background:#fff;border:1px solid #d7dfdc;border-radius:8px;min-width:0;min-height:150px;transition:border-color .16s,box-shadow .16s;overflow:hidden}.fa-folder-column.drop-target{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24}.fa-folder-column-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:8px 10px 8px 12px;display:flex}.fa-folder-title{color:#0f172a;flex:auto;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.fa-folder-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fa-folder-title span{color:#475569;font-variant-numeric:tabular-nums;background:#e2e8f0;border-radius:999px;justify-content:center;align-items:center;min-width:24px;min-height:22px;padding:0 6px;font-size:11px;font-weight:900;display:inline-flex}.fa-folder-title input{width:100%;min-height:32px}.fa-folder-actions{flex:none;gap:4px;display:flex}.fa-folder-actions button{color:#475569;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.fa-folder-actions button:hover{color:#0f766e;border-color:#0f766e}.fa-folder-actions button.danger:hover{color:#b91c1c;border-color:#dc2626}.fa-folder-pic-row{color:#64748b;background:#fff;border-bottom:1px solid #e2e8f0;grid-template-columns:18px auto minmax(0,1fr);align-items:center;gap:7px;min-height:42px;padding:6px 10px 6px 12px;display:grid}.fa-folder-pic-row>span{text-transform:uppercase;font-size:11px;font-weight:900}.fa-folder-pic-row select{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;width:100%;min-width:0;min-height:30px;padding:0 8px;font-size:12px;font-weight:800}.fa-folder-pic-row strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.fa-folder-customer-list{align-content:start;min-height:98px;padding:4px 10px 10px;display:grid}.fa-folder-customer{border-bottom:1px solid #edf1ef;grid-template-columns:18px minmax(0,1fr) 30px minmax(104px,.55fr);align-items:center;gap:7px;min-width:0;padding:8px 2px;transition:opacity .12s,background .12s;display:grid}.fa-folder-customer:last-child{border-bottom:0}.fa-folder-customer.dragging{opacity:.42}.fa-folder-customer.read-only{grid-template-columns:18px minmax(0,1fr)}.fa-folder-drag-slot{justify-content:center;align-items:center;width:18px;display:inline-flex}.fa-folder-drag-handle{color:#94a3b8;cursor:grab}.fa-folder-customer-open{color:#0f172a;text-align:left;background:0 0;border:0;justify-items:start;gap:2px;min-width:0;padding:2px 4px;display:grid}.fa-folder-customer-open strong{text-overflow:ellipsis;white-space:nowrap;width:100%;font-size:13px;overflow:hidden}.fa-folder-customer-open small{color:#64748b;font-size:11px;font-weight:700}.fa-folder-customer-open:hover strong{color:#0f766e}.fa-folder-customer-rename-button,.fa-folder-customer-rename button{color:#475569;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.fa-folder-customer-rename-button:hover,.fa-folder-customer-rename button:hover:not(:disabled){color:#0f766e;border-color:#0f766e}.fa-folder-customer-rename{grid-column:2/-1;grid-template-columns:minmax(0,1fr) 30px 30px;align-items:center;gap:5px;min-width:0;display:grid}.fa-folder-customer-rename input{border:1px solid var(--line-strong);color:#0f172a;background:#fff;border-radius:6px;width:100%;min-width:0;min-height:32px;padding:0 8px;font-size:12px;font-weight:700}.fa-folder-customer-rename input:focus{border-color:#0f766e;outline:0;box-shadow:0 0 0 3px #0f766e1f}.fa-folder-customer select{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:6px;width:100%;min-width:0;min-height:32px;padding:0 7px;font-size:12px;font-weight:700}@media (max-width:720px){.fa-folder-toolbar,.fa-folder-create-form{align-items:stretch;width:100%}.fa-folder-create-form{flex-direction:column}.fa-folder-create-form input{flex-basis:auto}.fa-folder-customer{grid-template-columns:18px minmax(0,1fr) 30px}.fa-folder-customer select{grid-column:2/-1}}.fa-permission-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px;display:grid}.fa-permission-card{border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px}.fa-permission-card strong,.fa-permission-card small{display:block}.fa-permission-card small{color:var(--muted);margin-top:4px;line-height:1.4}.filter-shell-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.filter-shell-heading h3{margin:2px 0 0;font-size:17px}.filter-shell-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.filter-shell-actions span,.filter-summary{color:var(--muted);font-size:12px;font-weight:800}.filter-panel{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;padding:0;display:grid}.customer-filter-panel{box-shadow:none;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.filter-control{gap:5px;min-width:0;display:grid}.filter-control span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.upload-panel,.export-panel{justify-content:space-between;align-items:center;gap:18px;display:flex}.upload-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.template-week-select{gap:4px;min-width:118px;display:grid}.template-week-select span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.template-week-select select{border-radius:8px;min-height:36px;font-weight:800}.hidden-input{display:none}.helper-text{color:var(--muted);margin:8px 0 0;line-height:1.45}.import-banner{color:#166534;background:#dcfce7;border:1px solid #bbf7d0;border-radius:8px;align-items:center;min-height:42px;padding:0 14px;display:flex}.import-banner.error{color:#991b1b;background:#fee2e2;border-color:#fecaca}.import-preview{gap:12px;display:grid}.sales-layout{gap:16px;display:grid}.sales-hero,.sales-actions-panel{justify-content:space-between;align-items:center;gap:18px;display:flex}.sales-kpis{grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px;min-width:320px;display:grid}.sales-upload-controls{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:8px;display:flex}.sales-date-control{min-width:190px}.sales-date-control input{width:100%}.settings-announcement-panel{gap:14px;display:grid}.settings-announcement-preview{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;padding:14px}.settings-announcement-preview strong,.settings-announcement-preview p{margin:0}.settings-announcement-preview p{color:#7c2d12;margin-top:6px;line-height:1.5}.settings-announcement-form{gap:12px;display:grid}.settings-announcement-form label{gap:8px;display:grid}.settings-announcement-form label>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.settings-announcement-form textarea{min-height:120px}.settings-announcement-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.settings-performance-panel{gap:14px;display:grid}.settings-performance-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.settings-performance-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.settings-performance-card{border:1px solid var(--line);background:#f8fafc;border-radius:12px;gap:6px;padding:14px;display:grid}.settings-performance-card span,.settings-performance-card small{color:var(--muted);font-size:12px}.settings-performance-card strong{color:var(--ink);font-size:22px}.settings-performance-counts{flex-wrap:wrap;gap:8px;display:flex}.settings-performance-counts span{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.settings-performance-events .history-row.warning{background:#fff7ed;border-color:#fed7aa}.sales-review-panel,.sales-table-panel{gap:12px;display:grid}.sales-review-grid,.sales-record-table{gap:8px;display:grid}.sales-master-form{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.sales-master-form input{min-width:min(320px,100%)}.sales-review-row,.sales-record-row,.sales-customer-row{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:10px 12px;display:grid}.sales-review-row{grid-template-columns:minmax(220px,1.4fr) 110px minmax(120px,1fr) 130px 120px}.sales-record-row{grid-template-columns:32px minmax(230px,1.2fr) minmax(160px,.8fr) 100px minmax(260px,1.4fr) 160px}.sales-record-row.selected{background:#f0fdf4;border-color:#86efac}.sales-customer-row{grid-template-columns:minmax(220px,1fr)}.sales-review-row strong,.sales-record-row strong,.sales-customer-row strong,.sales-review-row small,.sales-record-row small,.sales-customer-row small,.sales-record-row span{overflow-wrap:anywhere;min-width:0}.sales-review-row small,.sales-record-row small,.sales-customer-row small{color:var(--muted);margin-top:3px;display:block}.sales-row-actions,.sales-batch-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sales-record-select{place-items:center;display:grid}.sales-record-select input{cursor:pointer;width:16px;height:16px;min-height:auto;padding:0}.sales-pagination{border:1px solid var(--line);background:var(--panel-soft);color:var(--muted);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.sales-pagination-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sales-pagination-actions strong{color:var(--text);font-size:13px}.planner-pagination{min-width:min(760px,100%);margin-top:12px}.sales-pill{text-align:center;border-radius:999px;width:fit-content;min-width:80px;padding:5px 8px;font-size:11px;font-weight:800}.sales-pill.good{color:#166534;background:#dcfce7}.sales-pill.warn{color:#92400e;background:#fef3c7}.sales-pill.bad{color:#991b1b;background:#fee2e2}.sales-pill.neutral{color:var(--muted);background:#eef3ee}.sales-record-modal{width:min(860px,100%)}.sales-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.sales-form-grid label,.sales-form-grid input{min-width:0}.sales-form-grid label{gap:6px;display:grid}.sales-form-grid span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.sales-tier-editor{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;gap:8px;padding:12px;display:grid}.panel-heading.compact h3{margin:2px 0 0}.sales-tier-heading,.sales-tier-row{grid-template-columns:minmax(120px,1fr) minmax(140px,1fr) 100px;align-items:center;gap:8px;display:grid}.sales-tier-heading{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.sales-tier-row input{width:100%}.danger-text{color:var(--red)}.issue-list,.history-list,.note-list{gap:8px;display:grid}.issue-row,.history-row,.note-row{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;min-width:0;padding:10px 12px}.issue-row{grid-template-columns:86px minmax(0,1fr);align-items:center;gap:10px;display:grid}.issue-row span,.history-row small,.note-row p{overflow-wrap:anywhere}.release-table-wrap,.capacity-table-wrap{border:1px solid var(--line);background:var(--panel);max-height:calc(100vh - 204px);box-shadow:var(--shadow);border-radius:8px;overflow:auto}.release-table,.capacity-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:12px}.release-table th,.release-table td,.capacity-table th,.capacity-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;background:#fff;min-height:38px;padding:8px 10px}.release-table th,.capacity-table th{z-index:3;text-align:left;background:#eef3ee;font-weight:800;position:sticky;top:0}.release-table .description-cell{white-space:normal;max-width:260px;line-height:1.35}.capacity-table{font-size:13px}.capacity-input{width:116px}.load-cell strong,.load-cell small{display:block}.load-cell small{color:var(--muted);margin-top:2px}.load-cell.overload{color:#991b1b;background:#fff1f2}.load-cell.warn{color:#92400e;background:#fffbeb}.export-panel{justify-content:flex-start;min-height:190px}.user-kpis{grid-template-columns:repeat(4,minmax(170px,1fr))}.user-admin-panel{gap:16px;display:grid}.user-admin-heading{align-items:flex-start}.user-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.user-admin-card{border:1px solid var(--line);background:#fff;border-radius:16px;gap:14px;min-width:0;padding:14px;display:grid}.invite-admin-card{background:linear-gradient(135deg,#0f766e0f,#0000 42%),#fff}.user-admin-card-heading{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.user-admin-card-heading h3,.user-admin-card-heading p{margin:0}.user-admin-card-heading h3{color:var(--ink);font-size:18px}.user-admin-card-heading p{color:var(--muted);font-size:13px;line-height:1.5}.user-admin-icon{color:#0f766e;background:#ccfbf1;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.user-create-form{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:14px;padding:14px;display:grid}.user-create-form label{grid-column:span 3;min-width:0}.user-create-form .user-field-wide{grid-column:span 4}.user-create-form input,.user-create-form select{width:100%;min-width:0}.user-create-form .password-field input,.user-detail-section .password-field input{width:100%}.user-password-field{min-height:42px}.user-create-submit{grid-column:span 3;min-height:42px}.user-invite-form .user-field-wide{grid-column:span 6}.user-message{width:fit-content;min-height:36px}.invite-link-box{color:#0f766e;background:#f0fdfad1;border:1px dashed #0f766e61;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.invite-link-box span{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.user-table{gap:6px;display:grid}.user-row{background:var(--panel-soft);border-radius:8px;grid-template-columns:minmax(190px,1.2fr) 130px 110px 140px minmax(140px,.9fr) 110px;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:grid}.user-row.head{background:#eef3ee;font-weight:800}.user-row span{min-width:0}.user-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;display:block}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#18211f7a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.user-detail-modal{border:1px solid var(--line);background:var(--panel);border-radius:12px;gap:14px;width:min(760px,100%);max-height:min(760px,100vh - 48px);padding:20px;display:grid;overflow:auto;box-shadow:0 28px 80px #18211f47}.modal-heading,.modal-actions{align-items:center;gap:12px;display:flex}.modal-heading{border-bottom:1px solid var(--line);justify-content:space-between;padding-bottom:12px}.modal-heading h2{margin:2px 0 0}.icon-button{border:1px solid var(--line);width:36px;height:36px;color:var(--ink);background:#fff;border-radius:999px;place-items:center;display:grid}.user-detail-summary{background:var(--panel-soft);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex}.user-detail-summary small{color:var(--muted);font-weight:700}.user-detail-section{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:180px minmax(0,1fr);gap:14px;padding:14px;display:grid}.modal-actions{justify-content:flex-end;padding-top:4px}.modal-spacer{flex:1}.placeholder-panel{align-items:center;gap:18px;min-height:190px;display:flex}.export-icon{width:58px;height:58px;color:var(--green);background:#ecfdf5;border-radius:8px;place-items:center;display:grid}.export-stats{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.export-stats span{color:#475569;background:#eef3ee;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.export-customer-select{gap:6px;min-width:min(260px,100%);margin-left:auto;display:grid}.export-customer-select span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900}.export-customer-select select{border:1px solid var(--line);min-height:40px;color:var(--ink);background:#fff;border-radius:12px;padding:0 12px;font-weight:800}.quick-job{box-shadow:none;grid-template-columns:150px 110px 130px 90px minmax(150px,1fr) 150px 100px 82px 90px;align-items:center;gap:8px;padding:12px;display:grid}.checkbox-line{align-items:center;gap:6px;font-size:13px;display:flex}.checkbox-line input{min-height:auto}.planner-table-shell{gap:10px;display:grid}.planner-table-topbar{z-index:9;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8faf7f5;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex;position:sticky;top:0;box-shadow:0 10px 24px #0f172a14}.planner-table-topbar>div:first-child{gap:2px;display:grid}.planner-table-topbar strong{color:var(--ink);font-size:13px}.planner-table-topbar span{color:var(--muted);font-size:12px;font-weight:700}.planner-table-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.planner-page-size-control{color:var(--muted);align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.planner-page-size-control select{border:1px solid var(--line);min-height:34px;color:var(--ink);background:#fff;border-radius:10px;padding:0 28px 0 10px;font-weight:800}.planner-horizontal-scroll{border:1px solid var(--line);background:#eef3ee;border-radius:999px;height:17px;overflow:auto hidden}.planner-horizontal-scroll>div{height:1px}.planner-table-wrap{border:1px solid var(--line);background:var(--panel);max-height:calc(100vh - 150px);box-shadow:var(--shadow);border-radius:8px;overflow:auto}.planner-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:13px}.planner-table.clean{font-size:13px}.planner-table th,.planner-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top;background:#fff}.planner-table th{z-index:4;text-align:left;background:#eef3ee;height:42px;padding:0 10px;font-weight:800;position:sticky;top:0}.planner-table.clean th{border-color:var(--line);color:var(--ink);text-align:left;background:#eef3ee}.planner-table.clean td{border-color:var(--line)}.clean-planner-wrap{max-height:calc(100vh - 220px)}.planner-table th.current-week{background:#d9f99d}.sticky-col{z-index:3;position:sticky;left:0}th.sticky-col{z-index:6}.job-col{width:360px;min-width:360px;max-width:360px;padding:10px}.meta-col{width:96px;min-width:96px;padding:10px}.schedule-action-col{width:132px;min-width:132px}.schedule-row-actions{gap:8px;display:grid}.checkbox-col{text-align:center;width:62px;min-width:62px}.flag-col{width:132px;min-width:132px;padding:10px}.customer-clean-col{width:168px;min-width:168px;padding:10px}.numeric{text-align:right}.job-link,.plain-link{color:var(--ink);text-align:left;background:0 0;border:0;padding:0}.job-link strong,.plain-link strong{color:#0f766e}.job-part-number{font-weight:700}.job-reference-grid{flex-wrap:wrap;gap:5px;margin:7px 0 4px;display:flex}.job-reference-grid span{color:#475569;background:#eef3ee;border-radius:999px;align-items:center;min-height:21px;padding:0 7px;font-size:11px;font-weight:800;display:inline-flex}.job-flag-list{flex-wrap:wrap;gap:5px;display:flex}.job-flag-chip{color:#9a3412;white-space:nowrap;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;align-items:center;min-height:22px;padding:0 7px;font-size:11px;font-weight:800;display:inline-flex}.empty-flag{color:var(--muted);font-weight:800}.week-td{width:136px;min-width:136px;height:72px;padding:4px;position:relative}.week-cell{background:#fbfcfb;border:1px dashed #cbd5d1;border-radius:8px;flex-wrap:wrap;align-content:flex-start;gap:4px;width:100%;min-height:64px;padding:5px;display:flex}.week-cell.excel-cell{text-align:center;background:#ffec99;border:0;border-radius:0;place-content:center;min-height:52px}.week-cell.excel-cell:not(.filled){background:#fff}.week-cell.filled{background:#fff;border-style:solid;border-color:#b8c5bf}.week-cell-vertical{display:block}.week-process-stack{gap:6px;width:100%;display:grid}.week-process-item{text-align:left;gap:2px;display:grid}.week-process-title{color:#0f172a;align-items:center;gap:6px;font-weight:800;display:inline-flex}.week-process-item small,.due-stack small{color:var(--muted);line-height:1.35}.week-process-dot{background:var(--process-dot-color,#f59e0b);border-radius:999px;flex:none;width:8px;height:8px}.week-process-dot.alert{background:#dc2626;box-shadow:0 0 0 4px #dc26261f}.status-done .week-process-dot{background:#16a34a}.due-stack{gap:2px;display:grid}.empty-cell{color:#94a3a0;margin:auto;font-weight:800}.process-popover{z-index:60;border:1px solid var(--line-strong);background:#fff;border-radius:16px;width:min(420px,100vw - 32px);max-height:min(520px,100vh - 180px);padding:14px 14px 12px;position:absolute;top:calc(100% + 8px);left:4px;overflow:hidden;box-shadow:0 24px 70px #0f172a3d}.schedule-process-popover{z-index:1200;flex-direction:column;display:flex;position:fixed}.schedule-process-popover .process-options{flex:auto;min-height:0;max-height:none}.week-td:nth-last-child(-n+4) .process-popover{left:auto;right:4px}.popover-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.popover-heading button{background:#eef3ee;border:0;border-radius:8px;width:28px;height:28px}.process-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:430px;padding-right:4px;display:grid;overflow:auto}.process-option-card{gap:6px;display:grid}.process-option{border:1px solid var(--line);text-align:left;background:#fff;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 12px;font-weight:700;display:flex}.process-option small{color:var(--muted);text-transform:uppercase;margin-left:auto;font-size:11px;font-weight:800}.process-option span{border-radius:50%;width:9px;height:9px}.process-option.selected{border-color:var(--green);background:#ecfdf5;font-weight:800}.process-option-card.selected .process-option{border-color:var(--green)}.process-instance-editor{border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;gap:6px;padding:8px;display:grid}.process-instance-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.process-instance-heading strong{color:var(--ink);font-size:12px}.process-instance-heading button{color:#b91c1c;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:900}.process-remark-input{resize:vertical;border-radius:10px;min-height:68px;padding:8px 10px;font-size:12px}@media (max-width:720px){.process-popover{width:min(92vw,360px);max-height:min(70vh,100vh - 24px)}.process-options{grid-template-columns:minmax(0,1fr)}}.completed-timeline{gap:6px;min-width:220px;display:grid}.completed-timeline-row{gap:2px;display:grid}.capacity-safebox-backdrop{z-index:1300;background:#0f172a47;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.capacity-safebox{color:#7c2d12;background:#fff7ed;border:1px solid #fecaca;border-radius:8px;grid-template-columns:40px minmax(0,1fr);gap:12px;width:min(460px,100%);max-height:calc(100vh - 48px);padding:14px;display:grid;position:relative;overflow:auto;box-shadow:0 18px 50px #7c2d1233}.safebox-icon{width:40px;height:40px;color:var(--red);background:#ffedd5;border-radius:8px;place-items:center;display:grid}.capacity-safebox strong,.capacity-safebox p{margin:0}.capacity-safebox p{margin-top:5px;font-size:13px;line-height:1.4}.safebox-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.process-chip{--chip-color:var(--green);background:color-mix(in srgb, var(--chip-color) 13%, white);max-width:100%;min-height:24px;color:var(--chip-color);border:1px solid color-mix(in srgb, var(--chip-color) 32%, white);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.process-chip.compact{min-height:20px;padding:0 6px;font-size:11px}.status-pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 8px;font-size:12px;font-weight:800;display:inline-flex}.status-pill.good,.status-pill.done{color:#166534;background:#dcfce7}.status-pill.warn{color:#92400e;background:#fef3c7}.status-pill.bad{color:#991b1b;background:#fee2e2}.status-pill.hot{color:#9f1239;background:#ffe4e6}.status-pill.neutral{color:#475569;background:#e2e8f0}.status-pill.unplanned{color:#365314;background:#ecfccb}.status-pill.risk{min-width:72px}.execution-grid{grid-template-columns:minmax(320px,.82fr) minmax(480px,1.18fr);align-items:start;gap:18px}.execution-detail-backdrop{background:radial-gradient(circle at 22% 16%,#14b8a62e,#0000 30%),#0f172a8f;justify-content:center;align-items:center;padding:24px}.execution-detail-modal{background:linear-gradient(145deg,#f8faf7 0%,#eef7f3 46%,#fff 100%);border-radius:24px;width:min(1480px,100vw - 48px);max-height:min(860px,100vh - 48px);overflow:hidden}.execution-modal-content{max-height:min(860px,100vh - 48px);padding:24px;overflow:auto}.execution-modal-header{z-index:12;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe6;border-bottom:1px solid #94a3b83d;justify-content:space-between;align-items:center;gap:16px;margin:-20px -20px 18px;padding:18px 20px;display:flex;position:sticky;top:-20px}.execution-modal-header h2{margin:2px 0;font-size:clamp(24px,3vw,34px)}.execution-modal-header small{color:var(--muted);font-weight:800}.execution-modal-content .execution-hero .panel-heading{display:none}.execution-modal-content .execution-grid{grid-template-columns:minmax(0,1fr);gap:16px}.execution-modal-content .job-facts{grid-template-columns:repeat(6,minmax(110px,1fr))}.execution-modal-content .process-status-list{grid-template-columns:repeat(2,minmax(0,1fr))}.execution-modal-content .process-status-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.execution-modal-content .timeline-item{min-width:210px}.execution-hero{background:linear-gradient(145deg,#0f766e1f,#0000 42%),#fff;border:0;align-self:start;overflow:hidden;box-shadow:0 18px 42px #0f172a14}.execution-hero:before{content:"";background:linear-gradient(90deg,#0f766e,#f59e0b,#4f46e5);height:5px;position:absolute;inset:0 0 auto}.job-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.job-facts div{background:#ffffffc7;border:1px solid #0f172a0f;border-radius:14px;min-height:58px;padding:12px;box-shadow:inset 0 1px #fffc}.job-facts dt{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.job-facts dd{overflow-wrap:anywhere;margin:4px 0 0;font-weight:800}.description-line{color:var(--muted);line-height:1.45}.job-front-remark{color:#1e3a8a;background:linear-gradient(135deg,#eff6ff 0%,#fff 100%);border:1px solid #dbeafe;border-radius:14px;gap:5px;padding:10px 12px;display:grid}.job-front-remark span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.job-front-remark strong{color:#0f172a;white-space:pre-wrap;font-size:14px;line-height:1.45}.job-action-row{flex-wrap:wrap;gap:8px;display:flex}.job-edit-form{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.job-edit-modal{border:1px solid var(--line);background:linear-gradient(#fff 0%,#f8faf7 100%);border-radius:16px;width:min(1040px,100%);max-height:min(840px,100vh - 48px);overflow:auto;box-shadow:0 34px 90px #18211f52}.job-edit-modal .job-edit-form{padding:22px}.job-edit-header{border-bottom:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding-bottom:10px;display:flex}.job-edit-header-actions{align-items:center;gap:8px;display:flex}.job-edit-header h3{margin:2px 0 0;font-size:24px}.job-edit-section{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:minmax(190px,.3fr) minmax(0,1fr);gap:20px;min-width:0;padding:18px;display:grid}.job-edit-section-wide{grid-template-columns:minmax(190px,.3fr) minmax(0,1fr)}.edit-section-title{align-content:start;gap:3px;display:grid}.edit-section-title strong{font-size:16px}.edit-section-title small{color:var(--muted);line-height:1.4}.edit-field-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;min-width:0;display:grid}.edit-field-grid input,.job-edit-wide textarea{width:100%;min-width:0}.job-edit-wide{gap:5px;min-width:0;display:grid}.job-edit-wide textarea{resize:vertical;min-height:118px}.job-edit-actions{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;margin:0 -22px -22px;padding:14px 22px;display:flex;position:sticky;bottom:-22px}.priority-toggle{border:1px solid var(--line);background:var(--panel-soft);border-radius:999px;width:fit-content;padding:9px 11px;font-weight:700}.flag-picker{flex-wrap:wrap;gap:8px;display:flex}.flag-option{border:1px solid var(--line);min-height:36px;color:var(--muted);background:#fff;border-radius:999px;padding:0 12px;font-weight:800}.flag-option.selected{color:#fff;background:#23312d;border-color:#23312d}.process-status-list{gap:10px;display:grid}.process-status-row{background:linear-gradient(90deg,#14b8a614,#0000 34%),#fff;border:1px solid #0f172a12;border-radius:16px;grid-template-columns:minmax(160px,.45fr) minmax(280px,1fr);align-items:center;gap:14px;padding:14px;display:grid;box-shadow:0 10px 24px #0f172a0d}.execution-process-copy{gap:5px;display:grid}.execution-process-copy small,.execution-ad-hoc-note span{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.execution-ad-hoc-note{background:#fff;border:1px dashed #cbd5d1;border-radius:12px;gap:4px;padding:10px;display:grid}.segmented{border:0;border-radius:12px;grid-template-columns:repeat(3,minmax(120px,1fr));gap:6px;display:grid;overflow:hidden}.segmented button{border:1px solid var(--line);color:#334155;background:#f8fafc;border-radius:10px;min-height:38px;font-weight:800}.segmented button.selected{color:#fff;background:linear-gradient(#23312d 0%,#17231f 100%);border-color:#23312d;box-shadow:0 10px 18px #23312d2e}.segmented.compact{grid-template-columns:repeat(3,minmax(96px,1fr))}.segmented.compact button{min-height:30px;font-size:12px}.timeline{scroll-snap-type:x proximity;gap:12px;padding:4px 0 10px;display:flex;overflow-x:auto}.timeline-item{border:1px solid var(--line);scroll-snap-align:start;background:linear-gradient(#fff 0%,#f7faf7 100%);border-radius:14px;min-width:178px;min-height:118px;padding:14px;transition:border-color .16s,box-shadow .16s,transform .16s,background .16s;position:relative;box-shadow:0 10px 24px #0f172a0a}.timeline-item.empty{background:linear-gradient(#ffffffc2,#f7faf7e0),repeating-linear-gradient(135deg,#0f766e12 0 8px,#0000 8px 16px);border-style:dashed}.timeline-item.current{border-color:#99f6e4;box-shadow:0 14px 30px #0d94881f}.timeline-item.drop-target{background:#ecfdf5;border-color:#0f766e;transform:translateY(-2px);box-shadow:0 18px 40px #0f766e38}.timeline-item strong,.timeline-item span{flex-wrap:wrap;gap:5px;display:flex}.timeline-item strong{margin-bottom:8px}.timeline-process-card{cursor:grab;background:#fff;border:1px solid #0f172a14;border-radius:10px;width:100%;min-height:32px;padding:5px;box-shadow:0 8px 16px #0f172a0f}.timeline-process-card:active{cursor:grabbing}.timeline-process-card.dragging{opacity:.45;border-style:dashed}.reschedule-draggable-process{cursor:grab;background:#fff;border:1px solid #0f172a14;border-radius:10px;padding:6px;box-shadow:0 8px 16px #0f172a0f}.reschedule-draggable-process:active{cursor:grabbing}.reschedule-draggable-process.dragging{opacity:.45;border-style:dashed}.reschedule-needs-adjust{background:#fff7ed;border-color:#fecaca}.reschedule-needs-adjust .week-process-title{color:#7f1d1d}.reschedule-drop-target{background:#ecfdf5;border-color:#0f766e;box-shadow:inset 0 0 0 2px #0f766e3d,0 16px 32px #0f766e29}.timeline-empty-copy{color:#78918a;text-transform:uppercase;letter-spacing:.08em;border:1px dashed #b8c5bf;border-radius:10px;place-items:center;min-height:48px;font-weight:900;display:grid}.note-form{grid-template-columns:minmax(260px,1fr) auto;gap:8px;margin-bottom:12px;display:grid}.note-form input{width:100%}.note-row strong,.note-row span,.history-row strong,.history-row span,.history-row small{display:block}.note-row span,.history-row span,.history-row small{color:var(--muted);margin-top:3px}.note-row p{margin:8px 0 0;line-height:1.45}.job-history-list{gap:10px;display:grid}.job-history-row{border:1px solid var(--line);background:var(--panel-soft);border-radius:10px;gap:8px;padding:12px;display:grid}.job-history-row strong,.job-history-row span,.history-change-list small{display:block}.job-history-row span,.job-history-row p,.history-change-list small{color:var(--muted)}.job-history-row p{overflow-wrap:anywhere;margin:0;line-height:1.45}.history-change-list{border-top:1px dashed var(--line-strong);gap:4px;padding-top:8px;display:grid}.history-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.history-grid h3{margin:0 0 8px;font-size:15px}.backlog-grid{grid-template-columns:1fr}.backlog-table{gap:6px;display:grid}.backlog-row{grid-template-columns:minmax(150px,1.1fr) minmax(110px,.75fr) minmax(120px,.85fr) 96px 108px minmax(260px,1.3fr);align-items:center;gap:12px;min-height:54px;padding:8px 12px;display:grid}.backlog-row-merged-head{grid-template-columns:minmax(150px,1.1fr) minmax(110px,.75fr) minmax(120px,.85fr) 108px minmax(420px,1.9fr)}.backlog-row-merged{grid-template-columns:minmax(150px,1.1fr) minmax(110px,.75fr) minmax(120px,.85fr) 108px auto;align-items:center}.backlog-row-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.backlog-row-actions small{color:var(--muted);font-weight:800}.backlog-merged-list{gap:10px;display:grid}.backlog-merged-item{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:minmax(140px,1fr) auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.backlog-merged-copy{gap:2px;display:grid}.backlog-merged-copy small{color:var(--muted);line-height:1.35}.backlog-reschedule-button{justify-self:start}.pull-in-panel{background:radial-gradient(circle at 100% 0,#fbbf2429,#0000 34%),linear-gradient(#fff 0%,#f8faf7 100%)}.pull-in-list,.data-preview-list{gap:10px;display:grid}.pull-in-card{background:#fff;border:1px solid #0f172a14;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(220px,auto);align-items:center;gap:16px;padding:16px;display:grid;box-shadow:0 12px 26px #0f172a0f}.pull-in-card-main{grid-template-columns:minmax(160px,.7fr) minmax(0,1.7fr);align-items:center;gap:18px;display:grid}.pull-in-job-link{text-align:left;gap:3px;display:grid}.pull-in-meta-grid{grid-template-columns:repeat(5,minmax(90px,1fr));gap:10px;display:grid}.pull-in-meta-grid span{gap:3px;min-width:0;display:grid}.pull-in-meta-grid small,.pull-in-card-action small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900}.pull-in-meta-grid strong{overflow-wrap:anywhere}.pull-in-card-action{justify-items:end;gap:8px;display:grid}.data-download-panel{background:radial-gradient(circle at 0 0,#14b8a624,#0000 34%),#fff}.data-preview-row{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(180px,.8fr) 90px minmax(240px,1.6fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.data-preview-row.head{background:#eef3ee;font-weight:900}@media (max-width:920px){.pull-in-card,.pull-in-card-main{grid-template-columns:1fr}.pull-in-card-action{justify-items:start}.pull-in-meta-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}}.reschedule-modal{width:min(1180px,100vw - 48px);max-height:calc(100vh - 40px);overflow:auto}.reschedule-modal .job-edit-header{align-items:flex-start;padding:22px 22px 14px}.reschedule-modal .job-edit-header .eyebrow{margin-bottom:8px;display:block}.reschedule-modal .job-edit-header h3{margin:0}.reschedule-modal .job-edit-header .helper-text{margin:10px 0 0}.reschedule-scroll-toolbar{z-index:8;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8faf7f0;justify-content:flex-end;gap:8px;padding:10px 22px;display:flex;position:sticky;top:0}.reschedule-scroll-toolbar .ghost-action.inline{background:#fff;min-height:34px;padding-inline:12px}.reschedule-planner-shell{max-height:none;margin-top:0}.reschedule-compact-controls{justify-content:stretch}.reschedule-compact-controls select,.reschedule-compact-controls .small-action{width:100%}.reschedule-week-td{vertical-align:top}.reschedule-week-cell{gap:10px;min-height:188px}.reschedule-overdue-stack{gap:10px;width:100%;display:grid}.reschedule-overdue-card{background:linear-gradient(#fff7ed 0%,#fff 100%);border:1px solid #fecaca;border-radius:10px;gap:8px;padding:10px;display:grid;box-shadow:0 12px 24px #7f1d1d14}.reschedule-overdue-card .reschedule-draggable-process{width:100%}.reschedule-overdue-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.reschedule-overdue-head small{color:#92400e;font-weight:700}.backlog-row>*,.confirmation-row>*{min-width:0}.backlog-row>span,.confirmation-row>span,.plain-link{overflow-wrap:anywhere}.confirmation-list{gap:6px;display:grid}.confirmation-search{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;grid-template-columns:minmax(260px,460px) auto;justify-content:start;align-items:end;gap:10px;margin-bottom:12px;padding:12px;display:grid}.confirmation-search label{gap:5px;display:grid}.confirmation-search label span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.confirmation-search input{width:100%}.confirmation-empty{border:1px dashed var(--line-strong);min-height:92px;color:var(--muted);text-align:center;background:#fff;border-radius:8px;place-items:center;padding:18px;display:grid}.confirmation-row{background:var(--panel-soft);border-radius:8px;grid-template-columns:minmax(180px,1fr) 110px minmax(150px,.8fr) 110px minmax(520px,1.3fr);align-items:center;gap:12px;min-height:54px;padding:8px 12px;display:grid}.confirmation-row.head{background:#eef3ee;font-weight:800}.confirmation-process-list{gap:8px;display:grid}.confirmation-process-row{grid-template-columns:130px minmax(0,1fr);align-items:center;gap:10px;display:grid}.assign-controls{flex-wrap:wrap;justify-content:flex-start}.assign-controls select{flex:112px;width:auto;min-width:112px}.assign-controls .small-action{flex:none}.fa-grid-wrap{border:1px solid var(--line);background:var(--panel);max-height:calc(100vh - 220px);box-shadow:var(--shadow);border-radius:8px;overflow:auto}.fa-grid-table{--fa-sticky-2-width:54px;--fa-sticky-3-width:54px;--fa-sticky-4-width:54px;--fa-sticky-5-width:54px;--fa-sticky-7-width:54px;--fa-sticky-8-width:148px;border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:14px}.fa-grid-th,.fa-grid-td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top;background:#fff}.fa-grid-th{z-index:7;text-align:left;letter-spacing:.02em;white-space:nowrap;color:#0f172a;background:#eef3ee;min-height:48px;padding:11px 12px;font-size:13px;font-weight:900;position:sticky;top:0}.fa-grid-th.fa-header-project-main,th.fa-grid-th.fa-header-project-main{background:#dbeafe}.fa-grid-th.fa-header-project-process,th.fa-grid-th.fa-header-project-process{background:#bfdbfe}.fa-grid-th.fa-header-pending-main,th.fa-grid-th.fa-header-pending-main{background:#fef3c7}.fa-grid-th.fa-header-pending-process,th.fa-grid-th.fa-header-pending-process{background:#fde68a}.fa-grid-th.fa-header-pending-notes,th.fa-grid-th.fa-header-pending-notes{background:#fffbeb}.fa-grid-th.fa-header-shipped-main,th.fa-grid-th.fa-header-shipped-main{background:#ffedd5}.fa-grid-th.fa-header-shipped-process,th.fa-grid-th.fa-header-shipped-process{background:#fef3c7}.fa-grid-th.fa-header-shipped-notes,th.fa-grid-th.fa-header-shipped-notes{background:#dbeafe}.fa-grid-td{min-width:148px;padding:0}.fa-grid-th.fa-col-date,.fa-grid-td.fa-col-date{min-width:260px}.fa-grid-th.fa-col-release,.fa-grid-td.fa-col-release{min-width:240px}.fa-grid-th.fa-col-jc-release,.fa-grid-td.fa-col-jc-release{min-width:280px}.fa-grid-th.fa-col-status,.fa-grid-td.fa-col-status,.fa-grid-th.fa-col-buyoff,.fa-grid-td.fa-col-buyoff{min-width:220px}.fa-grid-th.fa-col-shipped,.fa-grid-td.fa-col-shipped{min-width:250px}.fa-grid-input,.fa-grid-select,.fa-grid-textarea{color:#0f172a;background:0 0;border:0;border-radius:0;width:100%;min-width:0;min-height:44px;padding:8px 10px;font-size:14px;font-weight:700;line-height:1.45}.fa-grid-textarea{resize:none;min-height:44px;line-height:1.5;overflow:hidden}.fa-grid-textarea.compact,.fa-readonly-cell.multiline.compact{color:#64748b;min-height:34px;padding-block:6px;font-size:12px;font-weight:800}.fa-grid-input:focus,.fa-grid-select:focus,.fa-grid-textarea:focus{background:#f0fdf4;outline:0;box-shadow:inset 0 0 0 2px #0f766e2e}.fa-release-cell,.fa-status-cell{background:#fff;align-content:start;min-width:100%;display:grid}.fa-release-cell{gap:2px}.fa-release-cell.no-remark{align-content:start}.fa-release-cell .fa-date-display-button,.fa-release-cell .fa-readonly-cell,.fa-status-cell .fa-readonly-cell{border-bottom:0}.fa-release-cell .fa-grid-textarea,.fa-status-cell .fa-grid-textarea{min-height:40px}.fa-release-cell .fa-grid-textarea,.fa-release-cell .fa-readonly-cell.multiline{color:#475569;background:0 0;min-height:32px;padding:0;font-size:13px}.fa-release-cell .fa-grid-textarea.compact,.fa-release-cell .fa-readonly-cell.multiline.compact{color:#94a3b8;min-height:28px;padding:0;font-size:12px;font-weight:800}.fa-release-cell .fa-date-field,.fa-release-cell .fa-readonly-cell.fa-date-cell{min-height:auto}.fa-release-cell .fa-date-display-button,.fa-release-cell .fa-date-content-line{min-height:40px;padding:8px 12px 4px}.fa-release-cell .fa-date-meta-row{border-top:0;padding:0 12px 6px}.fa-release-remark-shell{border-radius:10px;margin:0 12px 10px;overflow:hidden}.fa-release-remark-shell.has-value{background:#f8fafc;border-left:3px solid #94a3b8;padding:8px 10px}.fa-release-remark-shell.empty-value{background:#f8fafc8c;border:1px dashed #94a3b86b;margin-top:-2px;margin-bottom:8px;padding:5px 10px}.fa-release-remark-shell.empty-value:focus-within{background:#f0fdf4;border-color:#0f766e}.fa-release-remark-label{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:900;display:block}.fa-status-history-button{color:#334155;white-space:nowrap;background:#fff;border:1px solid #cbd5d1;border-radius:999px;justify-content:center;align-items:center;gap:7px;width:fit-content;min-height:30px;margin:8px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.fa-status-history-button:hover{color:#0f766e;background:#ecfdf5;border-color:#0f766e}.fa-date-history-button{flex:none;min-height:28px;margin:0;padding:0 9px;font-size:11px}.fa-readonly-cell.fa-date-cell,.fa-date-display-button{font-variant-numeric:tabular-nums}.fa-readonly-cell.fa-date-cell{place-content:start stretch;gap:0;min-height:74px;padding:0;display:grid}.fa-readonly-cell.fa-date-cell.with-history,.fa-date-field.with-history{align-items:stretch;gap:0;display:grid}.fa-readonly-cell.fa-date-cell.with-history{justify-content:stretch}.fa-date-content-line{justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:8px 12px 6px;display:flex}.fa-readonly-cell.fa-date-cell.with-history .fa-date-content-line,.fa-date-field.with-history .fa-date-display-button{border-bottom:0}.fa-date-field{background:#fff;align-content:start;min-height:74px;display:grid;position:relative}.fa-date-display-button{color:#0f172a;text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:42px;padding:8px 12px 6px;font-size:14px;font-weight:700;line-height:1.45;display:flex}.fa-date-display-button span{min-width:0}.fa-date-main{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.fa-date-meta-row{border-top:1px solid #cbd5e173;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:0 10px 8px;display:flex}.fa-date-editor-note{box-sizing:border-box;color:#475569;letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;flex:auto;align-items:center;gap:4px;min-width:0;padding:0;font-size:12px;font-weight:900;line-height:1.25;display:flex;overflow:hidden}.fa-date-field:not(.with-history) .fa-date-editor-note,.fa-readonly-cell.fa-date-cell:not(.with-history) .fa-date-editor-note{margin-top:0}.fa-date-editor-note span{color:#94a3b8;text-transform:uppercase;font-size:10px}.fa-date-editor-note strong{text-overflow:ellipsis;min-width:0;overflow:hidden}.fa-date-picker-native{opacity:0;pointer-events:none;position:absolute;inset:0}.fa-date-field.urgent .fa-date-display-button,.fa-readonly-cell.fa-date-cell.urgent{color:#9a3412;background:#fff7ed;box-shadow:inset 0 0 0 1px #f973162e}.fa-date-field.urgent-today .fa-date-display-button,.fa-readonly-cell.fa-date-cell.urgent-today{color:#991b1b;background:#fee2e2;box-shadow:inset 0 0 0 2px #ef44443d}.fa-date-badge{letter-spacing:.02em;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:22px;padding:0 8px;font-size:11px;font-weight:900;display:inline-flex}.fa-date-badge.warn{color:#9a3412;background:#ffedd5}.fa-date-badge.danger{color:#991b1b;background:#fecaca}.fa-readonly-cell{color:#0f172a;background:#fcfdfc;align-items:center;min-height:44px;padding:8px 10px;font-size:14px;font-weight:700;line-height:1.45;display:flex}.fa-readonly-cell.multiline{white-space:pre-wrap;align-items:flex-start;min-height:44px;line-height:1.5}.fa-slot-cell{background-clip:padding-box;min-width:140px}.fa-grid-select-head,.fa-grid-select-cell{width:58px;min-width:58px;padding:0}.fa-action-cell{min-width:172px;padding:8px}.fa-action-cell .ghost-action{justify-content:center;width:100%}.fa-action-cell .ghost-action+.ghost-action{margin-top:8px}.fa-history-change-cell{align-items:center;min-height:44px;padding:8px;display:flex}.fa-inline-cell-button{justify-content:center;gap:8px;width:100%}.fa-shipped-choice-group{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;display:grid}.fa-shipped-choice{border:1px solid var(--line-strong);color:#475569;letter-spacing:.03em;background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:36px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:inset 0 0 0 1px #0f172a0a}.fa-shipped-choice.active.yes{color:#166534;background:linear-gradient(#dcfce7 0%,#bbf7d0 100%);border-color:#15803d}.fa-shipped-choice.active.no{color:#334155;background:linear-gradient(#f8fafc 0%,#e2e8f0 100%);border-color:#cbd5e1}.fa-shipped-choice.active.pending{color:#92400e;background:linear-gradient(#fef3c7 0%,#fde68a 100%);border-color:#d97706}.fa-shipped-choice-group.readonly .fa-shipped-choice{pointer-events:none}.fa-tab-button-copy{align-items:center;gap:8px;display:inline-flex}.fa-tab-notification{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 6px 16px #dc262638}.fa-sidebar-link-copy{align-items:center;gap:8px;display:inline-flex}.fa-sidebar-link-badge{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:900;line-height:1;display:inline-flex}.fa-success-banner{color:#166534;background:linear-gradient(#f0fdf4 0%,#dcfce7 100%);border:1px solid #86efac;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.fa-success-banner strong,.fa-success-banner small{display:block}.fa-success-banner small{color:#15803d;margin-top:4px}.fa-grid-checkbox-wrap{color:#334155;letter-spacing:.03em;text-transform:uppercase;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 10px;font-size:12px;font-weight:800;display:flex}.fa-grid-checkbox-wrap input{width:16px;height:16px;accent-color:var(--green)}.fa-grid-checkbox-wrap.compact{gap:0;padding:0}.fa-grid-checkbox-wrap.compact span{display:none}.fa-sticky-1,.fa-sticky-2,.fa-sticky-3,.fa-sticky-4,.fa-sticky-5,.fa-sticky-6,.fa-sticky-7,.fa-sticky-8{z-index:5;background:#fff;position:sticky}th.fa-sticky-1,th.fa-sticky-2,th.fa-sticky-3,th.fa-sticky-4,th.fa-sticky-5,th.fa-sticky-6,th.fa-sticky-7,th.fa-sticky-8{z-index:8;background:#eef3ee}.fa-sticky-1{width:124px;min-width:124px;max-width:124px;left:0}.fa-sticky-2{width:var(--fa-sticky-2-width);min-width:var(--fa-sticky-2-width);max-width:var(--fa-sticky-2-width);left:124px}.fa-sticky-3{left:calc(124px + var(--fa-sticky-2-width));width:var(--fa-sticky-3-width);min-width:var(--fa-sticky-3-width);max-width:var(--fa-sticky-3-width)}.fa-sticky-4{left:calc(124px + var(--fa-sticky-2-width) + var(--fa-sticky-3-width));width:var(--fa-sticky-4-width);min-width:var(--fa-sticky-4-width);max-width:var(--fa-sticky-4-width)}.fa-sticky-5{left:calc(124px + var(--fa-sticky-2-width) + var(--fa-sticky-3-width) + var(--fa-sticky-4-width));width:var(--fa-sticky-5-width);min-width:var(--fa-sticky-5-width);max-width:var(--fa-sticky-5-width)}.fa-sticky-6{left:calc(124px + var(--fa-sticky-2-width) + var(--fa-sticky-3-width) + var(--fa-sticky-4-width) + var(--fa-sticky-5-width));width:220px;min-width:220px;max-width:220px}.fa-sticky-7{left:calc(344px + var(--fa-sticky-2-width) + var(--fa-sticky-3-width) + var(--fa-sticky-4-width) + var(--fa-sticky-5-width));width:var(--fa-sticky-7-width);min-width:var(--fa-sticky-7-width);max-width:var(--fa-sticky-7-width)}.fa-sticky-8{left:calc(344px + var(--fa-sticky-2-width) + var(--fa-sticky-3-width) + var(--fa-sticky-4-width) + var(--fa-sticky-5-width) + var(--fa-sticky-7-width));width:var(--fa-sticky-8-width);min-width:var(--fa-sticky-8-width);max-width:var(--fa-sticky-8-width)}.fa-process-picker-cell{min-height:44px;position:relative}.fa-process-trigger{color:#0f172a;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:54px;padding:8px 10px;display:flex}.fa-process-trigger:hover,.fa-process-trigger.filled{background:#f8fbfa}.fa-process-trigger:focus-visible{background:#f0fdf4;outline:0;box-shadow:inset 0 0 0 2px #0f766e2e}.fa-process-placeholder{color:#475569;letter-spacing:.03em;font-size:13px;font-weight:700}.fa-grid-process-chip{min-height:24px;margin:0;padding:0 8px;font-size:12px}.fa-process-readonly{align-content:center;gap:4px;min-height:78px;padding:8px 10px;display:grid}.fa-process-readonly-controls{justify-content:space-between;align-items:center;gap:4px;min-height:22px;display:flex}.fa-process-trigger-copy{justify-items:flex-start;gap:4px;min-width:0;display:grid}.fa-process-remark{color:#334155;overflow-wrap:anywhere;white-space:pre-wrap;text-align:left;font-size:11px;font-weight:800;line-height:1.4;display:block}.fa-process-remark-shell{border-radius:7px;margin:0 7px 6px;overflow:hidden}.fa-process-remark-shell.has-value{background:#f8fafcc7;border-left:3px solid #94a3b8;padding:6px 8px 7px}.fa-process-remark-shell.empty-value{background:#ffffff7a;border:1px dashed #94a3b885;padding:4px 8px}.fa-process-remark-shell.empty-value:focus-within{background:#f0fdf4e0;border-color:#0f766e}.fa-process-remark-label{color:#64748b;letter-spacing:0;text-transform:uppercase;margin-bottom:3px;font-size:9px;font-weight:900;display:block}.fa-process-readonly .fa-process-remark-shell{margin:2px 0 0}.fa-process-remark-input{color:#334155;resize:none;background:0 0;border:0;width:100%;min-height:24px;padding:0;font-size:11px;font-weight:800;line-height:1.4;display:block;overflow:hidden}.fa-process-remark-input::placeholder{color:#64748b;font-weight:800}.fa-process-remark-input:focus{outline:0}.fa-process-picker-cell.state-active,.fa-process-readonly.state-active,.fa-process-picker-cell.state-complete,.fa-process-readonly.state-complete{box-shadow:none;background:0 0}.fa-process-picker-cell.state-active .fa-process-trigger,.fa-process-picker-cell.state-active .fa-process-remark-input,.fa-process-picker-cell.state-complete .fa-process-trigger,.fa-process-picker-cell.state-complete .fa-process-remark-input,.fa-process-picker-cell.has-warning .fa-process-trigger,.fa-process-picker-cell.has-warning .fa-process-remark-input{background:0 0}.fa-process-state-controls{border-top:1px solid #94a3b833;justify-content:flex-end;align-items:center;gap:4px;min-height:27px;padding:3px 6px 4px;display:flex}.fa-process-state-button,.fa-process-state-indicator{color:#64748b;background:#ffffffc7;border:1px solid #cbd5e1;border-radius:4px;justify-content:center;align-items:center;width:22px;height:20px;font-size:13px;font-weight:900;line-height:1;display:inline-flex}.fa-process-state-button:hover,.fa-process-state-button:focus-visible{background:#fff;border-color:#64748b;outline:0}.fa-process-state-button.state-active.active,.fa-process-state-indicator.state-active{color:#fff;background:#2563eb;border-color:#2563eb}.fa-process-state-button.state-complete.active,.fa-process-state-indicator.state-complete{color:#fff;background:#16a34a;border-color:#15803d}.fa-process-state-button.state-warning.active{color:#fff;background:#dc2626;border-color:#b91c1c;box-shadow:0 0 0 2px #dc262624}.fa-process-state-button.state-warning:not(.active):hover,.fa-process-state-button.state-warning:not(.active):focus-visible{color:#b91c1c;border-color:#dc2626}.fa-process-state-indicator{justify-self:end;margin-top:2px}.fa-grid-table tbody tr:nth-child(2n) .fa-grid-td{background:#fbfdfc}.fa-grid-table tbody tr:hover .fa-grid-td{background:#f0f9ff}.fa-grid-table tbody .fa-grid-td.fa-slot-cell.state-active{background:#dbeafe;box-shadow:inset 0 0 0 1px #60a5fa}.fa-grid-table tbody .fa-grid-td.fa-slot-cell.state-complete{background:#dcfce7;box-shadow:inset 0 0 0 1px #4ade80}.fa-grid-table tbody .fa-grid-td.fa-slot-cell.has-warning{background:#fee2e2;box-shadow:inset 3px 0 #dc2626,inset 0 0 0 1px #f87171}.fa-slot-cell.state-active .fa-process-remark-shell.has-value{background:#ffffff80;border-left-color:#60a5fa}.fa-slot-cell.state-complete .fa-process-remark-shell.has-value{background:#ffffff80;border-left-color:#4ade80}.fa-slot-cell.has-warning .fa-process-remark-shell.has-value{background:#ffffff94;border-left-color:#ef4444}.fa-slot-cell.has-warning .fa-process-trigger,.fa-slot-cell.has-warning .fa-process-remark,.fa-slot-cell.has-warning .fa-process-remark-input{color:#7f1d1d}.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-1,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-2,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-3,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-4,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-5,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-6,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-7,.fa-grid-table tbody tr:nth-child(2n) .fa-sticky-8{background:#fbfdfc}.fa-grid-table tbody tr:hover .fa-sticky-1,.fa-grid-table tbody tr:hover .fa-sticky-2,.fa-grid-table tbody tr:hover .fa-sticky-3,.fa-grid-table tbody tr:hover .fa-sticky-4,.fa-grid-table tbody tr:hover .fa-sticky-5,.fa-grid-table tbody tr:hover .fa-sticky-6,.fa-grid-table tbody tr:hover .fa-sticky-7,.fa-grid-table tbody tr:hover .fa-sticky-8{background:#f0f9ff}.fa-process-popover{width:min(460px,100vw - 40px)}.fa-warning-notice{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:7px;grid-template-columns:18px minmax(0,1fr) 28px;align-items:center;gap:9px;min-height:42px;margin-bottom:8px;padding:7px 8px 7px 12px;font-size:13px;font-weight:800;display:grid}.fa-warning-notice.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.fa-warning-notice button{color:currentColor;background:0 0;border:0;place-items:center;width:28px;height:28px;display:grid}.fa-process-warning-modal{width:min(620px,100vw - 32px);max-height:min(86vh,760px);overflow:auto}.fa-warning-modal-heading small{color:#64748b;margin-top:4px;font-weight:700;display:block}.fa-warning-detail,.fa-warning-form{gap:16px;padding:20px;display:grid}.fa-warning-detail-meta{color:#b91c1c;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;display:grid}.fa-warning-detail-meta>svg{background:#fee2e2;border-radius:999px;width:34px;height:34px;padding:7px}.fa-warning-detail-meta div{gap:2px;min-width:0;display:grid}.fa-warning-detail-meta strong{color:#0f172a}.fa-warning-detail-meta small{color:#64748b;font-weight:700}.fa-warning-remark{color:#7f1d1d;overflow-wrap:anywhere;white-space:pre-wrap;background:#fef2f2;border-left:4px solid #dc2626;min-height:88px;padding:14px;font-size:14px;font-weight:700;line-height:1.55}.fa-warning-attachment{justify-items:start;gap:8px;display:grid}.fa-warning-attachment>a:first-child{width:100%;display:block}.fa-warning-attachment img{object-fit:contain;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;width:100%;max-height:320px}.fa-warning-attachment .ghost-action small{color:#64748b}.fa-warning-form>label{gap:6px;display:grid}.fa-warning-form>label>span{color:#475569;text-transform:uppercase;font-size:11px;font-weight:900}.fa-warning-form textarea,.fa-warning-form input[type=file]{color:#0f172a;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;padding:10px 12px}.fa-warning-form textarea{resize:vertical}.fa-warning-form textarea:focus,.fa-warning-form input[type=file]:focus{border-color:#0f766e;outline:0;box-shadow:0 0 0 3px #0f766e1f}.fa-warning-file-field small{color:#475569;align-items:center;gap:5px;font-weight:700;display:inline-flex}.fa-process-popover-actions{align-items:center;gap:8px;display:flex}.fa-process-popover-actions .ghost-action.inline{border-color:var(--line-strong);background:#fff;width:auto;min-height:32px;padding:0 10px}.fa-history-modal{width:min(760px,100vw - 32px);max-height:min(80vh,760px);overflow:auto}.fa-history-layout{gap:14px;padding:22px;display:grid}.fa-history-header{padding-bottom:14px}.fa-history-title{gap:6px;display:grid}.fa-history-subtitle{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px;font-weight:700}.fa-history-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.fa-history-summary>div,.fa-history-timeline-card{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px 16px}.fa-history-summary small{color:var(--muted);margin-bottom:6px;font-weight:800;display:block}.fa-history-summary strong{font-size:20px;line-height:1.2;display:block}.fa-history-timeline-card .panel-heading{margin-bottom:10px}.fa-history-timeline{gap:10px;display:grid}.fa-history-timeline-row{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:10px;display:grid}.fa-history-timeline-row span{color:#1d4ed8;background:#eef2ff;border-radius:999px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:900;display:grid}.fa-history-timeline-row p{color:#0f172a;margin:0;padding:6px 0 0;line-height:1.45}.fa-history-timeline-content{gap:8px;display:grid}.fa-history-timeline-content small{color:var(--muted);font-size:12px;font-weight:800}.fa-history-remark-input{border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);background:#fff;border-radius:10px;padding:0 12px}.fa-history-remark-input:focus{border-color:#0f766e59;outline:0;box-shadow:0 0 0 3px #0f766e1f}.fa-history-empty{text-align:center;background:linear-gradient(#fff 0%,#f8faf7 100%);border:1px dashed #cbd5d1;border-radius:16px;place-items:center;gap:8px;min-height:160px;padding:24px;display:grid}.fa-history-empty strong,.fa-history-empty p{margin:0}.fa-history-empty p{color:var(--muted)}.fa-pagination-panel{padding:12px 14px}.fa-pagination{justify-content:space-between;align-items:center;gap:12px;display:flex}.fa-pagination-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fa-process-popover-actions>button:last-child{background:#eef3ee;border:0;border-radius:8px;width:28px;height:28px}.fa-process-option{align-items:flex-start;min-height:56px;padding:10px}.fa-process-option span{background:var(--green);flex:none;margin-top:5px}.fa-process-option div{text-align:left;gap:2px;display:grid}.fa-process-option strong,.fa-process-option small{display:block}.fa-process-option strong{font-size:13px}.fa-process-option small{color:var(--muted);line-height:1.35}@media (max-width:1180px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.app-shell.sidebar-collapsed{grid-template-columns:76px minmax(0,1fr)}.kpi-strip{grid-template-columns:repeat(2,minmax(180px,1fr))}.user-admin-grid{grid-template-columns:1fr}.settings-performance-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}.execution-modal-content .job-facts{grid-template-columns:repeat(3,minmax(120px,1fr))}.execution-modal-content .process-status-list,.page-grid,.execution-grid{grid-template-columns:1fr}.utilization-grid{overflow-x:auto}.history-grid,.note-form,.job-edit-form,.edit-field-grid,.fa-process-form,.job-edit-section,.job-edit-section-wide,.user-detail-section,.user-create-form{grid-template-columns:1fr}.user-create-form label,.user-create-form .user-field-wide,.user-create-submit,.job-edit-actions{grid-column:auto}.job-edit-modal{max-height:calc(100vh - 24px)}.job-edit-modal .job-edit-form{padding:16px}.job-edit-actions{background:0 0;border-top:0;flex-wrap:wrap;margin:0;padding:0;position:static}.modal-actions{flex-wrap:wrap}.modal-spacer{display:none}.user-kpis{grid-template-columns:repeat(2,minmax(170px,1fr))}.user-row{grid-template-columns:minmax(180px,1fr) 110px 90px 130px minmax(130px,1fr) 96px}.fa-permission-grid{grid-template-columns:1fr}}@media (max-width:860px){.secure-login-card,.invite-card{grid-template-columns:1fr}.login-hero,.invite-hero{min-height:280px;padding:28px}.login-hero .auth-mark{margin-bottom:48px}.invite-form-panel{padding:28px}.invite-auto-mail-note{padding:0 28px 24px;position:static}.login-hero h1{font-size:34px}.invite-summary{grid-template-columns:1fr}.invite-link-box{grid-template-columns:auto minmax(0,1fr)}.invite-link-box button{grid-column:1/-1;width:100%}}
