:root{--ink:#16211e;--muted:#6d7773;--line:#e3e9e6;--paper:#fff;--wash:#f4f7f5;--green:#123a31;--mint:#dcece5;--amber:#b56c20;--red:#bd423c;--blue:#356a8d;--shadow:0 18px 50px rgba(18,58,49,.10)}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--wash);color:var(--ink);font-family:'DM Sans',sans-serif}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:28px 22px;background:var(--green);color:white;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;margin-bottom:40px}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f0b44d;color:var(--green);font:800 21px Manrope}.brand strong{display:block;font:800 19px Manrope;letter-spacing:.12em}.brand small{display:block;color:#b6ccc5;font-size:11px;margin-top:1px}.nav{display:grid;gap:7px}.nav-item{border:0;background:transparent;color:#c8d8d3;padding:12px;border-radius:10px;text-align:left;font:500 14px 'DM Sans';cursor:pointer;display:grid;grid-template-columns:23px 1fr auto;align-items:center}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.1);color:white}.nav-item b{font-size:11px;background:rgba(255,255,255,.12);border-radius:10px;padding:2px 7px}.sidebar-card{margin-top:auto;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px}.sidebar-card .shield{color:#f0b44d;margin-bottom:8px}.sidebar-card strong{font-size:13px}.sidebar-card p{font-size:11px;line-height:1.55;color:#b6ccc5;margin:6px 0 0}.sidebar-actions{display:flex;gap:14px;margin-top:18px}.text-button{padding:0;border:0;background:none;color:#b6ccc5;font:500 11px 'DM Sans';text-decoration:underline;cursor:pointer}.topbar{height:86px;background:white;border-bottom:1px solid var(--line);padding:0 44px;display:flex;align-items:center;justify-content:space-between}.greeting small{color:var(--muted);font-size:12px}.greeting h1{font:700 22px Manrope;margin:2px 0}.top-actions{display:flex;gap:12px}.search{height:42px;width:245px;border:1px solid var(--line);background:var(--wash);border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 12px}.search input{width:100%;border:0;outline:0;background:transparent;font:14px 'DM Sans'}.primary-button,.outline-button,.danger-button{height:42px;padding:0 17px;border-radius:10px;font:600 13px 'DM Sans';cursor:pointer}.primary-button{background:var(--green);border:1px solid var(--green);color:white}.primary-button:hover{background:#1d5044}.outline-button{background:white;border:1px solid var(--line);color:var(--ink)}.danger-button{background:#fff3f2;border:1px solid #f0c4c1;color:var(--red)}.content{padding:40px 44px;max-width:1440px;margin:auto}.hero-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.eyebrow{margin:0 0 7px;color:#648078;font-size:10px;font-weight:700;letter-spacing:.15em}.hero-row h2,.modal h2{font:700 28px Manrope;margin:0}.muted{color:var(--muted);font-size:14px;margin:6px 0 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;gap:14px;align-items:center}.stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;font-weight:700}.stat-icon.green{background:#e4f2eb;color:#33745e}.stat-icon.amber{background:#fff0da;color:var(--amber)}.stat-icon.red{background:#fde8e7;color:var(--red)}.stat-icon.blue{background:#e8f1f7;color:var(--blue)}.stat-card p{font-size:12px;color:var(--muted);margin:0}.stat-card strong{display:block;font:700 24px Manrope;margin:2px 0}.stat-card small{font-size:10px;color:#83908b}.task-panel{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 4px 18px rgba(25,47,40,.03)}.panel-head{padding:20px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h3{font:700 18px Manrope;margin:0}.panel-head p{color:var(--muted);font-size:12px;margin:3px 0 0}.panel-tools{display:flex;gap:8px}.panel-tools select{height:36px;border:1px solid var(--line);background:white;border-radius:9px;padding:0 30px 0 10px;color:var(--ink)}.task-item{display:grid;grid-template-columns:32px minmax(200px,1fr) 150px 125px 92px 34px;gap:12px;align-items:center;padding:17px 22px;border-bottom:1px solid #edf0ef}.task-item:last-child{border-bottom:0}.task-item:hover{background:#fbfcfb}.check{width:20px;height:20px;border:1.5px solid #bdc8c4;border-radius:6px;background:white;cursor:pointer;color:white}.check.done{background:var(--green);border-color:var(--green)}.task-main strong{font-size:14px}.task-main p{font-size:11px;color:var(--muted);margin:4px 0 0}.done-row .task-main strong{text-decoration:line-through;color:#8b9591}.tag,.priority{width:max-content;font-size:10px;font-weight:600;border-radius:12px;padding:5px 9px}.tag{background:#edf3f0;color:#48635b}.priority.high{background:#fde8e7;color:var(--red)}.priority.medium{background:#fff1dc;color:var(--amber)}.priority.low{background:#e8f1f7;color:var(--blue)}.due{font-size:11px;color:var(--muted)}.due.overdue{color:var(--red);font-weight:600}.edit-btn{border:0;background:transparent;color:#78847f;cursor:pointer;font-size:18px}.empty-state{text-align:center;padding:64px 20px}.empty-state>div{width:52px;height:52px;margin:auto;display:grid;place-items:center;background:var(--mint);color:var(--green);border-radius:50%}.empty-state h3{margin:14px 0 4px}.empty-state p{color:var(--muted);font-size:13px}.empty-state button{margin-top:10px}footer{text-align:center;color:#86908d;font-size:11px;padding:26px}.modal-backdrop{position:fixed;inset:0;background:rgba(8,23,19,.62);display:grid;place-items:center;padding:20px;z-index:20}.modal-backdrop[hidden]{display:none}.modal{width:min(650px,100%);max-height:94vh;overflow:auto;background:white;border-radius:18px;box-shadow:var(--shadow);padding:26px}.modal-head{display:flex;align-items:start;justify-content:space-between;margin-bottom:22px}.modal h2{font-size:23px}.icon-button{border:0;background:#eff3f1;width:36px;height:36px;border-radius:9px;cursor:pointer;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:7px;margin-bottom:16px}.field span{font-size:12px;font-weight:600}.field input,.field select,.field textarea{width:100%;border:1px solid #dce3e0;border-radius:9px;padding:11px 12px;background:white;font:14px 'DM Sans';color:var(--ink);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#70988d;box-shadow:0 0 0 3px #e8f1ed}.field textarea{resize:vertical}.form-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;margin-top:8px}.toast{position:fixed;right:24px;bottom:24px;background:var(--ink);color:white;padding:12px 18px;border-radius:9px;font-size:13px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:none}.mobile-only{display:none}@media(max-width:1000px){.stats-grid{grid-template-columns:1fr 1fr}.task-item{grid-template-columns:32px 1fr 120px 90px 34px}.task-item .tag{display:none}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:30;width:250px;transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.topbar{height:auto;min-height:82px;padding:16px 18px;gap:10px}.mobile-only{display:block}.greeting{margin-right:auto}.greeting small{display:none}.greeting h1{font-size:17px}.search{display:none}.content{padding:26px 16px}.hero-row{align-items:start}.hero-row h2{font-size:23px}.hero-row .outline-button{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:14px;gap:9px}.stat-icon{width:34px;height:34px}.stat-card strong{font-size:19px}.panel-head{align-items:start;gap:12px}.panel-tools{display:grid}.panel-tools select{max-width:145px}.task-item{grid-template-columns:28px 1fr 75px 28px;padding:15px 14px;gap:8px}.task-item .priority{display:none}.due{text-align:right}.form-grid{grid-template-columns:1fr}.modal{padding:20px}.form-actions{grid-template-columns:auto 1fr auto}.form-actions .danger-button{grid-row:2}.form-actions span{display:none}footer{padding-bottom:90px}}@media(max-width:420px){.stats-grid{grid-template-columns:1fr}.stat-card:nth-child(4){display:none}.top-actions .primary-button{font-size:0;width:42px;padding:0}.top-actions .primary-button span{font-size:19px}}

.auth-screen{min-height:100vh;display:grid;grid-template-columns:minmax(420px,560px) 1fr;background:white}.auth-panel{padding:55px 12%;display:flex;flex-direction:column;justify-content:center}.auth-brand{color:var(--green);position:absolute;top:38px;margin:0}.auth-brand small{color:#648078}.auth-panel h1{font:800 34px Manrope;margin:0 0 4px}.auth-panel form{margin-top:28px}.wide{width:100%}.form-error{min-height:18px;color:var(--red);font-size:12px}.field small{font-size:10px;color:var(--muted)}.auth-art{background:linear-gradient(145deg,#123a31,#1d5c4e);display:grid;place-items:center;color:white;padding:10%}.auth-art>div{max-width:520px}.auth-art span{color:#f0b44d;font-size:30px}.auth-art h2{font:800 48px/1.1 Manrope;margin:18px 0}.auth-art p{color:#c7d9d4;max-width:410px;line-height:1.7}.user-button{height:42px;border:1px solid var(--line);background:white;border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 11px;cursor:pointer;color:var(--ink)}.user-button span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--mint);color:var(--green);font-weight:700}.user-button b{font:600 12px 'DM Sans'}.team-modal{width:min(780px,100%)}.staff-form{display:grid;grid-template-columns:1fr 1.2fr 1.5fr auto;gap:10px;align-items:end;background:var(--wash);padding:16px;border-radius:12px}.staff-form .field{margin:0}.team-help{font-size:11px;color:var(--muted)}.staff-list{border-top:1px solid var(--line);margin-top:16px}.staff-row{display:grid;grid-template-columns:1fr 1fr 80px auto;gap:12px;align-items:center;padding:13px 4px;border-bottom:1px solid var(--line);font-size:12px}.staff-row strong{font-size:13px}.status-dot{color:#3d7b66}.status-dot.off{color:#9da7a3}.mini-button{border:1px solid var(--line);background:white;border-radius:7px;padding:6px 9px;font:600 10px 'DM Sans';cursor:pointer}
@media(max-width:760px){.auth-screen{grid-template-columns:1fr}.auth-panel{padding:100px 28px 45px}.auth-art{display:none}.user-button b{display:none}.staff-form{grid-template-columns:1fr}.staff-row{grid-template-columns:1fr auto}.staff-row span:nth-child(2),.staff-row span:nth-child(3){display:none}}
.auth-switch{text-align:center;color:var(--muted);font-size:12px;margin-top:18px}.auth-switch button{border:0;background:none;color:var(--green);font:700 12px 'DM Sans';text-decoration:underline;cursor:pointer}.register-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.success-message{color:#34745e;font-size:12px;line-height:1.5}.subscriptions-modal{width:min(900px,100%)}.subscription-summary{display:flex;gap:10px;margin-bottom:15px}.summary-pill{background:var(--wash);border-radius:20px;padding:7px 12px;font-size:11px}.subscription-card{border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:10px;display:grid;grid-template-columns:1fr auto;gap:14px}.subscription-card h4{margin:0 0 5px;font:700 14px Manrope}.subscription-card p{margin:3px 0;color:var(--muted);font-size:11px}.subscription-actions{display:flex;gap:7px;align-items:center}.status-badge{display:inline-block;border-radius:12px;padding:4px 8px;font-size:10px;font-weight:700}.status-badge.pending{background:#fff1dc;color:var(--amber)}.status-badge.approved{background:#e4f2eb;color:#33745e}.status-badge.rejected{background:#fde8e7;color:var(--red)}.approve-button,.reject-button{border:0;border-radius:7px;padding:7px 10px;font:600 11px 'DM Sans';cursor:pointer}.approve-button{background:var(--green);color:white}.reject-button{background:#fff0ef;color:var(--red)}@media(max-width:760px){.register-grid{grid-template-columns:1fr}.subscription-card{grid-template-columns:1fr}.subscription-actions{flex-wrap:wrap}}
.auth-link{color:var(--green);font-weight:700;text-decoration:underline}.registration-panel{padding-top:105px;padding-bottom:40px}.registration-panel form{margin-top:22px}
.captcha-field{background:#f4f7f5;border-radius:10px;padding:12px;margin-top:4px}.captcha-field input{background:white}.verification-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#edf4f1,#fff)}.verification-card{width:min(520px,100%);background:white;border:1px solid var(--line);border-radius:18px;padding:42px;box-shadow:var(--shadow);text-align:center}.verification-card .brand-mark{margin:0 auto 22px}.verification-card h1{font:800 30px Manrope;margin:10px 0}.verification-card p{color:var(--muted);line-height:1.6}.verification-link{display:inline-flex;align-items:center;text-decoration:none;margin-top:12px}
.sidebar-actions{flex-wrap:wrap}.knowledge-modal{width:min(980px,100%);height:min(720px,90vh);display:flex;flex-direction:column}.modal-head-actions{display:flex;gap:9px}.modal-subtitle{font-size:11px;color:var(--muted);margin:4px 0 0}.knowledge-layout{display:grid;grid-template-columns:270px 1fr;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:0;flex:1}.knowledge-layout>aside{background:var(--wash);border-right:1px solid var(--line);padding:14px;overflow:auto}.knowledge-search{width:100%;border:1px solid var(--line);background:white;border-radius:8px;padding:10px;font:12px 'DM Sans';margin-bottom:12px}.knowledge-list{display:grid;gap:6px}.knowledge-item{border:0;background:transparent;border-radius:8px;padding:10px;text-align:left;cursor:pointer}.knowledge-item:hover,.knowledge-item.active{background:white;box-shadow:0 2px 8px rgba(0,0,0,.05)}.knowledge-item span{display:block;color:#9a6521;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.knowledge-item strong{display:block;font-size:12px;margin-top:4px}.knowledge-none{font-size:11px;color:var(--muted);text-align:center}.knowledge-viewer{padding:28px;overflow:auto;background:white}.knowledge-viewer h2{font:700 25px Manrope;margin:15px 0 4px}.article-meta{display:flex;align-items:center;justify-content:space-between}.article-byline{font-size:10px;color:var(--muted);margin:0 0 24px}.article-content{font-size:14px;line-height:1.75;color:#38423f}.knowledge-viewer .empty-state{padding-top:100px}@media(max-width:760px){.knowledge-modal{height:94vh}.knowledge-layout{grid-template-columns:1fr;grid-template-rows:210px 1fr}.knowledge-layout>aside{border-right:0;border-bottom:1px solid var(--line)}.knowledge-viewer{padding:20px}.modal-head-actions .outline-button{font-size:0;width:42px}.modal-head-actions .outline-button::after{content:'＋';font-size:18px}}

/* RAEST red and gold brand theme */
:root{--green:#a91f2b;--mint:#fff1d2;--amber:#c88714;--red:#a91f2b;--blue:#8b4d3d;--shadow:0 18px 50px rgba(120,22,31,.12)}.sidebar{background:linear-gradient(180deg,#8f1722,#b3262d)}.brand-logo{display:block;width:158px;height:auto;object-fit:contain}.auth-brand{width:max-content}.sidebar-brand{background:#fff;border-radius:12px;padding:8px 12px;width:100%;justify-content:center}.sidebar-brand .brand-logo{width:155px}.auth-art{background:linear-gradient(145deg,#8f1722,#b3262d)}.auth-art span,.sidebar-card .shield{color:#f4b942}.primary-button{background:#a91f2b;border-color:#a91f2b}.primary-button:hover{background:#8f1722}.nav-item:hover,.nav-item.active{background:rgba(244,185,66,.17)}.stat-icon.green{background:#fff1d2;color:#a91f2b}.stat-icon.blue{background:#f8e4df;color:#8b4d3d}.tag{background:#fff5df;color:#7a4b13}.check.done{background:#a91f2b;border-color:#a91f2b}.user-button span{background:#fff1d2;color:#a91f2b}.auth-link{color:#a91f2b}.captcha-field{background:#fff8e8}.verification-page{background:linear-gradient(145deg,#fff5df,#fff)}.verification-logo{display:block;width:190px;height:auto;margin:0 auto 24px}.approve-button{background:#a91f2b}

.sidebar-new-task{width:100%;height:44px;margin:-20px 0 22px;border:1px solid #f4c45c;border-radius:10px;background:#f4b942;color:#68131b;font:800 13px 'DM Sans';cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 6px 18px rgba(58,4,10,.18)}.sidebar-new-task:hover{background:#ffd063}.sidebar-new-task span{font-size:18px;line-height:1}.activity-panel{margin-top:24px;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 4px 18px rgba(25,47,40,.03)}.activity-list{max-height:380px;overflow:auto}.activity-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 22px;border-bottom:1px solid #edf0ef}.activity-row:last-child{border-bottom:0}.activity-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff1d2;color:#a91f2b;font-weight:800}.activity-row strong{display:block;font-size:13px}.activity-row p{margin:4px 0 0;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-row time{color:#8c9692;font-size:10px;white-space:nowrap}.empty-state.compact{padding:38px 20px}.empty-state.compact h3{margin-top:0}@media(max-width:760px){.activity-row{grid-template-columns:34px minmax(0,1fr);padding:14px}.activity-row time{grid-column:2}.activity-panel .panel-head .outline-button{height:36px;padding:0 12px}}
.dashboard-summary{padding:18px 22px 8px;margin:0}.dashboard-subscriptions{padding:10px 22px 22px}.dashboard-subscriptions .subscription-card:last-child{margin-bottom:0}@media(max-width:760px){#superAdminOverview .panel-head{display:grid}#superAdminOverview .panel-head button{margin-top:10px}.dashboard-subscriptions{padding:10px 14px 16px}}
.client-picker{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:7px}.client-picker .mini-button{height:42px;padding:0 11px;color:#a91f2b;background:#fff8e8;border-color:#edcf91}.client-modal{width:min(760px,100%)}.client-modal .full{grid-column:1/-1}@media(max-width:760px){.client-modal .full{grid-column:auto}.client-picker{grid-template-columns:minmax(0,1fr)}}
.high-reminder-modal{width:min(540px,100%);text-align:center;border-top:6px solid #a91f2b}.urgent-mark{width:56px;height:56px;margin:0 auto 13px;border-radius:50%;display:grid;place-items:center;background:#fde8e7;color:#a91f2b;font:800 28px Manrope}.high-reminder-list{margin:22px 0;display:grid;gap:9px;text-align:left}.high-reminder-row{padding:13px 15px;border:1px solid #f0c4c1;border-radius:10px;background:#fff7f6}.high-reminder-row strong{display:block;font-size:13px}.high-reminder-row span{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.remember-option{display:flex;align-items:center;gap:8px;margin:-2px 0 16px;color:var(--muted);font-size:12px;cursor:pointer}.remember-option input{width:16px;height:16px;accent-color:#a91f2b}.remember-option span{line-height:1.3}

.activity-panel{margin-top:0}.activity-panel .activity-list{max-height:none}
.stat-card[data-stat-view]{cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s}.stat-card[data-stat-view]:hover,.stat-card[data-stat-view]:focus-visible{transform:translateY(-2px);box-shadow:0 8px 22px rgba(25,47,40,.09);border-color:#e3c27a;outline:none}
.app-shell>main{min-width:0}.stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.stat-icon{flex:none}.stat-icon.purple{background:#f3e5ec;color:#9b2c5a}@media(max-width:1300px){.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1000px){.stats-grid{grid-template-columns:1fr 1fr}.stats-grid .stat-card:last-child{grid-column:1/-1}}@media(max-width:420px){.stats-grid{grid-template-columns:1fr}}
.topbar{gap:16px}.top-actions{min-width:0}.top-actions .search{flex:0 1 245px;min-width:120px}
.top-actions .primary-button,.user-button b{white-space:nowrap}.greeting h1{white-space:nowrap}@media(max-width:1100px){.user-button b{display:none}}
.password-row{display:flex;gap:6px}.password-row input{flex:1;min-width:0;font-family:Consolas,Menlo,monospace}.password-row .mini-button{flex:none}.staff-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}#resetBackdrop{z-index:30}.reset-modal{max-width:460px}.reset-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}#resetWho{margin:0 0 14px;font-size:13px}
.task-item[data-open]{cursor:pointer}.completed-on{color:#2f7a5a;font-weight:600}
.task-status{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--wash);border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:6px;font-size:13px;font-weight:600}.task-status.is-done{background:#ecf6f0;border-color:#bfe0cd;color:#2f7a5a}.task-status .outline-button{height:36px}
.recent-done{margin-top:24px}
.code-input{font-family:Consolas,Menlo,monospace!important;font-size:24px!important;letter-spacing:6px;text-align:center}.test-code{background:#fff8e8;border:1px dashed #e0b85a;border-radius:8px;padding:8px 10px;font-size:12px;color:#7a5410;margin:4px 0 0}.text-link{background:none;border:0;padding:0;color:#a91f2b;font:inherit;font-weight:700;cursor:pointer;text-decoration:underline}
.team-workload{margin-top:24px}.workload-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;padding:18px 22px}.workload-card{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:6px;min-width:0}.workload-card header{display:flex;gap:10px;align-items:center;margin-bottom:4px}.workload-card header strong{display:block;font-size:14px}.workload-card header small{color:var(--muted);font-size:11px}.workload-card .overdue{color:var(--red)}.workload-avatar{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:#fff1d2;color:#a91f2b;font-weight:800}.workload-task{display:flex;flex-direction:column;gap:3px;text-align:left;border:0;border-top:1px solid #edf0ef;background:none;padding:8px 2px;cursor:pointer;font:inherit;color:inherit;min-width:0}.workload-task:hover{background:#fbfcfb}.workload-title{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workload-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.workload-meta .priority{font-size:10px}.workload-empty{margin:4px 0 0;font-size:12px;color:var(--muted)}.workload-more{font-size:12px;text-align:left;margin-top:2px}@media(max-width:760px){.workload-grid{padding:14px}}
/* ===== 2026-10 redesign: navy + gold "Work & Assignment Overview" ===== */
:root{--ink:#141b2d;--muted:#667085;--line:#e2e7ef;--wash:#eef1f6;--green:#1d2846;--mint:#eef2fb;--red:#d23c43;--amber:#b7791f;--blue:#2f62c4;--gold:#e8b54a;--navy:#141c31;--shadow:0 18px 50px rgba(20,28,49,.12)}
body{background:var(--wash)}
.primary-button:hover{background:#2a375c}
.eyebrow{color:#7b8499}
.app-shell{grid-template-columns:260px minmax(0,1fr)}
.sidebar{background:var(--navy);padding:26px 18px}
.sidebar-brand{background:rgba(255,255,255,.96);border-radius:12px;margin-bottom:26px}
.sidebar-new-task{background:var(--gold)!important;color:#1b1406!important;border:0!important;border-radius:12px!important;font-weight:700!important;box-shadow:0 6px 18px rgba(232,181,74,.25)}
.sidebar-new-task:hover{background:#f0c25f!important}
.nav{gap:4px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}
.nav-item{color:#c3cbdc;padding:12px 12px 12px 14px;border-radius:11px;border-left:3px solid transparent}
.nav-item:hover{background:rgba(255,255,255,.06);color:#fff}
.nav-item.active{background:rgba(255,255,255,.09);color:#fff;border-left-color:var(--gold)}
.nav-item b{background:rgba(255,255,255,.14);color:#dfe5f1;min-width:22px;text-align:center;border-radius:11px;padding:3px 7px}
.nav-item #allCount,.nav-item #overdueCount{background:#e5484d;color:#fff}
.nav-item #todayCount{background:#e39b2d;color:#fff}
.nav-item b:empty,.nav-item b.zero{opacity:.55}
.sidebar-card{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}
.sidebar-card .shield{color:var(--gold)}
.sidebar-card p,.text-button{color:#a9b3c8}
/* top bar */
.topbar{height:78px;padding:0 36px;gap:18px;background:var(--wash);border-bottom:0}
.top-search{flex:0 1 460px;height:46px;background:#fff;border:1px solid var(--line);border-radius:12px}
.top-search input{font-size:14px}
.top-actions{align-items:center;gap:12px}
.bell-button{position:relative;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:12px;display:grid;place-items:center;cursor:pointer;color:#475069}
.bell-button svg,.month-chip svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bell-button i{position:absolute;top:9px;right:10px;width:8px;height:8px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 2px #fff}
.month-chip{height:44px;display:flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 4px 0 12px;color:#475069}
.month-chip select{border:0;background:transparent;font:600 13px 'DM Sans';color:var(--ink);height:40px;cursor:pointer;outline:0;max-width:130px}
.user-button{height:44px;border-radius:12px;padding:0 12px 0 6px;gap:8px}
.user-button span{width:32px;height:32px;background:#1d2846;color:#fff}
.user-button em{font-style:normal;color:#7b8499;font-size:11px}
/* hero */
.content{padding:8px 36px 40px;max-width:1560px}
.hero-row{margin-bottom:22px;align-items:center}
.hero-row h2{font:800 30px Manrope;letter-spacing:-.01em}
.hero-row .muted{margin:6px 0 0}
/* overview cards */
.overview-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:22px}
.overview-cards .stat-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 16px 16px;gap:12px;align-items:flex-start;min-height:118px;box-shadow:0 2px 10px rgba(20,28,49,.04)}
.overview-cards .stat-card.active{outline:2px solid currentColor;outline-offset:-2px}
.overview-cards .stat-icon{width:46px;height:46px;border-radius:13px;flex:none;display:grid;place-items:center}
.overview-cards .stat-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.overview-cards .stat-icon b{font:800 22px Manrope}
.stat-body{min-width:0;flex:1}
.stat-body p{margin:0;font-size:13px;font-weight:600;color:#3c4458}
.stat-body strong{display:block;font:800 30px Manrope;line-height:1.15;margin:4px 0 2px;color:var(--ink)}
.stat-body small{display:block;font-size:11px;color:#6b7387;line-height:1.35}
.card-dot{position:absolute;top:12px;right:12px;width:8px;height:8px;border-radius:50%}
.rate-bar{display:block;height:5px;border-radius:5px;background:#e6ebf2;margin:6px 0 6px;overflow:hidden}
.rate-bar span{display:block;height:100%;width:0;background:#22a06b;border-radius:5px;transition:width .4s}
.spark{position:absolute;right:14px;bottom:14px;width:64px;height:22px}
.spark svg{width:100%;height:100%;overflow:visible}
.spark polyline{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tone-green{color:#22a06b}.tone-green .stat-icon{background:#dcf5e8;color:#22a06b}.tone-green .card-dot{background:#e5484d}
.overview-cards .tone-amber{background:#fff6e6;border-color:#f6dfb3;color:#d68a1c}.tone-amber .stat-icon{background:#ffe7bf;color:#d68a1c}.tone-amber .card-dot{background:#f0a535}
.overview-cards .tone-red{background:#fdeeee;border-color:#f3b4b4;color:#d63b43}.tone-red .stat-icon{background:#fcd6d6;color:#d63b43}.tone-red .card-dot{background:#e5484d}
.overview-cards .tone-blue{background:#ebf2fe;border-color:#c9daf8;color:#2f6fe0}.tone-blue .stat-icon{background:#d5e4fc;color:#2f6fe0}.tone-blue .card-dot{background:#2f6fe0}
.overview-cards .tone-purple{background:#f4edfd;border-color:#ddcbf6;color:#8b4fd6}.tone-purple .stat-icon{background:#e7d9fa;color:#8b4fd6}.tone-purple .card-dot{background:#8b4fd6}
.overview-cards .stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,28,49,.08)}
/* assignments panel */
.assignments-panel{border-radius:18px}
.assignments-panel .panel-head{border-bottom:0;padding:22px 24px 10px;flex-wrap:wrap;gap:12px}
.assignments-panel .panel-head h3{font:800 21px Manrope}
.assignments-panel .panel-tools{flex-wrap:wrap;align-items:center;justify-content:flex-end}
.table-search{height:38px;width:190px;border-radius:10px;background:#fff}
.chip{height:38px;padding:0 14px;border-radius:10px;font:600 13px 'DM Sans';cursor:pointer;border:1px solid transparent}
.chip-high{background:#fde6e6;color:#c2273a;border-color:#f6c4c4}
.chip-medium{background:#fff1d9;color:#a86500;border-color:#f3d9a6}
.chip.active{box-shadow:inset 0 0 0 2px currentColor}
.chip.active::before{content:'✓ '}
.tabs{display:flex;gap:4px;padding:0 20px;border-bottom:1px solid var(--line);overflow-x:auto}
.tabs button{border:0;background:none;padding:12px 12px 11px;font:600 14px 'DM Sans';color:#4b5468;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;border-radius:8px 8px 0 0}
.tabs button:hover{color:var(--ink);background:#f6f8fb}
.tabs button.active{color:var(--ink);border-bottom-color:#1d2846;background:#f1f4f9}
.filter-note{padding:10px 24px;font-size:12px;color:#4b5468;background:#f8fafc;border-bottom:1px solid var(--line)}
.bulk-bar{display:flex;align-items:center;gap:10px;padding:10px 24px;background:#eef3ff;border-bottom:1px solid #d6e2fb;font-size:13px;flex-wrap:wrap}
.bulk-bar select{height:36px;border:1px solid var(--line);border-radius:9px;padding:0 8px;background:#fff}
.bulk-bar .outline-button{height:36px}
.table-head,.task-row{display:grid;grid-template-columns:34px minmax(200px,2.2fr) minmax(70px,.7fr) minmax(130px,1.2fr) minmax(130px,1.2fr) 86px 150px 34px;gap:12px;align-items:center;padding:0 24px}
.table-head{background:#f6f8fb;border-bottom:1px solid var(--line);height:44px;font-size:13px;font-weight:700;color:#3c4458}
.table-head[hidden]{display:none}
.task-row{min-height:76px;border-bottom:1px solid #edf0f5;cursor:pointer}
.task-row:hover{background:#fafbfd}
.task-row:last-child{border-bottom:0}
.task-row.done-row .task-main strong{color:#7b8499}
.cell-check input,.table-head input{width:18px;height:18px;accent-color:#1d2846;cursor:pointer}
.task-row .task-main{min-width:0}
.task-row .task-main strong{display:block;font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.task-row .task-main p{margin:3px 0 0;font-size:12.5px;color:#4b5468;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.task-row .tag{display:inline-block;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:700;background:#eef0f4;color:#4b5468;white-space:nowrap}
.tag-gst{background:#efe6fd!important;color:#6d3fc8!important}.tag-income-tax{background:#dcf5f2!important;color:#13827a!important}.tag-tds{background:#e1edfd!important;color:#2a62b8!important}.tag-audit{background:#ffecd9!important;color:#b45309!important}.tag-roc-mca{background:#e3f6e8!important;color:#1f7a3f!important}.tag-payroll{background:#fde4f1!important;color:#b0306e!important}
.assignee{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.assignee small{font-weight:500;color:#7b8499}
.avatar{width:32px;height:32px;flex:none;border-radius:50%;display:grid;place-items:center;background:#e4e9f3;color:#1d2846;font:700 12px 'DM Sans';font-style:normal}
.unassigned-pill{display:inline-flex;align-items:center;gap:4px;border:1px solid #c9cfdb;border-radius:9px;padding:5px 10px;font-size:12.5px;color:#4b5468;white-space:nowrap}
.cell-due .due{font-size:13.5px;font-weight:600;color:#3c4458;white-space:nowrap}
.cell-due .due.overdue{color:#d23c43}
.cell-due .due.today{color:#b7791f}
.cell-due .due.done{color:#2f7a5a;font-weight:600;white-space:normal;font-size:12px}
.task-row .priority{display:inline-block;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:700}
.priority.high{background:#fde4e4;color:#c2273a}.priority.medium{background:#fff0d6;color:#a86500}.priority.low{background:#e1edfd;color:#2f6db5}
.status-select,.status-pill{height:32px;border-radius:999px;border:0;padding:0 26px 0 12px;font:700 12px 'DM Sans';cursor:pointer;max-width:100%;appearance:none;-webkit-appearance:none;background-repeat:no-repeat;background-position:right 10px center;background-size:9px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23555' stroke-width='1.6'/%3E%3C/svg%3E")}
.status-pill{display:inline-flex;align-items:center;padding:0 12px;cursor:default;background-image:none}
.st-not_started{background-color:#eceef2;color:#4b5468}.st-in_progress{background-color:#e1ecfd;color:#2457b3}.st-awaiting_docs{background-color:#e7e9ee;color:#374151}.st-in_review{background-color:#fff1d6;color:#9a6a00}.st-done{background:#dcf5e8;color:#1f7a50}
.task-row .edit-btn{font-size:20px;color:#4b5468;letter-spacing:1px}
.assignments-panel .empty-state{padding:44px 20px}
.team-workload,.recent-done{border-radius:18px}
.recent-done .task-row{grid-template-columns:0 minmax(200px,2.2fr) minmax(70px,.7fr) minmax(130px,1.2fr) minmax(130px,1.2fr) 86px 150px 34px}
@media(max-width:1350px){.overview-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.table-head,.task-row{grid-template-columns:30px minmax(180px,2fr) minmax(110px,1.1fr) minmax(120px,1.1fr) 140px 30px}.cell-tag,.cell-prio,.table-head span:nth-child(3),.table-head span:nth-child(6){display:none}.recent-done .task-row{grid-template-columns:0 minmax(180px,2fr) minmax(110px,1.1fr) minmax(120px,1.1fr) 140px 30px}}
@media(max-width:1000px){.overview-cards{grid-template-columns:1fr 1fr}.overview-cards .stat-card:last-child{grid-column:auto}.app-shell{grid-template-columns:1fr}.topbar{padding:14px 18px}.top-search{flex:1 1 auto}.content{padding:8px 18px 32px}.month-chip{display:none}}
@media(max-width:760px){
.overview-cards{grid-template-columns:1fr 1fr;gap:10px}.overview-cards .stat-card{min-height:0;padding:14px 12px}.overview-cards .stat-icon{width:38px;height:38px}.stat-body strong{font-size:24px}.spark{display:none}.overview-cards .stat-card:last-child{grid-column:1/-1}
.overview-cards .stat-card:nth-child(4){display:flex}
.top-search{display:flex!important;height:42px}.topbar{flex-wrap:wrap}.top-search{order:3;flex-basis:100%}
.assignments-panel .panel-head{padding:18px 14px 8px}.assignments-panel .panel-tools{justify-content:flex-start}.table-search{width:100%}.tabs{padding:0 8px}
.table-head{display:none!important}
.task-row,.recent-done .task-row{grid-template-columns:26px minmax(0,1fr) auto;grid-template-areas:"chk main edit" "chk meta meta" "chk status status";gap:6px 10px;padding:14px;align-items:start}
.cell-check{grid-area:chk;padding-top:2px}.task-row .task-main{grid-area:main}.task-row .edit-btn{grid-area:edit}
.cell-tag,.cell-prio{display:none}
.cell-assignee{grid-area:meta;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cell-due{grid-area:status;justify-self:start}
.cell-status{grid-area:status;justify-self:end}
.bulk-bar{padding:10px 14px}
}
.overview-cards .stat-card:has(.spark) .stat-body small{padding-right:66px;white-space:nowrap}.overview-cards .stat-card:has(.spark) .stat-body{padding-bottom:2px}
@media(max-width:760px){.overview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-cards .stat-card:has(.spark) .stat-body small{padding-right:0;white-space:normal}.overview-cards .stat-card{gap:10px}}
@media(max-width:760px){.assignments-panel .panel-tools{display:flex;flex-wrap:wrap;gap:8px;width:100%}.assignments-panel .panel-tools .table-search{flex:1 1 100%}.assignments-panel .panel-tools .chip{flex:1 1 40%}.assignments-panel .panel-tools select{max-width:none;flex:1 1 40%;min-width:0}}
@media(max-width:760px){.topbar{height:auto;min-height:0;padding:12px 16px}.assignments-panel .table-search{display:flex!important}
.task-row,.recent-done .task-row{grid-template-areas:"chk main edit" "chk meta meta" "chk due status"}.cell-due{grid-area:due;align-self:center}.cell-status{grid-area:status}.cell-due .due.done{font-size:11.5px}}
.team-workload{margin:0 0 22px}
.sidebar-new-client{margin-top:10px;width:100%;height:42px;border:1px solid rgba(232,181,74,.55);background:transparent;color:#f3d38a;border-radius:12px;font:600 14px 'DM Sans';cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.sidebar-new-client:hover{background:rgba(232,181,74,.12);color:#fff}
.sidebar-new-client[hidden]{display:none}
.status-field>span{display:block;font-size:12px;font-weight:700;color:#3c4458;margin-bottom:7px}
.status-picker{display:flex;flex-wrap:wrap;gap:8px}
.status-picker button{height:38px;padding:0 14px;border-radius:999px;border:1.5px solid transparent;font:700 13px 'DM Sans';cursor:pointer;opacity:.75;transition:opacity .15s,box-shadow .15s}
.status-picker button:hover{opacity:1}
.status-picker button.active{opacity:1;border-color:currentColor;box-shadow:0 0 0 3px rgba(29,40,70,.08)}
.status-picker button.active::before{content:'● ';font-size:10px}
.status-picker button:disabled{cursor:wait}
.pick-not_started{background:#eceef2;color:#4b5468}.pick-in_progress{background:#e1ecfd;color:#2457b3}.pick-awaiting_docs{background:#e7e9ee;color:#374151}.pick-in_review{background:#fff1d6;color:#9a6a00}.pick-done{background:#dcf5e8;color:#1f7a50}
.status-field small{display:block;margin-top:7px;font-size:11.5px;color:#6b7387}
/* colourful team workload */
.workload-card{border-width:1px;border-top-width:4px;background:var(--wl-bg);border-color:var(--wl-line);border-top-color:var(--wl-main)}
.workload-card .workload-avatar{background:var(--wl-main);color:#fff;font-size:13px}
.wl-tone-0{--wl-main:#2f6fe0;--wl-bg:#f3f7ff;--wl-line:#d6e3fb}
.wl-tone-1{--wl-main:#8b4fd6;--wl-bg:#f8f3ff;--wl-line:#e6d8f8}
.wl-tone-2{--wl-main:#d68a1c;--wl-bg:#fffaf0;--wl-line:#f6e2bb}
.wl-tone-3{--wl-main:#22a06b;--wl-bg:#f2fbf6;--wl-line:#cdeedc}
.wl-tone-4{--wl-main:#0e9aa7;--wl-bg:#f0fbfc;--wl-line:#c8eef1}
.wl-tone-5{--wl-main:#d6407a;--wl-bg:#fff4f8;--wl-line:#f6d3e1}
.wl-counts{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}
.wl-chip{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}
.wl-open{background:#fff;color:var(--wl-main);border:1px solid var(--wl-line)}
.wl-overdue{background:#fde4e4;color:#c2273a}
.wl-week{background:#fff0d6;color:#a86500}
.workload-task{background:#fff;border:1px solid var(--wl-line)!important;border-left:4px solid #c9cfdb!important;border-radius:10px;padding:8px 10px;margin-top:6px}
.workload-task:hover{background:#fff;box-shadow:0 4px 12px rgba(20,28,49,.08)}
.workload-task.prio-high{border-left-color:#e5484d!important}
.workload-task.prio-medium{border-left-color:#f0a535!important}
.workload-task.prio-low{border-left-color:#2f6fe0!important}
.wl-pills{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.wl-status{font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px}
.workload-meta .priority{padding:3px 8px;border-radius:999px;font-weight:700}
#deleteBackdrop{z-index:30}#deleteReason{width:100%}
.activity-row p{white-space:normal;overflow:visible}.activity-mark.is-delete{background:#fde4e4;color:#c2273a}
.activity-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.deleted-toggle{color:#c2273a;border-color:#f3c4c4;background:#fff5f5}
.deleted-toggle.active{background:#c2273a;color:#fff;border-color:#c2273a}
.overview-cards{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.overview-cards .tone-rose{background:#fdeef4;border-color:#f5c6d8;color:#d6407a}.tone-rose .stat-icon{background:#fbd7e5;color:#d6407a}.tone-rose .card-dot{background:#d6407a}
.overview-cards .tone-orange{background:#fff1e6;border-color:#f8d2b0;color:#e0701a}.tone-orange .stat-icon{background:#ffdcc0;color:#e0701a}.tone-orange .card-dot{background:#e0701a}
@media(max-width:1600px){.overview-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.overview-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-cards .stat-card:last-child{grid-column:1/-1}}
@media(min-width:1201px){.overview-cards{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.overview-cards .stat-card{padding:14px 12px 12px;gap:9px;flex-direction:column;min-height:132px}.overview-cards .stat-icon{width:36px;height:36px;border-radius:10px}.overview-cards .stat-icon svg{width:18px;height:18px}.stat-body strong{font-size:26px}.stat-body p{font-size:12px}.spark{width:52px;height:20px;right:10px;bottom:12px}.overview-cards .stat-card:has(.spark) .stat-body small{padding-right:54px}}
@media(min-width:1001px) and (max-width:1200px){.overview-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sidebar-new-client.btn-client{background:#1fa99b;border-color:#1fa99b;color:#fff;box-shadow:0 6px 16px rgba(31,169,155,.25)}
.sidebar-new-client.btn-client:hover{background:#26bcad;color:#fff}
.sidebar-new-client.btn-staff{background:#7b61e8;border-color:#7b61e8;color:#fff;box-shadow:0 6px 16px rgba(123,97,232,.25)}
.sidebar-new-client.btn-staff:hover{background:#8c76f0;color:#fff}
.activity-list{max-height:none}
.activity-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 22px;border-top:1px solid var(--line);background:#f8fafc;font-size:13px;color:#4b5468;flex-wrap:wrap}
.activity-pager .outline-button{height:36px}
.activity-pager .outline-button:disabled{opacity:.45;cursor:default}
/* ===== 2026-10 dark login (as per design image) ===== */
.auth-screen{background:radial-gradient(900px 600px at 15% 10%,#16213d 0%,transparent 60%),radial-gradient(800px 700px at 85% 90%,#2a2036 0%,transparent 55%),#0b1222;color:#e8ecf5;grid-template-columns:minmax(440px,46%) 1fr;gap:0}
.auth-panel{padding:48px 5% 48px 6%;justify-content:center;position:relative}
.auth-card{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09);border-radius:24px;padding:72px 44px 36px;box-shadow:0 30px 80px rgba(0,0,0,.35);max-width:560px;width:100%}
.auth-card .auth-brand{position:absolute;top:-34px;left:40px;background:none;padding:0;width:auto}
.auth-card .auth-brand .brand-logo{width:200px;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}
.auth-screen .eyebrow{color:#9fb0d6;letter-spacing:.18em}
.auth-panel h1{color:#fff;font:800 40px Manrope;letter-spacing:-.01em}
.auth-screen .muted{color:#aeb8cf}
.auth-screen .field span{color:#e8ecf5;font-weight:600;font-size:14px}
.auth-screen .field input,.auth-screen .field select,.auth-screen .field textarea{background:#1a2442;border:1px solid #2e3a5e;color:#fff;height:52px;border-radius:12px;font-size:15px}
.auth-screen .field textarea{height:auto}
.auth-screen .field input::placeholder,.auth-screen .field textarea::placeholder{color:#7f8aa6}
.auth-screen .field input:focus,.auth-screen .field select:focus,.auth-screen .field textarea:focus{border-color:#e8b54a;box-shadow:0 0 0 3px rgba(232,181,74,.18)}
.auth-screen .remember-option{color:#e8ecf5}
.auth-screen .remember-option input{accent-color:#e8b54a;width:18px;height:18px}
.auth-screen .primary-button{background:#e8b54a;border-color:#e8b54a;color:#1b1406;height:56px;border-radius:12px;font:800 18px Manrope;box-shadow:0 10px 26px rgba(232,181,74,.25)}
.auth-screen .primary-button:hover{background:#f0c25f}
.auth-screen .auth-switch{color:#aeb8cf;font-size:14px}
.auth-screen .auth-link,.auth-screen .auth-switch a{color:#ef5a5a}
.auth-screen .text-link{color:#ef7b7b}
.auth-screen .form-error{color:#ff8a8a}
.auth-screen .test-code{background:rgba(232,181,74,.12);border-color:rgba(232,181,74,.5);color:#f3d38a}
.auth-screen .code-input{background:#1a2442!important}
.auth-art{background:linear-gradient(160deg,#121b33 0%,#0f1830 60%,#151a33 100%);border-radius:28px;margin:16px 16px 16px 0;padding:6% 5%;position:relative;overflow:hidden;display:flex;align-items:center}
.auth-art::before{content:'';position:absolute;width:700px;height:700px;right:-260px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(84,104,170,.25),transparent 65%)}
.auth-art::after{content:'';position:absolute;width:560px;height:360px;left:12%;bottom:-120px;background:radial-gradient(ellipse,rgba(232,181,74,.22),transparent 65%);filter:blur(10px)}
.auth-art-inner{position:relative;z-index:1;max-width:820px}
.auth-art h2{font:800 clamp(40px,4.6vw,72px)/1.06 Manrope;color:#fff;margin:0 0 22px;letter-spacing:-.02em}
.auth-art p{color:#cfd6e6;font-size:clamp(16px,1.5vw,21px);line-height:1.55;max-width:600px;margin:0 0 40px}
.auth-preview{display:grid;grid-template-columns:150px 1fr;background:#0f1628;border:1px solid rgba(255,255,255,.08);border-radius:18px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.5),0 0 80px rgba(232,181,74,.12);max-width:640px;pointer-events:none;user-select:none}
.pv-side{background:#131b30;padding:12px 10px;display:flex;flex-direction:column;gap:6px}
.pv-logo{background:#fff;border-radius:9px;padding:6px 8px}.pv-logo img{width:100%;display:block}
.pv-new{background:#e8b54a;color:#1b1406;border-radius:8px;text-align:center;font:700 10px 'DM Sans';padding:6px}
.pv-nav{display:flex;justify-content:space-between;align-items:center;color:#b9c2d6;font-size:10px;padding:6px 8px;border-radius:7px}
.pv-nav.active{background:rgba(255,255,255,.08);color:#fff;border-left:2px solid #e8b54a}
.pv-nav i{font-style:normal;font-size:8px;background:rgba(255,255,255,.14);border-radius:8px;padding:1px 5px}.pv-nav i.r{background:#e5484d;color:#fff}.pv-nav i.y{background:#e39b2d;color:#fff}
.pv-main{padding:12px 14px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pv-top{display:flex;gap:6px;align-items:center}.pv-search{flex:1;background:#1a2442;border:1px solid #2e3a5e;border-radius:7px;color:#8792ad;font-size:9px;padding:6px 8px}.pv-bell,.pv-user{background:#1a2442;border:1px solid #2e3a5e;border-radius:7px;font-size:9px;color:#dfe5f1;padding:5px 7px}
.pv-main>small{color:#8792ad;font-size:8px;margin-top:4px}
.pv-title{color:#fff;font:800 15px Manrope}
.pv-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px}
.pv-card{border-radius:10px;padding:9px;display:flex;flex-direction:column;gap:2px;font-size:9px}
.pv-card em{font-style:normal;width:20px;height:20px;border-radius:6px;display:grid;place-items:center;font-weight:800}
.pv-card b{font:800 18px Manrope}
.pv-card small{font-size:8px;opacity:.75}
.pv-card.dark{background:#1a2442;border:1px solid #2e3a5e;color:#fff}.pv-card.dark em{background:#1f4d3b;color:#3ddc97}.pv-card .bar{display:block;height:3px;border-radius:3px;background:linear-gradient(90deg,#22a06b 86%,#2e3a5e 86%)}
.pv-card.amber{background:#fff6e6;color:#5a3d06}.pv-card.amber em{background:#ffe7bf;color:#d68a1c}
.pv-card.red{background:#fdeeee;color:#5e1a1d}.pv-card.red em{background:#fcd6d6;color:#d63b43}
.pv-glance{margin-top:6px;background:#1a2442;border:1px solid #2e3a5e;border-radius:10px;color:#fff;font:800 11px Manrope;padding:10px}
@media(max-width:1100px){.auth-preview{display:none}}
@media(max-width:760px){.auth-screen{grid-template-columns:1fr}.auth-panel{padding:70px 16px 32px}.auth-card{padding:64px 22px 28px}.auth-card .auth-brand{left:22px;top:-30px}.auth-card .auth-brand .brand-logo{width:170px}.auth-panel h1{font-size:32px}.auth-art{display:none}}
.auth-art .auth-preview span{font-size:inherit;color:inherit}
.auth-art .auth-preview .pv-search{font-size:9px;color:#8792ad}.auth-art .auth-preview .pv-card span{font-size:9px;font-weight:600}
.auth-screen{grid-template-columns:minmax(420px,40%) 1fr}
.auth-art h2{font-size:clamp(38px,3.9vw,64px)}
.auth-art h2{font-size:clamp(34px,3.3vw,60px)}
/* ===== 2026-10 dark dashboard (as per design image) ===== */
.app-shell{--d-bg:#0d1424;--d-panel:#151d33;--d-panel2:#1a2442;--d-line:#26314f;--d-text:#eef2fa;--d-muted:#9aa5bf;background:var(--d-bg);color:var(--d-text)}
.app-shell main{background:var(--d-bg)}
.app-shell .sidebar{background:#111a2e;border-right:1px solid var(--d-line)}
.app-shell .topbar{background:var(--d-bg)}
.app-shell .top-search,.app-shell .table-search{background:var(--d-panel2);border-color:var(--d-line)}
.app-shell .search input{color:var(--d-text)}.app-shell .search input::placeholder{color:#7f8aa6}.app-shell .search span{color:#7f8aa6}
.app-shell .bell-button,.app-shell .month-chip,.app-shell .user-button{background:var(--d-panel2);border-color:var(--d-line);color:#c8d0e2}
.app-shell .month-chip select{color:var(--d-text)}.app-shell .month-chip select option{color:#141b2d}
.app-shell .bell-button i{box-shadow:0 0 0 2px var(--d-panel2)}
.app-shell .user-button span{background:#e8b54a;color:#1b1406}.app-shell .user-button b{color:var(--d-text)}
.app-shell .hero-row h2{color:#fff}.app-shell .muted{color:var(--d-muted)}.app-shell .eyebrow{color:#9fb0d6}
.app-shell .hero-row .outline-button{background:var(--d-panel2);border-color:var(--d-line);color:var(--d-text)}
.app-shell .overview-cards .tone-green{background:var(--d-panel);border-color:var(--d-line)}
.app-shell .overview-cards .tone-green .stat-body p,.app-shell .overview-cards .tone-green .stat-body strong{color:#fff}
.app-shell .overview-cards .tone-green .stat-body small{color:var(--d-muted)}
.app-shell .overview-cards .tone-green .stat-icon{background:#1f4d3b;color:#3ddc97}
.app-shell .rate-bar{background:#26314f}
.app-shell .task-panel,.app-shell .activity-panel{background:var(--d-panel);border-color:var(--d-line);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.app-shell .panel-head{border-color:var(--d-line)}
.app-shell .panel-head h3{color:#fff}.app-shell .panel-head p{color:var(--d-muted)}
.app-shell .panel-tools select,.app-shell .bulk-bar select{background:var(--d-panel2);border-color:var(--d-line);color:var(--d-text)}
.app-shell .panel-tools select option{color:#141b2d}
.app-shell .tabs{border-color:var(--d-line)}
.app-shell .tabs button{color:#aeb8cf}.app-shell .tabs button:hover{background:var(--d-panel2);color:#fff}
.app-shell .tabs button.active{background:var(--d-panel2);color:#fff;border-bottom-color:#e8b54a}
.app-shell .table-head{background:#111a2e;border-color:var(--d-line);color:#c8d0e2}
.app-shell .task-row{border-color:var(--d-line)}.app-shell .task-row:hover{background:#1a2442}
.app-shell .task-row .task-main strong{color:#fff}.app-shell .task-row .task-main p{color:var(--d-muted)}
.app-shell .task-row.done-row .task-main strong{color:#8792ad}
.app-shell .assignee{color:var(--d-text)}.app-shell .assignee small{color:var(--d-muted)}
.app-shell .avatar{background:#26314f;color:#fff}
.app-shell .unassigned-pill{border-color:#3a4669;color:#c8d0e2}
.app-shell .cell-due .due{color:#c8d0e2}.app-shell .cell-due .due.overdue{color:#ff7a7a}.app-shell .cell-due .due.today{color:#f3c96a}.app-shell .cell-due .due.done{color:#3ddc97}
.app-shell .task-row .edit-btn{color:#aeb8cf}
.app-shell .cell-check input,.app-shell .table-head input{accent-color:#e8b54a}
.app-shell .filter-note{background:#111a2e;border-color:var(--d-line);color:#c8d0e2}
.app-shell .bulk-bar{background:#1d2a4d;border-color:#2f3f6b;color:#fff}
.app-shell .bulk-bar .outline-button{background:var(--d-panel2);border-color:var(--d-line);color:#fff}
.app-shell .text-link{color:#f3c96a}
.app-shell .empty-state h3{color:#fff}.app-shell .empty-state p{color:var(--d-muted)}.app-shell .empty-state>div{background:#1f4d3b;color:#3ddc97}
.app-shell .activity-row{border-color:var(--d-line)}.app-shell .activity-row strong{color:#fff}.app-shell .activity-row p{color:var(--d-muted)}.app-shell .activity-row time{color:#7f8aa6}
.app-shell .activity-mark{background:#2a2a1e;color:#f3c96a}.app-shell .activity-mark.is-delete{background:#3a1d24;color:#ff7a7a}
.app-shell .activity-pager{background:#111a2e;border-color:var(--d-line);color:#c8d0e2}
.app-shell .activity-panel .outline-button{background:var(--d-panel2);border-color:var(--d-line);color:var(--d-text)}
.app-shell .activity-panel .deleted-toggle{background:#3a1d24;border-color:#6b2b36;color:#ff9a9a}.app-shell .activity-panel .deleted-toggle.active{background:#c2273a;color:#fff;border-color:#c2273a}
.app-shell .workload-empty{color:#6b7387}
.app-shell footer{color:#7f8aa6;background:var(--d-bg)}
.app-shell .sidebar-brand{background:#fff}
.app-shell .subscription-summary,.app-shell .dashboard-summary{color:var(--d-text)}
.app-shell .workload-card{color:#141b2d}
.app-shell .workload-card header strong,.app-shell .workload-title{color:#141b2d}
.app-shell .workload-meta{color:#5b6478}
.app-shell .workload-card .workload-empty{color:#5b6478}
.app-shell .overview-cards .stat-card:not(.tone-green) .stat-body p{color:#3c4458}
.app-shell .overview-cards .stat-card:not(.tone-green) .stat-body strong{color:#141b2d}
@media(max-width:760px){.auth-screen{grid-template-columns:minmax(0,1fr)}.auth-card{max-width:none}}
.auth-screen .captcha-field{background:rgba(232,181,74,.1);border:1px solid rgba(232,181,74,.35)}.auth-screen .captcha-field span,.auth-screen .captcha-field b{color:#f3d38a}.auth-screen .captcha-field input{background:#1a2442}.auth-screen .success-message{color:#3ddc97}
.auth-card .auth-brand .brand-logo{filter:drop-shadow(0 0 1px rgba(255,255,255,.55)) drop-shadow(0 0 10px rgba(255,255,255,.18)) drop-shadow(0 6px 18px rgba(0,0,0,.45)) brightness(1.12)}
.sidebar-import{margin-top:10px;width:100%;height:38px;border:1px dashed rgba(31,169,155,.7);background:transparent;color:#7fe0d4;border-radius:12px;font:600 13px 'DM Sans';cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.sidebar-import:hover{background:rgba(31,169,155,.12);color:#fff}.sidebar-import[hidden]{display:none}
#importBackdrop{z-index:30}.import-modal{max-width:760px}
.import-steps{margin:0 0 14px;padding-left:20px;display:grid;gap:12px;font-size:13.5px;color:#3c4458;line-height:1.5}
.import-steps .outline-button{display:inline-flex;align-items:center;height:34px;margin-left:6px;vertical-align:middle}
.import-file{display:inline-flex;align-items:center;margin-left:6px;vertical-align:middle;position:relative;border:1px dashed #b9c2d6;border-radius:9px;padding:6px 12px;cursor:pointer;background:#f6f8fb;font-weight:600;max-width:100%}
.import-file input{position:absolute;inset:0;opacity:0;cursor:pointer}
.import-preview{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#f8fafc;font-size:13px;margin-bottom:8px}
.import-preview p{margin:0 0 8px}.import-cols{color:#5b6478;font-size:12px}.import-warn{color:#b45309}.import-done{color:#1f7a50;font-size:14px}.import-more{color:#6b7387;font-size:12px;margin-top:6px!important}
.import-table{overflow:auto;max-height:280px;border:1px solid var(--line);border-radius:9px;background:#fff}
.import-table table{border-collapse:collapse;width:100%;font-size:12px}.import-table th,.import-table td{padding:6px 8px;border-bottom:1px solid #edf0f5;text-align:left;white-space:nowrap}.import-table th{background:#f1f4f9;position:sticky;top:0}
.import-bad td{color:#c2273a;background:#fff5f5}
.primary-button:disabled,.danger-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
#taskTitle.locked{background:#f1f4f9;color:#4b5468;cursor:not-allowed}.lock-note{display:none;font-weight:600;color:#7b8499;margin-left:6px;font-size:11px}#taskTitle.locked~*{}.field:has(#taskTitle.locked) .lock-note{display:inline}
.gst-field{grid-column:1/-1;display:grid;gap:10px}
.gst-check{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:600}
.gst-check input{width:18px;height:18px;accent-color:#e8b54a}
.gst-input{display:grid;gap:6px}.gst-input[hidden]{display:none}
.gst-input input{text-transform:uppercase;letter-spacing:.06em}
.auth-screen .gst-check span{color:#e8ecf5}
.auth-screen .gst-check input{height:18px;width:18px;padding:0;flex:none;box-shadow:none}
/* invoices */
#practiceBackdrop,#invoiceBackdrop{z-index:30}
.invoice-modal{width:min(860px,100%)}
.invoice-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:#eef7f2;border:1px solid #bfe0cd;border-radius:10px;padding:10px 12px;margin-top:6px;font-size:13px;color:#1f5a3f}
.invoice-bar .primary-button,.invoice-bar .outline-button{height:36px;display:inline-flex;align-items:center;text-decoration:none}
.inv-items{margin:6px 0 10px;border:1px solid var(--line);border-radius:12px;padding:10px;background:#f8fafc}
.inv-items-head,.inv-item{display:grid;grid-template-columns:minmax(0,1fr) 90px 150px 34px;gap:8px;align-items:center}
.inv-items-head{font-size:11px;font-weight:700;color:#5b6478;padding:0 2px 6px}
.inv-item{margin-bottom:8px}.inv-item input{height:40px;border:1px solid #dce3e0;border-radius:9px;padding:0 10px;font:14px 'DM Sans';background:#fff;min-width:0}
.inv-item .inv-amt{text-align:right}.inv-item .icon-button{width:34px;height:34px}
.inv-totals{margin-left:auto;max-width:340px;font-size:13px}.inv-totals div{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid #edf0f5}.inv-totals .grand{font-size:16px;font-weight:800;border-bottom:0;border-top:2px solid #1d2846;margin-top:4px;padding-top:7px}.inv-totals p{margin:6px 0 0;font-size:12px}
.invoice-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:6px 24px 14px}
.invoice-summary div{background:var(--d-panel2,#f6f8fb);border:1px solid var(--d-line,#e2e7ef);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.invoice-summary span{font-size:12px;color:var(--d-muted,#667085)}.invoice-summary b{font:800 20px Manrope;color:var(--d-text,#141b2d)}.invoice-summary small{color:var(--d-muted,#667085);font-size:11px}.invoice-summary .warn b{color:#f3c96a}
.inv-table{border-top:1px solid var(--d-line,#e2e7ef)}
.inv-row{display:grid;grid-template-columns:150px minmax(140px,1.2fr) minmax(120px,1fr) 110px 130px 120px 100px minmax(250px,auto);gap:10px;align-items:center;padding:12px 24px;border-bottom:1px solid var(--d-line,#edf0f5);font-size:13px;color:var(--d-text,#141b2d)}
.inv-row small{display:block;color:var(--d-muted,#667085);font-size:11px}.inv-row .r{text-align:right}
.inv-head{background:#111a2e;font-weight:700;color:#c8d0e2;font-size:12px}
.inv-row.cancelled{opacity:.55}.inv-row.cancelled b{text-decoration:line-through}
.inv-status{font-style:normal;font-weight:700;font-size:12px;padding:4px 10px;border-radius:999px}.s-paid{background:#dcf5e8;color:#1f7a50}.s-unpaid{background:#fff0d6;color:#a86500}.s-cancelled{background:#eceef2;color:#4b5468}
.inv-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.inv-actions .mini-button{text-decoration:none;color:#141b2d;display:inline-flex;align-items:center}.mini-button.danger{color:#c2273a;border-color:#f3c4c4}
.invoices-panel .activity-tools .primary-button{height:42px}
@media(max-width:1350px){.inv-row{grid-template-columns:140px minmax(0,1fr) 120px 100px minmax(0,auto)}.inv-row>span:nth-child(3),.inv-row>span:nth-child(4),.inv-row>span:nth-child(5){display:none}}
@media(max-width:760px){.invoice-summary{grid-template-columns:1fr;padding:6px 14px 12px}.inv-head{display:none}.inv-row{grid-template-columns:1fr auto;padding:12px 14px}.inv-row>span:nth-child(2){grid-column:1}.inv-row>span:nth-child(6){grid-column:2;grid-row:1}.inv-row>span:nth-child(7){grid-column:2;grid-row:2;justify-self:end}.inv-actions{grid-column:1/-1;justify-content:flex-start}.inv-items-head{display:none}.inv-item{grid-template-columns:1fr 110px 34px}.inv-item .inv-desc{grid-column:1/-1}.inv-item .inv-sac{display:none}}
@media(min-width:761px){.inv-row{grid-template-columns:130px minmax(120px,1.3fr) minmax(100px,1fr) 105px 115px 115px 95px}.inv-row .inv-actions{grid-column:1/-1;justify-content:flex-end;margin-top:-4px}.inv-head>span:last-child{display:none}}
@media(min-width:761px) and (max-width:1350px){.inv-row{grid-template-columns:130px minmax(0,1fr) 115px 95px}}
.app-shell .invoices-panel .outline-button{background:var(--d-panel2);border-color:var(--d-line);color:var(--d-text)}
.app-shell .inv-actions .mini-button{background:#1a2442;border-color:#2e3a5e;color:#eef2fa}.app-shell .inv-actions .mini-button.danger{color:#ff9a9a;border-color:#6b2b36}
.inv-item input.inv-missing{border-color:#e5484d;box-shadow:0 0 0 3px rgba(229,72,77,.15)}
#clientGstHint.ok{color:#1f7a50;font-weight:600}#clientGstHint.bad{color:#c2273a;font-weight:600}.client-gst{background:#f6f8fb;border:1px solid var(--line);border-radius:10px;padding:10px 12px}.client-gst .gst-input input{text-transform:uppercase;letter-spacing:.06em}
.gstp-btn{margin-top:8px;justify-self:start;border:1px solid #c9daf8;background:#eef4ff;color:#2457b3;border-radius:9px;padding:7px 12px;font:600 12.5px 'DM Sans';cursor:pointer}
.gstp-btn:hover{background:#e1ecfd}
.auth-screen .gstp-btn{background:rgba(96,140,230,.15);border-color:rgba(96,140,230,.5);color:#bcd2ff}
.gstp-backdrop{z-index:40}.gstp-modal{width:min(680px,100%)}
.gstp-steps{margin:0 0 12px;padding-left:20px;display:grid;gap:10px;font-size:13.5px;color:#3c4458;line-height:1.5}
.gstp-steps .outline-button{display:inline-flex;align-items:center;height:34px;margin-left:6px;text-decoration:none;vertical-align:middle}
.gstp-text{width:100%;border:1px dashed #b9c2d6;border-radius:10px;padding:10px;font:13px 'DM Sans';background:#f8fafc;resize:vertical;color:#141b2d}
.gstp-preview{margin-top:10px;border:1px solid #bfe0cd;background:#f2fbf6;border-radius:10px;padding:10px 12px;font-size:13px}
.gstp-preview table{width:100%;border-collapse:collapse}.gstp-preview th{text-align:left;color:#5b6478;font-weight:600;padding:4px 10px 4px 0;white-space:nowrap;vertical-align:top;width:190px}.gstp-preview td{padding:4px 0;color:#141b2d}
.gstp-warn{margin:0 0 8px;color:#a86500;font-weight:600}
.gstp-modal .eyebrow{color:#7b8499}.gstp-modal h2{color:#141b2d}
.gst-details{margin-top:10px;border-top:1px dashed #cfd6e3;padding-top:10px}
.gst-details[hidden],.gstp-btn[hidden]{display:none}
.gst-details-title{margin:0 0 8px;font-size:12px;font-weight:700;color:#5b6478;letter-spacing:.04em;text-transform:uppercase}
.gst-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.gst-details-grid .field{margin:0}.gst-details-grid .field.full{grid-column:1/-1}
.gst-details-grid .field input,.gst-details-grid .field textarea{height:40px}
.gst-details-grid .field textarea{height:auto}
.auth-screen .gst-details{border-top-color:rgba(255,255,255,.15)}.auth-screen .gst-details-title{color:#9fb0d6}
.auth-screen .gst-details-grid .field input{height:46px}
@media(max-width:600px){.gst-details-grid{grid-template-columns:1fr}}
body:has(.auth-screen:not([hidden])){background:#0b1222}
.auth-screen{min-height:100vh;align-items:stretch}
.registration-panel .gst-details-grid{grid-template-columns:1fr}
@media(min-width:1001px){.auth-screen:has(.registration-panel){grid-template-columns:minmax(520px,58%) 1fr}.auth-screen .registration-panel .auth-card{max-width:760px}.registration-panel .gst-details-grid{grid-template-columns:1fr 1fr}}
.lock-hint{display:block;margin-top:4px;font-size:11px;color:#7b8499;font-weight:600}.lock-hint[hidden]{display:none}
#clientEntityType:disabled{background:#f1f4f9;color:#4b5468;cursor:not-allowed;opacity:1}
#cgConstitution.locked{background:#f1f4f9;color:#4b5468;cursor:not-allowed}
.lock-change{font-size:11px;margin-left:6px}.lock-change[hidden]{display:none}
/* clients page */
.cl-table{border-top:1px solid var(--d-line,#e2e7ef)}
.cl-row{display:grid;grid-template-columns:minmax(180px,1.6fr) minmax(130px,1fr) minmax(150px,1.1fr) minmax(120px,1fr) minmax(150px,1.2fr) 90px 70px;gap:12px;align-items:center;padding:12px 24px;border-bottom:1px solid var(--d-line,#edf0f5);font-size:13px;color:var(--d-text,#141b2d);cursor:pointer}
.cl-row:hover{background:#1a2442}.cl-row small{display:block;color:var(--d-muted,#667085);font-size:11.5px;margin-top:2px}.cl-row .r{text-align:right}
.cl-row .mono{font-family:Consolas,Menlo,monospace;letter-spacing:.03em}.cl-row small.cl-gst{color:#3ddc97}
.cl-head{background:#111a2e;color:#c8d0e2;font-weight:700;font-size:12px;cursor:default}.cl-head:hover{background:#111a2e}
.app-shell .cl-row .mini-button{background:#1a2442;border-color:#2e3a5e;color:#eef2fa}
.clients-panel .table-search{width:260px}
@media(max-width:1350px){.cl-row{grid-template-columns:minmax(160px,1.5fr) minmax(140px,1.1fr) minmax(110px,1fr) 80px 60px}.cl-row>span:nth-child(2),.cl-row>span:nth-child(5){display:none}}
@media(max-width:760px){.cl-head{display:none}.cl-row{grid-template-columns:1fr auto;padding:12px 14px}.cl-row>span:nth-child(3),.cl-row>span:nth-child(4),.cl-row>span:nth-child(6){display:none}.clients-panel .table-search{width:100%}}
.bell-button em{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#e5484d;color:#fff;font:700 11px/20px 'DM Sans';font-style:normal;box-shadow:0 0 0 2px var(--d-bg,#fff)}.bell-button em[hidden]{display:none}
#updatesBackdrop{z-index:35}.updates-modal{width:min(640px,100%)}
.updates-list{display:grid;gap:8px;max-height:55vh;overflow:auto;margin-bottom:6px}
.update-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff}
.update-row p{margin:0;font-size:13.5px;font-weight:600;color:#141b2d}.update-row small{color:#6b7387;font-size:11.5px}
.update-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:#eef2fb;color:#2457b3}
.k-completed .update-icon{background:#dcf5e8;color:#1f7a50}.k-reopened .update-icon{background:#fff0d6;color:#a86500}.k-status .update-icon{background:#e1ecfd;color:#2457b3}.k-created .update-icon{background:#f4edfd;color:#8b4fd6}.k-updated .update-icon{background:#eceef2;color:#4b5468}
.update-ok{height:34px;padding:0 14px}
.update-invoice{margin-top:8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#eef7f2;border:1px solid #bfe0cd;border-radius:9px;padding:7px 10px;font-size:12.5px;color:#1f5a3f;font-weight:600}.update-invoice .primary-button{height:32px;padding:0 12px;font-size:12px}
.gstp-note{margin:0 0 12px;padding:9px 12px;border-radius:9px;font-size:13px;font-weight:600}.gstp-note[hidden]{display:none}
.gstp-note.ok{background:#eef9f3;border:1px solid #bfe0cd;color:#1f5a3f}.gstp-note.warn{background:#fff8e8;border:1px solid #f3d9a6;color:#8a5a00}
.gstp-steps[hidden],.gstp-text[hidden]{display:none}
.gstp-btn:disabled{opacity:.6;cursor:wait}
.fees-field>span:first-child{display:block;margin-bottom:6px}
.fees-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:8px}
.fee-amount{position:relative;display:block}.fee-amount i{position:absolute;left:11px;top:50%;transform:translateY(-50%);font-style:normal;color:#6b7387;font-weight:700}
.fee-amount input{padding-left:26px!important}.fee-amount input:disabled{background:#f1f4f9;cursor:not-allowed}
.inv-tax-only[hidden],.inv-sac[hidden]{display:none!important}.invoice-modal:has(.inv-sac[hidden]) .inv-items-head,.invoice-modal:has(.inv-sac[hidden]) .inv-item{grid-template-columns:minmax(0,1fr) 150px 34px}
.user-menu-wrap{position:relative;display:inline-block}
.user-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:210px;background:#fff;border:1px solid #e2e7ef;border-radius:12px;box-shadow:0 18px 40px rgba(10,16,32,.28);padding:6px;z-index:25}
.user-menu[hidden]{display:none}
.user-menu button{display:block;width:100%;text-align:left;border:0;background:none;padding:10px 12px;border-radius:8px;font:600 14px 'DM Sans';color:#141b2d;cursor:pointer}
.user-menu button:hover{background:#f1f4f9}.user-menu button.danger{color:#c2273a}.user-menu button[hidden]{display:none}
#profileBackdrop{z-index:30}.pf-password{margin:4px 0 10px;border:1px solid #e2e7ef;border-radius:10px;padding:8px 12px}.pf-password summary{cursor:pointer;font-weight:700;font-size:13px;color:#2457b3}.pf-password[open] summary{margin-bottom:8px}
#pfCurrentWrap[hidden]{display:none}
.locked-input{background:#f1f3f7!important;color:#5b6478!important;cursor:not-allowed}
.pf-locked-note{font-size:12px;margin:-4px 0 10px}
.pr-qr>span{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.pr-qr-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.pr-qr-preview{width:120px;height:120px;border:1px dashed #c9d0dc;border-radius:10px;display:grid;place-items:center;background:#fff;overflow:hidden}
.pr-qr-preview img{max-width:100%;max-height:100%}.pr-qr-preview em{font-size:12px;color:#8a93a6}
.pr-qr-actions{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.pr-qr-actions small{color:#5b6478;font-size:12px;max-width:260px}
.pr-qr-pick{cursor:pointer;display:inline-flex;align-items:center}
#practiceForm .form-grid>.full{grid-column:1/-1}
.inv-cancel-reason{display:block;font-size:11px;color:#8a93a6;margin-top:3px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Reports (dark dashboard palette) */
.reports-panel .activity-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.reports-panel select,.reports-panel input[type=date]{height:38px;border:1px solid var(--d-line);border-radius:10px;padding:0 10px;background:var(--d-panel2);color:var(--d-text);font:inherit;color-scheme:dark}
.reports-panel .outline-button{background:var(--d-panel2);border-color:var(--d-line);color:var(--d-text)}
.reports-panel #repCustom{color:var(--d-muted)}
.rep-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
.rep-tabs button{border:1px solid var(--d-line);background:var(--d-panel2);border-radius:999px;padding:8px 14px;font:inherit;font-weight:600;color:var(--d-text);cursor:pointer}
.rep-tabs button.active{background:#e8b54a;border-color:#e8b54a;color:#141c31}
.rep-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.rep-summary div{background:var(--d-panel2);border:1px solid var(--d-line);border-left:4px solid #6f8dd8;border-radius:12px;padding:12px 14px}
.rep-summary div.ok{border-left-color:#22a06b}.rep-summary div.warn{border-left-color:#e5484d}.rep-summary div.fee{border-left-color:#e8b54a}
.rep-summary span{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--d-muted)}.rep-summary b{font-size:22px;color:var(--d-text)}.rep-summary small{margin-left:6px;color:#4cd39a;font-weight:700}
.rep-table{border:1px solid var(--d-line);border-radius:12px;overflow:hidden}
.rep-row{display:grid;grid-template-columns:minmax(180px,2.4fr) .8fr .8fr .8fr 1.4fr 1fr .8fr;gap:10px;align-items:center;width:100%;padding:11px 14px;border:0;border-top:1px solid var(--d-line);background:var(--d-panel);font:inherit;font-size:13px;text-align:left;cursor:pointer;color:var(--d-text)}
.rep-row:hover{background:var(--d-panel2)}.rep-row.open{background:var(--d-panel2)}
.rep-head{background:#0f1629!important;color:var(--d-muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase;font-weight:700;cursor:default;border-top:0}
.rep-row .r{text-align:right}.rep-row .late{color:#ff7a7f;font-weight:700}.rep-row small{color:var(--d-muted)}
.rep-row>span:first-child{position:relative;padding-bottom:6px}.rep-row em{font-style:normal;color:var(--d-muted);font-size:11px}
.rep-bar{position:absolute;left:0;bottom:0;height:3px;border-radius:3px;background:#e8b54a}
.rep-rate{display:inline-block;width:65%;height:8px;border-radius:8px;background:#26314f;vertical-align:middle;margin-right:6px;overflow:hidden}
.rep-rate i{display:block;height:100%}.rep-rate .good{background:#22a06b}.rep-rate .mid{background:#e8b54a}.rep-rate .low{background:#e5484d}
.rep-detail{background:#111933;border-top:1px solid var(--d-line);padding:4px 14px 8px 34px}
.rep-detail>div{display:grid;grid-template-columns:2.4fr 1fr 1fr .9fr;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--d-line);font-size:12.5px;color:var(--d-text)}
.rep-detail>div:last-child{border-bottom:0}.rep-detail b{color:#fff}.rep-detail small{display:block;color:var(--d-muted)}.rep-detail>div>span:nth-child(2),.rep-detail>div>span:nth-child(3){color:var(--d-muted)}
.rep-detail .late{color:#ff7a7f;font-weight:600}.rep-detail .ok{color:#4cd39a;font-weight:600}
.reports-panel .empty-state h3{color:var(--d-text)}.reports-panel .empty-state p{color:var(--d-muted)}
@media(max-width:820px){.rep-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.rep-row{grid-template-columns:1.6fr .7fr .7fr .7fr;font-size:12.5px}.rep-row>span:nth-child(5),.rep-row>span:nth-child(6),.rep-row>span:nth-child(7){display:none}.rep-detail{padding-left:14px}.rep-detail>div{grid-template-columns:1fr 1fr}}
.device-list{display:flex;flex-direction:column;gap:10px;margin:16px 0 8px}
.device-item{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.05)}
.device-item b{display:block}.device-item small{display:block;opacity:.7;font-size:12px;margin-top:2px}
.device-item .outline-button{white-space:nowrap;flex:none}
#deviceView h1{font-size:30px;line-height:1.15}
.wl-person{cursor:pointer;border-radius:12px;transition:background .15s}
.wl-person:hover,.wl-person:focus-visible{background:rgba(255,255,255,.06);outline:none}
.wl-person:hover strong{text-decoration:underline;text-underline-offset:3px}
/* Gillwebs Track */
.time-bar{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#eef5ff;border:1px solid #cfe0fb;color:#1d2846;font-size:13px}
.time-bar small{color:#5b6478;font-size:12px}
.gw-modal{max-width:620px}.gw-help{font-size:13px;line-height:1.55}
.gw-card{border:1px solid #e2e7ef;border-left:4px solid #8a93a6;border-radius:12px;padding:12px 14px;margin:12px 0;background:#f6f8fb;font-size:13.5px;line-height:1.5}
.gw-card.ok{border-left-color:#22a06b;background:#effaf4}.gw-card.bad{border-left-color:#e5484d;background:#fff4f4}
.gw-card small{display:block;color:#5b6478;font-size:12px;margin-top:4px}.gw-err{margin:6px 0 0;color:#b42318;font-size:12.5px}
.gw-actions{align-items:center}.danger-text{color:#c2273a!important;margin-right:auto}
.gw-warnings{margin-top:14px;padding:12px 14px;border-radius:12px;background:#fff8e8;border:1px solid #f1d9a6;font-size:12.5px}
.gw-warnings ul{margin:6px 0 0;padding-left:18px}.gw-warnings li{margin:3px 0}
.status-badge.active{background:#e4f2eb;color:#1d7a55}
.status-badge.deactivated{background:#eceff4;color:#5b6478}
/* Left menu scrolls when it is taller than the screen (small laptops, phones) */
.sidebar{height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}
.sidebar>*{flex-shrink:0}
.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.25);border-radius:6px}
/* DSC Management */
.dsc-row{grid-template-columns:minmax(170px,1.5fr) minmax(140px,1.2fr) 130px 130px minmax(150px,1fr) 70px}
.dsc-note{margin:0 24px 12px;color:var(--d-muted,#667085);font-size:12.5px}
.dsc-status{font-style:normal;font-weight:700;font-size:12px;padding:4px 10px;border-radius:999px;display:inline-block}
.dsc-status.s-ok{background:rgba(34,160,107,.15);color:#3ddc97}.dsc-status.s-due{background:rgba(232,181,74,.18);color:#f0c46a}.dsc-status.s-expired{background:rgba(229,72,77,.18);color:#ff8a8f}
.dsc-hint{font-size:12px;margin:-2px 0 8px}
@media(max-width:820px){.dsc-row{grid-template-columns:minmax(140px,1.4fr) 110px minmax(110px,1fr) 60px}.dsc-row>span:nth-child(2),.dsc-row>span:nth-child(3){display:none}}
.dsc-row>span:nth-child(5){display:block}
/* Quick links */
.ql-wrap{position:relative}
.ql-button{height:42px;padding:0 14px;border-radius:12px;border:1px solid var(--d-line,#26314f);background:var(--d-panel2,#1a2442);color:var(--d-text,#eef2fa);font:inherit;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.ql-button:hover,.ql-button[aria-expanded=true]{border-color:#e8b54a}
.ql-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:60;width:min(560px,calc(100vw - 32px));max-height:min(78vh,640px);overflow:auto;padding:14px;border-radius:16px;background:#151d33;border:1px solid #26314f;box-shadow:0 24px 60px rgba(0,0,0,.45);color:#eef2fa}
.ql-head{display:flex;align-items:baseline;justify-content:space-between;margin:2px 2px 8px}.ql-head small{color:#9aa5bf;font-size:11.5px}
.ql-mine-head{margin-top:14px;padding-top:12px;border-top:1px solid #26314f}
.ql-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.ql-item{position:relative;display:block}
.ql-item a{display:flex;align-items:center;gap:10px;padding:9px 30px 9px 10px;border-radius:10px;background:#1a2442;border:1px solid transparent;color:#eef2fa;text-decoration:none;min-width:0}
.ql-item a:hover{border-color:#e8b54a;background:#1e2a4d}
.ql-item i{font-style:normal;font-size:18px;flex:none}.ql-item a>span{min-width:0}
.ql-item b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ql-item small{display:block;font-size:11px;color:#9aa5bf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ql-del{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:22px;height:22px;border-radius:6px;border:0;background:transparent;color:#9aa5bf;font-size:16px;cursor:pointer}.ql-del:hover{background:#3a1d24;color:#ff9a9a}
.ql-empty{grid-column:1/-1;margin:2px;color:#9aa5bf;font-size:12.5px}
.ql-add{display:grid;grid-template-columns:1fr 1.4fr auto;gap:6px;margin-top:10px}
.ql-add input{height:38px;border-radius:10px;border:1px solid #26314f;background:#0f1629;color:#eef2fa;padding:0 10px;font:inherit;font-size:13px;min-width:0}
.ql-add .primary-button{height:38px;padding:0 14px}
#qlError{margin:6px 2px 0}
@media(max-width:720px){.ql-button b{display:none}.ql-grid{grid-template-columns:1fr}.ql-add{grid-template-columns:1fr}.ql-panel{position:fixed;left:16px;right:16px;top:64px;width:auto}}
