:root{--ink: #1d2733;--ink-2: #2a3644;--ink-soft: #9fb0c2;--signal: #dc2626;--signal-dark: #b91c1c;--signal-tint: #fdecec;--paper: #f4f6f8;--surface: #ffffff;--line: #dde2e8;--line-strong: #c6ced8;--text: #1d2733;--muted: #5b6878;--good: #1f7a4d;--good-bg: #e6f4ec;--warn: #8a5300;--warn-bg: #fdf1dc;--bad: #b42318;--bad-bg: #fdeceb;--info: #1e4f9c;--info-bg: #e7eefb;--r-sm: 4px;--r-md: 8px;--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);font-size:15px;line-height:1.5;color:var(--text);background:var(--paper);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}h1,h2,h3{margin:0;line-height:1.25;font-weight:600}h1{font-size:26px;letter-spacing:-.01em}h2{font-size:16px}p{margin:0 0 12px}a{color:var(--signal-dark);text-decoration-thickness:1px;text-underline-offset:2px}code{font-family:var(--mono);font-size:12.5px}:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:13px}.nowrap{white-space:nowrap}.mono-num{font-family:var(--mono);letter-spacing:.02em}.pad{padding:14px 18px 0}.boot{display:grid;place-items:center;height:100%}.loading,.empty{color:var(--muted);padding:18px;margin:0}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100%}.sidebar{background:var(--ink);color:#e8edf2;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{padding:20px 18px 14px;border-bottom:1px solid var(--ink-2)}.app-mark{display:inline-flex;align-items:center;gap:10px}.app-mark img{width:40px;height:auto;display:block}.app-name{font-weight:600;font-size:15px;line-height:1.2;color:var(--ink)}.app-mark-dark .app-name{color:#fff}nav{padding:10px 10px 20px;flex:1}.nav-group{margin-top:14px}.nav-group-name{font-size:12px;color:var(--ink-soft);padding:0 10px 4px}.nav-link{display:block;padding:7px 10px;border-radius:var(--r-sm);color:#dbe3ea;text-decoration:none;font-size:14px;border-left:3px solid transparent}.nav-link:hover{background:var(--ink-2);color:#fff}.nav-link.active{background:var(--ink-2);color:#fff;border-left-color:var(--signal);font-weight:500}.sidebar-foot{padding:14px 18px 18px;border-top:1px solid var(--ink-2);display:flex;flex-direction:column;gap:10px}.who{display:flex;flex-direction:column}.who-name{font-weight:500;font-size:14px}.who-role{font-size:12.5px;color:var(--ink-soft)}.main{min-width:0}.topbar{display:none}.content{padding:28px 36px 48px}.page{max-width:1180px}.scrim{display:none}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.page-sub{color:var(--muted);margin:6px 0 0;max-width:72ch}.page-actions,.section-actions,.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.greeting{font-size:30px;font-weight:500;margin-bottom:18px}.section{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:18px;margin-bottom:18px}.section-flush{padding:0;overflow:hidden}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.section-flush>.section-head{padding:14px 18px 0}.section-flush>.notice{margin:12px 18px 0}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.filters input[type=search]{min-width:260px;flex:1;max-width:420px}.forbidden{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:32px;max-width:620px}.forbidden h1{font-size:20px;margin-bottom:8px}input,select,textarea{font:inherit;font-size:14px;color:var(--text);background:#fff;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:7px 10px;min-height:36px;max-width:100%}textarea{resize:vertical;width:100%}input:disabled,select:disabled{background:var(--paper);color:var(--muted)}input[type=checkbox]{min-height:0;width:16px;height:16px;accent-color:var(--signal);margin:0}.btn{font:inherit;font-size:14px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 14px;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:#fff;color:var(--text);cursor:pointer;text-decoration:none;white-space:nowrap}.btn:hover{background:var(--paper)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--signal);border-color:var(--signal);color:#fff}.btn-primary:hover{background:var(--signal-dark);border-color:var(--signal-dark)}.btn-danger{background:#fff;border-color:var(--bad);color:var(--bad)}.btn-danger:hover{background:var(--bad-bg)}.btn-sm{min-height:30px;padding:4px 10px;font-size:13px}.btn-lg{min-height:46px;padding:10px 26px;font-size:16px}.btn-block{width:100%}.btn-link{border-color:transparent;background:transparent;color:var(--signal-dark);padding-left:4px;padding-right:4px;text-decoration:underline;text-underline-offset:2px}.btn-link:hover{background:transparent;color:var(--signal)}.btn-ghost-dark{background:transparent;color:#e8edf2;border-color:#3b4a5c}.btn-ghost-dark:hover{background:var(--ink-2)}.icon-btn{background:none;border:0;font-size:22px;line-height:1;cursor:pointer;color:inherit;padding:4px 8px;border-radius:var(--r-sm)}.icon-btn:hover{background:var(--paper)}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.field input,.field select,.field textarea{width:100%}.field-label{font-size:13px;font-weight:500}.field-hint{font-size:12.5px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;align-items:start}.field-span{grid-column:1 / -1}.check{display:flex;align-items:center;gap:8px;font-size:14px;margin:6px 0 12px;cursor:pointer}.setting{padding:6px 0}.pick-list{max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-sm);padding:4px 10px;margin-top:6px}.pick-list .check{margin:6px 0}.copy-row{display:flex;gap:8px;margin-bottom:12px}.copy-row input{flex:1;font-family:var(--mono);font-size:12.5px}.decision{display:flex;gap:6px;align-items:center}.decision input{min-width:150px;min-height:30px;padding:4px 8px;font-size:13px}.badge{display:inline-block;font-size:12.5px;font-weight:500;padding:1px 8px;border-radius:999px;margin-right:4px;white-space:nowrap;line-height:1.6}.badge-good{background:var(--good-bg);color:var(--good)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.badge-bad{background:var(--bad-bg);color:var(--bad)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-plain{background:var(--paper);color:var(--muted);border:1px solid var(--line)}.notice{border-radius:var(--r-sm);padding:10px 14px;margin-bottom:14px;font-size:14px;border-left:3px solid}.notice-info{background:var(--info-bg);border-color:var(--info)}.notice-warn{background:var(--warn-bg);border-color:#c98a1a}.notice-bad{background:var(--bad-bg);border-color:var(--bad);color:#7a1a12}.notice-good{background:var(--good-bg);border-color:var(--good)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-weight:500;font-size:13px;color:var(--muted);padding:10px 14px;border-bottom:1px solid var(--line);background:#fafbfc;white-space:nowrap}td{padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}.num{text-align:right}tr.clickable:hover td{background:#f8f9fb}.details{display:inline-block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;color:var(--muted)}.details.open{white-space:pre-wrap;word-break:break-all;max-width:420px}.pager{display:flex;gap:12px;align-items:center;justify-content:flex-end}.matrix th,.matrix td{padding:7px 10px}.matrix-role{text-align:center;vertical-align:bottom;min-width:104px}.matrix-role span{display:block;white-space:normal}.matrix-role span:first-child{color:var(--text);font-weight:600}.matrix-role .btn{margin-top:6px}.matrix-cell{text-align:center}.matrix-group td{background:var(--paper);font-weight:600;font-size:13px}.matrix td .badge{margin-left:8px}.tabs{display:flex;flex-wrap:wrap;gap:2px 2px;border-bottom:1px solid var(--line);margin-bottom:18px}.tab{font:inherit;font-size:14px;background:none;border:0;border-bottom:2px solid transparent;padding:9px 14px;cursor:pointer;color:var(--muted);white-space:nowrap;margin-bottom:-1px}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--signal);font-weight:500}.tab-count{display:inline-block;background:var(--signal);color:#fff;font-size:11.5px;border-radius:999px;padding:0 7px;margin-left:6px;line-height:1.6}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;align-items:start}.kvs{margin:0}.kv{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:7px 0;border-bottom:1px solid var(--line)}.kv:last-child{border-bottom:0}.kv dt{color:var(--muted);font-size:13.5px}.kv dd{margin:0;overflow-wrap:anywhere}.today{display:grid;grid-template-columns:minmax(200px,260px) 1fr;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:18px;overflow:hidden}.today-clock{background:var(--ink);color:#fff;padding:22px 24px;display:flex;flex-direction:column;justify-content:center}.today-time{font-size:64px;font-weight:300;line-height:1;letter-spacing:-.02em}.today-date{color:var(--ink-soft);margin-top:8px;font-size:14px}.today-body{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.today-status{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:15px}.today-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.timeline{position:relative;height:34px;margin:6px 0 4px}.timeline:before{content:"";position:absolute;left:0;right:0;top:10px;height:6px;background:var(--paper);border-radius:3px}.timeline-shift{position:absolute;top:10px;height:6px;background:var(--line-strong);border-radius:3px}.timeline-worked{position:absolute;top:10px;height:6px;background:var(--signal);border-radius:3px}.timeline-now{position:absolute;top:3px;width:2px;height:20px;background:var(--ink);transform:translate(-1px)}.timeline-label{position:absolute;top:20px;font-size:12px;color:var(--muted);transform:translate(-50%)}.dash-grid{display:grid;grid-template-columns:1fr 340px;gap:18px;align-items:start;margin-bottom:18px}.stats{display:flex;flex-wrap:wrap;gap:28px}.stat{display:flex;flex-direction:column;text-decoration:none;color:inherit}.stat-value{font-size:28px;font-weight:500;line-height:1.1}.stat-label{font-size:13px;color:var(--muted)}.plain-list,.feed-mini{list-style:none;margin:0;padding:0}.plain-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);align-items:center}.plain-list li:last-child{border-bottom:0}.feed-mini li{padding:8px 0 8px 12px;border-left:2px solid transparent;display:flex;flex-direction:column}.feed-mini li.unread{border-left-color:var(--signal)}.feed-mini a{color:var(--text);font-weight:500;text-decoration:none}.feed-mini a:hover{text-decoration:underline}.steps{list-style:none;padding:0;margin:12px 0;counter-reset:step}.step{display:grid;grid-template-columns:26px 1fr auto auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);counter-increment:step}.step:before{content:counter(step);width:22px;height:22px;border-radius:50%;border:1px solid var(--line-strong);font-size:12px;display:grid;place-items:center;color:var(--muted)}.step.done:before{content:"✓";background:var(--good);border-color:var(--good);color:#fff}.step.done .step-title{color:var(--muted)}.step-owner{font-size:13px;color:var(--muted)}.progress{display:inline-flex;align-items:center;gap:8px}.progress span{display:inline-block;width:80px;height:6px;background:var(--paper);border-radius:3px;position:relative;overflow:hidden}.progress span span,.progress>span>span{display:block;height:100%;background:var(--signal)}.progress em{font-style:normal;font-size:13px;color:var(--muted)}.summary-line{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:14px;font-size:14px;color:var(--muted)}.summary-line strong{color:var(--text);font-weight:600}.balances{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:4px}.balance{flex:1 1 170px;border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;display:flex;flex-direction:column;background:var(--surface)}.balance-value{font-size:28px;font-weight:500;line-height:1.1}.balance-name{font-weight:500;margin-top:4px}.balance-meta{font-size:13px;color:var(--muted)}.feed{list-style:none;margin:0;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.feed-item{border-bottom:1px solid var(--line)}.feed-item:last-child{border-bottom:0}.feed-head{width:100%;text-align:left;background:none;border:0;font:inherit;cursor:pointer;padding:14px 18px;display:flex;flex-direction:column;gap:2px;border-left:3px solid transparent}.feed-item.unread .feed-head{border-left-color:var(--signal)}.feed-item.unread .feed-title{font-weight:600}.feed-item.important .feed-title:after{content:"Important";margin-left:10px;font-size:12px;font-weight:500;color:var(--signal-dark)}.feed-title{font-size:15.5px}.feed-meta{font-size:13px;color:var(--muted)}.feed-body{padding:0 18px 16px 21px;max-width:76ch}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1d273373;display:grid;place-items:center;z-index:40;padding:20px}.modal{background:var(--surface);border-radius:var(--r-md);width:min(560px,100%);max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:0 18px 50px #1d273347}.modal-wide{width:min(900px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:17px}.modal-body{padding:18px 20px;overflow-y:auto}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--line);flex-wrap:wrap}.toasts{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:8px;z-index:60}.toast{background:var(--ink);color:#fff;padding:11px 16px;border-radius:var(--r-sm);font-size:14px;max-width:380px;border-left:3px solid var(--signal)}.wordmark{font-family:"Montserrat",var(--font);font-weight:700;letter-spacing:.01em;line-height:1}.wm-pod{color:#6d6e71}.wm-tech{color:var(--signal)}.login{position:relative;min-height:100%;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);background:linear-gradient(180deg,#f7f9fb,#fff 55%,#f5f6f8);font-family:"Montserrat",var(--font)}.login-swoosh{position:absolute;pointer-events:none;z-index:0}.login-swoosh-top{top:-150px;right:-170px;width:440px;height:300px;border-radius:50%;background:radial-gradient(ellipse at 70% 30%,#e0303c,#c81e2d 55%,#b31b28);box-shadow:-40px 30px 0 8px #f6d9dc;transform:rotate(-18deg)}.login-swoosh-bottom{left:-300px;bottom:-330px;width:780px;height:430px;border-radius:50%;background:radial-gradient(ellipse at 30% 40%,#c81e2d,#b01a27 60%,#9a1622);box-shadow:70px -26px #f08a90;transform:rotate(14deg)}.login-welcome{position:relative;z-index:1;padding:52px 48px 40px 84px;display:flex;flex-direction:column}.login-brand{display:flex;align-items:center;gap:22px}.login-brand-mark{width:150px;height:auto}.login-brand-word{font-size:64px}.login-rule{display:block;width:52px;height:3px;background:var(--signal);margin:34px 0 26px;border-radius:2px}.login-headline{font-family:"Montserrat",var(--font);font-weight:600;font-size:46px;line-height:1.12;color:#2c3440;letter-spacing:-.01em}.login-headline .ink{font-weight:700;color:#2c3440}.login-headline .red{font-weight:800;color:var(--signal)}.login-tagline{font-size:23px;color:#7a818a;margin:14px 0 22px;font-weight:500}.login-copy{font-family:var(--font);font-size:18px;color:#3a434e;max-width:33ch;line-height:1.6}.login-locations{font-family:var(--font);font-size:14px;color:#7a818a;letter-spacing:.02em;margin-top:4px}.login-scene{flex:1;min-height:210px;margin:14px -48px 0 -84px;background:url(/brand/login-desk.jpg) center bottom / cover no-repeat;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 85%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 85%,transparent 100%)}.login-features{list-style:none;margin:-40px 0 34px;padding:0 0 0 40px;display:flex;gap:0;position:relative;z-index:2}.login-features li{display:flex;flex-direction:column;align-items:center;gap:10px;width:138px;padding:0 8px;text-align:center;font-family:var(--font);font-size:15px;color:#2c3440;line-height:1.25}.login-features li+li{border-left:1px solid #dfe3e8}.login-feature-icon{width:62px;height:62px;border-radius:50%;background:#fbe4e6;display:grid;place-items:center}.login-feature-icon svg{width:30px;height:30px;fill:none;stroke:var(--signal);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-card-wrap{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:60px 64px 40px 12px}.login-card{width:100%;max-width:616px;background:#fff;border-radius:24px;padding:50px 54px 44px;box-shadow:0 24px 60px #28303c1a,0 2px 6px #28303c0d;display:flex;flex-direction:column;align-items:center}.login-card-mark{width:122px;height:auto}.login-card-word{font-size:42px;margin-top:6px}.login-card-title{font-family:"Montserrat",var(--font);font-size:32px;font-weight:600;color:#2c3440;margin-top:30px}.login-card-intro{font-family:var(--font);font-size:19px;color:#3a434e;margin:12px 0 28px;text-align:center}.login-form{width:100%;display:flex;flex-direction:column;gap:22px;font-family:var(--font)}.login-form .notice{margin:0}.login-input{display:flex;align-items:center;border:1px solid #d7dce2;border-radius:10px;background:#fff;min-height:62px;padding:0 18px;gap:14px;transition:border-color .15s,box-shadow .15s}.login-input:focus-within{border-color:var(--signal);box-shadow:0 0 0 3px #dc26261f}.login-input input{flex:1;border:0;outline:0;font-size:18px;min-height:58px;padding:0;background:transparent}.login-input input::placeholder{color:#6b7480}.login-input-icon svg,.login-eye svg{width:26px;height:26px;fill:none;stroke:#3a434e;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;display:block}.login-eye{background:none;border:0;padding:6px;cursor:pointer;border-radius:6px}.login-eye:hover{background:#f3f4f6}.login-button{display:flex;align-items:center;justify-content:center;gap:14px;min-height:62px;border:0;border-radius:10px;cursor:pointer;background:#e3202f;color:#fff;font-family:"Montserrat",var(--font);font-size:21px;font-weight:600;text-decoration:none;margin-top:8px}.login-button:hover{background:#c81b29}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-button svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.login-row{display:flex;justify-content:space-between;align-items:center;margin-top:-2px}.login-remember{display:flex;align-items:center;gap:12px;font-size:16px;color:#3a434e;cursor:pointer}.login-remember input{width:22px;height:22px;accent-color:var(--signal)}.login-link{background:none;border:0;padding:0;font:inherit;font-size:16px;color:var(--signal);cursor:pointer;font-weight:500}.login-link:hover{text-decoration:underline}.login-back{align-self:center}.login-mfa{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:18px}.login-motto{align-self:flex-end;margin:34px 0 0;display:flex;gap:0;font-family:var(--font);font-style:italic;font-size:18px;color:#6b7480;position:relative}.login-motto span{padding:0 20px}.login-motto span+span{border-left:1px solid #9aa1aa}.login-motto span:last-child{padding-right:0;position:relative}.login-motto span:last-child:after{content:"";position:absolute;right:0;bottom:-14px;width:50px;height:3px;background:var(--signal);border-radius:2px}.qr{background:#fff;padding:8px;border:1px solid var(--line);border-radius:var(--r-sm);line-height:0}.secret{display:inline-block;font-size:13px;background:var(--paper);padding:6px 8px;border-radius:var(--r-sm);word-break:break-all}.logo-text{font-weight:700;letter-spacing:.04em}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-heading{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:22px 0 10px;padding-top:14px;border-top:1px solid var(--line)}.form-heading:first-of-type{border-top:0;padding-top:0;margin-top:8px}.locations-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:16px}.location-chip{display:flex;flex-direction:column;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper)}.location-chip-name{font-weight:600}.location-chip-meta{font-size:13px;color:var(--muted)}.progress-cell{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.back-row{margin-bottom:4px}.back-row .btn{padding-left:0}.task-group+.task-group{margin-top:18px}.task-group-title{font-size:15px;font-weight:600;margin:0 0 8px;display:flex;gap:10px;align-items:baseline}.tasks{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--r-md)}.task{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:12px;padding:12px 14px;align-items:start}.task+.task{border-top:1px solid var(--line)}.task-done .task-title{color:var(--muted)}.task-overdue{background:#fff8f7}.task-check{width:22px;height:22px;border:1.5px solid var(--line-strong);border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;margin-top:1px}.task-check.is-done{background:var(--good);border-color:var(--good);color:#fff}.task-check.is-na{background:var(--paper);color:var(--muted)}.task-title{font-weight:500}.task-desc{font-size:14px;color:var(--muted);margin-top:2px}.task-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px;color:var(--muted);margin-top:6px;align-items:center}.chip{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:12px;color:var(--ink-2)}.task-notes{font-size:13px;margin-top:6px;padding:6px 8px;background:var(--paper);border-radius:var(--r-sm);white-space:pre-wrap}.task-notes-edit{display:flex;gap:8px;margin-top:8px}.task-notes-edit input{flex:1}.task-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.text-bad{color:var(--bad);font-weight:500}.pre{white-space:pre-wrap}.settings-list{display:flex;flex-direction:column;gap:10px}.setting-value{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;gap:10px;align-items:center}.day-picks,.perm-picks{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:6px}.perm-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.inline-form input:not([type=checkbox]){min-width:160px}@media (max-width: 900px){.form-grid-3{grid-template-columns:1fr 1fr}.task{grid-template-columns:24px minmax(0,1fr)}.task-actions{grid-column:2;justify-content:flex-start}}@media (max-width: 600px){.form-grid-3{grid-template-columns:1fr}}@media (max-width: 1180px){.login-brand-mark{width:110px}.login-brand-word{font-size:48px}.login-headline{font-size:38px}.login-welcome{padding-left:48px}.login-features li{width:128px;font-size:14px}}@media (max-width: 1020px){.dash-grid,.detail-grid{grid-template-columns:1fr}}@media (max-width: 860px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:264px;transform:translate(-100%);transition:transform .2s ease;z-index:50}.nav-open .sidebar{transform:none}.nav-open .scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#1d273366;z-index:45}.topbar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.topbar-mark img{width:32px}.content{padding:20px 16px 40px}.today{grid-template-columns:1fr}.today-time{font-size:48px}.form-grid,.login{grid-template-columns:1fr}.login-welcome{display:none}.login-card-wrap{padding:28px 16px;align-items:center}.login-card{padding:34px 22px}.login-card-title{font-size:26px}.login-motto{align-self:center}.kv{grid-template-columns:120px 1fr}.filters input[type=search]{min-width:0;max-width:none}.decision{flex-wrap:wrap}}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}.auth-company.logo-text{color:var(--ink);font-size:14px;line-height:20px}:root{--paper: #f5f6fa;--line: #e8ebf0;--side: #151b2b;--side-2: #1f2739;--r-lg: 12px}.icon{flex-shrink:0;vertical-align:middle}.block{display:block}.shell{grid-template-columns:252px 1fr}.sidebar{background:var(--side);color:#e5e7eb}.side-brand{display:flex;align-items:center;gap:10px;padding:18px 20px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.06)}.side-brand img{width:36px;height:auto}.side-wordmark{font-family:"Montserrat",var(--font);font-weight:700;font-size:20px;letter-spacing:.01em;color:#fff}.side-wordmark span:last-child{color:#ef4444}nav{padding:8px 12px 20px}.nav-group{margin-top:16px}.nav-group-name{font-size:11.5px;color:#7f8a9c;padding:0 12px 6px;letter-spacing:.02em}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:8px;color:#cfd6e0;border-left:0;font-size:14px;margin-bottom:2px}.nav-link .icon{color:#9aa4b5}.nav-link:hover{background:#ffffff0f;color:#fff}.nav-link.active{background:var(--signal);color:#fff;font-weight:500}.nav-link.active .icon{color:#fff}.sidebar-foot{border-top:1px solid rgba(255,255,255,.06);padding:14px 16px 16px}.side-user{display:flex;align-items:center;gap:10px;min-width:0}.side-user .who{min-width:0}.side-user .who-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.side-user .who-role{color:#8b95a7}.side-signout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;font:inherit;font-size:13.5px;color:#e5e7eb;background:transparent;border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:8px;cursor:pointer}.side-signout:hover{background:#ffffff0f}.topbar{display:flex;align-items:center;gap:16px;height:64px;padding:0 32px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.menu-btn{display:none}.top-search{display:flex;align-items:center;gap:8px;width:min(380px,100%);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:0 12px;color:#98a2b3}.top-search input{border:0;background:transparent;flex:1;min-height:38px;outline:none;padding:0}.top-search-spacer{flex:1;min-width:0}.top-right{display:flex;align-items:center;gap:20px;margin-left:auto}.top-bell{position:relative;color:var(--ink);display:grid;place-items:center;width:38px;height:38px;border-radius:50%}.top-bell:hover{background:var(--paper)}.top-bell-dot{position:absolute;top:3px;right:2px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--signal);color:#fff;font-size:10.5px;font-weight:600;display:grid;place-items:center;border:2px solid #fff}.top-user{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}.top-user-text{display:flex;flex-direction:column;line-height:1.25}.top-user-name{font-weight:600;font-size:14px}.top-user-role{font-size:12.5px;color:var(--muted)}.content{padding:28px 32px 48px}.page{max-width:1260px}.page-header h1{font-size:23px;font-weight:700}.page-sub{font-size:14px;margin-top:4px}.section{border:1px solid #eceff3;border-radius:var(--r-lg);padding:20px;box-shadow:0 1px 3px #1018280a}.section-flush{padding:0}.section-flush>.section-head{padding:16px 20px 4px}.section-head h2{font-size:16px;font-weight:600}.btn{border-radius:8px}.btn-soft{background:#fef2f2;border-color:transparent;color:var(--signal-dark)}.btn-soft:hover{background:#fee2e2}.btn-approve{background:#fff;color:#067647;border-color:#75e0a7}.btn-approve:hover{background:#ecfdf3}.btn-reject{background:#fff;color:#b42318;border-color:#fda29b}.btn-reject:hover{background:#fef3f2}input,select,textarea{border-radius:8px;border-color:#d0d5dd}th{background:#f9fafb;color:#475467;font-weight:600;font-size:12.5px;padding:11px 16px}td{padding:12px 16px;border-bottom-color:#eef0f3}.tab.active{color:var(--signal)}.tab{font-weight:500}.badge{padding:2px 10px;font-size:12px;border:1px solid transparent}.badge:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:6px;vertical-align:1px}.badge-good{background:#ecfdf3;color:#067647;border-color:#abefc6}.badge-warn{background:#fffaeb;color:#b54708;border-color:#fedf89}.badge-bad{background:#fef3f2;color:#b42318;border-color:#fecdca}.badge-info{background:#eff8ff;color:#175cd3;border-color:#b2ddff}.badge-plain{background:#f9fafb;color:#475467;border-color:#eaecf0}.avatar{display:inline-grid;place-items:center;border-radius:50%;color:#fff;font-weight:600;flex-shrink:0;letter-spacing:.02em}.icon-tile{display:inline-grid;place-items:center;border-radius:10px;flex-shrink:0}.icon-tile-red{background:#fef2f2;color:var(--signal)}.icon-tile-green{background:#ecfdf3;color:#067647}.icon-tile-blue{background:#eff8ff;color:#175cd3}.icon-tile-amber{background:#fffaeb;color:#b54708}.stat-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:18px}.stat-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg);padding:22px 16px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--text);text-decoration:none;box-shadow:0 1px 3px #1018280a;transition:box-shadow .15s,border-color .15s}a.stat-card:hover{border-color:#fecaca;box-shadow:0 6px 18px #10182814}.stat-card-value{font-size:26px;font-weight:700;line-height:1.1;margin-top:4px}.stat-card-label{font-size:13.5px;color:var(--muted)}.money-card{background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg);padding:20px 22px;display:flex;flex-direction:column;gap:4px;box-shadow:0 1px 3px #1018280a}.money-card-label{font-size:13.5px;color:var(--muted);font-weight:500}.money-card-value{font-size:26px;font-weight:700}.empty-state{text-align:center;padding:40px 20px 36px}.empty-art{width:210px;max-width:70%;height:auto}.empty-state-title{font-size:20px;font-weight:700;margin:16px 0 8px}.empty-state-text{color:var(--muted);max-width:54ch;margin:0 auto 20px}.stepper{list-style:none;margin:0 0 18px;padding:18px 20px;display:flex;background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg)}.stepper-step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;text-align:center}.stepper-step+.stepper-step:before{content:"";position:absolute;top:13px;right:50%;width:100%;height:2px;background:var(--line)}.stepper-step.is-done+.stepper-step:before,.stepper-step.is-done+.stepper-step.is-current:before{background:var(--signal)}.stepper-dot{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;border:2px solid var(--line-strong);background:#fff;display:grid;place-items:center;font-size:12px;font-weight:600;color:var(--muted)}.stepper-step.is-done .stepper-dot{background:#fee2e2;border-color:var(--signal);color:var(--signal)}.stepper-step.is-current .stepper-dot{background:var(--signal);border-color:var(--signal);color:#fff;box-shadow:0 0 0 4px #fee2e2}.stepper-label{font-size:12.5px;color:var(--muted);margin-top:7px}.stepper-step.is-current .stepper-label{color:var(--text);font-weight:600}.dash-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.today-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg);padding:14px 18px;margin-bottom:18px;box-shadow:0 1px 3px #1018280a}.today-bar-text{flex:1;min-width:200px}.activity{list-style:none;margin:0;padding:0}.activity li{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #eef0f3}.activity li:last-child{border-bottom:0}.activity-text{color:var(--text);text-decoration:none;font-size:14px}.activity-text:hover{color:var(--signal-dark)}.activity-time{font-size:12.5px;color:var(--muted);white-space:nowrap}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:14px}.quick-link{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 10px;border:1px solid var(--line);border-radius:var(--r-lg);color:var(--signal);text-decoration:none}.quick-link span{color:var(--text);font-weight:500;font-size:14px}.quick-link:hover{background:#fef2f2;border-color:#fecaca}.list-rows{list-style:none;margin:0;padding:0}.list-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eef0f3;color:var(--text);text-decoration:none}.list-rows li:last-child .list-row{border-bottom:0}.list-row-main{display:flex;flex-direction:column;min-width:0;flex:1}.list-row-title{font-size:14.5px;font-weight:500}.list-row-title.is-unread{font-weight:700}.list-row-meta{font-size:12.5px;color:var(--muted)}.list-row-chevron{color:#98a2b3}.holiday-list{list-style:none;margin:0;padding:0}.holiday-list li{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #eef0f3}.holiday-list li:last-child{border-bottom:0}.date-chip{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:46px;height:46px;border-radius:10px;background:#fef2f2;color:var(--signal);font-size:11px;text-transform:uppercase;flex-shrink:0;line-height:1.2}.date-chip b{font-size:17px}.mini-head{font-size:13px;font-weight:600;margin:16px 0 4px}.location-chip-name{display:flex;align-items:center;gap:6px}.today-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px;margin-bottom:18px}.today-grid .section{margin-bottom:0}.today-ring-card{text-align:center}.today-date-row{display:flex;gap:8px;justify-content:center;align-items:center;color:var(--text);font-weight:500;flex-wrap:wrap}.today-ring{width:176px;height:176px;border-radius:50%;border:10px solid #e5e7eb;margin:18px auto 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted)}.today-ring-in{border-color:#22c55e;color:#15803d}.today-ring-out{border-color:#cbd5e1;color:#475467}.today-ring-time{font-size:25px;font-weight:700;color:var(--text)}.today-ring-label{font-size:13px}.today-status-pill{margin:14px 0}.today-status-pill .badge{font-size:13px;padding:4px 12px}.today-times{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.today-times div{display:flex;flex-direction:column;gap:2px}.today-times strong{font-size:18px}.balance{border-radius:var(--r-lg);padding:18px 20px;border-color:#eceff3;gap:6px}.balance-name{order:-1;margin:0;font-size:13.5px;color:var(--muted)}.balance-value{font-size:26px;font-weight:700}.balance-value small{font-size:14px;font-weight:500;color:var(--muted)}.doc-name{display:inline-flex;align-items:center;gap:12px;background:none;border:0;padding:0;font:inherit;color:var(--text);cursor:pointer;text-align:left;font-weight:500}.doc-name:hover{color:var(--signal-dark)}.doc-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#eff4ff;color:#3b5bdb;flex-shrink:0}.doc-icon-pdf{background:#fef2f2;color:var(--signal)}.asset-name{display:inline-flex;align-items:center;gap:12px}.asset-icon{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f2f4f7;color:#344054;flex-shrink:0}.breakdown{display:flex;flex-direction:column;align-items:center;gap:16px}.breakdown .legend{width:100%}.donut{width:170px;height:170px;flex-shrink:0}.donut-value{font-size:12px;font-weight:700;fill:var(--text)}.donut-sub{font-size:8px;fill:var(--muted)}.legend{list-style:none;margin:0;padding:0;flex:1;min-width:190px}.legend li{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #eef0f3;font-size:14px}.legend li:last-child{border-bottom:0}.legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.legend-val{margin-left:auto;font-weight:500}.card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.card-item{background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg);box-shadow:0 1px 3px #1018280a}.card-item-head{display:flex;align-items:flex-start;gap:14px;width:100%;padding:16px 18px;background:none;border:0;font:inherit;text-align:left;cursor:pointer;color:var(--text)}.card-list-compact .card-item-head{align-items:center;padding:12px 18px}.card-item-main{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.card-item-title{font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-item-meta{font-size:12.5px;color:var(--muted)}.card-item-snippet{font-size:14px;color:#475467}.card-item-chevron{color:#98a2b3;margin-top:10px;transition:transform .15s}.card-list-compact .card-item-chevron{margin-top:0}.card-item.is-open .card-item-chevron{transform:rotate(90deg)}.card-item-body{padding:0 18px 16px 72px;max-width:80ch}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--signal);display:inline-block}.search-panel{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;background:#fff;padding:14px;border:1px solid #eceff3;border-radius:var(--r-lg)}.search-box{display:flex;align-items:center;gap:8px;border:1px solid #d0d5dd;border-radius:8px;padding:0 12px;flex:1;min-width:260px;background:#fff;color:#98a2b3}.search-box input{border:0;outline:none;flex:1;min-height:38px;padding:0;background:transparent}.search-box-sm{flex:none;min-width:220px}.people{list-style:none;margin:0;padding:0}.person{display:flex;align-items:center;gap:16px;padding:12px 20px;border-bottom:1px solid #eef0f3}.person:last-child{border-bottom:0}.person-main{display:flex;flex-direction:column;flex:1.4;min-width:0}.person-col{flex:1;min-width:0;font-size:14px;color:#475467;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-mail{color:#475467;text-decoration:none}.person-mail:hover{color:var(--signal-dark);text-decoration:underline}.person-link{color:var(--signal);font-weight:500;text-decoration:none;white-space:nowrap;font-size:14px}.person-link:hover{text-decoration:underline}.name-cell{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:500}.profile-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:18px;align-items:start}.profile-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:28px 20px}.profile-name{font-size:18px;font-weight:700;margin-top:10px}.profile-role{color:var(--muted);font-weight:500}.profile-mail{font-size:13.5px;display:inline-flex;gap:6px;align-items:center;word-break:break-all}.profile-edit{margin-top:14px;width:100%}.profile-main{min-width:0}.holiday-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;align-items:start}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:16px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal-dow{font-size:12px;font-weight:600;color:var(--muted);text-align:center;padding-bottom:4px}.cal-day{height:42px;display:grid;place-items:center;border-radius:8px;font-size:14px}.cal-day.is-off{color:#98a2b3;background:#f9fafb}.cal-day.is-holiday{background:var(--signal);color:#fff;font-weight:600;cursor:default}.cal-day.is-today{box-shadow:inset 0 0 0 2px var(--ink);font-weight:700}.cal-legend{display:flex;gap:16px;margin-top:14px;font-size:13px;color:var(--muted);flex-wrap:wrap}.cal-key{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px;margin-right:4px}.cal-key.is-holiday{background:var(--signal)}.cal-key.is-off{background:#eaecf0}.cal-key.is-today{box-shadow:inset 0 0 0 2px var(--ink)}@media (max-width: 1100px){.stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid,.profile-layout,.holiday-layout,.today-grid{grid-template-columns:1fr}.person{flex-wrap:wrap}.person-col{flex:1 1 40%}}@media (max-width: 860px){.menu-btn{display:inline-block}.topbar{padding:0 12px;gap:10px}.top-user-text{display:none}.top-search{width:auto;flex:1}.content{padding:20px 14px 40px}.stat-cards-3{grid-template-columns:1fr}.stepper-label{font-size:11px}.card-item-body{padding-left:18px}}@media (max-width: 520px){.stat-cards{gap:10px}.stat-card{padding:16px 8px}}.email-split{display:flex;align-items:center;gap:6px}.email-split input{flex:1 1 55%;min-width:0}.email-split select{flex:1 1 45%;min-width:0}.email-split span{color:var(--muted)}.sessions{list-style:none;margin:0 0 12px;padding:0;border:1px solid var(--line);border-radius:10px}.sessions li{display:grid;grid-template-columns:80px 1fr auto;gap:10px;align-items:center;padding:8px 12px;font-size:14px}.sessions li+li{border-top:1px solid var(--line)}.login{overflow:visible;min-height:100vh;min-height:100dvh}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.login-welcome{padding:clamp(24px,5vh,52px) clamp(24px,4vw,48px) clamp(16px,3vh,40px) clamp(28px,5.5vw,84px)}.login-brand{gap:clamp(12px,1.6vw,22px)}.login-brand-mark{width:clamp(76px,13vh,150px)}.login-brand-word{font-size:clamp(34px,6vh,64px)}.login-rule{margin:clamp(14px,3vh,34px) 0 clamp(12px,2.4vh,26px)}.login-headline{font-size:clamp(28px,4.4vh,46px)}.login-tagline{font-size:clamp(16px,2.2vh,23px);margin:clamp(8px,1.4vh,14px) 0 clamp(10px,2vh,22px)}.login-copy{font-size:clamp(15px,1.8vh,18px)}.login-scene{min-height:clamp(110px,19vh,240px)}.login-features{margin-bottom:clamp(16px,3vh,34px)}.login-feature-icon{width:clamp(44px,6vh,62px);height:clamp(44px,6vh,62px)}.login-feature-icon svg{width:clamp(22px,3vh,30px);height:clamp(22px,3vh,30px)}.login-card-wrap{padding:clamp(20px,5vh,60px) clamp(16px,4.5vw,64px) clamp(20px,4vh,40px) 12px}.login-card{padding:clamp(24px,4.6vh,50px) clamp(24px,3.6vw,54px) clamp(22px,4vh,44px)}.login-card-mark{width:clamp(64px,11vh,122px)}.login-card-word{font-size:clamp(28px,4vh,42px)}.login-card-title{font-size:clamp(22px,3.2vh,32px);margin-top:clamp(10px,2.6vh,30px)}.login-card-intro{font-size:clamp(15px,2vh,19px);margin:clamp(6px,1.2vh,12px) 0 clamp(14px,2.8vh,28px)}.login-form{gap:clamp(12px,2vh,22px)}.login-input,.login-button{min-height:clamp(48px,6.2vh,62px)}.login-input input{min-height:clamp(44px,5.8vh,58px)}.login-motto{margin-top:clamp(16px,3.4vh,34px)}@media (max-width: 860px){.login-card-wrap{padding:24px 14px}}.page{max-width:1680px;margin:0 auto}.top-search{flex:1 1 auto;min-width:0;max-width:380px}.top-search input{min-width:0;width:100%}.top-right{flex-shrink:0;gap:12px}@media (max-width: 520px){.stat-cards:not(.stat-cards-3){grid-template-columns:1fr 1fr}.stat-cards-3{grid-template-columns:1fr}.activity li{grid-template-columns:36px minmax(0,1fr);row-gap:4px}.activity li .badge,.activity li .activity-time{grid-column:2;justify-self:start}.today-bar .btn{width:100%}.money-card-value{font-size:22px}.top-bell{width:34px;height:34px}.page-header h1{font-size:20px}}@media (max-width: 860px){.login-card-wrap{min-width:0}.login-motto{font-size:15px;flex-wrap:wrap;justify-content:center;max-width:100%}.login-motto span{padding:0 12px}}.login-input input{min-width:0;width:100%}.login-swoosh-bottom{bottom:-390px;left:-330px}@media (max-height: 820px){.login-swoosh-bottom{bottom:-420px}}@media (max-width: 420px){.top-search{display:none}.top-search-spacer{display:block;flex:1}}.timebar{position:relative;width:100%;min-width:160px;padding:6px 0 2px}.timebar-track{position:relative;height:8px;border-radius:999px;background:#eef0f3}.timebar-shift{position:absolute;top:0;bottom:0;background:#dfe3ea;border-radius:999px}.timebar-seg{position:absolute;top:0;bottom:0;background:#22c55e;border-radius:999px}.timebar-seg.is-open{background:repeating-linear-gradient(90deg,#22c55e 0,#22c55e 10px,#4ade80 10px,#4ade80 20px);background-size:40px 100%;animation:timebar-flow 1.6s linear infinite}@keyframes timebar-flow{to{background-position:40px 0}}.timebar-dot{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid #fff;box-shadow:0 0 0 1px #1018281f}.timebar-in{background:#16a34a}.timebar-out{background:#dc2626}.timebar-now{position:absolute;top:-6px;bottom:-6px;width:2px;background:var(--signal);transform:translate(-1px);border-radius:2px}.timebar-now:before{content:"";position:absolute;top:-3px;left:-3px;width:8px;height:8px;border-radius:50%;background:var(--signal)}.timebar-points{position:relative;height:34px;margin-top:6px}.timebar-point{position:absolute;display:flex;flex-direction:column;align-items:center;font-size:11px;color:var(--muted);white-space:nowrap;line-height:1.2}.timebar-point b{font-size:13px}.timebar-point b.in{color:#15803d}.timebar-point b.out{color:#b91c1c}.timebar-scale{position:relative;height:16px;border-top:1px dashed #e4e7ec;margin-top:2px}.timebar-scale span{position:absolute;top:2px;transform:translate(-50%);font-size:10.5px;color:#98a2b3;white-space:nowrap}.timebar-scale span:first-child{transform:none}.timebar-scale span:last-child{transform:translate(-100%)}.timebar-compact{padding:4px 0}.timebar-compact .timebar-track{height:6px}.timebar-compact .timebar-dot{width:9px;height:9px;border-width:1.5px}.timebar-compact .timebar-now{top:-4px;bottom:-4px}.today-bar-line{flex:1 1 320px;min-width:220px}.day-line{display:grid;grid-template-columns:52px minmax(120px,1fr) 52px;gap:10px;align-items:center;min-width:240px}.day-line .t-in{color:#15803d;font-weight:600;font-size:13px;text-align:right}.day-line .t-out{color:#b91c1c;font-weight:600;font-size:13px}.day-line .t-none{color:#98a2b3;font-size:13px}@media (prefers-reduced-motion: reduce){.timebar-seg.is-open{animation:none}}.org-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.org-card{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);text-decoration:none;transition:border-color .15s,box-shadow .15s}.org-card:hover{border-color:#fecaca;box-shadow:0 4px 14px #10182812}.org-card-main{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.35}.org-card-main>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-card-tag{font-size:11px;font-weight:600;color:var(--signal);text-transform:uppercase;letter-spacing:.04em}.org-card-count{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;color:#475467;background:#f2f4f7;border-radius:999px;padding:2px 8px;flex-shrink:0}.org-chain{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.org-chain li{position:relative;padding-left:22px;padding-bottom:12px}.org-chain li:before{content:"";position:absolute;left:7px;top:0;bottom:0;width:2px;background:var(--line)}.org-chain li:first-child:before{top:50%}.org-chain li:last-child:before{bottom:50%}.org-chain li:after{content:"";position:absolute;left:2px;top:calc(50% - 6px);width:8px;height:8px;border-radius:50%;background:#fff;border:2px solid #98a2b3}.org-chain li:last-child{padding-bottom:0}.org-chain-self .org-card{border-color:var(--signal);background:#fff7f7}.org-chain li.org-chain-self:after{border-color:var(--signal);background:var(--signal)}.org-manager-meta{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-size:13.5px;color:#475467}.org-manager-meta span{display:inline-flex;align-items:center;gap:6px}.org-reports{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.profile-org{width:100%;border-top:1px solid var(--line);margin-top:10px;padding-top:10px;display:flex;flex-direction:column;gap:6px}.profile-org-row{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;background:none;border:0;padding:4px 2px;font:inherit;cursor:pointer;color:var(--text);text-align:left;border-radius:6px}.profile-org-row:hover{background:var(--paper)}.tree{list-style:none;margin:0;padding:0 0 0 26px;position:relative}.tree-root{padding-left:0}.tree .tree{border-left:2px solid var(--line);margin-left:13px;padding-left:18px}.tree-item{margin:8px 0}.tree-row{display:flex;align-items:center;gap:6px}.tree-toggle{width:26px;height:26px;border-radius:6px;border:1px solid var(--line);background:#fff;display:grid;place-items:center;cursor:pointer;color:#475467;flex-shrink:0}.tree-toggle:hover{background:var(--paper)}.tree-toggle-space{width:26px;flex-shrink:0}.tree-card{display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);text-decoration:none;flex:1;max-width:640px;min-width:0}.tree-card:hover{border-color:#fecaca;box-shadow:0 4px 14px #10182812}.tree-card-main{display:flex;flex-direction:column;flex:1;min-width:0;line-height:1.35}.tree-card-main>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tree-card-loc{font-size:12.5px;color:#475467;white-space:nowrap;display:inline-flex;gap:4px;align-items:center}@media (max-width: 1100px){.org-grid{grid-template-columns:1fr}}@media (max-width: 600px){.tree-card-loc{display:none}.tree .tree{padding-left:10px;margin-left:8px}}.seg{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 16px}.seg-btn{border:1px solid #d0d5dd;background:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:14px;cursor:pointer;color:var(--text)}.seg-btn:hover{background:var(--paper)}.seg-btn.is-on{background:var(--signal);border-color:var(--signal);color:#fff;font-weight:500}.inline-pair{display:flex;gap:8px}.inline-pair select{flex:1;min-width:0}.export-preview{margin-top:16px;padding:14px 16px;border-radius:10px;background:#f9fafb;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px}.export-preview.is-bad{background:#fef3f2;border-color:#fecdca;color:#b42318}.export-sheets{display:flex;flex-wrap:wrap;gap:6px}.sheet-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:6px 6px 0 0;border:1px solid #abefc6;border-bottom-width:3px;background:#ecfdf3;color:#067647;font-size:12.5px;font-weight:500}.sheet-chip.is-summary{border-color:#fecaca;background:#fef2f2;color:var(--signal-dark)}.seg-inline{margin:0}.holders{list-style:none;margin:0;padding:0}.holder{display:grid;grid-template-columns:minmax(200px,260px) minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 20px;border-bottom:1px solid #eef0f3}.holder:last-child{border-bottom:0}.holder-person{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}.holder-person:hover strong{color:var(--signal-dark)}.holder-items{display:flex;flex-wrap:wrap;gap:8px}.holder-item{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:8px;background:#f9fafb;font-size:13.5px}@media (max-width: 860px){.holder{grid-template-columns:1fr}}.req-steps{list-style:none;margin:0;padding:0;display:flex;gap:0;min-width:340px}.req-step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;text-align:center;min-width:70px}.req-step+.req-step:before{content:"";position:absolute;top:5px;right:50%;width:100%;height:2px;background:var(--line)}.req-step.is-done+.req-step:before,.req-step.is-skip+.req-step:before{background:#22c55e}.req-dot{width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid #d0d5dd;position:relative;z-index:1}.req-step.is-done .req-dot{background:#22c55e;border-color:#22c55e}.req-step.is-skip .req-dot{background:#e4e7ec;border-color:#e4e7ec}.req-step.is-now .req-dot{background:#f59e0b;border-color:#f59e0b;box-shadow:0 0 0 4px #fef3c7}.req-step.is-stop .req-dot{background:var(--signal);border-color:var(--signal)}.req-label{font-size:12px;font-weight:600;margin-top:4px;color:var(--text)}.req-step.is-idle .req-label,.req-step.is-skip .req-label{color:#98a2b3}.req-note{font-size:11px;color:var(--muted);max-width:88px;padding:0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:260px}.req-cell{display:flex;flex-direction:column;gap:2px;min-width:180px;max-width:280px}.req-cell .clamp-2{color:#475467;margin-top:2px}.req-actions .decision{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:210px}.req-actions .decision input{grid-column:1 / -1;min-width:0;width:100%}.req-cell .badge{align-self:flex-start}.avatar-photo{border-radius:50%;object-fit:cover;display:inline-block;flex-shrink:0;background:#f2f4f7}.profile-photo{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px}.profile-photo-btn{position:absolute;top:64px;left:calc(50% + 22px);width:32px;height:32px;border-radius:50%;border:2px solid #fff;background:var(--signal);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 6px #10182833}.profile-photo-btn:hover{background:var(--signal-dark)}.profile-photo-remove{font-size:12.5px}.timebar-point b .in{color:#15803d}.timebar-point b .out{color:#b91c1c}.session-places{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:2px}.place{display:inline-flex;align-items:center;gap:3px;font-size:11.5px;color:#475467;text-decoration:none}.place:hover{text-decoration:underline}.place-in{color:#067647}.place-away{color:#b54708}.place-none{color:#98a2b3}.day-line{grid-template-columns:52px minmax(120px,1fr) 16px 52px}.day-pin{color:#667085;display:inline-grid;place-items:center;width:16px}.day-pin:hover{color:var(--signal)}.record-list{list-style:none;margin:0;padding:0}.record{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #eef0f3}.record:last-child{border-bottom:0}.record-icon{width:36px;height:36px;border-radius:10px;background:#fef2f2;color:var(--signal);display:grid;place-items:center;flex-shrink:0}.record-main{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.record-main strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.record-actions{display:flex;gap:2px;flex-wrap:wrap;justify-content:flex-end}.check.field-span{grid-column:1 / -1}.login{display:flex;justify-content:center;grid-template-columns:none}.login-inner{position:relative;z-index:1;width:100%;max-width:1720px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);min-height:100vh;min-height:100dvh}.login-card-wrap{align-items:center}.login-card-col{width:100%;max-width:clamp(480px,34vw,600px);display:flex;flex-direction:column}.login-card-col .login-card{max-width:none;width:100%}.login-card-col .login-motto{align-self:flex-end}@media (max-width: 860px){.login-inner{grid-template-columns:1fr}.login-card-col{max-width:520px}.login-card-col .login-motto{align-self:center}}@media (min-width: 1760px){.login-scene{-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 85%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 14%);-webkit-mask-composite:source-in;mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 85%,transparent 100%),linear-gradient(90deg,transparent 0%,#000 14%);mask-composite:intersect}}.role-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.role-chip{display:inline-block;padding:2px 9px;border-radius:999px;background:#f2f4f7;border:1px solid #e4e7ec;font-size:12.5px;color:#344054;white-space:nowrap}.role-chip.is-primary{background:#fef2f2;border-color:#fecaca;color:var(--signal-dark);font-weight:600}.role-picks{list-style:none;margin:8px 0 12px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.role-pick{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff}.role-pick.is-on{border-color:#fca5a5;background:#fff7f7}.role-pick-main{display:flex;gap:10px;align-items:flex-start;cursor:pointer;flex:1;min-width:0}.role-pick-main input{margin-top:3px;accent-color:var(--signal)}.role-pick-main strong{margin-right:6px}.role-pick-primary{display:inline-flex;align-items:center;gap:4px;font-size:12.5px;color:var(--signal-dark);white-space:nowrap;cursor:pointer}.role-pick-primary input{accent-color:var(--signal)}.oc-scroll{overflow:auto;padding:24px 12px 32px;max-height:75vh}.oc{display:inline-block;min-width:100%;transition:transform .15s}.oc ul{display:flex;justify-content:center;padding:22px 0 0;margin:0;position:relative;list-style:none}.oc li{position:relative;padding:22px 8px 0;display:flex;flex-direction:column;align-items:center}.oc li:before,.oc li:after{content:"";position:absolute;top:0;right:50%;width:50%;height:22px;border-top:2px solid #cfd5dd}.oc li:after{right:auto;left:50%;border-left:2px solid #cfd5dd}.oc li:only-child:before,.oc li:only-child:after{display:none}.oc li:only-child{padding-top:0}.oc li:first-child:before,.oc li:last-child:after{border:0 none}.oc li:last-child:before{border-right:2px solid #cfd5dd;border-radius:0 8px 0 0}.oc li:first-child:after{border-radius:8px 0 0}.oc ul ul:before{content:"";position:absolute;top:0;left:50%;height:22px;border-left:2px solid #cfd5dd}.oc-forest{padding-top:0!important;gap:28px;align-items:flex-start}.oc-forest>li{padding-top:0}.oc-forest>li:before,.oc-forest>li:after{display:none}.oc-card{position:relative;display:flex;flex-direction:column;align-items:center}.oc-person{display:flex;flex-direction:column;align-items:center;gap:3px;width:168px;padding:12px 10px 14px;background:#fff;border:1px solid #e4e7ec;border-top:3px solid var(--signal);border-radius:12px;box-shadow:0 2px 8px #1018280f;color:var(--text);text-decoration:none;text-align:center}.oc-person:hover{box-shadow:0 6px 18px #1018281f;border-color:#fecaca}.oc-person strong{font-size:14px;margin-top:4px;line-height:1.25}.oc-title{font-size:12.5px;color:#475467;line-height:1.3}.oc-meta{font-size:11.5px;color:#98a2b3;line-height:1.3}.oc-toggle{margin-top:-10px;position:relative;z-index:1;min-width:38px;height:22px;padding:0 8px;border-radius:999px;border:1px solid #d0d5dd;background:#fff;color:#344054;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.oc-toggle:hover{border-color:var(--signal);color:var(--signal)}.oc-toggle.is-open{background:#fef2f2;border-color:#fecaca;color:var(--signal-dark)}.oc-zoom{display:inline-flex;align-items:center;gap:6px;margin-left:auto}@media (max-width: 600px){.oc-person{width:132px}.oc-zoom{margin-left:0}}.bal-table td,.bal-table th{white-space:nowrap}.bal-cell{background:none;border:1px solid transparent;border-radius:8px;padding:4px 8px;font:inherit;cursor:pointer;color:var(--text);position:relative}.bal-cell:hover:not(:disabled){border-color:#fecaca;background:#fef2f2}.bal-cell:disabled{cursor:not-allowed;opacity:.7}.bal-mark{color:var(--signal);font-size:9px;margin-left:4px;vertical-align:super}.radio-list{display:flex;flex-direction:column;gap:10px;margin:12px 0 4px}.radio-list .check{align-items:flex-start}.radio-list .check input{margin-top:4px;accent-color:var(--signal)}.ps-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ps-table td{padding:8px 10px}.ps-table tr.is-extra td{background:#f5f9ff}.ps-table .badge{margin-left:8px}.ps-total td{font-weight:700;border-top:2px solid var(--ink)}.ps-net{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:#fff;border-radius:10px;padding:12px 16px;margin:14px 0 6px}.ps-net strong{font-size:20px}.ps-add{display:grid;grid-template-columns:120px 1.4fr 140px 1.2fr auto auto;gap:8px;align-items:center;margin-top:8px}@media (max-width: 860px){.ps-grid,.ps-add{grid-template-columns:1fr}}.icon-tile-purple{background:#f4f3ff;color:#6d28d9}.stat-card{align-items:flex-start;text-align:left;padding:18px 20px;gap:6px}.stat-card .icon-tile{width:40px!important;height:40px!important;border-radius:10px;margin-bottom:6px}.stat-card-label{order:1;font-size:13.5px;color:#475467;font-weight:500}.stat-card-value{order:2;font-size:28px;margin-top:0}.dash-grid-overview{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr)}@media (max-width: 1300px){.dash-grid-overview{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.dash-grid-overview>:last-child{grid-column:1 / -1}}@media (max-width: 1100px){.dash-grid-overview{grid-template-columns:1fr}}.att-overview{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}.att-overview .donut{width:150px;height:150px}.att-overview .legend{min-width:150px}.donut-big{font-size:20px}.settings-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;align-items:start}.settings-nav{padding:12px;position:sticky;top:80px}.settings-nav-group+.settings-nav-group{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.settings-nav-title{display:block;font-size:11.5px;color:#98a2b3;text-transform:uppercase;letter-spacing:.05em;padding:2px 10px 6px}.settings-nav .settings-nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:9px 10px;border:0;border-radius:8px;background:none;color:#344054;font:inherit;font-size:14px;cursor:pointer;margin:1px 0}.settings-nav .settings-nav-item .icon{color:#98a2b3}.settings-nav .settings-nav-item:hover{background:var(--paper)}.settings-nav .settings-nav-item.active{background:#fef2f2;color:var(--signal-dark);font-weight:600}.settings-nav .settings-nav-item.active .icon{color:var(--signal)}.settings-body{min-width:0}.settings-body>.section:first-child{margin-top:0}@media (max-width: 1000px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;display:flex;gap:4px;overflow-x:auto;padding:8px}.settings-nav-group{display:contents}.settings-nav-title{display:none}.settings-nav .settings-nav-item{width:auto;white-space:nowrap}}@media (max-width: 560px){.settings-nav{flex-wrap:wrap;overflow-x:visible;row-gap:6px}}.member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;padding:16px 20px 20px}.member-card{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);text-decoration:none}.member-card:hover{border-color:#fecaca;box-shadow:0 6px 18px #10182814}.member-main{display:flex;flex-direction:column;gap:3px;min-width:0}.member-title{color:#475467;font-size:13.5px}.member-status{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}.stat-cards-5{grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width: 1100px){.stat-cards-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 600px){.stat-cards-5{grid-template-columns:1fr 1fr}}.section-title-sep{font-size:17px;font-weight:600;margin:18px 0 12px}.btn-outline-red{background:#fff;color:var(--signal);border-color:#fca5a5}.btn-outline-red:hover{background:#fef2f2}.page-title-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.out-today{display:flex;flex-wrap:wrap;gap:10px}.out-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);text-decoration:none}.out-chip:hover{border-color:#fecaca;background:#fff7f7}.wfh-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg);padding:12px 18px;margin-bottom:18px;box-shadow:0 1px 3px #1018280a}.wfh-card-text{display:flex;flex-direction:column;flex:1;min-width:220px}.wfh-allowance{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:10px;background:#ecfdf3;border:1px solid #abefc6;margin-bottom:14px}.wfh-allowance.is-used{background:#fffaeb;border-color:#fedf89}.claim-section{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-top:12px}.claim-section-head{display:flex;align-items:center;gap:12px}.claim-section-head>span:first-child{flex:1}.claim-subtotal{font-weight:600;white-space:nowrap}.claim-table{margin-top:10px}.claim-table td{padding:6px;vertical-align:middle}.claim-table input,.claim-table select{width:100%;min-width:90px}.claim-table .num-input{text-align:right;min-width:90px}.claim-total{margin-right:auto;font-size:15px}.claim-total strong{font-size:18px;margin-left:6px}.claim-head{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.claim-amount{font-size:20px;margin-left:8px}.claim-view-section{margin-top:10px}.claim-lines{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px}.claim-lines li{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:12px;padding:8px 12px;font-size:14px;align-items:center}.claim-lines li+li{border-top:1px solid var(--line)}.claim-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}@media (max-width: 700px){.claim-lines li{grid-template-columns:1fr}}.dialog-body{display:flex;flex-direction:column;gap:12px}.dialog-message{margin:0;font-size:15px;line-height:1.5;white-space:pre-line}.dialog-body textarea{width:100%}.btn-danger{background:var(--signal);border-color:var(--signal);color:#fff}.btn-danger:hover{background:var(--signal-dark)}.login-links{display:inline-flex;gap:14px}.login-inline{padding:0;font-size:inherit}.login-warn{color:#b42318;margin:-4px 0 0}.h-stat{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg);padding:16px 18px;box-shadow:0 1px 3px #1018280a}.h-stat>span:last-child{display:flex;flex-direction:column;gap:2px}.h-stat strong{font-size:26px;line-height:1.1}.h-stat-label{font-size:13.5px;color:#475467;font-weight:500}.h-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.25fr) minmax(220px,.55fr);gap:16px;align-items:start}@media (max-width: 1350px){.h-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.h-side{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:16px}}@media (max-width: 900px){.h-layout,.h-side{grid-template-columns:1fr}}.h-cal-nav{display:flex;align-items:center;gap:10px;margin-bottom:10px}.h-cal-nav strong{font-size:16px;min-width:140px}.h-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.h-cal-head{font-size:12.5px;color:#667085;text-align:center;padding:8px 2px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fafbfc}.h-cal-cell{min-height:76px;padding:5px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:3px;min-width:0}.h-cal-cell.is-other{background:#fcfcfd}.h-cal-cell.is-other .h-cal-day{color:#c0c5cf}.h-cal-cell.is-off{background:#f7f8fa}.h-cal-day{font-size:13px;font-weight:500;color:#344054;text-align:center}.h-cal-cell.is-today .h-cal-day{background:var(--signal);color:#fff;border-radius:999px;width:24px;height:24px;line-height:24px;margin:0 auto}.h-cal-event{display:flex;flex-direction:column;align-items:center;gap:2px;border-radius:8px;padding:5px 4px;text-align:center;flex:1;justify-content:center;cursor:default}.h-cal-name{font-size:11.5px;font-weight:600;line-height:1.2;overflow-wrap:anywhere}.h-cal-loc{font-size:10px;opacity:.8}.h-tone-red{background:#fef2f2;color:#b42318}.h-tone-blue{background:#eff6ff;color:#1d4ed8}.h-tone-green{background:#ecfdf3;color:#067647}.h-tone-purple{background:#f4f3ff;color:#6d28d9}.h-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:12.5px;color:#475467}.h-legend span{display:inline-flex;align-items:center;gap:6px}.h-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.h-dot.h-tone-red{background:#dc2626}.h-dot.h-tone-blue{background:#3b82f6}.h-dot.h-tone-green{background:#22c55e}.h-dot.h-tone-purple{background:#8b5cf6}.h-dot-off{background:#e4e7ec}.h-pill{display:inline-block;padding:2px 9px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.h-pill-red{background:#fef2f2;color:#b42318}.h-pill-blue{background:#eff6ff;color:#1d4ed8}.h-pill-green{background:#ecfdf3;color:#067647}.h-pill-purple{background:#f4f3ff;color:#6d28d9}.h-loc{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;background:#eff6ff;color:#1d4ed8;font-size:12px;white-space:nowrap}.h-list{max-height:640px;overflow:auto}.h-list tr.is-past td{opacity:.55}.h-side{display:flex;flex-direction:column;gap:16px}.h-side-title{display:inline-flex;align-items:center;gap:8px}.h-side .field{margin-bottom:12px}.h-checks{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.h-checks .check input{accent-color:var(--signal)}.h-filter-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.h-note{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:#f5f8ff;border:1px solid #dbe4ff;color:#3538cd;font-size:13px}.h-cal-name{overflow-wrap:normal;word-break:normal;-webkit-hyphens:auto;hyphens:auto}@media (max-width: 1679px){.h-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.h-side{grid-column:1 / -1;order:-1;display:block}.h-side>.section{margin:0}.h-side>.section .section-head{display:none}.h-side>.section>div,.h-side .section-body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 18px}.h-side .field{margin:0;min-width:150px}.h-side .field-label{width:100%;margin:0}.h-side .h-checks{flex-direction:row;flex-wrap:wrap;gap:6px 16px;margin:0}.h-side .h-filter-actions{display:flex;gap:8px;margin-left:auto}.h-side .h-note{display:none}}@media (max-width: 1000px){.h-layout{grid-template-columns:1fr}}@media (max-width: 1679px){.h-side>.section{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 20px;padding:14px 18px}.h-side>.section>.field{flex:0 0 170px;min-width:0}.h-side>.section>.field-label{width:auto;margin:0 0 6px;flex:0 0 auto;align-self:center}.h-side>.section>.h-checks{flex:1 1 320px;align-self:center}.h-side>.section>.h-filter-actions{flex:0 0 auto}}.wl-summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 12px}.input-add{display:flex;gap:6px}.input-add>input,.input-add>select{flex:1;min-width:0}.g-private{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:10px;background:#f5f8ff;border:1px solid #dbe4ff;color:#3538cd;font-size:13.5px;margin-bottom:12px}.g-msg{border-radius:12px;padding:10px 14px;margin:8px 0;max-width:85%}.g-msg p{margin:4px 0 0}.g-msg-emp{background:#f9fafb;border:1px solid var(--line)}.g-msg-hr{background:#fef2f2;border:1px solid #fecaca;margin-left:auto}.g-author{font-size:12px;color:#667085;font-weight:600}.g-reply{margin-top:12px;display:flex;flex-direction:column;gap:8px}.g-reply textarea{width:100%}.ei-ratings{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px 20px;margin:6px 0 14px}.ei-rating{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px}.ei-stars button{background:none;border:0;font-size:22px;line-height:1;color:#d0d5dd;cursor:pointer;padding:0 1px}.ei-stars button.is-on{color:#f59e0b}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;padding:0 20px 20px}.folder-card{display:flex;gap:12px;align-items:center;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;font:inherit;color:var(--text)}.folder-card .icon{color:#f59e0b}.folder-card:hover{border-color:#fecaca;background:#fff7f7}.btn-blue{background:#1d6fe8;border-color:#1d6fe8;color:#fff}.btn-blue:hover{background:#175cc4;border-color:#175cc4}.btn-icon{width:30px;padding:0;justify-content:center;font-size:18px;line-height:1}.reg-search{min-width:280px}.reg-table th{white-space:nowrap;font-size:12.5px}.reg-table td{font-size:13.5px}.reg-table tr.is-selected td{background:#f5f9ff}.reg-check{width:36px}.reg-check input{accent-color:var(--signal)}.asset-type{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.asset-type .asset-icon{width:30px;height:30px;border-radius:8px}.row-menu{position:relative;display:inline-block}.row-menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:30;min-width:170px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px #10182829;padding:6px;display:flex;flex-direction:column}.row-menu-list>button,.row-menu-list>a{text-align:left;background:none;border:0;padding:8px 10px;border-radius:6px;font:inherit;font-size:14px;color:var(--text);cursor:pointer;text-decoration:none}.row-menu-list>button:hover,.row-menu-list>a:hover{background:var(--paper)}.col-menu{padding:10px 12px;gap:6px;min-width:200px;max-height:360px;overflow:auto}.bulk-bar{display:flex;align-items:center;gap:12px;padding:10px 20px;background:#eff6ff;border-bottom:1px solid #dbe4ff}.reg-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--line)}.pager{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.import-strip{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:18px}.drop-zone{display:flex;align-items:center;gap:16px;padding:22px;border:2px dashed #93c5fd;border-radius:var(--r-lg);background:#fff;color:#1d6fe8}.drop-zone.is-drag{background:#eff6ff;border-color:#1d6fe8}.drop-zone strong{color:var(--text)}.import-card{display:flex;gap:12px;align-items:flex-start;padding:18px;background:#fff;border:1px solid #eceff3;border-radius:var(--r-lg)}.import-card>.icon{color:#1d6fe8;flex-shrink:0}.import-card>span{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.import-help{background:#f5f8ff;border-color:#dbe4ff}@media (max-width: 1100px){.import-strip{grid-template-columns:1fr}.reg-search{min-width:0}}.reg-table td:nth-child(2),.reg-table td:nth-child(5){white-space:nowrap}.exit-history{list-style:none;margin:0;padding:0}.exit-history li{display:flex;gap:12px;padding:8px 0;position:relative}.exit-history li+li:before{content:"";position:absolute;left:5px;top:-8px;height:16px;border-left:2px solid var(--line)}.exit-history-dot{width:12px;height:12px;border-radius:50%;margin-top:4px;flex-shrink:0;background:#22c55e}.exit-history li.is-bad .exit-history-dot{background:var(--signal)}.exit-history li.is-plain .exit-history-dot{background:#98a2b3}.drop-text{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.drop-or{display:inline-flex;align-items:center;gap:10px}.today-bar{flex-wrap:wrap}.today-bar>.text-bad{flex-basis:100%;order:10;padding:8px 12px;border-radius:8px;background:#fef3f2;border:1px solid #fecdca;color:#b42318;font-size:13.5px}.inv-cat{display:inline-block;padding:2px 10px;border-radius:6px;font-size:12px;font-weight:500}.inv-cat-blue{background:#eff6ff;color:#1d4ed8}.inv-cat-pink{background:#fdf2f8;color:#be185d}.inv-cat-amber{background:#fffbeb;color:#b45309}.inv-cat-teal{background:#f0fdfa;color:#0f766e}.inv-cat-plain{background:#f2f4f7;color:#475467}.reg-table td.inv-in{color:#067647;font-weight:600}.reg-table td.inv-low{color:#b45309}.row-menu-list>button:disabled{opacity:.45;cursor:not-allowed}.reg-table th.inv-pcol,.reg-table td.inv-pcol{background:#f8faff}.inv-period{margin:0;padding-top:0}.checkin-modal{width:min(980px,100%);padding:0;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100dvh - 40px)}.checkin-head{display:flex;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid var(--line);position:relative}.checkin-head-icon{width:56px;height:56px;border-radius:50%;background:#eaf2ff;color:#1d6fe8;display:grid;place-items:center;flex-shrink:0}.checkin-head-text{display:flex;flex-direction:column;gap:2px}.checkin-head h2{margin:0;font-size:21px}.checkin-close{position:absolute;right:18px;top:18px}.checkin-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;padding:18px 24px;overflow:auto}.checkin-main{display:flex;flex-direction:column;gap:14px;min-width:0}.checkin-when{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:#f1f6ff;border:1px solid #dbe7fb}.checkin-when-icon{width:44px;height:44px;border-radius:10px;background:#dfeafd;color:#1d6fe8;display:grid;place-items:center}.checkin-when-text{display:flex;flex-direction:column;gap:2px;flex:1}.checkin-date{color:#475467}.checkin-time{display:inline-flex;align-items:center;gap:6px;font-size:18px;color:var(--text)}.checkin-time .icon{color:#1d6fe8}.checkin-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:12.5px;font-weight:600;white-space:nowrap;border:1px solid transparent}.checkin-pill-good{background:#ecfdf3;color:#067647;border-color:#abefc6}.checkin-pill-warn{background:#fffaeb;color:#b54708;border-color:#fedf89}.checkin-pill-info{background:#ecfdf3;color:#067647;border-color:#abefc6}.checkin-card{border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.checkin-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.checkin-card-title{display:inline-flex;align-items:center;gap:8px;font-size:16px}.checkin-card-title .icon{color:#1d6fe8}.checkin-place{margin:0;display:flex;flex-direction:column;gap:2px}.checkin-place-name{color:#1d4ed8;font-weight:500}.checkin-finding{display:flex;align-items:center;gap:10px;padding:26px 12px;color:#475467;justify-content:center;background:#f9fafb;border-radius:10px}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid #d0d5dd;border-top-color:#1d6fe8;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.checkin-blocked{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.map-box{position:relative;height:280px;border-radius:10px;overflow:hidden;background:#e8eef3;border:1px solid var(--line);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.map-box:active{cursor:grabbing}.map-tile{position:absolute;width:256px;height:256px;max-width:none;pointer-events:none}.map-accuracy{position:absolute;border-radius:50%;background:#1d6fe81f;border:1px solid rgba(29,111,232,.45);pointer-events:none}.map-pin{position:absolute;transform:translate(-50%,-100%);display:flex;align-items:flex-end;pointer-events:none}.map-pin-head{width:22px;height:22px;border-radius:50% 50% 50% 0;background:var(--signal);transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 2px 6px #00000059;margin-bottom:4px}.map-pin-label{position:absolute;left:18px;bottom:14px;background:#fff;padding:3px 9px;border-radius:6px;font-size:12.5px;font-weight:600;box-shadow:0 2px 6px #1018282e;white-space:nowrap}.map-office{position:absolute;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;background:#1d6fe8;color:#fff;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 2px 6px #0000004d}.map-coords{position:absolute;left:10px;bottom:10px;display:flex;gap:18px;background:#fff;border-radius:10px;padding:8px 14px;box-shadow:0 4px 14px #10182826;font-size:13.5px;font-weight:500}.map-coord{display:inline-flex;gap:8px;align-items:center}.map-coord .icon{color:#1d6fe8}.map-zoom{position:absolute;right:10px;bottom:26px;display:flex;flex-direction:column;background:#fff;border-radius:8px;box-shadow:0 2px 8px #1018282e;overflow:hidden}.map-zoom button{width:34px;height:32px;border:0;background:#fff;font-size:18px;cursor:pointer;color:#344054;display:grid;place-items:center}.map-zoom button+button{border-top:1px solid var(--line)}.map-credit{position:absolute;right:0;bottom:0;background:#fffc;font-size:10px;padding:1px 5px}.checkin-notes{display:flex;flex-direction:column;gap:6px;position:relative}.checkin-notes>span:first-child{display:inline-flex;align-items:center;gap:6px}.checkin-notes textarea{width:100%;resize:vertical}.checkin-count{position:absolute;right:10px;bottom:8px}.checkin-side{background:#f7f9fc;border:1px solid #e6ecf5;border-radius:12px;padding:18px 16px;display:flex;flex-direction:column;gap:14px}.checkin-person{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding-bottom:12px;border-bottom:1px solid var(--line)}.checkin-person strong{font-size:17px;margin-top:6px}.checkin-person .muted{color:#1d6fe8}.checkin-facts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.checkin-facts li{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.checkin-fact-icon{width:38px;height:38px;border-radius:50%;background:#eaf2ff;color:#1d6fe8;display:grid;place-items:center;flex-shrink:0}.checkin-details{background:#eef4ff;border:1px solid #dbe7fb;border-radius:10px;padding:12px 14px}.checkin-details>strong{display:inline-flex;align-items:center;gap:6px;color:#1d4ed8}.checkin-details dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:10px 0 0;font-size:13.5px}.checkin-details dt{color:#667085}.checkin-details dd{margin:0}.checkin-error{padding:0 24px}.checkin-foot{padding:14px 24px;border-top:1px solid var(--line);justify-content:flex-end}.btn-lg{padding:10px 22px;font-size:15px;min-height:42px}@media (max-width: 820px){.checkin-body{grid-template-columns:1fr;padding:14px}.checkin-side{order:2}.map-box{height:230px}.map-coords{gap:10px;font-size:12px;padding:6px 10px}.checkin-head{padding:16px 44px 16px 16px}}.session-note{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#475467}.today-grid{align-items:stretch}.today-grid>.section{display:flex;flex-direction:column}.today-grid>.section:first-child{justify-content:center}.sessions-scroll{flex:1 1 0;min-height:118px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.sessions-scroll li{background:#fff}.sessions-count{margin:0 0 6px}.out-today{max-height:220px;overflow-y:auto}.row-details .kv dd{white-space:normal}.row-details-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;flex-wrap:wrap}.row-details-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.row-details-actions .decision{display:flex;gap:6px}tr.clickable{cursor:pointer}tr.clickable:hover td{background:#f9fafb}.inv-cat-red{background:#fef2f2;color:#b42318}.inv-cat-purple{background:#f4f3ff;color:#6d28d9}.matrix-menu td:first-child{font-size:13.5px}.matrix-yes{color:#067647;font-weight:700}.access-menu{display:flex;flex-direction:column;gap:6px;font-size:13.5px}.access-menu>div{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:6px 0;border-bottom:1px solid var(--line)}@media (max-width: 640px){.access-menu>div{grid-template-columns:1fr;gap:2px}}select:not([multiple]):not([size]){appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:34px;text-overflow:ellipsis;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23667085' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px 8px}select:hover:not(:disabled){border-color:#98a2b3}select:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 3px #dc26261f}select:disabled{cursor:not-allowed;opacity:.75}optgroup{font-weight:600;color:#344054}option{font-weight:400;color:var(--text)}.login-input input:-webkit-autofill,.login-input input:-webkit-autofill:hover,.login-input input:-webkit-autofill:focus,.login-input input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #fff inset!important;box-shadow:0 0 0 1000px #fff inset!important;-webkit-text-fill-color:var(--text)!important;caret-color:var(--text);transition:background-color 9999s ease-out 0s}.login-input input:autofill{background:#fff!important}.login-input input::selection{background:#dc26262e}.cw-fab{position:fixed;right:22px;bottom:22px;z-index:60;width:56px;height:56px;border-radius:50%;border:0;background:var(--signal);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px #dc262659;transition:transform .15s}.cw-fab:hover{transform:scale(1.05)}.cw-fab-badge{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#fff;color:var(--signal);font-size:12px;font-weight:700;display:grid;place-items:center;box-shadow:0 1px 4px #0003}.cw-panel{position:fixed;right:22px;bottom:90px;z-index:60;width:380px;height:min(560px,calc(100dvh - 120px));background:#fff;border-radius:16px;border:1px solid #e6e9ee;box-shadow:0 18px 50px #10182838;display:flex;flex-direction:column;overflow:hidden}.cw-head{display:flex;align-items:center;gap:4px;padding:8px 10px 0;border-bottom:1px solid var(--line)}.cw-tabs{display:flex;gap:4px;flex:1}.cw-tabs button{display:inline-flex;align-items:center;gap:6px;padding:10px 12px;border:0;background:none;font:inherit;font-size:14px;color:#667085;cursor:pointer;border-bottom:2px solid transparent}.cw-tabs button.is-on{color:var(--signal);border-bottom-color:var(--signal);font-weight:600}.cw-icon{width:32px;height:32px;border:0;background:none;border-radius:8px;display:grid;place-items:center;color:#475467;cursor:pointer;flex-shrink:0}.cw-icon:hover{background:var(--paper)}.cw-menu-wrap{position:relative}.cw-menu{position:absolute;right:0;top:34px;z-index:5;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px #10182829;padding:6px;display:flex;flex-direction:column;min-width:170px}.cw-menu button{text-align:left;border:0;background:none;padding:8px 10px;border-radius:6px;font:inherit;font-size:14px;cursor:pointer}.cw-menu button:hover{background:var(--paper)}.cw-search{display:flex;align-items:center;gap:8px;margin:10px 12px 4px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#f9fafb;color:#98a2b3}.cw-search input{border:0;background:transparent;flex:1;min-height:36px;padding:0;outline:none;font-size:13.5px}.cw-body{flex:1;overflow-y:auto;padding:4px 8px 12px;overscroll-behavior:contain}.cw-section{margin:12px 6px 4px;font-size:12.5px;color:#667085;font-weight:600}.cw-list{list-style:none;margin:0;padding:0}.cw-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 6px;border:0;background:none;border-radius:10px;cursor:pointer;text-align:left;font:inherit;color:var(--text)}.cw-row:hover{background:#f7f8fa}.cw-row-main{display:flex;flex-direction:column;flex:1;min-width:0}.cw-row-main strong{font-size:14px;display:inline-flex;align-items:center;gap:4px}.cw-sub{font-size:12.5px;color:#667085;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cw-row.is-unread .cw-row-main .cw-sub{color:var(--text);font-weight:500}.cw-row-end{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.cw-count{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--signal);color:#fff;font-size:11.5px;font-weight:700;display:grid;place-items:center}.cw-hash{width:38px;height:38px;border-radius:10px;background:#eef2ff;color:#4f46e5;display:grid;place-items:center;flex-shrink:0}.cw-lock{color:#98a2b3;display:inline-flex}.cw-join{font-size:12px;font-weight:600;color:#1d6fe8}.cw-empty{color:#98a2b3;font-size:13px;text-align:center;padding:18px 8px}.cw-error{color:#b42318;font-size:13px;margin:6px 12px}.cw-new{margin:10px 6px 0}.cw-conv{display:flex;flex-direction:column;height:100%;min-height:0}.cw-conv-head{display:flex;align-items:center;gap:8px;padding:10px 8px;border-bottom:1px solid var(--line)}.cw-msgs{flex:1;overflow-y:auto;padding:8px 12px;background:#fafbfc;overscroll-behavior:contain}.cw-day{text-align:center;margin:10px 0 6px}.cw-day span{font-size:11.5px;color:#667085;background:#eef0f3;border-radius:999px;padding:2px 10px}.cw-msg{display:flex;align-items:flex-end;gap:6px;margin:4px 0}.cw-msg.is-mine{justify-content:flex-end}.cw-bubble{max-width:78%;background:#fff;border:1px solid #e9ecf0;border-radius:14px 14px 14px 4px;padding:7px 10px;display:flex;flex-direction:column;gap:2px}.cw-msg.is-mine .cw-bubble{background:#fef2f2;border-color:#fdd8d8;border-radius:14px 14px 4px}.cw-from{font-size:11.5px;font-weight:600;color:#4f46e5}.cw-text{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.cw-time{font-size:10.5px;color:#98a2b3;align-self:flex-end}.cw-del{border:0;background:none;color:#98a2b3;cursor:pointer;opacity:0;padding:2px}.cw-msg:hover .cw-del,.cw-del:focus{opacity:1}.cw-compose{display:flex;align-items:flex-end;gap:8px;padding:10px;border-top:1px solid var(--line)}.cw-compose textarea{flex:1;resize:none;max-height:120px;min-height:40px;border-radius:12px;font-size:14px}.cw-send{width:40px;height:40px;border-radius:50%;border:0;background:var(--signal);color:#fff;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.cw-send:disabled{opacity:.45;cursor:default}.cw-readonly{text-align:center;font-size:12.5px;color:#667085;padding:12px;border-top:1px solid var(--line);margin:0}.cw-form{padding:12px 14px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.cw-form h3{margin:0 0 4px;font-size:16px}.cw-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#344054}.cw-form label.cw-check{flex-direction:row;align-items:center;gap:8px}.cw-label{font-size:13px;color:#344054}.cw-chips{display:flex;flex-wrap:wrap;gap:6px}.cw-chip{display:inline-flex;align-items:center;gap:4px;background:#eef2ff;color:#3730a3;border-radius:999px;padding:2px 4px 2px 10px;font-size:12.5px}.cw-chip button{border:0;background:none;cursor:pointer;color:inherit;font-size:15px;line-height:1}.cw-picker .cw-search{margin:4px 0}.cw-picker .cw-list{max-height:220px;overflow-y:auto}.cw-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}@media (max-width: 520px){.cw-panel{right:6px;left:6px;width:auto;bottom:6px;top:6px;height:auto}.cw-fab{right:14px;bottom:14px}.cw-fab.is-open{display:none}}.content{padding-bottom:96px}@media (min-width: 981px){.content{padding-bottom:88px}}@media print{.cw-fab,.cw-panel{display:none}}.req-checklist{margin:0 20px 14px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#fcfcfd}.req-checklist-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}.req-checklist ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2px 18px}.req-item{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px dashed #eceff3}.req-dot{width:20px;height:20px;border-radius:50%;border:2px solid #d0d5dd;display:grid;place-items:center;font-size:12px;font-weight:700;flex-shrink:0}.req-item.is-verified .req-dot{background:#067647;border-color:#067647;color:#fff}.req-item.is-pending .req-dot{border-color:#f79009;color:#f79009}.req-item.is-rejected .req-dot{border-color:#d92d20}.req-text{display:flex;flex-direction:column;flex:1;min-width:0;font-size:14px}.choice-select{display:flex;flex-direction:column;gap:6px;width:100%}.choice-select>select,.choice-select>input{width:100%}.filters{align-items:center}.filters>select{align-self:center}.search-panel{align-items:center}.pw-modal{width:min(520px,100%);padding:0;overflow:hidden}.pw-head{display:flex;align-items:flex-start;gap:14px;padding:20px 22px 16px;border-bottom:1px solid var(--line);position:relative}.pw-head h2{margin:0 0 2px;font-size:19px}.pw-head .muted{font-size:13.5px;padding-right:26px;display:block}.pw-head-icon{width:48px;height:48px;border-radius:12px;background:#fde8e8;color:var(--signal);display:grid;place-items:center;flex-shrink:0}.pw-close{position:absolute;right:14px;top:14px}.pw-body{padding:16px 22px 0;display:flex;flex-direction:column;gap:6px;max-height:calc(100dvh - 180px);overflow-y:auto}.pw-label{font-weight:600;font-size:14px;margin-top:10px;color:var(--text)}.pw-req{color:var(--signal)}.pw-input{position:relative;display:flex}.pw-input input{width:100%;padding-right:44px;min-height:42px}.pw-input.is-invalid input{border-color:#f04438}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;color:#667085;padding:6px;border-radius:6px;cursor:pointer;display:grid}.pw-eye:hover{background:var(--paper)}.pw-rules{display:flex;gap:10px;margin-top:8px;padding:12px 14px;border-radius:10px;background:#f6f4f2;border:1px solid #ece8e4;font-size:13.5px;color:#475467}.pw-rules>.icon{color:#667085;flex-shrink:0;margin-top:1px}.pw-rules ul{margin:6px 0 0;padding-left:18px}.pw-rules li{margin:2px 0}.pw-rules li.is-met{color:#067647;font-weight:600;list-style:none;margin-left:-14px}.pw-hint{display:block;font-size:12.5px;color:#b54708;margin-top:4px}.pw-hint.pw-bad{color:#b42318}.pw-foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 0 20px;margin-top:8px;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff}.pw-foot .btn{min-width:120px;justify-content:center}.pw-modal,.pw-modal *{text-align:left}.pw-foot{justify-content:flex-end}.pw-foot .btn{text-align:center}.modal-backdrop{place-items:start center;align-items:start;overflow-y:auto;padding-top:clamp(16px,7vh,72px);padding-bottom:24px}.modal-backdrop>.modal{margin:0 auto}.pw-tick{display:inline-block;width:16px}.pw-rules li{list-style:none;margin-left:-14px}.pw-rules li.is-met{margin-left:-14px}.pw-hint{min-height:18px}.reset-form{gap:6px}.nb{position:relative;display:inline-flex}.nb .top-bell{border:0;background:none;cursor:pointer}.nb-panel{position:absolute;right:-8px;top:calc(100% + 8px);z-index:70;width:min(380px,calc(100vw - 24px));max-height:min(520px,calc(100dvh - 90px));display:flex;flex-direction:column;background:#fff;border:1px solid #e6e9ee;border-radius:14px;box-shadow:0 18px 46px #10182833;overflow:hidden}.nb-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}.nb-list{list-style:none;margin:0;padding:4px;overflow-y:auto;overscroll-behavior:contain}.nb-item{display:flex;gap:10px;width:100%;text-align:left;border:0;background:none;padding:10px;border-radius:10px;cursor:pointer;font:inherit;color:var(--text)}.nb-item:hover{background:#f7f8fa}.nb-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0;background:transparent}.nb-item.is-unread .nb-dot{background:var(--signal)}.nb-item.is-unread strong{font-weight:700}.nb-text{display:flex;flex-direction:column;gap:2px;min-width:0}.nb-text strong{font-size:13.5px;font-weight:500}.nb-body{font-size:12.5px;color:#667085;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.nb-time{font-size:11.5px;color:#98a2b3}.nb-empty{padding:24px;text-align:center;color:#98a2b3;font-size:13px}.import-steps{padding-left:18px;display:flex;flex-direction:column;gap:8px;margin:0 0 12px}.week-nav{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.roster-wrap{max-height:70vh;overflow:auto}.roster th,.roster td{min-width:128px;vertical-align:top}.roster th:first-child,.roster td:first-child{min-width:190px;position:sticky;left:0;background:#fff;z-index:1}.roster select{width:100%;font-size:12.5px;padding-top:5px;padding-bottom:5px}.roster .is-weekend,.ts-grid .is-weekend{background:#f8f9fb}.roster td.is-holiday{background:#fff7ed}.roster td.is-changed{box-shadow:inset 3px 0 0 var(--signal)}.ts-grid th,.ts-grid td{min-width:84px}.ts-grid th:first-child,.ts-grid td:first-child{min-width:220px}.ts-hours{width:70px;text-align:right}.ts-note{min-width:160px;width:100%}.bio-copy{display:flex;align-items:center;gap:8px}.bio-copy code{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:12.5px}.bio-key{letter-spacing:.02em}.ts-grid tfoot th,.ts-grid tfoot td{border-top:1px solid var(--line)}.row-actions .spacer{flex:1}.pick-list{max-height:240px;overflow-y:auto;border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin:8px 0;display:flex;flex-direction:column;gap:4px}.stars{display:inline-flex;align-items:center;gap:1px}.star{color:#d0d5dd;font-size:18px;line-height:1;border:0;background:none;padding:0 1px;cursor:default}button.star{cursor:pointer}.star.is-on{color:#f59e0b}.review-goals{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.review-goal{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.review-goal-edit{display:grid;grid-template-columns:1fr 70px auto auto;gap:6px;align-items:center}.review-goal-edit textarea{grid-column:1 / -1}.review-goal-ratings{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}.review-goal-ratings input{flex:1;min-width:200px}.w-weight{width:70px}.letter-text{font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.55;width:100%}@media (max-width: 640px){.review-goal-edit{grid-template-columns:1fr 70px}}.board{display:grid;grid-template-columns:repeat(6,minmax(170px,1fr));gap:10px;padding:0 16px 16px;overflow-x:auto}.board-col{background:#f7f8fa;border-radius:12px;padding:8px;min-height:120px;display:flex;flex-direction:column;gap:8px}.board-head{display:flex;justify-content:space-between;padding:2px 4px}.board-card{text-align:left;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:2px;cursor:pointer;font:inherit;color:var(--text)}.board-card:hover{border-color:#98a2b3}.app-head .kv dd{white-space:normal}.move-box{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.iv-card{border:1px solid var(--line);border-radius:10px;padding:8px 10px;margin-bottom:8px}.timeline{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:6px}.timeline li{border-left:2px solid var(--line);padding-left:10px}.chart-wrap{overflow-x:auto;margin-bottom:12px}.chart{width:100%;min-width:320px;height:auto}.chart-grid{stroke:#eceff3}.chart-bar-0{fill:#dc2626}.chart-bar-1{fill:#98a2b3}.chart-val{font-size:10px;fill:#475467}.chart-label{font-size:10.5px;fill:#667085}.chart-legend{display:flex;gap:14px;font-size:12.5px;color:#475467}.chart-key{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}i.chart-bar-0{background:#dc2626}i.chart-bar-1{background:#98a2b3}.breakdowns{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:8px}.breakdown h4{margin:0 0 6px;font-size:14px}.breakdown-row{display:grid;grid-template-columns:minmax(90px,1fr) 2fr auto;gap:8px;align-items:center;font-size:13px;padding:3px 0}.breakdown-bar{background:#f2f4f7;border-radius:4px;height:8px;overflow:hidden}.breakdown-bar i{display:block;height:100%;background:#dc2626;border-radius:4px}.stat-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px}.stat-mini{border:1px solid var(--line);border-radius:12px;padding:10px 14px;display:flex;flex-direction:column;min-width:150px}.stat-mini strong{font-size:22px}.w-num{width:120px;text-align:right}.text-warn{color:#b54708}@keyframes page-in{0%{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}main.content>.page,main.content>div{animation:page-in .18s ease-out}@media (prefers-reduced-motion: reduce){main.content>.page,main.content>div{animation:none}}.sidebar{overflow:hidden;height:100vh;height:100dvh}.sidebar>.brand,.sidebar>.sidebar-foot,.sidebar>:first-child{flex-shrink:0}.sidebar>nav{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.sidebar>nav::-webkit-scrollbar{width:6px}.sidebar>nav::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:6px}.rating-chip{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:1px 9px;margin:0 4px 4px 0;font-size:12.5px}.ts-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 16px 16px;border-top:1px solid var(--line)}.ts-actions-right{display:flex;gap:10px;align-items:center}.ts-actions .btn{min-height:38px;min-width:120px;justify-content:center}.h-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}@media (max-width: 1100px){.h-layout{grid-template-columns:1fr}}.h-filters{display:inline-flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.h-filters select{width:auto;min-width:110px}.h-note-line{display:flex;gap:6px;align-items:center;margin:0}.field input[type=checkbox],.field input[type=radio],.check input[type=checkbox],.check input[type=radio]{width:auto;flex:0 0 auto}.check{align-items:center}.modal-backdrop{overscroll-behavior:contain;touch-action:pan-y}.datepick{position:relative;display:inline-block;max-width:100%}.field .datepick,.datepick.block{display:block;width:100%}.datepick-field{position:relative;display:block}.datepick-text{width:100%;padding-right:38px}.datepick-text::placeholder{color:#9aa6b4}.datepick-btn{position:absolute;top:1px;right:1px;bottom:1px;width:34px;display:grid;place-items:center;border:0;border-left:1px solid var(--line);background:transparent;color:var(--muted);border-radius:0 var(--r-sm) var(--r-sm) 0;cursor:pointer;padding:0}.datepick-btn:hover{background:var(--paper);color:var(--signal-dark)}.datepick-btn:disabled{cursor:not-allowed;opacity:.5}.datepick.is-open .datepick-text,.datepick-text:focus{outline:none;border-color:var(--signal);box-shadow:0 0 0 3px var(--signal-tint)}.datepick.is-disabled .datepick-btn{background:var(--paper)}.datepick-pop{position:fixed;z-index:1200;width:310px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:10px;box-shadow:0 16px 40px #1d27332e,0 2px 6px #1d273314}.datepick-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}.datepick-nav{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;cursor:pointer;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;color:var(--text);padding:0}.datepick-nav:hover:not(:disabled){background:var(--paper);border-color:var(--line-strong)}.datepick-nav:disabled{opacity:.4;cursor:not-allowed}.datepick-sel{flex:1 1 auto;display:flex;gap:6px}.datepick-sel select{flex:1 1 auto;min-height:30px;padding:3px 6px;font-size:13.5px;font-weight:500}.datepick-sel select:last-child{flex:0 0 86px}.datepick-week{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px}.datepick-week span{text-align:center;font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.04em}.datepick-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepick-day{font:inherit;font-size:13.5px;font-variant-numeric:tabular-nums;height:36px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text);cursor:pointer;padding:0}.datepick-day:hover:not(:disabled){background:var(--paper)}.datepick-day.is-out{color:#a8b3c0}.datepick-day.is-today{border-color:var(--line-strong);font-weight:600}.datepick-day.is-sel{background:var(--signal);border-color:var(--signal);color:#fff;font-weight:600}.datepick-day.is-sel:hover{background:var(--signal-dark)}.datepick-day:disabled{color:#c9d1da;cursor:not-allowed}.datepick-foot{display:flex;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}.datepick-foot .btn-link{text-decoration:none;font-weight:500}@media (max-width: 420px){.datepick-pop{width:min(310px,calc(100vw - 24px))}}.nav-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;font:inherit;font-size:11.5px;letter-spacing:.02em;color:#7f8a9c;background:none;border:0;padding:2px 12px 6px;cursor:pointer;text-align:left;text-transform:inherit}.nav-group-toggle:hover{color:#cdd6e0}.nav-group-toggle svg{transition:transform .15s ease;flex:0 0 auto}.nav-group.is-shut .nav-group-toggle svg{transform:rotate(-90deg)}.nav-group-items[hidden]{display:none}.top-user{border-radius:var(--r-md);padding:3px 8px 3px 3px}.top-user:hover{background:var(--paper)}.doc-folders{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;padding:14px}.doc-folder{font:inherit;text-align:left;display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;cursor:pointer}.doc-folder:hover{border-color:var(--signal);box-shadow:0 2px 10px #1d273312}.doc-folder.is-empty{background:#fcfdfe}.doc-folder-ico{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r-md);background:var(--signal-tint);color:var(--signal-dark)}.doc-folder.is-empty .doc-folder-ico{background:var(--paper);color:var(--muted)}.doc-folder-text{display:flex;flex-direction:column;gap:2px;min-width:0}.doc-folder-name{font-weight:600;font-size:14.5px;overflow:hidden;text-overflow:ellipsis}.doc-folder-tags{grid-column:2;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.doc-folder-tags:empty{display:none}.doc-folder-crumb{margin:0;padding-bottom:0}.crumb{font:inherit;font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;cursor:pointer;color:var(--signal-dark)}.crumb:hover{color:var(--signal)}.doc-folder-all{border-top:1px solid var(--line);margin-top:6px}.doc-folder-all>summary{cursor:pointer;padding:12px 14px;font-size:13.5px;color:var(--muted)}.doc-folder-all>summary:hover{color:var(--text)}@media (max-width: 560px){.doc-folders{grid-template-columns:1fr;padding:12px}}.more-fields{border:1px solid var(--line);border-radius:var(--r-md);margin:0 0 10px;background:#fcfdfe}.more-fields>summary{cursor:pointer;padding:10px 14px;font-size:13.5px;font-weight:500;color:var(--muted);list-style-position:inside}.more-fields>summary:hover{color:var(--text)}.more-fields[open]>summary{border-bottom:1px solid var(--line);color:var(--text)}.more-fields>.form-grid{padding:14px 14px 2px}.modal-foot-note{margin-right:auto;text-align:left;max-width:46ch}.status-bar{display:flex;flex-direction:column;gap:8px}.status-track{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--paper)}.status-track span{display:block;height:100%}.status-track .is-done,.dot.is-done{background:var(--good)}.status-track .is-going,.dot.is-going{background:#c2850c}.status-track .is-waiting,.dot.is-waiting{background:var(--line-strong)}.status-keys{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--muted)}.status-keys span{display:inline-flex;align-items:center;gap:6px}.status-keys .dot{width:9px;height:9px;border-radius:50%;display:inline-block}.task-phase{border-top:1px solid var(--line);padding-top:6px;margin-top:10px}.task-phase:first-of-type{border-top:0;margin-top:0}.task-phase-head{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;justify-content:space-between;padding:10px 14px 0}.task-phase-head h3{margin:0;font-size:15px}.task-phase.is-now .task-phase-head{background:var(--info-bg);border-left:3px solid var(--info);border-radius:var(--r-sm);padding:10px 14px}.task-phase.is-now .task-phase-head h3{color:var(--info)}.task.task-progress .task-check{border-color:#c2850c;color:#c2850c}.state-chips{display:inline-flex;flex-wrap:wrap;gap:5px}.h-switch{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 18px}.h-switch-btn{font:inherit;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;padding:9px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer}.h-switch-btn:hover{color:var(--text);border-color:var(--line-strong)}.h-switch-btn.is-on{background:var(--signal);border-color:var(--signal);color:#fff;box-shadow:0 2px 10px #dc262640}.h-switch-btn.is-on:hover{background:var(--signal-dark);color:#fff}.h-switch-add{margin-left:auto}.h-layout{display:block}.h-list{max-height:none}@media (max-width: 520px){.h-switch-btn{flex:1 1 auto;justify-content:center;padding:9px 12px}.h-switch-add{margin-left:0;width:100%}}html,body{height:100%;overflow:hidden;overscroll-behavior:none}#root{height:100%}.shell{height:100%;min-height:0;overflow:hidden}.main{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.topbar{flex:0 0 auto;position:static}.content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:contain;scroll-behavior:smooth}.content.is-locked{overflow-y:hidden}.sidebar{position:static;height:100%}.settings-nav{top:12px}@media (prefers-reduced-motion: reduce){.content{scroll-behavior:auto}}@media (max-width: 860px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;height:100%}}.doc-topline{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.doc-topline .h-switch{margin:0}.doc-where{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 14px}.doc-topline .btn:last-child{margin-left:auto}.req-head{display:grid;grid-template-columns:minmax(200px,250px) 1fr;gap:16px;align-items:start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:16px;margin-bottom:14px}.req-head-card{display:flex;align-items:center;gap:12px}.req-head-ico{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:14px;background:var(--signal-tint);color:var(--signal-dark)}.req-head-title{font-size:16px}.req-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px}.req-tile{font:inherit;text-align:left;display:grid;grid-template-columns:34px 1fr 16px;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;cursor:pointer;color:var(--text)}.req-tile:hover{border-color:var(--line-strong);box-shadow:0 2px 8px #1d27330f}.req-tile-ico{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:var(--paper);color:var(--muted)}.req-tile-text{min-width:0;display:flex;flex-direction:column}.req-tile-name{font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-tile.is-verified .req-tile-ico{background:var(--good-bg);color:var(--good)}.req-tile.is-pending .req-tile-ico{background:var(--warn-bg);color:var(--warn)}.req-tile.is-rejected .req-tile-ico,.req-tile.is-expired .req-tile-ico{background:var(--bad-bg);color:var(--bad)}.req-counts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.req-count{display:inline-flex;align-items:baseline;gap:6px;font-size:13px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 14px}.req-count strong{font-size:15px;color:var(--text)}.req-count.is-verified strong{color:var(--good)}.req-count.is-pending strong{color:var(--warn)}.req-count.is-rejected strong,.req-count.is-expired strong,.req-count.is-missing strong{color:var(--bad)}.doc-name-cell{display:inline-flex;align-items:center;gap:10px}@media (max-width: 900px){.req-head{grid-template-columns:1fr}.doc-topline .btn:last-child{margin-left:0}}.doc-name-cell>span{min-width:0}.table td:first-child .doc-name-cell{min-width:190px}.section-actions,.page-actions,.doc-topline,.filters{align-items:center}.section-actions .h-switch-btn,.doc-topline .h-switch-btn{min-height:36px;padding:7px 16px;font-size:13.5px;box-shadow:none}.doc-topline .doc-where,.doc-topline .btn{min-height:36px}.section-actions .h-switch,.doc-topline .h-switch{gap:8px;margin:0}.section-actions .btn-sm,.page-actions .btn-sm,.doc-topline .btn-sm,.inline-form .btn-sm,.bulk-bar .btn-sm,.filters .btn-sm{min-height:36px;padding-top:7px;padding-bottom:7px}@media (min-width: 981px){.cw-fab{width:52px;height:52px;right:12px;bottom:18px}.cw-panel{right:12px}}.modal-foot input.grow{flex:1 1 220px;min-width:180px}.ts-empty-day td{background:#fcfcfd}.approval-trail{list-style:none;margin:0;padding:0 0 0 18px;border-left:2px solid var(--line);display:grid;gap:12px}.approval-trail li{position:relative}.approval-trail li:before{content:"";position:absolute;left:-24px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--signal)}.approval-what{font-weight:500}.approval-note{display:block;margin-top:3px;font-size:13.5px;color:var(--muted)}.g-history{margin-top:14px}.g-history summary{cursor:pointer;font-size:14px;font-weight:500}.g-history .approval-trail{margin-top:12px}.pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}@media (max-width: 860px){.pay-grid{grid-template-columns:1fr}}.pay-breakup{width:100%;border-collapse:collapse;margin-bottom:6px}.pay-breakup th{text-align:left;font-weight:400;padding:7px 0;border-bottom:1px solid var(--line);vertical-align:top}.pay-breakup td{text-align:right;padding:7px 0;border-bottom:1px solid var(--line);white-space:nowrap}.pay-breakup .pay-total th,.pay-breakup .pay-total td{font-weight:600;border-bottom:2px solid var(--ink)}.pay-net{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;background:var(--ink);color:#fff;border-radius:var(--r-md);padding:14px 18px}.pay-net strong{font-size:21px}.modal-backdrop{display:flex;align-items:flex-start;justify-content:center;padding:clamp(10px,4vh,48px) 16px;overflow:hidden;box-sizing:border-box;max-block-size:100dvh}.modal{max-height:100%;max-width:100%}.modal-head,.modal-foot{flex:0 0 auto}.modal-body{flex:1 1 auto;min-height:0;overscroll-behavior:contain}@media (max-width: 720px){.modal-backdrop{padding:10px}.modal,.modal-wide{width:100%}.modal-head{padding:13px 15px}.modal-head h2{font-size:16px;line-height:1.3}.modal-body{padding:14px 15px}.modal-foot{padding:11px 15px;gap:8px}.modal-foot .btn,.modal-foot button{min-height:40px}.modal-foot input.grow{flex:1 1 100%;order:-1}.modal-foot-note{flex:1 1 100%;margin-right:0;max-width:none}.pay-grid,.form-grid-3,.row-details{grid-template-columns:1fr}.modal-body,.modal-body dd,.modal-body td,.modal-body th{overflow-wrap:anywhere}.toasts{left:12px;right:12px;bottom:12px}.toast{max-width:none}}@media (max-width: 420px){.modal-foot{flex-direction:column-reverse;align-items:stretch}.modal-foot .btn,.modal-foot button{width:100%}.modal-foot .row-details-actions{display:flex;flex-direction:column;gap:8px;width:100%}.modal-foot .row-details-actions>span,.modal-foot .decision{width:100%}.modal-foot .decision{display:flex;flex-wrap:wrap;gap:8px}.modal-foot .decision input{flex:1 1 100%}.modal-foot .decision button{flex:1 1 calc(50% - 4px)}}.modal-body .table-wrap{max-width:100%;overflow-x:auto}.ps-ids{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px 18px;margin:10px 0 16px}.ps-ids .kv{display:flex;gap:8px;align-items:baseline}.ps-ids dt{color:var(--muted);font-size:13px;min-width:92px}.ps-ids dd{margin:0;font-size:13.5px}.bday-banner{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:14px 18px;border-radius:var(--r-lg);background:linear-gradient(90deg,#fff6f6,#fff);border:1px solid #f6d7d7}.bday-cake{font-size:28px;line-height:1}.bday-today-tag{font-size:13px;font-weight:500;color:var(--signal);white-space:nowrap}.bday-today .list-row-title{font-weight:600}
