.shell{display:flex;min-height:100%}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--navy);color:var(--on-navy);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:22px 16px 18px;overflow:hidden}.sidebar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.06 0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E")}.sidebar>*{position:relative}.sidebar :focus-visible{outline-color:var(--brass-light)}.brand{display:flex;flex-direction:column;gap:2px;padding:4px 10px 22px}.brand .word{font-family:var(--font-display);font-weight:700;font-size:30px;line-height:1.1;color:var(--brass-light);letter-spacing:.02em}.brand .sub{font-size:12px;color:var(--on-navy-2)}.nav{display:flex;flex-direction:column;gap:2px}.nav .grp{font-size:11px;color:var(--on-navy-2);opacity:.75;padding:14px 12px 6px;font-weight:500}.nav a{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:var(--radius-sm);color:var(--on-navy-2);font-size:14px;font-weight:500;transition:color .15s ease,background-color .15s ease}.nav a svg{width:19px;height:19px;flex-shrink:0;opacity:.85}.nav a:hover{color:var(--on-navy);background:#ffffff0d}.nav a.on{color:#fff;background:#ffffff17;font-weight:700}.nav a.on svg{opacity:1;color:var(--brass-light)}.nav a .badge{margin-inline-start:auto;font-size:11.5px;font-weight:700;color:var(--navy-deep);background:var(--brass-light);min-width:20px;height:20px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;line-height:1}.side-user{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px 10px 0;border-top:1px solid rgba(255,255,255,.1)}.side-user .nm{font-size:13.5px;font-weight:600;color:#fff;line-height:1.3}.side-user .rl{font-size:12px;color:var(--on-navy-2)}.side-user .out{margin-inline-start:auto;color:var(--on-navy-2);width:34px;height:34px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease,background-color .15s ease}.side-user .out:hover{color:#fff;background:#ffffff14}.side-user .out svg{width:18px;height:18px}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:16px;border-bottom:1px solid var(--edge);background:var(--surface);position:sticky;top:0;z-index:20}.topbar .office{font-size:13.5px;color:var(--ink-2);font-weight:500}.topbar .tools{display:flex;align-items:center;gap:6px}.tool{width:38px;height:38px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;color:var(--ink-2);position:relative;transition:background-color .15s ease,color .15s ease}.tool:hover{background:var(--card-2);color:var(--ink)}.tool svg{width:20px;height:20px}.tool .count{position:absolute;top:5px;inset-inline-start:5px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--st-late);color:#fff;font-size:10.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}.theme-switch{display:inline-flex;border:1px solid var(--edge);border-radius:var(--radius-sm);overflow:hidden;height:34px}.theme-switch button{padding:0 11px;font-size:12.5px;font-weight:600;color:var(--ink-3);transition:color .15s ease,background-color .15s ease}.theme-switch button.on{color:var(--ink);background:var(--card)}.menu-btn,.backdrop{display:none}@media(max-width:980px){.sidebar{position:fixed;inset-inline-start:0;top:0;z-index:40;transform:translate(100%);transition:transform .22s ease}.sidebar.open{transform:translate(0)}.backdrop.show{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0c223973;z-index:35}.menu-btn{display:inline-flex}.topbar{padding:0 18px}.topbar .office{display:none}}.login{min-height:100%;display:grid;place-items:center;background:var(--navy);position:relative;overflow:hidden;padding:24px}.login .watermark{position:absolute;inset-inline-start:-.06em;bottom:-.32em;font-family:var(--font-display);font-weight:700;font-size:clamp(180px,34vw,440px);line-height:1;color:var(--brass-light);opacity:.08;letter-spacing:.04em;-webkit-user-select:none;user-select:none;pointer-events:none;white-space:nowrap}.login-card{position:relative;width:100%;max-width:400px;background:var(--card);color:var(--ink);border-radius:14px;padding:36px 34px 30px;border:1px solid rgba(255,255,255,.08)}:root[data-theme=dark] .login-card{background:var(--card)}.login-card .word{font-family:var(--font-display);font-weight:700;font-size:34px;color:var(--brass);line-height:1.1}.login-card h1{font-size:16px;font-weight:700;margin-top:4px}.login-card .sub{color:var(--ink-3);font-size:13px;margin-bottom:26px}.login-card form{display:flex;flex-direction:column;gap:14px}.login-card .btn{height:42px;justify-content:center;margin-top:6px}.login-card .foot{margin-top:22px;font-size:12px;color:var(--ink-3);line-height:1.8}.toasts{position:fixed;bottom:22px;left:50%;transform:translate(-50%);align-items:center;display:flex;flex-direction:column;gap:8px;z-index:100;pointer-events:none}.toast{background:var(--navy-deep);color:var(--on-navy);padding:10px 18px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:500;animation:toast-in .22s ease;border:1px solid rgba(255,255,255,.08)}.toast.err{background:#5a2a24}@keyframes toast-in{0%{transform:translateY(8px)}to{transform:translateY(0)}}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c223980;display:flex;align-items:center;justify-content:center;z-index:60;padding:20px}.modal{width:100%;background:var(--card);border-radius:14px;border:1px solid var(--edge);max-height:calc(100vh - 40px);display:flex;flex-direction:column}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px}.modal-head h2{font-size:16px;font-weight:700}.modal-body{padding:4px 20px 20px;overflow:auto}.modal-foot{display:flex;gap:10px;padding:14px 20px 18px;border-top:1px solid var(--edge)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--navy-soft);color:var(--on-navy);font-weight:700;flex-shrink:0;line-height:1}:root[data-theme=dark] .avatar{background:var(--card-2);color:var(--ink);border:1px solid var(--edge)}.ring .ring-track{stroke:var(--edge-strong)}.ring .ring-fill{transition:stroke-dashoffset .6s cubic-bezier(.2,.7,.2,1)}.ring.t-not .ring-fill{stroke:var(--st-not)}.ring.t-prog .ring-fill{stroke:var(--st-prog)}.ring.t-wait .ring-fill{stroke:var(--st-wait)}.ring.t-done .ring-fill{stroke:var(--st-done)}.ring.t-late .ring-fill{stroke:var(--st-late)}.ring.t-urgent .ring-fill{stroke:var(--st-urgent)}.status{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:13px;white-space:nowrap}.status.t-not{color:var(--st-not)}.status.t-prog{color:var(--st-prog)}.status.t-wait{color:var(--st-wait)}.status.t-done{color:var(--st-done)}.status.t-late{color:var(--st-late)}.status.t-urgent{color:var(--st-urgent)}.status-flag{display:inline-flex;align-items:center;height:18px;font-size:11px;font-weight:700;color:var(--st-urgent);border:1px solid currentColor;border-radius:4px;padding:0 5px 1px;line-height:1;vertical-align:middle}.meter{background:var(--edge);border-radius:99px;overflow:hidden;width:100%}.meter-fill{height:100%;border-radius:99px;transition:width .5s cubic-bezier(.2,.7,.2,1)}.meter.t-not .meter-fill{background:var(--st-not)}.meter.t-prog .meter-fill{background:var(--st-prog)}.meter.t-wait .meter-fill{background:var(--st-wait)}.meter.t-done .meter-fill{background:var(--st-done)}.meter.t-late .meter-fill{background:var(--st-late)}.meter.t-urgent .meter-fill{background:var(--st-urgent)}.stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:20px}@media(max-width:1180px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat{background:var(--card);border:1px solid var(--edge);border-radius:var(--radius);padding:14px 16px 12px;display:flex;flex-direction:column;gap:2px;transition:border-color .15s ease,background-color .15s ease}a.stat:hover{border-color:var(--edge-strong);background:var(--card-2)}.stat .lbl{font-size:12.5px;color:var(--ink-3);font-weight:500}.stat .val{font-family:var(--font-display);font-weight:600;font-size:30px;line-height:1.15;letter-spacing:.02em;color:var(--ink)}.stat.t-late .val{color:var(--st-late)}.stat.t-urgent .val{color:var(--st-urgent)}.stat.t-done .val{color:var(--st-done)}.stat.t-prog .val{color:var(--st-prog)}.stat.t-wait .val{color:var(--st-wait)}.weeks{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;align-items:end;height:120px;padding-top:6px}.week{display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}.week .bar{width:100%;max-width:44px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:6px 6px 3px 3px;overflow:hidden;background:var(--st-prog-bg);min-height:4px;transition:height .5s cubic-bezier(.2,.7,.2,1)}.week .bar .late{background:var(--st-late);width:100%}.week .bar .ok{background:var(--st-prog);width:100%}.week .n{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--ink);line-height:1}.week .d{font-size:11px;color:var(--ink-3);white-space:nowrap}.week.now .d{color:var(--brass);font-weight:700}.attention{display:flex;flex-direction:column}.attention a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 6px;border-bottom:1px solid var(--edge);border-radius:6px;transition:background-color .12s ease}.attention a:last-child{border-bottom:0}.attention a:hover{background:var(--card-2)}.attention .nm{font-weight:600;font-size:13.5px}.attention .who{font-size:12px;color:var(--ink-3)}.attention .due{font-size:12.5px;font-weight:600;white-space:nowrap}.due.late{color:var(--st-late)}.due.soon{color:var(--st-wait)}.due.ok{color:var(--ink-3);font-weight:500}.due.none{color:var(--ink-4);font-weight:500}.staff-load{display:flex;flex-direction:column;gap:12px}.staff-load .r{display:grid;grid-template-columns:30px 130px 1fr auto;gap:12px;align-items:center}.staff-load .nm{font-weight:600;font-size:13.5px}.staff-load .cnt{font-size:12.5px;color:var(--ink-3);white-space:nowrap}.staff-load .cnt b{color:var(--ink);font-weight:700}.staff-load .cnt .late{color:var(--st-late);font-weight:700}@media(max-width:640px){.staff-load .r{grid-template-columns:30px 1fr auto}.staff-load .r .meter{display:none}}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;align-items:center}.toolbar .search{position:relative;flex:1;min-width:220px}.toolbar .search svg{position:absolute;inset-inline-start:12px;top:50%;transform:translateY(-50%);width:17px;height:17px;color:var(--ink-4)}.toolbar .search .input{padding-inline-start:38px}.toolbar .select{width:auto;min-width:150px}.ledger{border:1px solid var(--edge);border-radius:var(--radius);background:var(--card);overflow:hidden}.ledger-head,.lrow{display:grid;grid-template-columns:26px minmax(0,2fr) minmax(0,1.2fr) 150px 140px 120px;gap:14px;align-items:center;padding:0 18px}.ledger-head{height:40px;font-size:12px;font-weight:600;color:var(--ink-3);background:var(--card-2);border-bottom:1px solid var(--edge)}.lrow{min-height:62px;padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--edge);transition:background-color .12s ease}.lrow:last-child{border-bottom:0}.lrow:hover{background:var(--card-2)}.lrow .nm{font-weight:700;font-size:14px;color:var(--ink)}.lrow .meta{font-size:12px;color:var(--ink-3);margin-top:1px}.lrow .who{display:flex;align-items:center;gap:8px;font-size:13px;min-width:0}.lrow .who span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lrow .pct{display:flex;align-items:center;gap:10px}.lrow .pct .n{font-family:var(--font-display);font-weight:600;font-size:15px;width:40px;text-align:left;letter-spacing:.02em}.lrow .pct .meter{flex:1}.lrow .tasks{font-size:12px;color:var(--ink-3);white-space:nowrap}@media(max-width:980px){.ledger-head{display:none}.lrow{grid-template-columns:26px minmax(0,1fr);row-gap:5px}.lrow>:first-child{grid-column:1;grid-row:1}.lrow>.grow{grid-column:2;grid-row:1}.lrow .who,.lrow .pct,.lrow .due-cell,.lrow>.status:not(:first-child){grid-column:2}}.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.back{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-3);margin-bottom:8px;transition:color .15s ease}.back:hover{color:var(--ink)}.back svg{width:16px;height:16px}.detail-head h1{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.25}.detail-head .meta{color:var(--ink-3);font-size:13px;margin-top:4px;display:flex;gap:14px;flex-wrap:wrap}.hero-progress{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center}.hero-progress .big{font-family:var(--font-display);font-weight:700;font-size:40px;line-height:1;letter-spacing:.02em}.hero-progress .big small{font-size:18px;font-weight:600;margin-inline-start:4px;color:var(--ink-3)}.hero-progress .caption{font-size:13px;color:var(--ink-3);margin-top:4px}.kv{display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}.kv .k{font-size:12px;color:var(--ink-3)}.kv .v{font-size:14px;font-weight:600;margin-top:1px}.kv .v.empty-v{color:var(--ink-4);font-weight:400}.kv .span-2{grid-column:span 2}.tasks-list{display:flex;flex-direction:column}.task{display:grid;grid-template-columns:22px 1fr auto;gap:12px;align-items:center;padding:9px 4px;border-bottom:1px solid var(--edge)}.task:last-child{border-bottom:0}.task .box{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--edge-strong);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.task .box svg{width:14px;height:14px;stroke-width:2.5}.task .box:hover{border-color:var(--st-done)}.task.done .box{background:var(--st-done);border-color:var(--st-done);color:#fff}.task .t{font-size:13.5px;font-weight:500}.task.done .t{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--ink-4);text-decoration-thickness:1px}.task .by{font-size:11.5px;color:var(--ink-3)}.task .rm{color:var(--ink-4);opacity:0;transition:opacity .15s ease,color .15s ease}.task:hover .rm{opacity:1}.task .rm:hover{color:var(--st-late)}.task-add{display:flex;gap:8px;margin-top:10px}.comments{display:flex;flex-direction:column;gap:14px}.comment{display:grid;grid-template-columns:30px 1fr;gap:10px}.comment .who{font-size:12.5px;font-weight:700}.comment .when{font-size:11.5px;color:var(--ink-3);margin-inline-start:8px;font-weight:400}.comment .txt{font-size:13.5px;margin-top:2px;white-space:pre-wrap;line-height:1.6}.comment-box{display:flex;gap:8px;margin-top:16px}.files{display:flex;flex-direction:column}.file{display:grid;grid-template-columns:20px 1fr auto;gap:10px;align-items:center;padding:9px 2px;border-bottom:1px solid var(--edge)}.file:last-child{border-bottom:0}.file svg{color:var(--ink-3);width:18px;height:18px}.file .fn{font-size:13.5px;font-weight:500}.file .fm{font-size:11.5px;color:var(--ink-3)}.file .acts{display:flex;gap:2px}.file .acts button,.file .acts a{color:var(--ink-3);width:30px;height:30px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,background-color .15s}.file .acts button:hover,.file .acts a:hover{color:var(--ink);background:var(--card-2)}.file .acts button.del:hover{color:var(--st-late)}.file .acts svg{width:16px;height:16px}.timeline{display:flex;flex-direction:column}.tl-item{display:grid;grid-template-columns:10px 1fr;gap:12px;padding:6px 0 12px;position:relative}.tl-item:before{content:"";position:absolute;inset-inline-start:4px;top:16px;bottom:-2px;width:2px;background:var(--edge);border-radius:2px}.tl-item:last-child:before{display:none}.tl-item .dot{width:10px;height:10px;border-radius:50%;background:var(--brass);margin-top:6px;position:relative}.tl-item .tx{font-size:13px;line-height:1.5}.tl-item .tx b{font-weight:700}.tl-item .tm{font-size:11.5px;color:var(--ink-3);margin-top:1px}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cal-head h2{font-family:var(--font-display);font-weight:600;font-size:22px}.cal-head .nav-btns{display:flex;gap:6px}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal .dow{text-align:center;font-size:12px;color:var(--ink-3);font-weight:600;padding:4px 0 8px}.cal .cell{min-height:92px;border:1px solid var(--edge);border-radius:8px;padding:6px 8px;background:var(--card);display:flex;flex-direction:column;gap:4px}.cal .cell.out{background:transparent;border-color:transparent}.cal .cell.out .dn{color:var(--ink-4)}.cal .cell .dn{font-family:var(--font-display);font-weight:600;font-size:13px;color:var(--ink-2)}.cal .cell.today{border-color:var(--brass)}.cal .cell.today .dn{color:var(--brass)}.cal .ev{display:block;font-size:11.5px;font-weight:600;padding:2px 6px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:filter .12s ease}.cal .ev:hover{filter:brightness(.92)}.cal .ev.t-late{color:var(--st-late);background:var(--st-late-bg)}.cal .ev.t-done{color:var(--st-done);background:var(--st-done-bg)}.cal .ev.t-urgent{color:var(--st-urgent);background:var(--st-urgent-bg)}.cal .ev.t-prog,.cal .ev.t-not,.cal .ev.t-wait{color:var(--st-prog);background:var(--st-prog-bg)}.cal .more{font-size:11px;color:var(--ink-3)}@media(max-width:760px){.cal .cell{min-height:60px;padding:4px}.cal .ev{font-size:10px;padding:1px 4px}}.rep-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:18px;border-bottom:1px solid var(--edge)}.rep-tabs button{padding:10px 14px;font-size:13.5px;font-weight:600;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.rep-tabs button:hover{color:var(--ink)}.rep-tabs button.on{color:var(--ink);border-bottom-color:var(--brass)}.alerts{display:flex;flex-direction:column}.alert{display:grid;grid-template-columns:8px 1fr auto;gap:14px;align-items:center;padding:12px 4px;border-bottom:1px solid var(--edge)}.alert:last-child{border-bottom:0}.alert .mark{width:8px;height:8px;border-radius:50%}.alert.overdue .mark{background:var(--st-late)}.alert.due_soon .mark{background:var(--st-wait)}.alert.assigned .mark{background:var(--st-prog)}.alert.urgent .mark{background:var(--st-urgent)}.alert.comment .mark{background:var(--ink-4)}.alert .ti{font-size:13.5px;font-weight:600}.alert.read .ti{font-weight:500;color:var(--ink-2)}.alert .bd{font-size:12.5px;color:var(--ink-3)}.alert .tm{font-size:12px;color:var(--ink-3);white-space:nowrap}.feed{display:flex;flex-direction:column}.feed .day{font-size:12px;font-weight:700;color:var(--ink-3);padding:18px 0 8px}.feed>div:first-child .day{padding-top:0}.feed-item{display:grid;grid-template-columns:30px 1fr auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--edge)}.feed-item:last-child{border-bottom:0}.feed-item .tx{font-size:13.5px}.feed-item .tx b{font-weight:700}.feed-item .tx a{color:var(--st-prog);font-weight:600}.feed-item .tx a:hover{text-decoration:underline}.feed-item .tm{font-size:12px;color:var(--ink-3);white-space:nowrap}.roles-grid{display:grid;grid-template-columns:260px 1fr;gap:18px;align-items:start}@media(max-width:900px){.roles-grid{grid-template-columns:1fr}}.role-list{display:flex;flex-direction:column;gap:4px}.role-list button{text-align:right;padding:10px 12px;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:1px;transition:background-color .15s ease}.role-list button:hover{background:var(--card-2)}.role-list button.on{background:var(--card-2);box-shadow:inset 0 0 0 1px var(--edge-strong)}.role-list .nm{font-weight:700;font-size:14px}.role-list .ds{font-size:12px;color:var(--ink-3)}.perm-group{margin-bottom:18px}.perm-group h3{font-size:13px;font-weight:700;color:var(--ink-2);margin-bottom:8px}.perm-group .items{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 18px}.staff-name{display:flex;align-items:center;gap:10px}.staff-name .nm{font-weight:700}.staff-name .em{font-size:12px;color:var(--ink-3)}.load-cell{display:flex;align-items:center;gap:8px;min-width:150px}.load-cell .n{font-size:12.5px;color:var(--ink-3);white-space:nowrap}.inactive{opacity:.55}.role-tag{font-size:12px;font-weight:600;color:var(--ink-2)}.task-editor{display:flex;flex-direction:column;gap:6px}.task-editor .r{display:flex;gap:8px;align-items:center}.task-editor .r .idx{font-family:var(--font-display);font-weight:600;width:22px;color:var(--ink-4);text-align:center}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7681' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") center/contain no-repeat}.impersonation,.sub-notice{padding:9px 32px;font-size:13px;font-weight:600;border-bottom:1px solid var(--edge)}.impersonation{background:var(--st-urgent-bg);color:var(--st-urgent)}.sub-notice{background:var(--st-wait-bg);color:var(--st-wait)}@media(max-width:980px){.impersonation,.sub-notice{padding:9px 18px}}.op .sidebar{background:#1c1a17}:root[data-theme=dark] .op .sidebar{background:#121110}.op .brand .word{color:var(--brass-light);font-size:24px;letter-spacing:.06em}.op .brand .sub{color:#a89f8c}.op-tag{display:inline-block;font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:4px;line-height:1.6;border:1px solid currentColor}.op-tag.ACTIVE,.op-tag.ANSWERED{color:var(--st-done)}.op-tag.TRIALING,.op-tag.OPEN,.op-tag.NEW{color:var(--st-prog)}.op-tag.EXPIRED,.op-tag.SUSPENDED,.op-tag.LOST{color:var(--st-late)}.op-tag.CANCELLED,.op-tag.CLOSED,.op-tag.NONE{color:var(--ink-3)}.op-tag.CONTACTED,.op-tag.QUALIFIED,.op-tag.HIGH{color:var(--st-wait)}.op-tag.CONVERTED{color:var(--st-done)}.thread{display:flex;flex-direction:column;gap:12px}.msg{max-width:78%;padding:10px 14px;border-radius:10px;background:var(--card-2);font-size:13.5px;line-height:1.6;white-space:pre-wrap}.msg.op{background:var(--navy);color:var(--on-navy);align-self:flex-end}.msg .who{font-size:11.5px;font-weight:700;opacity:.8;margin-bottom:2px}.msg .tm{font-size:11px;opacity:.65;margin-top:4px}@font-face{font-family:Vazirmatn;font-weight:300;font-display:swap;src:url(/fonts/vazirmatn-arabic-300.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Vazirmatn;font-weight:400;font-display:swap;src:url(/fonts/vazirmatn-arabic-400.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Vazirmatn;font-weight:500;font-display:swap;src:url(/fonts/vazirmatn-arabic-500.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Vazirmatn;font-weight:600;font-display:swap;src:url(/fonts/vazirmatn-arabic-600.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Vazirmatn;font-weight:700;font-display:swap;src:url(/fonts/vazirmatn-arabic-700.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Vazirmatn;font-weight:800;font-display:swap;src:url(/fonts/vazirmatn-arabic-800.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Vazirmatn;font-weight:300;font-display:swap;src:url(/fonts/vazirmatn-latin-300.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-weight:400;font-display:swap;src:url(/fonts/vazirmatn-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-weight:500;font-display:swap;src:url(/fonts/vazirmatn-latin-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-weight:600;font-display:swap;src:url(/fonts/vazirmatn-latin-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-weight:700;font-display:swap;src:url(/fonts/vazirmatn-latin-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-weight:800;font-display:swap;src:url(/fonts/vazirmatn-latin-800.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Reem Kufi;font-weight:400;font-display:swap;src:url(/fonts/reem-kufi-arabic-400.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Reem Kufi;font-weight:500;font-display:swap;src:url(/fonts/reem-kufi-arabic-500.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Reem Kufi;font-weight:600;font-display:swap;src:url(/fonts/reem-kufi-arabic-600.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Reem Kufi;font-weight:700;font-display:swap;src:url(/fonts/reem-kufi-arabic-700.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0898-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Reem Kufi;font-weight:400;font-display:swap;src:url(/fonts/reem-kufi-latin-400.woff2) format("woff2");unicode-range:U+0000-00FF}@font-face{font-family:Reem Kufi;font-weight:500;font-display:swap;src:url(/fonts/reem-kufi-latin-500.woff2) format("woff2");unicode-range:U+0000-00FF}@font-face{font-family:Reem Kufi;font-weight:600;font-display:swap;src:url(/fonts/reem-kufi-latin-600.woff2) format("woff2");unicode-range:U+0000-00FF}@font-face{font-family:Reem Kufi;font-weight:700;font-display:swap;src:url(/fonts/reem-kufi-latin-700.woff2) format("woff2");unicode-range:U+0000-00FF}:root{color-scheme:light;--font-ui: "Vazirmatn", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Reem Kufi", "Vazirmatn", system-ui, sans-serif;--navy: #12304f;--navy-deep: #0c2239;--navy-soft: #1b4064;--brass: #a8822f;--brass-light: #c9a85a;--surface: #e7e9e3;--surface-2: #dfe2db;--card: #f6f7f3;--card-2: #eef0ea;--edge: rgba(18, 48, 79, .1);--edge-strong: rgba(18, 48, 79, .22);--ink: #16212b;--ink-2: #3f4a55;--ink-3: #6b7681;--ink-4: #98a1aa;--on-navy: #f2efe6;--on-navy-2: #b7c3d0;--st-not: #7b8794;--st-prog: #3f6a92;--st-wait: #9a7a3a;--st-done: #4a7a5e;--st-late: #a64a3d;--st-urgent: #b06a3a;--st-not-bg: rgba(123, 135, 148, .14);--st-prog-bg: rgba(63, 106, 146, .14);--st-wait-bg: rgba(154, 122, 58, .16);--st-done-bg: rgba(74, 122, 94, .15);--st-late-bg: rgba(166, 74, 61, .14);--st-urgent-bg: rgba(176, 106, 58, .15);--focus: rgba(18, 48, 79, .28);--radius: 10px;--radius-sm: 7px;--sidebar-w: 248px;--topbar-h: 60px}:root[data-theme=dark]{color-scheme:dark;--navy: #0f2438;--navy-deep: #0a1a2a;--navy-soft: #183753;--brass: #c4a052;--brass-light: #d9bb70;--surface: #1b1c1a;--surface-2: #151614;--card: #242624;--card-2: #2c2f2c;--edge: rgba(255, 250, 235, .08);--edge-strong: rgba(255, 250, 235, .18);--ink: #ebe8df;--ink-2: #c2bfb5;--ink-3: #8f8c84;--ink-4: #66645e;--on-navy: #f2efe6;--on-navy-2: #a8b6c4;--st-not: #8d97a3;--st-prog: #6f9cc7;--st-wait: #c9a45a;--st-done: #7bb08f;--st-late: #d0766a;--st-urgent: #d08d5d;--st-not-bg: rgba(141, 151, 163, .16);--st-prog-bg: rgba(111, 156, 199, .16);--st-wait-bg: rgba(201, 164, 90, .16);--st-done-bg: rgba(123, 176, 143, .16);--st-late-bg: rgba(208, 118, 106, .16);--st-urgent-bg: rgba(208, 141, 93, .16);--focus: rgba(201, 168, 90, .35)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--navy: #0f2438;--navy-deep: #0a1a2a;--navy-soft: #183753;--brass: #c4a052;--brass-light: #d9bb70;--surface: #1b1c1a;--surface-2: #151614;--card: #242624;--card-2: #2c2f2c;--edge: rgba(255, 250, 235, .08);--edge-strong: rgba(255, 250, 235, .18);--ink: #ebe8df;--ink-2: #c2bfb5;--ink-3: #8f8c84;--ink-4: #66645e;--on-navy: #f2efe6;--on-navy-2: #a8b6c4;--st-not: #8d97a3;--st-prog: #6f9cc7;--st-wait: #c9a45a;--st-done: #7bb08f;--st-late: #d0766a;--st-urgent: #d08d5d;--st-not-bg: rgba(141, 151, 163, .16);--st-prog-bg: rgba(111, 156, 199, .16);--st-wait-bg: rgba(201, 164, 90, .16);--st-done-bg: rgba(123, 176, 143, .16);--st-late-bg: rgba(208, 118, 106, .16);--st-urgent-bg: rgba(208, 141, 93, .16);--focus: rgba(201, 168, 90, .35)}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-ui);font-size:14px;line-height:1.6;color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}input,select,textarea{font:inherit;color:inherit}img,svg{display:block;max-width:100%}::selection{background:#c9a85a59}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.display{font-family:var(--font-display);font-weight:600;letter-spacing:.01em}.num{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.muted{color:var(--ink-3)}.small{font-size:12.5px}.page{padding:28px 32px 56px;max-width:1400px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:26px;flex-wrap:wrap}.page-head h1{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.25;color:var(--ink)}.page-head .lead{color:var(--ink-3);margin-top:4px;font-size:13.5px}.page-head .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.panel{background:var(--card);border:1px solid var(--edge);border-radius:var(--radius);padding:20px 22px}.panel+.panel{margin-top:18px}.panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head h2{font-size:15px;font-weight:700;color:var(--ink)}.panel-head .hint{font-size:12.5px;color:var(--ink-3)}.grid-2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:start}@media(max-width:980px){.grid-2{grid-template-columns:1fr}.page{padding:20px 18px 48px}}@media(max-width:640px){.panel-head{flex-wrap:wrap}.panel-head h2{flex:1 0 auto}}.btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border-radius:var(--radius-sm);font-weight:600;font-size:13.5px;white-space:nowrap;transition:background-color .15s ease,color .15s ease,border-color .15s ease;border:1px solid transparent}.btn svg{width:17px;height:17px}.btn-primary{background:var(--navy);color:var(--on-navy)}.btn-primary:hover{background:var(--navy-soft)}:root[data-theme=dark] .btn-primary{background:var(--on-navy);color:var(--navy-deep)}:root[data-theme=dark] .btn-primary:hover{background:#fff}.btn:disabled{opacity:.55;cursor:default}.btn-quiet{background:var(--card-2);color:var(--ink);border-color:var(--edge)}.btn-quiet:hover{background:var(--surface-2);border-color:var(--edge-strong)}.btn-text{background:transparent;color:var(--ink-2);padding:0 10px}.btn-text:hover,.btn-text.on{color:var(--ink);background:var(--card-2)}.btn-danger{background:transparent;color:var(--st-late);border-color:var(--edge)}.btn-danger:hover{background:var(--st-late-bg);border-color:var(--st-late)}.btn-sm{height:32px;padding:0 12px;font-size:12.5px}.btn-sm svg{width:15px;height:15px}.btn-icon{width:36px;padding:0;justify-content:center}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12.5px;font-weight:600;color:var(--ink-2)}.field .help{font-size:12px;color:var(--ink-3)}.input,.select,.textarea{width:100%;height:40px;padding:0 12px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--edge-strong);color:var(--ink);transition:border-color .15s ease,box-shadow .15s ease}.textarea{height:auto;min-height:88px;padding:10px 12px;resize:vertical;line-height:1.55}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.input[dir=ltr],.textarea[dir=ltr]{text-align:left}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px var(--focus)}:root[data-theme=dark] .input:focus,:root[data-theme=dark] .select:focus,:root[data-theme=dark] .textarea:focus{border-color:var(--brass)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-inline-end:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7681' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 12px center}.input[type=date]{padding-inline-end:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .span-2{grid-column:span 2}@media(max-width:640px){.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:span 1}}.check{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2);cursor:pointer;-webkit-user-select:none;user-select:none}.check input{width:16px;height:16px;accent-color:var(--navy);margin:0}input[type=range]{accent-color:var(--navy)}:root[data-theme=dark] .check input,:root[data-theme=dark] input[type=range]{accent-color:var(--brass)}.table-wrap{overflow-x:auto;border:1px solid var(--edge);border-radius:var(--radius);background:var(--card)}table.table{width:100%;border-collapse:collapse}.table th{text-align:right;font-size:12px;font-weight:600;color:var(--ink-3);padding:12px 16px;border-bottom:1px solid var(--edge);white-space:nowrap;background:var(--card-2)}.table td{padding:13px 16px;border-bottom:1px solid var(--edge);vertical-align:middle;font-size:13.5px}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background-color .12s ease}.table tbody tr:hover{background:var(--card-2)}.table .r{text-align:left}.empty{padding:54px 20px;text-align:center;color:var(--ink-3);background:var(--card);border:1px dashed var(--edge-strong);border-radius:var(--radius)}.empty h3{color:var(--ink);font-size:15px;font-weight:700;margin-bottom:4px}.empty p{max-width:380px;margin:0 auto 14px;font-size:13.5px}.sep{height:1px;background:var(--edge);margin:16px 0;border-radius:1px}.stack{display:flex;flex-direction:column;gap:10px}.row{display:flex;align-items:center;gap:10px}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skeleton{border-radius:6px;background:linear-gradient(90deg,var(--card-2) 25%,var(--surface-2) 45%,var(--card-2) 65%);background-size:300% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.error-box{background:var(--st-late-bg);color:var(--st-late);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px;font-weight:500}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
