:root {
  --design-ink:#202020;
  --design-border:#e8e8e8;
  --design-surface:#f8f9fa;
  --design-lilac:#f0edff;
  --font-ui:"Plus Jakarta Sans",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-mono:"Sometype Mono","SFMono-Regular",Menlo,monospace;


  --surface:#ffffff;

  --line:#e8e8e8;
  --text:#202020;
  --muted:#646464;
  --teal:#16c0a4;
  --blue:#0091ff;
  --purple:#6647f0;
  --amber:#fcb900;
  --red:#d14b58;
}
    * { box-sizing:border-box; }
    body { margin:0; min-height:100vh; background:var(--surface); color:var(--text); font:14px var(--font-ui); }
    .shell { display:flex; min-height:100vh; }
    .sidebar { width:236px; flex:none; padding:25px 13px 20px; border-right:1px solid var(--line); background:var(--surface); position:fixed; inset:0 auto 0 0; }
    .brand { padding:0 15px 35px; font:700 41px/1 var(--font-ui); letter-spacing:-2.8px; color:var(--text); }
    .nav { display:grid; gap:5px; }
    .nav button { width:100%; border:0; border-radius:11px; padding:13px 17px; background:transparent; color:var(--text); text-align:left; font:500 16px var(--font-ui); display:flex; gap:15px; align-items:center; cursor:pointer; }
    .nav button:hover,.nav button.active { color:var(--surface); background:var(--text); }
    .nav-icon { width:18px; color:inherit; text-align:center; font-size:18px; }
    .main { width:calc(100% - 236px); margin-left:236px; padding:0 24px 42px; }
    .topbar { height:72px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); }
    .search { height:43px; width:540px; max-width:44vw; display:flex; align-items:center; gap:12px; padding:0 15px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--muted); }
    .search input { width:100%; border:0; outline:0; background:transparent; color:var(--text); font:14px var(--font-ui); }
    .ai { position:fixed; right:25px; bottom:22px; border:0; border-radius:30px; padding:12px 18px; background:var(--text); color:var(--surface); font:600 14px var(--font-ui); cursor:pointer; }
    @media(max-width:900px) { .sidebar { width:68px; padding:20px 8px; } .brand { padding:6px 0 34px; font-size:0; text-align:center; } .brand:after { content:'e'; font-size:35px; color:var(--text); } .nav button { justify-content:center; padding:13px; } .nav button span:not(.nav-icon) { display:none; } .main { width:calc(100% - 68px); margin-left:68px; } }
    @media(max-width:620px) { .main { padding-inline:12px; } .topbar { gap:8px; } .search { max-width:180px; } }

/* Overview layout */
.brand img { display:block; width:147px; height:auto; }
.indicator-teal { background:var(--teal); }
.indicator-blue { background:var(--blue); }
.indicator-amber { background:var(--amber); }
.indicator-red { background:var(--red); }
#tabs .link { margin-left:auto; }
.panel-head .overview-meta { color:var(--muted); font-size:12px; }
.overview-muted { color:var(--muted); }
.overview-subtext { display:block; color:var(--muted); margin-top:3px; }
.overview-stack { display:grid; gap:20px; }
/* Structural styles for the Overview screen and shared header. */
.actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;white-space:nowrap}
.clock{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);padding:10px 16px;font:700 13px var(--font-ui);cursor:pointer}
.clock.running{background:#e8faf6;border-color:#0fbcb0;color:#187574}
.bell{position:relative;color:var(--text);font-size:21px}
.badge{position:absolute;right:-10px;top:-9px;border-radius:12px;background:#d76363;color:var(--surface);padding:3px 5px;font:700 10px var(--font-ui)}
.profile{display:flex;align-items:center;gap:10px;line-height:1.4}
.profile .avatar,.project .avatar{display:grid;place-items:center;flex:none;border-radius:50%;font-weight:700}
.profile .avatar{width:43px;height:43px;background:#ffd02f;color:var(--text)}
.profile small{color:var(--muted)}
.hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:18px 1px 22px}
.hero h1{margin:0;font:700 34px var(--font-ui);letter-spacing:-.7px}
.hero p{margin:6px 0 0;color:var(--muted);font-size:17px}
.date{text-align:right;color:var(--muted);font-size:17px;padding-top:11px}
.date small{display:block;margin-top:7px;color:var(--muted);font-size:14px}
.clock-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding:19px 23px;border:1px solid var(--line);border-radius:17px;background:#fff8e0}
.clock-banner strong{font-size:16px}
.clock-banner p{margin:4px 0 0;color:var(--muted)}
.clock-cta{flex:none;border:0;border-radius:999px;background:var(--text);color:var(--surface);padding:13px 23px;font:700 14px var(--font-ui);cursor:pointer}
.summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-bottom:24px}
.card{min-width:0;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:0 4px 12px rgba(5,0,56,.06)}
.metric{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;min-height:130px;padding:18px 16px}
.metric-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;font-size:21px}
.metric h3{margin:0;color:var(--muted);font-size:14px;font-weight:500}
.metric b{display:block;margin:7px 0 2px;font:700 31px var(--font-ui)}
.metric small{color:var(--muted);font-size:12px}
.trend{color:#187574;font-weight:700}
.trend.down{color:#a52e2e}
.dashboard-grid{display:grid;grid-template-columns:1.16fr .9fr .85fr;gap:20px}
.panel{min-width:0;padding:18px}
.panel h2{margin:0;font:600 17px var(--font-ui)}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}
.link{border:0;background:transparent;color:var(--blue);font:600 13px var(--font-ui);cursor:pointer}
.select{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px}
.chart{position:relative;display:flex;align-items:flex-end;gap:15px;height:250px;padding:16px 11px 32px;background:repeating-linear-gradient(to bottom,transparent 0 41px,#e9e9ed 42px 43px)}
.bar-set{position:relative;display:flex;align-items:flex-end;justify-content:center;flex:1;height:100%}
.bar{width:28px;border-radius:5px 5px 0 0;background:linear-gradient(to top,var(--teal) 0 29%,var(--blue) 29% 56%,var(--amber) 56% 79%,var(--purple) 79% 90%,var(--red) 90%)}
.bar-set small{position:absolute;bottom:-27px;color:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:19px;color:var(--muted);font-size:13px}
.legend i{display:inline-block;width:12px;height:12px;margin-right:7px;border-radius:3px;vertical-align:-2px}
.projects{display:grid;gap:17px}
.project{display:grid;grid-template-columns:37px minmax(0,1fr) 42px;align-items:center;gap:12px}
.project .avatar{width:37px;height:37px;background:#c3faf5;color:var(--text);font-size:12px}
.project b{font-size:14px}
.project small{display:block;margin-top:3px;color:var(--muted)}
.progress{height:8px;margin-top:7px;overflow:hidden;border-radius:8px;background:#e9e9ed}
.progress span{display:block;height:100%;border-radius:8px;background:linear-gradient(90deg,var(--blue),#0fbcb0)}
.donut-row{display:flex;align-items:center;justify-content:space-around;gap:12px;padding-top:9px}
.donut{position:relative;display:grid;place-items:center;flex:none;width:139px;height:139px;border-radius:50%;background:conic-gradient(var(--teal) 0 86%,var(--blue) 86% 93%,var(--amber) 93% 100%)}
.donut:before{position:absolute;inset:18px;border-radius:50%;background:var(--surface);content:''}
.donut b,.donut span{z-index:1;text-align:center}
.donut b{font:700 28px var(--font-ui)}
.donut span{margin-top:-38px;color:var(--muted);font-size:12px}
.attendance{display:grid;gap:12px}
.attendance div{display:flex;justify-content:space-between;gap:17px}
.attendance i{display:inline-block;width:11px;height:11px;margin-right:7px;border-radius:50%}
.bottom{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,.88fr);gap:20px;margin-top:20px}
.tasks{min-width:0;overflow-x:auto;padding:0}
.tabs{display:flex;align-items:center;gap:30px;min-height:51px;padding:0 17px;border-bottom:1px solid var(--line)}
.tab{flex:none;min-height:51px;border:0;background:transparent;color:var(--muted);font:500 14px var(--font-ui);cursor:pointer}
.tab.active{border-bottom:3px solid var(--amber);color:var(--text)}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px 17px;border-bottom:1px solid var(--line);text-align:left}
.table th{color:var(--muted);font-size:12px;font-weight:500}
.table td{color:var(--text);font-size:13px}
.table tr:last-child td{border:0}
.check{display:inline-block;width:16px;height:16px;margin-right:16px;border:1px solid #8aabc9;border-radius:4px;vertical-align:-3px}
.chip{display:inline-flex;align-items:center;max-width:100%;padding:4px 10px;border:1px solid;border-radius:8px;font-size:12px;white-space:nowrap}
.activity{padding:18px}
.timeline{display:grid;gap:17px}
.timeline-item{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:10px}
.dot{width:14px;height:14px;margin-top:3px;border-radius:50%}
.timeline-item b{font-size:13px}
.timeline-item small{display:block;margin-top:4px;color:var(--muted)}
.timeline-item time{color:var(--muted);font-size:11px}
.monthly{margin-top:20px;padding:20px}
.monthly-grid{display:grid;grid-template-columns:1fr 1fr .9fr;gap:20px}
.list-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) auto;align-items:center;gap:12px;margin:13px 0;color:var(--text)}
.list-row .progress{margin:0}
.team-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:15px;margin:18px 0 20px}
.mini{min-height:104px;padding:15px}
.mini label{color:var(--muted);font-size:12px}
.mini b{display:block;margin-top:7px;font:700 24px var(--font-ui)}
.mini small{display:block;margin-top:5px;color:var(--muted)}
@media(max-width:1300px){.summary{grid-template-columns:repeat(3,minmax(0,1fr))}
.dashboard-grid{grid-template-columns:1fr 1fr}
.attendance-panel{grid-column:span 2}
.team-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:900px){.profile div:last-child{display:none}
.dashboard-grid,.bottom,.monthly-grid{grid-template-columns:1fr}
.attendance-panel{grid-column:auto}
.team-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){.actions{gap:9px}
.clock{padding:9px}
.hero h1{font-size:26px}
.hero .date{display:none}
.summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.metric{grid-template-columns:39px minmax(0,1fr);min-height:110px;padding:12px}
.metric-icon{width:38px;height:38px}
.metric b{font-size:25px}
.panel{padding:14px}
.chart{gap:8px}
.bar{width:21px}
.team-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.clock-banner{align-items:flex-start}
.clock-banner p{font-size:12px}
.clock-cta{padding:10px 14px}
.monthly{padding:14px}
}


/* Features */
.ops-section{margin-top:22px}
.ops-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px}
.ops-title h2{font:600 20px var(--font-ui);margin:0}
.ops-title p{margin:4px 0 0;color:var(--muted);font-size:13px}
.two-col{display:grid;grid-template-columns:1.22fr .95fr;gap:20px}
.performance-list{display:grid;gap:9px}
.performer{display:grid;grid-template-columns:33px 39px 1fr auto;gap:10px;align-items:center;background:rgba(129,174,204,.06);border-radius:10px;padding:9px 11px}
.rank{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface);font-weight:700}
.rank.top{background:var(--amber);color:var(--muted)}
.performer .small-avatar{width:35px;height:35px;border-radius:50%;background:linear-gradient(140deg,#53d6d0,#228cae);display:grid;place-items:center;color:var(--muted);font-weight:700}
.performer b{font-size:14px}
.performer small{color:var(--muted);display:block;margin-top:2px}
.performer .points{text-align:right;font:700 22px var(--font-ui)}
.performer .points small{font:11px var(--font-ui)}
.score-top{display:flex;align-items:baseline;gap:7px;margin:4px 0 17px}
.score-top b{font:700 42px var(--font-ui)}
.score-top span{color:var(--muted)}
.score-row{padding:13px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between}
.score-explain{margin-top:13px;color:var(--muted);font-size:12px;line-height:1.45}
.work-grid{grid-template-columns:1.3fr .85fr;gap:20px}
.filter-pills{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.filter-pill{border:1px solid var(--line);background:transparent;color:var(--text);border-radius:18px;padding:7px 12px;font:600 12px var(--font-ui);cursor:pointer}
.filter-pill.active{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.empty-state{text-align:center;color:var(--muted);padding:34px 15px}
.empty-state strong{display:block;color:var(--text);margin:7px}
.todo-form{display:flex;gap:9px;border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:7px}
.todo-form input{flex:1;background:transparent;color:var(--text);border:0;outline:0;padding:7px;font:14px var(--font-ui)}
.round-add{width:35px;height:35px;border:0;border-radius:50%;background:var(--teal);color:var(--muted);font-size:23px;cursor:pointer}
.todo-list{margin-top:13px;display:grid;gap:8px}
.todo-item{display:flex;gap:10px;align-items:center;padding:8px;border-bottom:1px solid rgba(126,191,230,.1)}
.todo-item input{accent-color:var(--teal);width:16px;height:16px}
.todo-item.done span{text-decoration:line-through;color:var(--muted)}
.todo-item button{margin-left:auto;border:0;background:transparent;color:var(--muted);cursor:pointer}
.status-list{gap:13px}
.status-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(126,191,230,.13)}
.status-line:last-child{border:0}
.status-line .progress{grid-column:1 / -1;height:7px}
.action-menu,.profile-menu{position:fixed;z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:8px;box-shadow:0 4px 12px rgba(5, 0, 56, .06);display:none}
.action-menu.open,.profile-menu.open{display:grid}
.action-menu{top:67px;right:110px;width:215px;gap:2px}
.action-menu button,.profile-menu button{border:0;background:transparent;color:var(--text);text-align:left;padding:11px;border-radius:8px;font:500 14px var(--font-ui);cursor:pointer}
.action-menu button:hover,.profile-menu button:hover{background:var(--surface)}
.quick-btn{border:0;border-radius:10px;background:var(--teal);color:var(--muted);padding:11px 15px;font:700 14px var(--font-ui);cursor:pointer}
.profile-menu{top:67px;right:25px;width:210px}
.profile-menu .account{padding:9px 11px 13px;border-bottom:1px solid var(--line);color:var(--muted);line-height:1.45}
.profile-menu .account b{color:var(--surface);display:block}
.modal-backdrop{position:fixed;inset:0;background:var(--surface);z-index:10;display:none;align-items:center;justify-content:center}
.modal-backdrop.open{display:flex}
.modal{width:min(440px,calc(100% - 32px));padding:21px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.modal h2{margin:0 0 7px;font:600 22px var(--font-ui)}
.modal p{color:var(--muted);margin:0 0 16px}
.modal label{display:block;color:var(--text);font-size:12px;margin:13px 0 6px}
.modal input,.modal select{width:100%;padding:11px 12px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;font:14px var(--font-ui)}
.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}
.modal-actions button{border:0;border-radius:8px;padding:10px 15px;font:600 14px var(--font-ui);cursor:pointer}
.secondary{background:var(--surface);color:var(--text)}
.primary{background:var(--teal);color:var(--muted)}
.project-health{display:grid;gap:13px}
.project-health-row{display:grid;grid-template-columns:1.4fr 1fr auto;gap:17px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.project-health-row:last-child{border:0}
.project-health-row b{font-size:14px}
.project-health-row small{display:block;color:var(--muted);margin-top:3px}
.over{color:#ff91a1!important;font-weight:700}
.toast{position:fixed;right:24px;top:82px;z-index:20;padding:12px 15px;background:var(--surface);color:var(--text);border:1px solid var(--teal);border-radius:10px;opacity:0;transform:translateY(-7px);transition:.2s;pointer-events:none}
.toast.show{opacity:1;transform:none}
@media(max-width:900px){.two-col,.work-grid{grid-template-columns:1fr}
.action-menu{right:18px;top:62px}
.profile-menu{right:10px;top:62px}
}
@media(max-width:620px){.performer{grid-template-columns:28px 34px 1fr}
.performer .points{display:none}
.project-health-row{grid-template-columns:1fr auto}
.project-health-row .progress{grid-column:1/-1}
.quick-btn{font-size:0;padding:12px}
.quick-btn:before{content:'＋';font-size:18px}
.ops-title h2{font-size:18px}
}


/* Tasks */
.task-page{display:none;min-height:calc(100vh - 72px);margin:0 -24px;padding:0 24px 35px;background:var(--surface)}
.task-page.open{display:block}
.task-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}
.scope-tabs,.task-actions,.date-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.scope-tabs button,.date-filters button,.view-toggle button,.task-actions button{border:0;background:transparent;color:var(--text);padding:9px 11px;border-radius:8px;font:600 13px var(--font-ui);cursor:pointer}
.scope-tabs button.active,.date-filters button.active,.view-toggle button.active{color:var(--muted);background:var(--teal)}
.task-actions{margin-left:auto}
.task-actions .assign{background:var(--teal);color:var(--muted);border-radius:9px}
.task-actions .self{border:1px solid var(--line);color:var(--text)}
.view-toggle{border:1px solid var(--line);border-radius:10px;padding:3px;display:flex}
.task-subbar{display:flex;justify-content:space-between;align-items:center;padding:10px 0;gap:15px}
.task-layout{display:grid;grid-template-columns:208px 1fr;gap:16px}
.people-panel{border-right:1px solid var(--line);padding:11px 15px 0 0;min-height:calc(100vh - 200px)}
.people-panel h3{margin:0 0 10px;font:600 14px var(--font-ui)}
.people-panel select,.people-panel input{width:100%;background:var(--surface);border:1px solid var(--line);color:var(--text);border-radius:9px;padding:10px;margin-bottom:10px;font:13px var(--font-ui)}
.people-list{display:grid;gap:5px;max-height:calc(100vh - 320px);overflow:auto;padding-right:4px}
.person-filter{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:var(--text);text-align:left;border-radius:9px;padding:8px;cursor:pointer}
.person-filter.active{background:var(--surface)}
.person-filter i{font-style:normal;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#4bd1c2;color:var(--muted);font-size:11px;font-weight:700}
.person-filter small{display:block;color:#9fb8cf;margin-top:2px}
.board{display:grid;grid-template-columns:repeat(5,minmax(218px,1fr));gap:13px;overflow-x:auto;padding-bottom:14px}
.board-column{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px;min-height:270px}
.board-column[data-status="In Progress"]{border-color:var(--line)}
.board-column[data-status="Pending Approval"]{border-color:var(--line)}
.board-column[data-status="Completed"]{border-color:var(--line)}
.column-head{display:flex;justify-content:space-between;font:600 14px var(--font-ui);margin-bottom:11px}
.column-head b{color:var(--teal)}
.task-card{background:var(--surface);border:1px solid rgba(141,196,229,.18);border-radius:11px;padding:12px;margin:9px 0}
.task-card h4{margin:0;color:var(--text);font-size:14px;line-height:1.35}
.task-card .meta{color:#a5bed5;font-size:12px;margin:7px 0}
.task-card .by{font-size:12px;color:#a5bed5}
.task-card .by b{color:var(--text)}
.dates{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:9px 0}
.date-box{border:1px solid rgba(141,196,229,.17);border-radius:7px;padding:6px;color:#9eb8ce;font-size:11px}
.date-box b{display:block;color:var(--text);font-size:12px;margin-top:2px}
.timer{border:1px solid var(--line);border-radius:7px;color:var(--text);padding:7px;font-size:11px}
.timer b{color:var(--text)}
.assignees{display:flex;align-items:center;gap:5px;margin:10px 0;font-size:12px}
.tiny-avatar{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#4bd1c2;color:var(--muted);font-size:10px;font-weight:700}
.card-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}
.card-actions button,.row-actions button{border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:5px 7px;font:600 11px var(--font-ui);cursor:pointer}
.card-actions .go{background:var(--surface);border-color:#249f87}
.card-actions .warn{background:var(--surface);border-color:var(--line)}
.empty-col{color:#9eb6cc;font-size:13px;padding:10px 0}
.list-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.task-table{width:100%;border-collapse:collapse;min-width:980px}
.task-table th,.task-table td{text-align:left;padding:13px 14px;border-bottom:1px solid rgba(126,191,230,.12);font-size:12px}
.task-table th{color:#99b4cb;font-weight:600}
.task-table td:first-child{min-width:250px;font-weight:600;color:var(--text)}
#resetPeople { float:right; }
.task-row-subtext { display:block; color:var(--muted); margin-top:3px; }
.self-header p { color:var(--muted); }
.self-kpi-progress { color:var(--amber); }
.self-kpi-complete { color:var(--teal); }
.task-table .staff-cell{display:flex;align-items:center;gap:6px}
.pagination{display:flex;justify-content:flex-end;align-items:center;gap:9px;padding:12px;color:#acc5da;font-size:12px}
.pagination button{border:1px solid var(--line);background:transparent;color:var(--text);border-radius:7px;padding:5px 9px}
.self-page{display:none}
.self-page.open{display:block}
.self-header{padding:25px 0 17px}
.self-header h1{font:700 28px var(--font-ui);margin:0}
.self-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:10px 0 27px}
.self-content{display:grid;grid-template-columns:406px 1fr;gap:22px}
.self-form{padding:20px}
.self-form h2{font:600 18px var(--font-ui);margin:0 0 15px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid .wide{grid-column:1/-1}
.self-form label{display:block;color:var(--text);font-size:12px;margin-bottom:5px}
.self-form input,.self-form select{width:100%;padding:10px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;font:14px var(--font-ui)}
.focus-check{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:10px;border-radius:8px;margin:14px 0;color:var(--text);font-size:13px}
.self-submit{width:100%;border:0;border-radius:9px;background:var(--teal);color:var(--muted);padding:12px;font:700 14px var(--font-ui);cursor:pointer}
.self-tasks .tabs{padding:0}
.self-tasks .task-card{max-width:520px}
.assignment-modal{width:min(800px,calc(100% - 32px))}
.assignment-modal .modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.assignment-modal .wide{grid-column:1/-1}
.assignee-picks{display:flex;gap:8px;flex-wrap:wrap}
.assignee-picks label{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:7px!important;margin:0!important;cursor:pointer}
.download-link{font-size:0}
.download-link:before{content:'⇩';font-size:17px}
@media(max-width:980px){.task-layout{grid-template-columns:1fr}
.people-panel{border-right:0;border-bottom:1px solid var(--line);min-height:unset;padding:10px 0}
.people-list{display:flex;max-height:80px}
.person-filter{min-width:170px}
.self-content{grid-template-columns:1fr}
.self-kpis{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){.task-page{margin:0 -12px;padding:0 12px}
.scope-tabs{overflow-x:auto;flex-wrap:nowrap}
.scope-tabs button{white-space:nowrap}
.task-actions .self{display:none}
.task-subbar{align-items:flex-start;flex-direction:column}
.self-kpis{grid-template-columns:1fr 1fr}
.assignment-modal .modal-grid,.form-grid{grid-template-columns:1fr}
}


/* Project ops */
.ops-page{display:none;min-height:calc(100vh - 72px);padding:26px 4px 48px;color:var(--text)}
.ops-page.open{display:block}
.ops-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}
.ops-head h1{font:700 30px var(--font-ui);margin:0}
.ops-head p{margin:7px 0 0;color:var(--muted);max-width:720px}
.ops-actions{display:flex;gap:9px;flex-wrap:wrap}
.ops-btn{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:10px 13px;font:700 13px var(--font-ui);cursor:pointer}
.ops-btn.primary{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.ops-btn.warn{background:var(--surface);border-color:var(--line);color:var(--text)}
.ops-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:19px;overflow:auto}
.ops-tabs button{border:0;background:transparent;color:#aac2d7;padding:11px 13px;font:700 13px var(--font-ui);white-space:nowrap;cursor:pointer}
.ops-tabs button.active{color:var(--surface);border-bottom:3px solid var(--teal)}
.ops-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0 0 18px}
.ops-kpi,.ops-card{border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ops-kpi{padding:15px}
.ops-kpi small{color:#a8c0d7;display:block}
.ops-kpi b{display:block;font:700 25px var(--font-ui);margin-top:7px}
.ops-kpi em{font-style:normal;font-size:12px;color:#99b6ce}
.ops-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.85fr);gap:17px}
.ops-card{padding:18px}
.ops-card h2{font:600 17px var(--font-ui);margin:0}
.ops-card-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:15px}
.ops-row-subtext { display:block; color:#59616e; margin-top:3px; }
.ops-table-hint { color:#59616e; font-size:12px; }
.ops-detail-spaced { margin-top:15px; }
.ops-table{width:100%;border-collapse:collapse}
.ops-table th,.ops-table td{text-align:left;padding:12px 9px;border-bottom:1px solid rgba(157,207,240,.13);font-size:12px}
.ops-table th{color:#9db8cf;font-weight:700}
.ops-table td:first-child{font-weight:700;color:var(--text)}
.ops-table tr{cursor:pointer}
.ops-table tr:hover{background:var(--surface)}
.ops-table tr:last-child td{border:0}
.ops-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;border:1px solid}
.ops-pill:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.ops-pill.green{color:var(--text);background:var(--surface);border-color:var(--line)}
.ops-pill.yellow{color:var(--text);background:var(--surface);border-color:var(--line)}
.ops-pill.amber{color:var(--text);background:var(--surface);border-color:var(--line)}
.ops-pill.red{color:#ff9cab;background:var(--surface);border-color:var(--line)}
.ops-pill.blue{color:var(--text);background:var(--surface);border-color:var(--line)}
.ops-list{display:grid;gap:9px}
.ops-list button{background:var(--surface);border:1px solid rgba(157,207,240,.16);border-radius:11px;padding:11px;color:var(--text);text-align:left;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:8px}
.ops-list button b{font-size:13px}
.ops-list button small{display:block;color:#9db8cf;margin-top:3px}
.ops-scope{display:grid;gap:10px}
.ops-scope-row{display:grid;grid-template-columns:minmax(120px,1fr) 2fr auto;gap:12px;align-items:center;font-size:12px}
.ops-progress{height:8px;background:var(--surface);border-radius:8px;overflow:hidden}
.ops-progress i{display:block;height:100%;background:linear-gradient(90deg,#3ba8f4,#41d2bf);border-radius:inherit}
.ops-progress.warn i{background:linear-gradient(90deg,#ffbc42,#f37b37)}
.ops-progress.red i{background:#f06176}
.ops-empty{min-height:245px;display:grid;place-items:center;text-align:center;color:#9bb5cc}
.ops-empty strong{display:block;color:var(--text);margin:8px}
.ops-detail-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}
.ops-detail-top h2{margin:4px 0;font:700 25px var(--font-ui)}
.ops-detail-top p{margin:0;color:#afc4d6}
.ops-detail-top small{color:#7fcdbf;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.ops-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:17px;margin-top:17px}
.ops-detail-grid .ops-card{min-height:220px}
.ops-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ops-metric{border:1px solid rgba(157,207,240,.14);border-radius:10px;padding:12px;background:var(--surface)}
.ops-metric small{display:block;color:#9db8cf}
.ops-metric b{display:block;margin-top:6px;font:700 18px var(--font-ui)}
.ops-rule{border-left:3px solid var(--teal);background:rgba(65,210,191,.08);padding:11px 13px;border-radius:0 9px 9px 0;color:var(--text);font-size:12px;line-height:1.5}
.ops-activity{display:grid;gap:10px}
.ops-activity p{margin:0;padding-bottom:10px;border-bottom:1px solid rgba(157,207,240,.12);font-size:13px}
.ops-activity span{color:#9db8cf;display:block;margin-top:3px;font-size:12px}
.ops-note{color:#a9c1d3;font-size:12px;margin:10px 0 0}
.ops-form .modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ops-form .wide{grid-column:1/-1}
.ops-form label{display:block;color:var(--text);font-size:12px}
.ops-form input,.ops-form select,.ops-form textarea{width:100%;margin-top:5px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px;font:13px var(--font-ui)}
.ops-form textarea{min-height:78px;resize:vertical}
.ops-form .modal-actions{margin-top:18px}
.ops-form .allocation-choice{display:flex;gap:8px;flex-wrap:wrap}
.ops-form .allocation-choice label{border:1px solid var(--line);border-radius:8px;padding:7px;cursor:pointer}
.ops-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.ops-inline-actions .ops-btn{padding:8px 10px}
.ops-finance-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(157,207,240,.13);font-size:13px}
.ops-finance-line b{color:var(--text)}
.ops-finance-line.total{font-size:15px;border-bottom:0}
.ops-finance-line.total b{color:var(--text)}
.ops-health{padding:8px 11px;border:1px solid rgba(157,207,240,.14);background:var(--surface);border-radius:10px;font-size:12px;min-width:170px}
.ops-health span{display:block;color:#9db8cf;margin-bottom:5px}
.ops-health b{font-size:16px}
.ops-link{color:var(--text);text-decoration:none;background:none;border:0;font:700 12px var(--font-ui);cursor:pointer;padding:0}
@media(max-width:1050px){.ops-kpis{grid-template-columns:repeat(2,1fr)}
.ops-grid,.ops-detail-grid{grid-template-columns:1fr}
.ops-table{min-width:700px}
.ops-card.table-scroll{overflow:auto}
}
@media(max-width:650px){.ops-head{flex-direction:column}
.ops-kpis,.ops-metrics{grid-template-columns:1fr}
.ops-detail-top{flex-direction:column}
.ops-scope-row{grid-template-columns:1fr}
.ops-form .modal-grid{grid-template-columns:1fr}
.ops-form .wide{grid-column:auto}
}


/* Work section */
.work-page{display:none;min-height:calc(100vh - 72px);padding:26px 4px 48px}
.work-page.open{display:block}
.work-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:21px}
.work-head h1{font:700 30px var(--font-ui);margin:0}
.work-head p{color:var(--muted);margin:7px 0 0;max-width:700px}
.work-eyebrow{margin:0 0 5px!important;font-size:11px;color:var(--teal)!important;font-weight:800;letter-spacing:.13em}
.work-actions,.work-inline{display:flex;gap:9px;flex-wrap:wrap}
.work-btn{border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:10px 13px;font:700 13px var(--font-ui);cursor:pointer}
.work-btn.primary{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.work-btn.warn{background:var(--surface);border-color:var(--line);color:var(--text)}
.work-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:17px;margin-top:17px}
.work-grid>.work-card:first-child{grid-row:span 2}
.work-card,.work-kpi{border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.work-card{padding:18px}
.work-card h2{font:600 17px var(--font-ui);margin:0}
.work-card h3{font:600 15px var(--font-ui);margin:0 0 11px}
.work-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}
.work-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.work-kpi{padding:15px}
.work-kpi small{color:#a8c0d7;display:block}
.work-kpi b{display:block;font:700 25px var(--font-ui);margin-top:7px}
.work-kpi em{font-style:normal;font-size:12px;color:#99b6ce}
.work-table{width:100%;border-collapse:collapse}
.work-table th,.work-table td{text-align:left;padding:12px 9px;border-bottom:1px solid rgba(157,207,240,.13);font-size:12px}
.work-table th{color:#9db8cf;font-weight:700}
.work-table td:first-child{font-weight:700;color:var(--text)}
.work-table td small{display:block;color:#9db8cf;margin-top:3px;font-weight:400;max-width:350px}
.work-table tr{cursor:pointer}
.work-table tr:hover{background:var(--surface)}
.work-table tr:last-child td{border:0}
.work-table-scroll{overflow:auto}
.work-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}
.work-pill:before{content:'';height:6px;width:6px;border-radius:50%;background:currentColor}
.work-pill.green{color:var(--text);background:var(--surface);border-color:var(--line)}
.work-pill.yellow{color:var(--text);background:var(--surface);border-color:var(--line)}
.work-pill.amber{color:var(--text);background:var(--surface);border-color:var(--line)}
.work-pill.red{color:#ff9cab;background:var(--surface);border-color:var(--line)}
.work-pill.blue{color:var(--text);background:var(--surface);border-color:var(--line)}
.work-list{display:grid;gap:9px}
.work-list button{background:var(--surface);border:1px solid rgba(157,207,240,.16);border-radius:11px;padding:11px;color:var(--text);text-align:left;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:8px}
.work-list b{font-size:13px}
.work-list small{display:block;color:#9db8cf;margin-top:3px}
.work-link{color:var(--text);background:none;border:0;font:700 12px var(--font-ui);cursor:pointer;padding:0}
.work-note{color:#a9c1d3;font-size:12px;line-height:1.5;margin:8px 0}
.work-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--surface);margin-top:15px}
.work-detail-head h2{font:700 25px var(--font-ui);margin:4px 0}
.work-detail-head p{margin:0;color:#afc4d6}
.work-detail-head small{color:#7fcdbf;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.work-health{padding:8px 11px;border:1px solid rgba(157,207,240,.14);background:var(--surface);border-radius:10px;font-size:12px;min-width:185px}
.work-health span{display:block;color:#9db8cf;margin-bottom:5px}
.work-health b{display:block;font-size:15px;margin-top:7px}
.work-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:18px 0;overflow:auto}
.work-tabs button{border:0;background:transparent;color:#aac2d7;padding:11px 13px;font:700 13px var(--font-ui);white-space:nowrap;cursor:pointer}
.work-tabs button.active{color:var(--surface);border-bottom:3px solid var(--teal)}
.work-finance{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(157,207,240,.13);font-size:13px}
.work-finance.total{border:0;font-size:15px}
.work-finance.total b{color:var(--text)}
.work-form{max-width:1120px;width:min(1120px,94vw);max-height:90vh;overflow:auto}
.work-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.work-form-head h2{margin:0;font:700 22px var(--font-ui)}
.work-form-head p{margin:5px 0 17px;color:#9db8cf;font-size:12px}
.work-form-grid{display:grid;grid-template-columns:1fr .7fr;gap:15px}
.work-form-section{border:1px solid rgba(157,207,240,.14);padding:15px;border-radius:11px}
.work-form .modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.work-form .wide{grid-column:1/-1}
.work-form label{display:block;color:var(--text);font-size:12px}
.work-form input,.work-form select,.work-form textarea{width:100%;margin-top:5px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px;font:13px var(--font-ui)}
.work-form textarea{min-height:78px;resize:vertical}
.work-switches{display:flex;gap:22px;flex-wrap:wrap;margin-top:12px}
.work-switches label,.allocation-bill{display:flex!important;align-items:center;gap:7px}
.work-switches input,.allocation-bill input{width:auto!important;margin:0!important}
.live-pnl{margin-top:14px;border:1px solid rgba(65,210,191,.34);background:var(--surface);padding:12px;border-radius:10px}
.live-pnl small{color:var(--text);display:block;margin-bottom:6px}
.live-pnl div{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid rgba(157,207,240,.12);font-size:12px}
.live-pnl .total{border:0;font-size:14px;color:var(--text)}
.allocation-section{margin-top:15px}
.allocation-labels,.allocation-row{display:grid;grid-template-columns:1.05fr 1.05fr .5fr .65fr .7fr 34px;gap:8px;align-items:center}
.allocation-labels{color:#9db8cf;font-size:11px;margin:12px 0 4px}
.allocation-row{padding:8px 0;border-top:1px solid rgba(157,207,240,.11)}
.allocation-row select,.allocation-row input{margin:0!important;padding:8px!important}
.allocation-row .work-btn{padding:7px 10px}
.template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.work-nav-group{display:grid;gap:5px}
.work-parent{width:100%;border:0;background:transparent;color:var(--text);text-align:left;border-radius:11px;padding:13px 17px;font:500 16px var(--font-ui);display:flex;gap:15px;align-items:center;cursor:pointer}
.work-parent i{margin-left:auto;font-style:normal;color:#8bb4d3;transition:transform .2s}
.work-nav-group.expanded .work-parent,.work-parent:hover{color:var(--surface);background:var(--surface)}
.work-nav-group.expanded .work-parent i{transform:rotate(180deg)}
.work-nav-children{display:none;margin:0 0 3px 14px;padding-left:8px;border-left:1px solid rgba(127,191,230,.22)}
.work-nav-group.expanded .work-nav-children{display:grid;gap:3px}
.nav .work-child{padding:9px 12px;font-size:13px;border-radius:8px}
.nav .work-child .nav-icon{font-size:14px}
.work-convert{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.work-convert label{border:1px solid var(--line);border-radius:8px;padding:11px;cursor:pointer}
.work-convert input{width:auto;margin-right:7px}
@media(max-width:1050px){.work-kpis{grid-template-columns:repeat(2,1fr)}
.work-grid,.work-form-grid{grid-template-columns:1fr}
.work-grid>.work-card:first-child{grid-row:auto}
.work-table{min-width:760px}
.template-grid{grid-template-columns:1fr}
}
@media(max-width:650px){.work-head,.work-detail-head{flex-direction:column}
.work-kpis{grid-template-columns:1fr}
.work-form .modal-grid{grid-template-columns:1fr}
.work-form .wide{grid-column:auto}
.allocation-labels{display:none}
.allocation-row{grid-template-columns:1fr 1fr}
.allocation-row .allocation-bill{grid-column:1/-1}
.allocation-row .work-btn{grid-column:2;justify-self:end}
.work-convert{grid-template-columns:1fr}
}


/* Task ops */
.task-context{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 13px;padding:10px 13px;border:1px solid rgba(65,210,191,.28);border-radius:10px;background:var(--surface);font-size:12px;color:var(--text)}
.task-context b{color:var(--text)}
.task-context button{border:0;border-radius:8px;background:var(--surface);color:var(--text);padding:7px 9px;font:700 11px var(--font-ui);cursor:pointer}
.task-delivery-tag{display:inline-flex;gap:5px;align-items:center;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:4px 7px;font-size:10px;font-weight:700;margin:7px 0 0}
.task-modal-context{grid-column:1/-1;border:1px solid var(--line);border-radius:10px;padding:11px}
.task-modal-context h3{font:700 13px var(--font-ui);margin:0 0 9px}
.task-modal-context .ctx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.task-modal-context label{display:block;color:var(--text);font-size:11px}
.task-modal-context select,.task-modal-context input{width:100%;margin-top:4px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:8px;font:12px var(--font-ui)}
.task-convert{border:1px solid var(--line);color:var(--text)}
@media(max-width:720px){.task-context{align-items:flex-start;flex-direction:column}
.task-modal-context .ctx-grid{grid-template-columns:1fr}
}


/* Projects */
.projects-page{display:none;padding:26px 28px 48px;min-height:calc(100vh - 76px);color:var(--text)}
.projects-page.open{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px}
.project-rail{border-right:1px solid var(--border);padding-right:18px}
.project-rail h2{font-size:18px;margin:0 0 16px}
.rail-actions{display:flex;gap:7px;margin-bottom:14px}
.rail-actions button,.project-tabs button{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:999px;padding:9px 13px;font-weight:700}
.rail-actions .primary,.project-tabs .active{background:var(--amber);border-color:var(--amber);color:var(--muted)}
.project-search{width:100%;box-sizing:border-box;margin-bottom:18px}
.project-filter{display:flex;gap:15px;border-bottom:1px solid var(--border);margin-bottom:14px}
.project-filter button{border:0;background:transparent;color:var(--muted);padding:8px 0 12px;font-weight:700}
.project-filter button.active{color:var(--amber);border-bottom:2px solid var(--amber)}
.project-list{display:grid;gap:12px;max-height:calc(100vh - 270px);overflow:auto;padding-right:2px}
.project-row{background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:14px;text-align:left;color:var(--text);cursor:pointer}
.project-row.active{border-color:var(--amber);background:var(--surface)}
.project-row-top{display:flex;align-items:center;gap:10px}
.project-mark{width:38px;height:38px;border-radius:12px;background:var(--teal);display:grid;place-items:center;color:var(--muted);font-weight:900}
.project-name{font-weight:800}
.project-client{font-size:12px;color:var(--muted);margin-top:3px}
.billable{margin-left:auto;font-size:12px;background:rgba(36,204,143,.16);color:var(--text);padding:5px 8px;border-radius:999px}
.project-progress{height:5px;background:rgba(255,255,255,.1);border-radius:6px;margin:16px 0 7px;overflow:hidden}
.project-progress i{display:block;height:100%;background:#ff5a7b;border-radius:inherit}
.project-progress.ok i{background:var(--teal)}
.project-row-bottom{display:flex;justify-content:space-between;color:var(--muted);font-size:12px}
.project-over{color:#ff6688;font-weight:800}
.project-content{min-width:0}
.project-hero,.project-panel{background:var(--surface);border:1px solid var(--border);border-radius:22px}
.project-hero{padding:24px 26px}
.project-hero-top{display:flex;align-items:center;gap:13px}
.project-hero h1{font-size:27px;margin:0}
.project-badges{display:flex;gap:8px;flex-wrap:wrap}
.project-badge{font-size:12px;border-radius:999px;background:rgba(255,255,255,.09);padding:6px 10px;color:var(--muted)}
.project-badge.approved{background:rgba(36,204,143,.15);color:var(--text)}
.project-hero-actions{margin-left:auto;display:flex;gap:8px}
.icon-button{width:38px;height:38px;border-radius:11px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:16px}
.project-meta{margin-top:20px;color:var(--muted);font-size:14px;line-height:1.8}
.project-meta strong{color:var(--text)}
.avatar-stack{display:inline-flex;vertical-align:middle;margin:0 5px}
.avatar-stack i,.member-avatar{font-style:normal;width:27px;height:27px;border-radius:50%;display:inline-grid;place-items:center;background:var(--teal);color:var(--muted);font-size:11px;font-weight:900;border:2px solid var(--panel);margin-left:-5px}
.project-tabs{display:flex;align-items:center;gap:9px;margin:28px 0}
.project-tabs button{padding:11px 15px}
.project-tabs .assign-project{margin-left:4px}
.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.project-panel{padding:20px}
.project-panel h3{margin:0 0 18px;font-size:17px}
.ring-row{display:flex;align-items:center;gap:25px}
.ring{width:112px;height:112px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#ff5a7b var(--ring),rgba(255,255,255,.09) 0);position:relative}
.ring:before{content:'';width:82px;height:82px;border-radius:50%;background:var(--surface);position:absolute}
.ring strong,.ring small{z-index:1;text-align:center}
.ring strong{font-size:22px}
.ring small{display:block;color:var(--muted);font-size:11px}
.ring.green{background:conic-gradient(var(--teal) var(--ring),rgba(255,255,255,.09) 0)}
.health-copy p{margin:5px 0;color:var(--muted)}
.health-copy b{font-size:17px}
.status-list{display:grid;gap:7px;flex:1}
.status-line{display:flex;align-items:center;justify-content:space-between;font-size:13px}
.status-line i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:var(--teal)}
.allocation{grid-column:1/-1}
.allocation-row{display:grid;grid-template-columns:155px 1fr;gap:20px;margin:14px 0;align-items:center}
.allocation-row small{display:block;color:var(--muted);margin-top:2px}
.allocation-bar{height:8px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden}
.allocation-bar i{display:block;height:100%;background:#ad82ff;border-radius:inherit}
.table-panel{min-height:350px}
.project-table{width:100%;border-collapse:collapse;text-align:left}
.project-table th{color:var(--muted);font-size:12px}
.project-table th,.project-table td{padding:14px 0;border-bottom:1px solid var(--border);font-size:13px}
.project-table td:first-child{color:var(--amber);font-weight:700}
.file-head{display:flex;justify-content:space-between;align-items:center}
.text-action{border:0;background:transparent;color:var(--amber);font-weight:800}
.empty-project{min-height:260px;display:grid;place-items:center;text-align:center;color:var(--muted)}
.empty-project strong{display:block;color:var(--text);margin:9px}
.file-list{display:grid;gap:9px;margin-top:20px}
.file-row{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:12px;padding:12px}
.file-row i{font-style:normal;font-size:22px}
.file-row small{display:block;color:var(--muted);margin-top:3px}
.file-row button{margin-left:auto}
.member-list{display:grid;grid-template-columns:1fr 1fr;gap:11px 40px}
.member-row{display:flex;align-items:center;gap:10px;padding:9px 0}
.member-row .member-avatar{margin:0}
.member-row small{display:block;color:var(--muted);margin-top:2px}
.member-hours{margin-left:auto;font-weight:800}
.project-modal{max-width:860px}
.project-modal .leader-picks{display:grid;gap:7px;max-height:205px;overflow:auto;border:1px solid var(--border);padding:12px;border-radius:12px}
.project-modal .leader-picks label{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;margin:0}
.project-modal .leader-picks span{color:var(--muted);font-size:13px}
.file-modal{max-width:580px}
.file-placeholder{border:1px dashed var(--border);border-radius:12px;padding:12px;color:var(--muted);font-size:13px}
.file-placeholder b{color:var(--text)}
@media(max-width:1000px){.projects-page.open{grid-template-columns:1fr}
.project-rail{border-right:0;border-bottom:1px solid var(--border);padding:0 0 18px}
.project-list{max-height:230px}
.overview-grid{grid-template-columns:1fr}
.allocation{grid-column:auto}
.member-list{grid-template-columns:1fr}
.project-hero-top{flex-wrap:wrap}
.project-hero-actions{margin-left:0}
.project-tabs{overflow:auto}
.project-tabs button{white-space:nowrap}
}


/* Hrms */
.hrms-page{display:none;padding:28px 30px 48px;min-height:calc(100vh - 72px)}
.hrms-page.open{display:block}
.hr-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}
.hr-head h1{margin:0;font:700 28px var(--font-ui)}
.hr-head p{color:var(--muted);margin:5px 0}
.hr-actions{display:flex;gap:9px;flex-wrap:wrap}
.hr-button,.hr-tabs button,.hr-filter button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:10px 13px;font:600 13px var(--font-ui);cursor:pointer}
.hr-button.primary,.hr-tabs button.active,.hr-filter button.active{background:var(--amber);color:var(--muted);border-color:var(--amber)}
.hr-layout{display:grid;grid-template-columns:214px minmax(0,1fr);gap:22px}
.hr-rail{border-right:1px solid var(--line);padding-right:18px}
.hr-rail-title{font:700 12px var(--font-ui);letter-spacing:.09em;color:var(--muted);margin:6px 0 10px}
.hr-rail button{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--text);border-radius:9px;padding:11px 12px;font:600 14px var(--font-ui);cursor:pointer}
.hr-rail button:hover,.hr-rail button.active{background:var(--surface);color:var(--surface)}
.hr-rail button.indent{padding-left:25px;color:#9eb8cf;font-size:13px}
.hr-content{min-width:0}
.hr-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:20px}
.hr-kpi{padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.hr-kpi small{color:var(--muted)}
.hr-kpi b{display:block;font:700 23px var(--font-ui);margin-top:5px}
.hr-table-wrap,.hr-panel{border:1px solid var(--line);border-radius:15px;background:var(--surface);overflow:auto}
.hr-table{width:100%;border-collapse:collapse;min-width:840px}
.hr-table th,.hr-table td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}
.hr-table th{color:var(--muted);font-size:12px}
.person-cell{display:flex;align-items:center;gap:9px}
.hr-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:var(--muted);font-size:11px;font-weight:900}
.employment{font-size:11px;padding:4px 8px;border-radius:99px;background:rgba(65,210,191,.14);color:var(--text)}
.employment.inactive{background:rgba(255,105,110,.13);color:#ff9ba0}
.employment.onboarding{background:rgba(246,185,40,.14);color:var(--text)}
.hr-filter{display:flex;gap:8px;margin:0 0 15px;flex-wrap:wrap}
.hr-search{background:var(--surface);border:1px solid var(--line);color:var(--surface);padding:10px 12px;border-radius:9px;min-width:245px}
.attendance-group{margin-bottom:18px}
.attendance-group h3{font:600 16px var(--font-ui);margin:0 0 9px}
.attendance-row{display:grid;grid-template-columns:1.3fr .9fr 1fr 1fr 1.5fr;gap:16px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--line)}
.attendance-row:last-child{border:0}
.attendance-actions{display:flex;gap:5px;flex-wrap:wrap}
.attendance-actions button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:7px;padding:6px 8px;font-size:11px;cursor:pointer}
.attendance-actions button.selected{background:var(--teal);color:var(--muted);border-color:var(--teal)}
.request-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px;margin:10px 0}
.request-top{display:flex;justify-content:space-between;gap:20px}
.request-card p{color:var(--muted);margin:8px 0}
.request-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--text);font-size:12px}
.request-actions{display:flex;gap:8px;margin-top:12px}
.request-actions button{border:0;border-radius:8px;padding:8px 11px;font-weight:700;cursor:pointer}
.approve{background:var(--surface);color:var(--text)}
.reject{background:var(--surface);color:var(--text)}
.balance-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:14px 0}
.balance{border:1px solid var(--line);border-radius:12px;padding:14px}
.balance small{color:var(--muted)}
.balance b{display:block;font:700 24px var(--font-ui);margin-top:5px}
.department-grid{display:grid;grid-template-columns:230px 1fr;gap:18px}
.department-list{display:grid;gap:8px}
.department-list button{background:var(--surface);border:1px solid var(--line);color:var(--text);text-align:left;border-radius:11px;padding:13px;cursor:pointer}
.department-list button.active{border-color:var(--amber);background:rgba(246,185,40,.13)}
.dept-hero{padding:20px}
.dept-hero h2{margin:0}
.dept-tabs{display:flex;gap:8px;margin:18px 0}
.payslip{background:var(--surface);padding:17px;border-radius:13px;border:1px solid var(--line)}
.payslip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.pay-amount{color:#ff9bac;font-weight:800}
.source-pills{display:flex;gap:8px;flex-wrap:wrap}
.source-pills span{border:1px solid var(--line);border-radius:99px;padding:5px 9px;color:var(--muted);font-size:12px}
.empty-hr{text-align:center;padding:55px;color:var(--muted)}
@media(max-width:1050px){.hr-layout{grid-template-columns:1fr}
.hr-rail{border-right:0;border-bottom:1px solid var(--line);padding:0 0 15px;display:flex;overflow:auto}
.hr-rail-title{display:none}
.hr-rail button{white-space:nowrap;width:auto}
.hr-rail button.indent{padding-left:12px}
.hr-kpis{grid-template-columns:repeat(3,1fr)}
.department-grid{grid-template-columns:1fr}
.department-list{display:flex;overflow:auto}
.department-list button{min-width:160px}
}
@media(max-width:650px){.hrms-page{padding:20px 12px}
.hr-head{display:block}
.hr-actions{margin-top:14px}
.hr-kpis,.balance-grid,.payslip-grid{grid-template-columns:1fr 1fr}
.attendance-row{grid-template-columns:1fr}
.attendance-actions{margin-top:5px}
}


/* Hrms overrides */
.hrms-page input,.hrms-page select,.hrms-page textarea{width:100%;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit}
.hrms-page textarea{min-height:90px;resize:vertical}
.hrms-page label{display:grid;gap:7px;color:#aab8ca;font-size:13px}
.hrms-page small{display:block;color:#8c9ab0;margin-top:3px}
.rules-panel{padding:22px}
.rules-panel h3{margin:0 0 16px}
.rules-panel h3+div,.rules-panel h3+p{margin-bottom:22px}
.assignment-modal{max-height:calc(100vh - 48px);overflow:auto}
.modal-grid .wide{grid-column:1/-1}
.hrms-page .hr-content{min-width:0}
.hrms-subnav{display:none;padding:4px 10px 8px}
.hrms-subnav.open{display:grid;gap:2px}
.hrms-subnav button{border:0;background:transparent;color:#a9c2d6;text-align:left;border-radius:7px;padding:8px 12px;font:600 12px var(--font-ui);cursor:pointer}
.hrms-subnav button:hover,.hrms-subnav button.active{background:var(--surface);color:var(--surface)}
.hrms-subnav button.nested{padding-left:24px;color:#86a8c2}
.events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.events-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:17px;min-height:420px}
.events-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:8px}
.events-title h2{font:700 17px var(--font-ui);margin:0}
.events-title span{background:rgba(246,185,40,.15);color:var(--text);border-radius:99px;padding:5px 9px;font-size:12px;font-weight:800}
.event-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}
.event-row .person-cell{min-width:0}
.event-row .person-cell small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:145px}
.event-row>small{background:var(--surface);color:var(--text);border-radius:99px;padding:5px 8px;white-space:nowrap}
.holiday-row>span{display:flex;align-items:center;gap:7px}
.holiday-row .hr-button{padding:5px 7px;font-size:11px}
.events-empty{color:var(--muted);text-align:center;padding:110px 10px}
@media(max-width:1050px){.events-grid{grid-template-columns:1fr}
.events-card{min-height:auto}
}


/* Hrms events */
/* HRMS Events: milestone and holiday view */
.hrms-page .events-grid,
.hrms-page .hr-events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}

.hrms-page .events-card,
.hrms-page .hr-event-card {
  min-height: 560px;
  padding: 18px;
  border: 1px solid var(--line, rgba(255,255,255,.09));
  border-radius: 16px;
  background: var(--surface);
  box-shadow: 0 4px 12px rgba(5, 0, 56, .06);
}

.hrms-page .events-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 14px;
  margin-bottom: 3px;
  border-bottom: 1px solid var(--line, rgba(255,255,255,.08));
}

.hrms-page .events-title h2 {
  margin: 0;
  font-size: 15px;
  font-weight: 750;
  color: var(--text);
}

.hrms-page .events-title span {
  min-width: 28px;
  padding: 5px 9px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent, #00a987) 16%, transparent);
  color: var(--accent, #28d7ac);
  font-size: 12px;
  font-weight: 750;
  text-align: center;
}

.hrms-page .hr-event-card:first-child .events-title span { background: rgba(238, 92, 136, .15); color: #ee7b9d; }
.hrms-page .hr-event-card:nth-child(2) .events-title span { background: rgba(248, 192, 54, .16); color: #d7a612; }
.hrms-page .hr-event-card:nth-child(3) .events-title span { background: rgba(73, 158, 255, .14); color: #63aaff; }

.hrms-page .event-row,
.hrms-page .hr-event-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 58px;
  padding: 8px 0;
  border-bottom: 1px solid var(--line, rgba(255,255,255,.07));
}

.hrms-page .event-row:last-child { border-bottom: 0; }
.hrms-page .event-row .person-cell { min-width: 0; flex: 1; }
.hrms-page .event-row .person-cell b { display: block; overflow: hidden; color: var(--text); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.hrms-page .event-row .person-cell small,
.hrms-page .holiday-row > div small { display: block; margin-top: 3px; color: var(--muted, #97aabc); font-size: 11px; }

.hrms-page .hr-event-date,
.hrms-page .event-row > small {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.075);
  color: var(--muted, #b6c4d1);
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.hrms-page .hr-event-card:first-child .hr-event-date { color: #f18ca8; background: rgba(238, 92, 136, .14); }
.hrms-page .hr-event-card:nth-child(2) .hr-event-date { color: #e0ba38; background: rgba(248, 192, 54, .14); }
.hrms-page .holiday-row > span { display: flex; align-items: center; gap: 8px; }
.hrms-page .holiday-row button { padding: 5px 8px; font-size: 11px; }

.hrms-page .events-empty {
  display: grid;
  place-items: center;
  min-height: 380px;
  color: var(--muted, #97aabc);
  font-size: 13px;
  text-align: center;
}

.hr-holiday-modal { width: min(580px, calc(100vw - 32px)); }
.hr-holiday-modal h2 { margin-right: 42px; }
.hr-holiday-modal .hr-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: grid;
  width: 32px;
  height: 32px;
  padding: 0;
  place-items: center;
  border-radius: 50%;
}
.hr-holiday-modal .modal-grid { grid-template-columns: 1fr; }
.hr-holiday-modal .modal-grid label:last-child { display: none; }
.hr-holiday-modal p { margin: 0 0 18px; color: var(--muted, #97aabc); }

@media (max-width: 1050px) {
  .hrms-page .events-grid,
  .hrms-page .hr-events-grid { grid-template-columns: 1fr; }
  .hrms-page .events-card,
  .hrms-page .hr-event-card { min-height: auto; }
  .hrms-page .events-empty { min-height: 170px; }
}


/* Shell overrides */
/* The global navigation must remain usable when modules add more destinations. */
.sidebar {
  height: 100dvh;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(117, 189, 222, .5) transparent;
}

.sidebar::-webkit-scrollbar { width: 7px; }
.sidebar::-webkit-scrollbar-track { background: transparent; }
.sidebar::-webkit-scrollbar-thumb {
  border-radius: 99px;
  background: rgba(117, 189, 222, .38);
}
.sidebar::-webkit-scrollbar-thumb:hover { background: rgba(117, 189, 222, .62); }


@media (max-width: 900px) {
  .sidebar { overflow-y: auto; }
}


/* Client health */
.client-health-page{display:none;padding:28px 30px 52px;min-height:calc(100vh - 72px)}
.client-health-page.open{display:block}
.ch-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}
.ch-head h1{margin:0;font:700 29px var(--font-ui)}
.ch-head p{margin:5px 0;color:var(--muted)}
.ch-actions,.ch-tabs,.ch-filters{display:flex;gap:8px;flex-wrap:wrap}
.ch-btn,.ch-tabs button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:9px 12px;font:600 13px var(--font-ui);cursor:pointer}
.ch-btn.primary,.ch-tabs button.active{background:var(--teal);color:var(--muted);border-color:var(--teal)}
.ch-filters{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:16px}
.ch-filters select{min-width:150px;flex:1;border:1px solid var(--line);border-radius:7px;padding:9px;background:var(--surface);color:var(--text)}
.ch-attention{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:18px}
.ch-panel{border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:16px}
.ch-panel h2{font:600 16px var(--font-ui);margin:0 0 12px}
.ch-alert{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}
.ch-alert:last-child{border:0}
.ch-alert i{width:9px;height:9px;border-radius:50%;background:#ff9a8c}
.ch-alert small,.ch-panel small{display:block;color:var(--muted);margin-top:3px}
.ch-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.ch-summary div{border-radius:9px;padding:12px;background:var(--surface)}
.ch-summary small{font-size:11px}
.ch-summary b{display:block;font:700 20px var(--font-ui);margin-top:5px}
.ch-table{width:100%;border-collapse:collapse}
.ch-table th,.ch-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}
.ch-table th{color:#aec7d9;font-size:11px}
.ch-table tr{cursor:pointer}
.ch-table tr:hover{background:var(--surface)}
.ch-health{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:700}
.ch-health:before{content:'';width:6px;height:6px;border-radius:50%;background:currentColor}
.ch-health.healthy{color:var(--text);background:var(--surface)}
.ch-health.risk{color:var(--text);background:var(--surface)}
.ch-health.critical{color:#ff9c96;background:var(--surface)}
.ch-health.na{color:#afc6d7;background:var(--surface)}
.ch-detail{display:grid;gap:16px}
.ch-detail-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.ch-detail-top h2{margin:0;font:700 25px var(--font-ui)}
.ch-detail-top p{margin:5px 0;color:var(--muted)}
.ch-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.ch-kpis article{padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.ch-kpis small{color:var(--muted);font-size:11px}
.ch-kpis b{display:block;margin-top:6px;font:700 19px var(--font-ui)}
.ch-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}
.ch-progress{height:8px;border-radius:99px;background:var(--surface);overflow:hidden}
.ch-progress i{display:block;height:100%;background:var(--teal);border-radius:inherit}
.ch-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}
.ch-row:last-child{border:0}
.ch-opportunity{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}
.ch-opportunity:last-child{border:0}
.ch-modal{max-width:560px}
.ch-modal textarea{min-height:70px}
@media(max-width:1050px){.ch-attention,.ch-detail-grid{grid-template-columns:1fr}
.ch-kpis{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){.client-health-page{padding:20px 12px}
.ch-head{display:block}
.ch-actions{margin-top:12px}
.ch-kpis{grid-template-columns:1fr 1fr}
.ch-table{min-width:830px}
.ch-panel{overflow:auto}
}


/* Client health v2 */
.ch2-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.ch2-head h1{margin:0;font:700 30px var(--font-ui);letter-spacing:-.5px}
.ch2-head p{margin:5px 0;color:var(--muted)}
.ch2-action{border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:var(--surface);color:var(--text);font:600 13px var(--font-ui);cursor:pointer;margin-left:6px}
.ch2-action.primary{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.ch2-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.ch2-overview article{padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.ch2-overview small{color:#aac5d9;font-size:12px}
.ch2-overview b{display:block;margin:10px 0 5px;color:var(--teal);font:700 19px var(--font-ui)}
.ch2-overview p{margin:0;color:var(--muted);font-size:12px}
.ch2-filters{display:flex;gap:9px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:16px}
.ch2-filters select{min-width:170px;flex:1;border:1px solid var(--line);border-radius:7px;padding:9px;background:var(--surface);color:var(--text)}
.ch2-sections{display:grid;gap:15px}
.ch2-dimension{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}
.ch2-dimension header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 18px;border-bottom:1px solid var(--line)}
.ch2-dimension h2{margin:0;font:600 18px var(--font-ui)}
.ch2-dimension p{margin:4px 0 0;color:var(--muted);font-size:12px}
.ch2-row{display:grid;grid-template-columns:1.05fr 1.3fr auto 18px;align-items:center;gap:16px;width:100%;padding:13px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}
.ch2-row:last-child{border-bottom:0}
.ch2-row:hover{background:var(--surface)}
.ch2-row strong,.ch2-row b{display:block;font-size:13px}
.ch2-row em,.ch2-row small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-style:normal}
.ch2-row i{font-style:normal;color:var(--teal);font-size:18px}
.ch2-chip{font-size:10px;font-weight:700;padding:4px 8px;border-radius:999px}
.ch2-chip.good{color:var(--text);background:var(--surface)}
.ch2-chip.risk{color:var(--text);background:var(--surface)}
.ch2-chip.neutral{color:#afc6d7;background:var(--surface)}
@media(max-width:900px){.ch2-overview{grid-template-columns:1fr 1fr}
.ch2-row{grid-template-columns:1fr auto;gap:8px}
.ch2-row>span:nth-child(2){grid-column:1}
.ch2-row>i{grid-column:2;grid-row:1}
.ch2-head{display:block}
.ch2-head>div:last-child{margin-top:12px}
}
@media(max-width:620px){.ch2-overview{grid-template-columns:1fr}
.ch2-filters{flex-direction:column}
.ch2-dimension header{align-items:flex-start;flex-direction:column}
.ch2-action{margin-left:0}
}


/* Client health drilldown */
.ch3-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.ch3-head h1,.ch3-detail h1{margin:0;font:700 30px var(--font-ui);letter-spacing:-.5px}
.ch3-head p,.ch3-detail p{margin:5px 0;color:var(--muted)}
.ch3-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.ch3-summary{padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.ch3-summary small,.ch3-detail small,.ch3-reason small,.ch3-signal-grid small{color:#aac5d9;font-size:11px}
.ch3-summary>div{margin:10px 0}
.ch3-summary p{margin:0;color:var(--muted);font-size:10px}
.ch3-chart{display:flex;align-items:center;gap:7px}
.ch3-chart span{display:flex;align-items:center;gap:3px;font-size:10px;color:var(--muted)}
.ch3-chart span i{display:block;width:calc(5px + var(--n)*8px);height:7px;border-radius:4px;background:currentColor}
.ch3-chart .green{color:var(--text)}
.ch3-chart .yellow{color:var(--text)}
.ch3-chart .orange{color:#f39b54}
.ch3-chart .red{color:#fa8588}
.ch3-chart b{color:var(--text)}
.ch3-sections{display:grid;gap:15px}
.ch3-section{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}
.ch3-section header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}
.ch3-section h2{margin:0;font:600 18px var(--font-ui)}
.ch3-section p{margin:4px 0 0;color:var(--muted);font-size:12px}
.ch3-row{display:grid;grid-template-columns:1fr 1.25fr auto 18px;gap:16px;align-items:center;width:100%;padding:13px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}
.ch3-row:last-child{border-bottom:0}
.ch3-row:hover{background:var(--surface)}
.ch3-row strong{display:block;font-size:13px}
.ch3-row em{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-style:normal}
.ch3-row>span:nth-child(2){font-size:12px;color:var(--text)}
.ch3-row>i{color:var(--teal);font-style:normal;font-size:18px}
.ch3-grade{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:700}
.ch3-grade i{width:6px;height:6px;border-radius:50%;background:currentColor}
.ch3-grade.green{color:var(--text);background:var(--surface)}
.ch3-grade.yellow{color:var(--text);background:var(--surface)}
.ch3-grade.orange{color:#f39b54;background:var(--surface)}
.ch3-grade.red{color:#fa8588;background:var(--surface)}
.ch3-back{margin-bottom:14px}
.ch3-detail{display:grid;gap:16px}
.ch3-detail>header{display:flex;align-items:start;justify-content:space-between;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ch3-reason{padding:20px;border-left:4px solid #f39b54;border-radius:10px;background:var(--surface)}
.ch3-reason h2{margin:7px 0;font:600 20px var(--font-ui)}
.ch3-signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ch3-signal-grid article{padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.ch3-signal-grid b{display:block;margin-top:7px;font-size:13px;line-height:1.4}
.ch3-evidence{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ch3-evidence h2{margin:0 0 10px;font:600 18px var(--font-ui)}
.ch3-evidence p{display:flex;justify-content:space-between;gap:15px;margin:0;padding:12px 0;border-bottom:1px solid var(--line);color:var(--text)}
.ch3-evidence p:last-child{border:0}
.ch3-evidence span{color:var(--muted);font-size:12px}
.ch3-detail-actions{text-align:right}
@media(max-width:980px){.ch3-summary-grid,.ch3-signal-grid{grid-template-columns:1fr 1fr}
.ch3-row{grid-template-columns:1fr auto}
.ch3-row>span:nth-child(2){grid-column:1}
.ch3-row>i{grid-column:2;grid-row:1}
}
@media(max-width:620px){.ch3-head{display:block}
.ch3-head>div:last-child{margin-top:12px}
.ch3-summary-grid,.ch3-signal-grid{grid-template-columns:1fr}
.ch3-section header{align-items:flex-start;flex-direction:column}
.ch3-evidence p{display:block}
.ch3-evidence span{display:block;margin-top:4px}
}


/* Think tank */
.think-page{display:none;padding:28px 30px 52px;min-height:calc(100vh - 72px)}
.think-page.open{display:block}
.tt-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.tt-eyebrow{margin:0 0 6px;color:var(--teal);font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.tt-head h1,.tt-detail h1{margin:0;font:700 30px var(--font-ui);letter-spacing:-.5px}
.tt-head>div>p:not(.tt-eyebrow){margin:5px 0;color:var(--muted)}
.tt-btn{border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:var(--surface);color:var(--text);font:600 13px var(--font-ui);cursor:pointer;margin-left:6px}
.tt-btn.primary{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.tt-btn.selected{border-color:var(--teal);color:var(--teal)}
.tt-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.tt-overview article,.tt-challenge,.tt-card,.tt-detail-grid article,.tt-evidence,.tt-discussion,.tt-timeline{border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.tt-overview article{padding:15px}
.tt-overview small{color:#aac5d9;font-size:11px}
.tt-overview b{display:block;margin:8px 0 4px;color:var(--teal);font:700 22px var(--font-ui)}
.tt-overview span{color:var(--muted);font-size:11px}
.tt-challenge{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px;margin-bottom:16px;background:var(--surface)}
.tt-challenge small{color:var(--text);text-transform:uppercase;font-size:10px;letter-spacing:.08em}
.tt-challenge h2{margin:5px 0;font:600 19px var(--font-ui)}
.tt-challenge p{margin:0;color:var(--text)}
.tt-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow:auto}
.tt-tabs button{white-space:nowrap;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:11px 13px;font:600 12px var(--font-ui);cursor:pointer}
.tt-tabs button.active{color:var(--surface);border-color:var(--teal)}
.tt-toolbar{display:flex;gap:9px;margin-bottom:14px}
.tt-toolbar input,.tt-toolbar select,.tt-modal input,.tt-modal select,.tt-modal textarea{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:10px;font:13px var(--font-ui)}
.tt-toolbar input{flex:1}
.tt-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tt-card{padding:16px;cursor:pointer;transition:.15s}
.tt-card:hover{transform:translateY(-2px);border-color:var(--line)}
.tt-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:10px;color:var(--muted)}
.tt-card h3{margin:12px 0 7px;font:600 17px var(--font-ui)}
.tt-card>p{height:54px;margin:0;color:var(--text);line-height:1.45;font-size:12px;overflow:hidden}
.tt-meta{display:grid;gap:3px;margin:13px 0;color:var(--text);font-size:11px}
.tt-meta span{color:var(--muted)}
.tt-card footer{display:flex;flex-wrap:wrap;gap:9px;border-top:1px solid var(--line);padding-top:10px;color:#aac5d9;font-size:10px}
.tt-status{border-radius:99px;padding:4px 7px;font-weight:700}
.tt-status.submitted{color:var(--text);background:var(--surface)}
.tt-status.under-review{color:var(--text);background:var(--surface)}
.tt-status.approved{color:var(--text);background:var(--surface)}
.tt-status.in-progress{color:#a9c8ff;background:var(--surface)}
.tt-status.implemented{color:var(--text);background:var(--surface)}
.tt-detail{display:grid;gap:16px}
.tt-detail>header{display:flex;justify-content:space-between;gap:20px;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.tt-detail>header p{color:var(--text);line-height:1.5}
.tt-detail-actions{display:flex;align-items:start}
.tt-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}
.tt-detail-grid article,.tt-evidence,.tt-discussion,.tt-timeline{padding:18px}
.tt-detail h2{margin:0 0 10px;font:600 18px var(--font-ui)}
.tt-detail-grid p,.tt-note{color:var(--text);line-height:1.55;font-size:13px}
.tt-detail dl{display:grid;grid-template-columns:140px 1fr;gap:10px;margin:18px 0}
.tt-detail dt{color:#9dbbd0;font-size:12px}
.tt-detail dd{margin:0;font-size:12px}
.tt-tag{display:inline-block;margin:0 4px 4px 0;padding:4px 7px;border-radius:99px;background:var(--surface);color:var(--text)}
.tt-people{display:grid;gap:3px;margin-bottom:13px}
.tt-people b{margin-top:6px;font-size:12px}
.tt-people small{color:var(--muted);font-size:11px}
.tt-evidence>div{border-bottom:1px solid var(--line);padding:10px 0}
.tt-evidence p{margin:4px 0;color:var(--text);font-size:12px}
.tt-review-actions{display:flex;justify-content:flex-end;gap:6px}
.tt-discussion p{padding:11px 0;margin:0;border-bottom:1px solid var(--line);color:var(--text);font-size:12px}
.tt-discussion form{display:flex;gap:8px;padding-top:12px}
.tt-discussion input{flex:1;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:9px}
.tt-timeline p{margin:10px 0;color:var(--text);font-size:12px}
.tt-back{margin:0 0 14px}
.tt-modal{max-width:640px}
.tt-modal textarea{min-height:72px;resize:vertical}
.tt-modal details{color:var(--text);font-size:12px}
.tt-optional{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.tt-similar{padding:10px;border-left:3px solid var(--amber);background:var(--surface);color:var(--text);font-size:12px}
.tt-empty{padding:50px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}
@media(max-width:1050px){.tt-list{grid-template-columns:1fr 1fr}
.tt-overview{grid-template-columns:1fr 1fr}
.tt-detail-grid{grid-template-columns:1fr}
}
@media(max-width:680px){.think-page{padding:20px 12px}
.tt-head,.tt-challenge,.tt-detail>header{display:block}
.tt-head>div:last-child,.tt-challenge .tt-btn,.tt-detail-actions{margin-top:12px}
.tt-list,.tt-overview{grid-template-columns:1fr}
.tt-toolbar,.tt-discussion form{flex-direction:column}
.tt-detail dl{grid-template-columns:1fr}
.tt-optional{grid-template-columns:1fr}
}


/* Business centre */
.business-nav-group{display:grid;margin:4px 0}
.business-nav-button{position:relative}
.business-nav-button i{margin-left:auto;font-style:normal;transition:transform .18s ease}
.business-nav-group.expanded .business-nav-button i{transform:rotate(180deg)}
.bc-subnav{display:none;padding:4px 10px 8px}
.business-nav-group.expanded .bc-subnav,.bc-subnav.open{display:grid;gap:2px}
.bc-subnav button{border:0;background:transparent;color:#596271;text-align:left;border-radius:9px;padding:9px 12px;font:600 12px var(--font-ui);cursor:pointer;white-space:nowrap}
.bc-subnav button:hover,.bc-subnav button.active{background:#f3f1e9;color:#17191d}
body .nav .business-nav-button[data-access-restricted="true"],body .nav .bc-subnav button[data-bc-view="referrals"][data-access-restricted="true"],body .nav .bc-subnav button[data-bc-view="pitch"][data-access-restricted="true"]{display:flex!important}
.bc-page{--bc-ink:#1b1d21;--bc-muted:#65707b;--bc-line:#e3e4e8;--bc-paper:#fff;--bc-accent:#13b7a5;display:none;max-width:1500px;min-height:calc(100vh - 72px);padding:30px 32px 72px;color:var(--bc-ink);font-family:var(--font-ui)}
.bc-page.open{display:block}
.bc-page *{box-sizing:border-box}
.bc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin:0 0 22px}
.bc-head h1{font:700 clamp(25px,3vw,35px)/1.15 var(--font-ui);letter-spacing:-.03em;margin:3px 0 7px;color:var(--bc-ink)}
.bc-head p{margin:0;color:var(--bc-muted);font-size:13px;line-height:1.5}
.bc-eyebrow{color:#009e8d!important;text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:10px!important}
.bc-head-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;min-width:max-content}
.bc-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:8px 12px;border:1px solid #cfd5da;border-radius:9px;background:var(--surface);color:#1b1d21;font:700 11px/1.2 var(--font-ui);white-space:nowrap;cursor:pointer;text-decoration:none}
.bc-btn:hover{background:#f3f5f5;border-color:#9ca7ad}
.bc-btn.primary{background:#1b1d21;color:var(--surface);border-color:#1b1d21}
.bc-btn.primary:hover{background:#35383f}
.bc-btn:focus-visible,.bc-page button:focus-visible,.bc-page input:focus-visible,.bc-page select:focus-visible,.bc-dialog input:focus-visible,.bc-dialog select:focus-visible,.bc-dialog textarea:focus-visible{outline:2px solid #0a83e5;outline-offset:2px}
.bc-notice{margin:0 0 16px;padding:11px 14px;border:1px solid #a4ded5;border-radius:10px;background:#e8f9f5;color:#174c47;font-size:12px}
.bc-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:0 0 18px}
.bc-toolbar label{display:grid;gap:5px;color:var(--bc-muted);font-size:10px;font-weight:700}
.bc-timeline-button{min-width:205px;justify-content:flex-start;font-weight:600}
.bc-toolbar input,.bc-toolbar select,.bc-field input,.bc-field select,.bc-field textarea{min-height:35px;border:1px solid #cfd5da;border-radius:9px;background:var(--surface);color:#1b1d21;padding:8px 10px;font:12px var(--font-ui)}
.bc-toolbar input{min-width:210px}
.bc-toolbar input::placeholder,.bc-field input::placeholder{color:#87919a}
.bc-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}
.bc-metrics-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.bc-metric{display:grid;align-content:start;gap:6px;min-width:0;min-height:116px;padding:15px 17px;border:1px solid var(--bc-line);border-radius:14px;background:var(--surface);color:var(--bc-ink);text-align:left;cursor:pointer;box-shadow:0 1px 2px #16171b08}
.bc-metric:hover{border-color:#51c9bd;box-shadow:0 3px 12px #139a8c17}
.bc-metric small{color:var(--bc-muted);font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-metric b{font:700 clamp(20px,2.3vw,29px)/1.1 var(--font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-metric span{color:var(--bc-muted);font-size:11px;line-height:1.35}
.bc-grid-two{display:grid;grid-template-columns:1.3fr 1fr;gap:16px}
.bc-stream-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 18px}
.bc-stream-panel{padding:18px;border:1px solid var(--bc-line);border-radius:14px;background:var(--surface);box-shadow:0 1px 2px #16171b07}
.bc-stream-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.bc-stream-panel h2{margin:3px 0 0;font:700 18px var(--font-ui)}
.bc-stream-panel header small{color:var(--bc-accent);font-size:9px;font-weight:800;letter-spacing:.1em}
.bc-stream-bar{display:grid;grid-template-columns:92px minmax(100px,1fr) 105px;align-items:center;gap:10px;margin:10px 0;font-size:11px}
.bc-stream-bar>i{height:9px;overflow:hidden;border-radius:99px;background:#edf0f2}
.bc-stream-bar>i>b{display:block;height:100%;border-radius:inherit;background:#8ca4b1}
.bc-stream-bar>i>b.target{background:#f1be3e}
.bc-stream-bar>i>b.pipeline{background:#f18c72}
.bc-stream-bar>i>b.achieved{background:#21b8a6}
.bc-stream-bar>strong{text-align:right;font-size:11px}
.bc-stream-foot{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid #edf0f2;color:var(--bc-muted);font-size:10px}
.bc-stream-foot b{display:block;margin-top:3px;color:var(--bc-ink);font-size:12px}
.bc-card{min-width:0;margin:0 0 17px;padding:18px;border:1px solid var(--bc-line);border-radius:14px;background:var(--bc-paper);box-shadow:0 1px 2px #16171b07}
.bc-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.bc-card-head h2{margin:0;color:var(--bc-ink);font:700 17px/1.2 var(--font-ui)}
.bc-card-head .bc-btn{flex:none}
.bc-empty{margin:8px 0;color:var(--bc-muted);font-size:12px;line-height:1.5}
.bc-row{display:grid;grid-template-columns:minmax(170px,1.5fr) minmax(75px,.7fr) minmax(90px,.8fr) minmax(90px,.8fr) minmax(85px,.7fr) minmax(135px,1fr);align-items:center;gap:12px;width:100%;padding:13px 5px;border:0;border-bottom:1px solid #edf0f2;background:transparent;color:var(--bc-ink);text-align:left;cursor:pointer}
.bc-row:hover,.bc-company-row:hover{background:#f8faf9}
.bc-row:last-child,.bc-company-row:last-child,.bc-simple-row:last-child{border-bottom:0}
.bc-row span,.bc-company-row span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.bc-row b,.bc-company-row b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-row small,.bc-company-row small,.bc-simple-row small{display:block;margin-top:3px;color:var(--bc-muted);font-size:10px;line-height:1.35}
.bc-row small{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.bc-num{white-space:nowrap;font-weight:700;font-size:12px}
.bc-chip{display:inline-flex;max-width:100%;align-items:center;min-height:22px;padding:3px 8px;border:1px solid #d4e5de;border-radius:99px;background:#eef8f2;color:#185b49;font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-stat-line,.bc-simple-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 3px;border-bottom:1px solid #edf0f2;font-size:12px}
.bc-stat-line b,.bc-simple-row strong{color:var(--bc-ink);white-space:nowrap}
.bc-simple-row>span:first-child{min-width:0}
.bc-simple-row b{display:block;overflow:hidden;text-overflow:ellipsis}
.bc-simple-row .bc-btn{margin-left:auto}
.bc-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.bc-row-actions .bc-btn{margin-left:0}
.bc-company-row{display:grid;grid-template-columns:minmax(190px,1.7fr) minmax(100px,1fr) minmax(70px,.6fr) minmax(120px,1fr);gap:14px;align-items:center;width:100%;padding:14px 5px;border:0;border-bottom:1px solid #edf0f2;background:transparent;color:var(--bc-ink);text-align:left;cursor:pointer;font-size:12px}
.bc-list-card{margin:0 0 10px;padding:15px;border:1px solid var(--bc-line);border-radius:11px;background:#fcfdfb}
.bc-list-card:last-child{margin-bottom:0}
.bc-list-card>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.bc-list-card b{font-size:13px}
.bc-list-card small{display:block;margin-top:4px;color:var(--bc-muted);font-size:11px}
.bc-list-card strong{display:block;margin-top:8px;font-size:16px}
.bc-list-card p{margin:8px 0;color:var(--bc-muted);font-size:11px;line-height:1.4}
.bc-list-card .bc-btn{margin:6px 6px 0 0}
.bc-history{margin-top:10px;border-top:1px solid #edf0f2;padding-top:8px;color:var(--bc-muted);font-size:10px}
.bc-history summary{cursor:pointer;font-weight:700;color:#414950}
.bc-history p{margin:6px 0}
.bc-lifecycle{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.bc-lifecycle span{padding:5px 8px;border:1px solid #dfe4e7;border-radius:99px;background:#f7f8f8;color:#7a838b;font-size:9px;font-weight:700}
.bc-lifecycle span.done{border-color:#9edbd1;background:#e9f8f4;color:#176052}
.bc-target-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.bc-target-grid span{display:grid;gap:4px;padding:9px;border:1px solid #e7eaec;border-radius:8px;background:var(--surface)}
.bc-target-grid small{color:var(--bc-muted);font-size:10px}
.bc-target-grid b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-local-tabs{display:flex;gap:6px;overflow:auto;margin:0 0 16px;padding-bottom:4px}
.bc-local-tabs button{flex:none;border:1px solid #dce1e5;border-radius:9px;background:var(--surface);color:#4b5760;padding:8px 12px;font:700 11px var(--font-ui);cursor:pointer}
.bc-local-tabs button.active{background:#1b1d21;border-color:#1b1d21;color:var(--surface)}
.bc-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:8px 0}
.bc-facts>div{display:grid;gap:4px;min-width:0}
.bc-facts small{font-size:10px;color:var(--bc-muted)}
.bc-facts b{font-size:12px;overflow-wrap:anywhere}
.bc-card>p{font-size:12px;color:var(--bc-muted);line-height:1.5}
.bc-card>.bc-btn{margin:4px 8px 6px 0}
.bc-dialog-backdrop{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:18px;background:#161a20a6}
.bc-dialog{width:min(650px,100%);max-height:min(90vh,800px);overflow:auto;border-radius:16px;background:var(--surface);color:#1b1d21;box-shadow:0 18px 60px #0004}
.bc-dialog>header{display:flex;justify-content:space-between;gap:15px;align-items:start;padding:22px 24px 16px;border-bottom:1px solid #e9ecee}
.bc-dialog h2{margin:0;font:700 22px var(--font-ui)}
.bc-dialog header p{margin:5px 0 0;color:#65707b;font-size:12px;line-height:1.45}
.bc-dialog-close{width:30px;height:30px;border:1px solid #dce1e5;border-radius:8px;background:var(--surface);color:#1b1d21;font-size:20px;cursor:pointer}
.bc-dialog form{padding:20px 24px 24px}
.bc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bc-field{display:grid;align-content:start;gap:6px;font-size:11px;font-weight:700;color:#414950}
.bc-field textarea{min-height:83px;resize:vertical}
.bc-field small{color:var(--bc-muted);font-size:10px;font-weight:500;line-height:1.35}
.bc-currency-input{display:flex;align-items:center;min-height:35px;border:1px solid #cfd5da;border-radius:9px;background:var(--surface);overflow:hidden}
.bc-currency-input span{padding:8px 0 8px 10px;color:#596271;font-weight:700}
.bc-currency-input input{min-width:0!important;flex:1;border:0!important;border-radius:0!important;padding-left:6px!important;outline:0!important}
.bc-company-contacts{display:grid;gap:10px;padding:0;border:0}
.bc-company-contacts>div:first-child,.bc-import-template{display:flex;align-items:center;justify-content:space-between;gap:10px}
.bc-company-contacts>div:first-child b{font-size:12px}
.bc-company-contacts>div:first-child small,.bc-contact-note{display:block;margin:3px 0 0;color:var(--bc-muted);font-size:10px;font-weight:500;line-height:1.4}
.bc-contact-note{grid-column:1/-1}
.bc-company-contact{position:relative;margin:0;padding:12px;border:1px solid #e0e5e6;border-radius:10px}
.bc-company-contact legend{padding:0 4px;color:#414950;font-size:11px;font-weight:700}
.bc-remove-contact{margin-top:10px;min-height:30px;padding:6px 9px}
.bc-import-template{padding:10px 0 2px;color:var(--bc-muted);font-size:11px}
.bc-wide{grid-column:1/-1}
.bc-check{display:flex;align-items:center;gap:8px;grid-column:1/-1;font-size:12px;color:#414950}
.bc-check input{width:15px;height:15px;accent-color:#08a993}
.bc-choice-list{display:flex;flex-wrap:wrap;gap:8px;border:1px solid #e0e5e6;border-radius:9px;padding:10px}
.bc-choice-list legend{padding:0 4px;color:#414950;font-size:11px;font-weight:700}
.bc-choice-list label{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border:1px solid #e1e5e7;border-radius:8px;font-size:11px}
.bc-choice-list p{margin:0;color:#65707b;font-size:11px}
.bc-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}
.bc-form-error{margin:14px 0 0;padding:9px 11px;border-radius:8px;background:#fff0ed;color:#9a2c23;font-size:12px}
.bc-import-preview{max-height:300px;overflow:auto}
.bc-import-preview>p{font-size:11px;color:#65707b}
.bc-import-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf0f2;font-size:11px}
.bc-import-row b,.bc-import-row small{display:block}
.bc-import-row small{margin-top:3px;color:#65707b}
.bc-import-row select{min-width:140px;border:1px solid #cfd5da;border-radius:8px;background:var(--surface);color:#1b1d21;padding:7px}
@media(max-width:1150px){.bc-metrics-four{grid-template-columns:repeat(2,minmax(0,1fr))}
.bc-row{grid-template-columns:minmax(170px,1.5fr) 90px 90px 90px}
.bc-row>span:nth-child(5),.bc-row>span:nth-child(6){display:none}
}
@media(max-width:760px){.bc-page{padding:22px 14px 60px}
.bc-head{display:block}
.bc-head-actions{justify-content:flex-start;margin-top:12px}
.bc-metrics,.bc-metrics-four,.bc-grid-two,.bc-facts,.bc-target-grid,.bc-stream-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
.bc-row{grid-template-columns:minmax(130px,1fr) 85px}
.bc-row>span:nth-child(3),.bc-row>span:nth-child(4){display:none}
.bc-company-row{grid-template-columns:minmax(130px,1fr) auto}
.bc-company-row>span:nth-child(2),.bc-company-row>span:nth-child(3){display:none}
.bc-form-grid{grid-template-columns:1fr}
.bc-dialog form,.bc-dialog>header{padding-left:16px;padding-right:16px}
}
@media(max-width:520px){.bc-metrics,.bc-metrics-four,.bc-grid-two,.bc-facts,.bc-target-grid,.bc-stream-layout{grid-template-columns:1fr}
.bc-head-actions .bc-btn{width:100%}
.bc-simple-row{align-items:flex-start;flex-wrap:wrap}
.bc-stream-bar{grid-template-columns:76px 1fr}
.bc-stream-bar>strong{grid-column:2;text-align:left}
}
.bc-account-table { overflow-x:auto; }
.bc-account-table .bc-account-columns { display:grid; grid-template-columns:1.2fr .8fr 1fr 1fr 1fr 1.4fr; gap:12px; min-width:900px; align-items:center; }
.bc-account-table > .bc-account-columns { padding:12px 4px; font-size:11px; color:#626b7e; }
.bc-account-table .bc-company-row span { overflow-wrap:anywhere; white-space:normal; min-width:0; }


/* Business growth */
.bg-table{width:100%;overflow:auto;border:1px solid #e3e6e8;border-radius:10px;margin:12px 0}
.bg-table table{width:100%;min-width:650px;border-collapse:collapse}
.bg-table th,.bg-table td{text-align:left;vertical-align:top;padding:12px 10px;border-bottom:1px solid #edf0f2;font:12px/1.45 var(--font-ui);color:#20262b}
.bg-table th{font-size:10px;text-transform:uppercase;letter-spacing:.04em;background:#f5f7f7;color:#64727c;white-space:nowrap}
.bg-table tr:last-child td{border-bottom:0}
.bg-table small{display:block;color:#697781;margin-top:4px;font-size:10px;max-width:250px}
.bg-table .bc-btn{margin:4px 3px 0 0}
.bg-table .bc-chip{margin-top:4px}
.bg-table input{width:100%;min-width:110px;min-height:35px;padding:7px 9px;border:1px solid #cfd5da;border-radius:7px;background:var(--surface);color:#20262b;font:12px var(--font-ui)}
.bg-table input[type=number]{min-width:130px}
.bg-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 20px}
.bg-kpis article{padding:14px;border:1px solid #e1e6e6;background:var(--surface);border-radius:12px;display:grid;gap:7px}
.bg-kpis small{font-size:11px;color:#63717c}
.bg-kpis strong{font:700 25px var(--font-ui);letter-spacing:-.02em;color:#1b2227}
.bg-footnote{font-size:11px;color:#677681;line-height:1.6}
.bg-idea{display:flex;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid #edf0f2}
.bg-idea>div{flex:1}
.bg-idea small{display:block;font-size:11px;color:#66727c;margin-top:5px}
.bg-idea p{font-size:12px;line-height:1.5;color:#66727c}
.bg-choice{border:1px solid #d9e1e4;border-radius:10px;display:flex;flex-wrap:wrap;gap:12px;padding:14px}
.bg-choice legend{font-size:12px;font-weight:700}
.bg-choice label{display:flex;gap:6px;align-items:center;font-size:12px}
.bg-choice input{width:16px;min-height:16px;accent-color:#14a998}
.bg-trend{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:12px;margin:20px 0;border-bottom:1px solid #e3e7e8;padding-bottom:12px}
.bg-trend>div{display:flex;flex-direction:column;align-items:center;justify-content:end;gap:8px;font-size:11px}
.bg-trend i{display:block;background:#2cb7a8;width:45%;min-height:2px;border-radius:5px 5px 0 0}
.bg-trend small{color:#667781}
.bg-actions{display:flex;flex-wrap:wrap;gap:8px}
.bc-dialog:has(.bg-table){width:min(1120px,calc(100vw - 32px));max-height:92vh;overflow:auto}
.bc-dialog:has(.bg-table)>header{position:sticky;top:0;background:var(--surface);z-index:2}
.bc-dialog:has(.bg-table) form{min-width:0}
.bc-dialog .bg-table{max-height:52vh;overflow:auto}
.bc-dialog .bg-table thead{position:sticky;top:0;z-index:1}
.bc-card>p{font-size:12px;line-height:1.6}
.bc-card details{font-size:11px;color:#64737c}
.bc-card details summary{cursor:pointer;font-weight:700}
.bc-card-head{flex-wrap:wrap}
.bc-page .bc-stream-layout:has(>.bc-stream-panel:only-child){grid-template-columns:1fr}
@media(max-width:750px){.bg-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.bg-idea{flex-wrap:wrap}
.bg-trend{gap:4px}
.bg-trend strong{font-size:9px}
.bc-dialog:has(.bg-table){width:calc(100vw - 16px)}
.bg-kpis strong{font-size:20px}
}
.bg-plan-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.bg-seller-link { display: grid; grid-template-columns: 1fr 2fr auto; align-items: end; gap: 8px; margin-bottom: 12px; }
@media (max-width: 600px) { .bg-seller-link { grid-template-columns: 1fr; } }
.bg-plan-summary { display:flex; flex-wrap:wrap; gap:16px 32px; margin:16px 0; }
.bg-plan-summary dt { font-size:11px; color:#657086; }
.bg-plan-summary dd { margin:4px 0 0; font-weight:600; }


/* Growth centre */
.gc-page{display:none;padding:28px 30px 56px;min-height:calc(100vh - 72px)}
.gc-page.open{display:block}
.gc-subnav{display:none;padding:4px 10px 8px}
.gc-subnav.open{display:grid;gap:2px}
.gc-subnav button{border:0;background:transparent;color:#a9c2d6;text-align:left;border-radius:7px;padding:8px 12px;font:600 12px var(--font-ui);cursor:pointer}
.gc-subnav button:hover,.gc-subnav button.active{background:var(--surface);color:var(--surface)}
.gc-subnav .gc-restricted{margin-top:6px;border-top:1px solid var(--line);padding-top:12px;color:#e6bd58}
.gc-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.gc-kicker{color:var(--teal)!important;text-transform:uppercase;letter-spacing:.1em;font-size:11px}
.gc-head h1{margin:0;font:700 29px var(--font-ui)}
.gc-head p{margin:5px 0;color:var(--muted)}
.gc-btn{margin-left:7px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:9px 12px;font:600 13px var(--font-ui);cursor:pointer}
.gc-btn.primary{border-color:var(--teal);background:var(--teal);color:var(--muted)}
.gc-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.gc-metrics>article,.gc-card,.gc-skill-grid article,.gc-path article{border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.gc-metrics>article{padding:16px}
.gc-metrics small{display:block;color:#a8c3d5;font-size:11px}
.gc-metrics b{display:block;margin:7px 0 4px;font:700 21px var(--font-ui)}
.gc-metrics span{color:var(--muted);font-size:11px}
.gc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gc-grid>.gc-card:first-child{grid-column:span 2}
.gc-card{padding:17px}
.gc-card header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}
.gc-card h2{margin:0;font:600 17px var(--font-ui)}
.gc-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.gc-list>div:last-child{border:0}
.gc-list b,.gc-list small{display:block}
.gc-list b{font-size:12px}
.gc-list small{margin-top:3px;color:var(--muted);font-size:11px}
.gc-pill{display:inline-flex;white-space:nowrap;padding:4px 8px;border-radius:99px;background:var(--surface);color:var(--text);font-size:10px;font-weight:700}
.gc-pill.teal{background:var(--surface);color:var(--text)}
.gc-pill.amber{background:var(--surface);color:var(--text)}
.gc-progress p{display:grid;grid-template-columns:135px 1fr 76px;gap:9px;align-items:center;font-size:12px}
.gc-progress i{height:8px;border-radius:99px;background:var(--surface);overflow:hidden}
.gc-progress i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#40d1be,#328ce2)}
.gc-progress em{color:var(--text);font-style:normal;font-size:11px}
.gc-copy{color:var(--text);line-height:1.55;font-size:12px}
.gc-actions{margin-top:14px}
.gc-tabs{display:flex;gap:5px;overflow:auto;border-bottom:1px solid var(--line);margin:-2px -2px 14px}
.gc-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:10px 12px;font:600 12px var(--font-ui);white-space:nowrap}
.gc-tabs button.active{color:var(--surface);border-color:var(--teal)}
.gc-skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.gc-skill-grid article{padding:16px}
.gc-skill-grid small{color:var(--muted);font-size:10px}
.gc-skill-grid h2{margin:8px 0;font:600 18px var(--font-ui)}
.gc-skill-grid p{font-size:12px;color:var(--text);line-height:1.5}
.gc-learning{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.gc-learning article{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.gc-learning b,.gc-learning small{display:block}
.gc-learning small{margin:7px 0;color:var(--muted);font-size:11px}
.gc-path{display:flex;align-items:stretch;gap:12px}
.gc-path article{flex:1;padding:18px}
.gc-path small{color:var(--muted)}
.gc-path h2{margin:7px 0;font:600 19px var(--font-ui)}
.gc-path p{color:var(--text);font-size:12px;line-height:1.55}
.gc-path>i{display:grid;place-items:center;color:var(--teal);font-size:25px;font-style:normal}
.gc-callout{display:flex;gap:16px;align-items:flex-start;margin-bottom:16px;background:var(--surface)}
.gc-callout b{min-width:120px}
.gc-callout span{color:var(--text);line-height:1.5;font-size:12px}
.gc-modal{max-width:570px}
.gc-modal label{display:grid;gap:6px;color:var(--text);font-size:12px}
.gc-modal input{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:10px;font:13px var(--font-ui)}
@media(max-width:1100px){.gc-metrics{grid-template-columns:repeat(2,1fr)}
.gc-grid{grid-template-columns:1fr 1fr}
.gc-grid>.gc-card:first-child{grid-column:span 2}
.gc-skill-grid,.gc-learning{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){.gc-page{padding:20px 12px}
.gc-head{display:block}
.gc-head>div:last-child{margin-top:12px}
.gc-metrics,.gc-grid,.gc-skill-grid,.gc-learning{grid-template-columns:1fr}
.gc-grid>.gc-card:first-child{grid-column:auto}
.gc-path{flex-direction:column}
.gc-path>i{transform:rotate(90deg)}
.gc-progress p{grid-template-columns:105px 1fr 58px}
.gc-list>div{align-items:flex-start;flex-direction:column}
.gc-btn{margin:3px}
.gc-callout{display:block}
.gc-callout span{display:block;margin-top:8px}
}


/* Hrms departments */
.hrms-page .org-dept{display:grid;gap:16px}
.org-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
.org-summary article{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.org-summary small{color:var(--muted)}
.org-summary b{display:block;margin-top:5px;font:700 21px var(--font-ui)}
.org-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px}
.org-list{display:grid;gap:7px;max-height:640px;overflow:auto}
.org-list button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:11px;text-align:left;cursor:pointer}
.org-list button.active{border-color:var(--teal);background:var(--surface)}
.org-list small{display:block;color:var(--muted);margin-top:3px}
.org-detail{border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:17px}
.org-detail h2{margin:0;font:600 19px var(--font-ui)}
.org-ladder{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}
.org-ladder span{padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font-size:12px}
.org-ladder span:last-child{border-color:var(--teal);color:var(--text)}
.org-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.org-meta div{padding:11px;border-radius:8px;background:var(--surface)}
.org-meta small{display:block;color:var(--muted);font-size:11px}
.org-meta b{display:block;margin-top:5px;font-size:13px}
.org-note{padding:12px;border-left:3px solid var(--amber);background:var(--surface);color:var(--text);font-size:12px;line-height:1.5}
@media(max-width:900px){.org-layout{grid-template-columns:1fr}
.org-list{max-height:240px}
.org-summary{grid-template-columns:repeat(2,1fr)}
}


/* Hrms departments enhance */
.hrms-page .org-summary{display:none!important}
.hrms-page .org-layout{grid-template-columns:minmax(0,1fr);align-items:start}
.hrms-page .org-list{display:none!important}
.dept-picker{display:grid;grid-template-columns:minmax(220px,360px) minmax(220px,1fr);gap:10px;margin-bottom:16px}
.dept-picker input,.dept-picker select{height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:0 12px;font:13px var(--font-ui)}
.hrms-page .org-detail{min-height:460px}
.dept-workspace-tabs{display:flex;gap:8px;padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:14px}
.dept-workspace-tabs button{border:0;background:transparent;color:var(--muted);padding:8px 10px;font:600 12px var(--font-ui);cursor:pointer;border-bottom:2px solid transparent}
.dept-workspace-tabs button.active{color:var(--surface);border-color:var(--teal)}
.dept-ladder-table{width:100%;border-collapse:collapse}
.dept-ladder-table th,.dept-ladder-table td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}
.dept-ladder-table th{font-size:11px;color:#a9c6d9}
.dept-level{width:34px;height:28px;border-radius:7px;display:grid;place-items:center;background:var(--surface);color:var(--text);font-weight:800}
.dept-team-list{display:grid;gap:8px}
.dept-team-row{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.dept-team-row i{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#4ccdbb;color:var(--muted);font-style:normal;font-size:11px;font-weight:800}
.dept-team-row small{display:block;color:var(--muted);margin-top:3px}
.dept-team-row span{font-size:11px;color:var(--text)}
.dept-extra-note{margin-top:14px;padding:10px 12px;border-radius:8px;background:var(--surface);color:var(--text);font-size:12px}
.designation-modal .modal-grid{grid-template-columns:1fr 1fr}
.designation-modal .wide{grid-column:span 2}
@media(max-width:900px){.dept-picker{grid-template-columns:1fr}
.dept-ladder-table{min-width:620px}
.hrms-page .org-detail{overflow:auto}
}
@media(max-width:600px){.designation-modal .modal-grid{grid-template-columns:1fr}
.designation-modal .wide{grid-column:auto}
}


/* Nav router */
.nav-utility-page{margin:42px auto;padding:48px;max-width:760px;text-align:center}
.nav-utility-page h1{margin:12px 0 8px;font:700 32px var(--font-ui);letter-spacing:-.6px}
.nav-utility-page p{max-width:520px;margin:0 auto 24px;color:var(--muted);font-size:16px;line-height:1.6}
.utility-icon{width:62px;height:62px;margin:auto;display:grid;place-items:center;border:1px solid rgba(65,210,191,.42);border-radius:18px;background:rgba(65,210,191,.1);color:var(--teal);font-size:28px}


/* Access switcher */
/* Prototype access profiles: leadership and individual contributor views. */
.profile{cursor:pointer}
.profile:focus-visible{outline:2px solid var(--teal);outline-offset:4px;border-radius:8px}
.access-heading{padding:6px 11px 5px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.profile-menu .access-profile{display:grid;grid-template-columns:31px 1fr;gap:9px;align-items:center;padding:9px 11px}
.profile-menu .access-profile .access-avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--text);font-size:11px;font-weight:700}
.profile-menu .access-profile strong,.profile-menu .access-profile small{display:block}
.profile-menu .access-profile strong{font-size:13px}
.profile-menu .access-profile small{margin-top:2px;color:var(--muted);font-size:11px}
.profile-menu .access-profile.is-active{background:rgba(65,210,191,.14);outline:1px solid rgba(65,210,191,.35)}
.profile-menu .access-profile.is-active .access-avatar{background:var(--teal);color:var(--muted)}
.access-note{padding:9px 11px 4px;color:var(--muted);font-size:11px;line-height:1.4}
.profile-menu{width:min(330px,calc(100vw - 20px));max-height:calc(100vh - 80px);overflow:hidden}
.access-team-search{width:calc(100% - 18px);margin:6px 9px 9px;padding:10px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:13px var(--font-ui);outline:none}
.access-team-search:focus{border-color:var(--teal)}
.access-profile-list{overflow-y:auto;max-height:min(390px,calc(100vh - 280px));min-height:0;padding:0 2px;scrollbar-color:#6b6f7e}
.access-team-group h3{margin:10px 11px 4px;color:#8cb1c9;font:700 11px var(--font-ui);letter-spacing:.07em;text-transform:uppercase}
.access-team-group[hidden],.access-profile[hidden]{display:none!important}

body[data-access-profile="ashok"] .leadership-only{display:none!important}
body .nav button[data-access-restricted="true"]{display:none!important}
body[data-access-profile="ashok"] .nav button[data-access-restricted="true"]{display:none!important}
body[data-access-profile="ashok"] .quick-btn{display:none!important}
body[data-access-profile="ashok"] .hero h1{font-size:31px}
.access-context{display:none;margin:0 0 20px;border:1px solid rgba(65,210,191,.32);border-radius:14px;padding:14px 17px;background:var(--surface);align-items:center;justify-content:space-between;gap:16px}
.access-context strong{display:block;font-size:14px}
.access-context span{display:block;color:var(--text);font-size:12px;margin-top:4px}
.access-context .chip{color:var(--text);border-color:var(--line);background:var(--surface)}
body[data-access-profile="ashok"] .access-context{display:flex}
body[data-access-profile="jully"] .leadership-only,body[data-access-profile="jully"] .nav button[data-access-restricted="true"]{display:none!important}
body[data-access-profile="jully"] .quick-btn{display:none!important}
body[data-access-profile="jully"] .access-context{display:flex}
.access-context.finance-context{border-color:rgba(120,175,255,.34);background:var(--surface)}
.access-context.finance-context .chip{color:var(--text);border-color:var(--line);background:var(--surface)}
@media(max-width:620px){.access-context{align-items:flex-start}
.access-context .chip{white-space:nowrap}
}


/* Role editor */
.access-role-modal{width:min(650px,calc(100vw - 24px));max-height:min(85vh,720px);overflow:auto}
.access-role-field{display:grid;gap:7px;margin:18px 0;color:var(--text);font-weight:700}
.access-role-field select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text)}
.access-view-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:12px 0;padding:14px;border:1px solid var(--line);border-radius:10px}
.access-view-grid legend{padding:0 5px;color:var(--text);font-weight:700}
.access-view-grid label{display:flex;align-items:center;gap:9px;padding:5px;color:var(--text)}
.access-view-grid input{accent-color:#42cfc3}
.access-role-cell{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.access-role-summary{white-space:nowrap}
.access-role-error{color:#ffb5b5;min-height:18px}
@media(max-width:650px){.access-view-grid{grid-template-columns:1fr}
}


/* Role management */
.sidebar{overflow-y:auto;scrollbar-color:#6b6f7e}
.role-nav-group{display:grid;gap:5px;margin:13px 0 0;padding-top:11px;border-top:1px solid rgba(126,191,230,.14)}
.role-nav-title{padding:0 15px 3px;color:#789bb4;font-size:10px;font-weight:700;letter-spacing:.12em}
.roles-page{min-height:calc(100vh - 72px);padding:24px 0 50px;color:var(--text)}
.roles-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}
.roles-eyebrow{margin:0 0 7px!important;color:var(--text);font-size:11px!important;font-weight:700;letter-spacing:.1em}
.roles-head h1{margin:0;font:700 29px var(--font-ui)}
.roles-head p{margin:6px 0 0;color:#acc8d9;font-size:13px}
.roles-local-note{flex:none;padding:7px 10px;border:1px solid var(--line);border-radius:99px;color:var(--text);font-size:11px}
.roles-layout{display:grid;grid-template-columns:minmax(230px,290px) minmax(0,1fr);gap:16px;align-items:start}
.roles-people,.roles-editor{border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.roles-people{padding:14px;position:sticky;top:15px}
.roles-people>label{display:block;margin-bottom:8px;font-weight:700}
.roles-people input,.roles-preset select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px;font:13px var(--font-ui)}
.roles-person-list{display:grid;gap:5px;max-height:calc(100vh - 230px);overflow:auto;margin-top:11px}
.roles-person-list button{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;width:100%;padding:9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.roles-person-list button:hover,.roles-person-list button.selected{border-color:var(--line);background:var(--surface)}
.roles-person-list button[hidden]{display:none}
.roles-person-list strong,.roles-person-list small{display:block}
.roles-person-list small{margin-top:2px;color:#a6c4d4;font-size:11px}
.roles-avatar{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:var(--surface);color:var(--text);font-weight:700;font-size:11px}
.roles-editor{padding:18px}
.roles-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.roles-editor-head h2{margin:0;font:700 20px var(--font-ui)}
.roles-editor-head p{margin:4px 0 0;color:#a6c4d4;font-size:12px}
.roles-view-count{white-space:nowrap;color:var(--text);font-size:12px;font-weight:700}
.roles-preset{display:block;margin:16px 0;color:var(--text);font-size:12px;font-weight:700}
.roles-preset select{display:block;margin-top:7px}
.roles-preset small{display:block;margin-top:6px;color:#9fbcd0;font-weight:400}
.roles-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.roles-group{padding:13px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.roles-group h3{margin:0 0 10px;font-size:13px}
.roles-options{display:grid;gap:5px}
.roles-options label{display:flex;align-items:center;gap:9px;min-height:30px;color:var(--text);font-size:12px;cursor:pointer}
.roles-options input{width:16px;height:16px;accent-color:#45d5c2}
.roles-editor-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}
.roles-editor-foot p{flex:1;min-width:220px;margin:0;color:#9fbcd0;font-size:11px}
.roles-editor-foot button{min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-weight:700;cursor:pointer}
.roles-editor-foot button.primary{background:#45cfc0;color:var(--muted);border-color:#45cfc0}
.roles-editor-foot button:disabled{opacity:.5;cursor:not-allowed}
.roles-empty{color:#a6c4d4;font-size:13px}
@media(max-width:900px){.roles-layout{grid-template-columns:1fr}
.roles-people{position:static}
.roles-person-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:240px}
}
@media(max-width:620px){.roles-groups,.roles-person-list{grid-template-columns:1fr}
.roles-head{flex-direction:column}
}


/* Finance */
.finance-page{display:none;padding:28px 30px 52px;min-height:calc(100vh - 72px)}
.finance-page.open{display:block}
.finance-subnav{display:none;padding:3px 0 8px}
.finance-subnav.open{display:grid}
.finance-subnav button{padding:8px 15px 8px 47px!important;font-size:12px!important;color:#9fc0d8!important}
.finance-subnav button.active{color:var(--surface)!important;background:var(--surface)}
.finance-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}
.finance-head h1{font:700 29px var(--font-ui);margin:0}
.finance-head p{margin:5px 0;color:var(--muted)}
.finance-actions,.finance-tabs{display:flex;gap:8px;flex-wrap:wrap}
.finance-btn,.finance-tabs button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:9px 12px;font:600 13px var(--font-ui);cursor:pointer}
.finance-btn.primary,.finance-tabs button.active{background:var(--teal);color:var(--muted);border-color:var(--teal)}
.finance-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin-bottom:18px}
.finance-kpi{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.finance-kpi small{color:var(--muted)}
.finance-kpi b{display:block;font:700 24px var(--font-ui);margin-top:7px}
.finance-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:18px}
.finance-card{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:18px}
.finance-card h2{margin:0 0 14px;font:600 17px var(--font-ui)}
.finance-bars{height:200px;display:flex;align-items:end;gap:12px;padding:13px 6px 28px;background:repeating-linear-gradient(to bottom,transparent 0 39px,rgba(157,207,238,.1) 40px)}
.finance-bars div{flex:1;position:relative;height:100%;display:flex;align-items:end}
.finance-bars i{display:block;width:100%;border-radius:6px 6px 0 0;background:var(--surface)}
.finance-bars small{position:absolute;bottom:-23px;width:100%;text-align:center;color:var(--muted)}
.finance-list{display:grid;gap:11px}
.finance-row{display:flex;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid var(--line);color:var(--text)}
.finance-row:last-child{border:0;padding:0}
.finance-row small{display:block;color:var(--muted);margin-top:3px}
.finance-table-wrap{border:1px solid var(--line);border-radius:14px;overflow:auto;background:var(--surface)}
.finance-table{width:100%;min-width:750px;border-collapse:collapse}
.finance-table th,.finance-table td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left}
.finance-table th{font-size:12px;color:var(--muted)}
.finance-table td{color:var(--text);font-size:13px}
.finance-table tr:last-child td{border:0}
.finance-filter{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:16px}
.finance-input,.finance-select{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:10px 11px;font:13px var(--font-ui);min-width:180px}
.finance-empty{text-align:center;padding:65px 15px;color:var(--muted)}
.finance-empty b{display:block;font:600 19px var(--font-ui);color:var(--text);margin:10px}
.finance-modal label{display:grid;gap:6px;color:var(--text);font-size:12px}
.finance-modal input,.finance-modal select,.finance-modal textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:10px;font:14px var(--font-ui)}
.finance-modal textarea{min-height:72px;resize:vertical}
.finance-modal .modal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.finance-modal .wide{grid-column:span 2}
.finance-amount{color:var(--text);font-weight:700}
.finance-note{border:1px solid var(--line);border-radius:10px;padding:12px;color:var(--muted);font-size:12px}
.finance-report{background:#f7fbff;color:var(--muted);border-radius:14px;padding:28px;min-height:400px}
.finance-report-period { text-align:center; }
.finance-report h2{color:var(--muted);text-align:center}
.finance-report .finance-row{color:var(--muted);border-color:#dbe5eb}
.finance-report small{color:var(--muted)}
@media(max-width:1100px){.finance-kpis{grid-template-columns:repeat(3,1fr)}
.finance-grid{grid-template-columns:1fr}
}
@media(max-width:650px){.finance-page{padding:20px 12px}
.finance-head{display:block}
.finance-actions{margin-top:12px}
.finance-kpis{grid-template-columns:1fr 1fr}
.finance-modal .modal-grid{grid-template-columns:1fr}
.finance-modal .wide{grid-column:auto}
}


/* Project view refinements */
.project-scope-tabs{display:flex;gap:4px;margin:0 0 12px;border-bottom:1px solid rgba(157,207,240,.18)}
.project-scope-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;color:#9db8cf;padding:9px 12px 10px;font:700 12px var(--font-ui);cursor:pointer}
.project-scope-tabs button:hover{color:var(--text)}
.project-scope-tabs button.active{color:var(--text);border-bottom-color:var(--text)}
.project-scope-note{margin:0 0 12px;color:#a9c1d5;font-size:12px}
@media(max-width:560px){.project-scope-tabs{overflow:auto}
.project-scope-tabs button{white-space:nowrap;padding-inline:9px}
}


/* Wip nav */
.wip-nav-group {
  display: grid;
  gap: 5px;
  margin: 12px 4px 0;
  padding: 11px 0 0;
  border-top: 1px solid rgba(126, 191, 230, .16);
}

.wip-nav-title {
  padding: 0 13px 5px;
  color: #7896b0;
  font: 700 10px/1 var(--font-ui);
  letter-spacing: .12em;
}

.wip-deliverables {
  opacity: .58;
  cursor: not-allowed !important;
}

.wip-deliverables small {
  margin-left: auto;
  color: #7896b0;
  font-size: 10px;
}

@media (max-width: 900px) {
  .wip-nav-group { margin-inline: 0; }
  .wip-nav-title { font-size: 0; height: 8px; padding: 0; }
}


/* Project viewport enhancements */
.pv-shell{display:grid;gap:16px;padding-bottom:24px}
.pv-back{justify-self:start}
.pv-header{display:flex;justify-content:space-between;gap:24px;padding:22px;border:1px solid rgba(123,204,225,.26);border-radius:16px;background:var(--surface)}
.pv-identity{display:flex;gap:16px;min-width:0}
.pv-mark{width:52px;height:52px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;background:linear-gradient(135deg,#39d8c2,#138f9b);color:var(--muted);font:800 18px var(--font-ui)}
.pv-badges{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:8px}
.pv-header h1{margin:0;color:var(--text);font:700 28px var(--font-ui)}
.pv-header p{margin:6px 0 0;color:var(--text);font-size:13px}
.pv-header .pv-objective{max-width:760px;color:var(--text);line-height:1.45}
.pv-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:11px;color:#a8c4d8;font-size:12px}
.pv-meta b{color:var(--text)}
.pv-header-side{display:grid;align-content:start;justify-items:end;gap:10px;min-width:180px;text-align:right;color:var(--text);font-size:13px}
.pv-pill{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font:700 11px var(--font-ui);border:1px solid transparent}
.pv-pill.green{background:var(--surface);color:var(--text);border-color:var(--line)}
.pv-pill.amber{background:var(--surface);color:var(--text);border-color:#a9831d}
.pv-pill.red{background:var(--surface);color:#ffb1bd;border-color:var(--line)}
.pv-pill.blue{background:var(--surface);color:var(--text);border-color:var(--line)}
.pv-tabs{display:flex;gap:3px;border-bottom:1px solid rgba(156,205,233,.22);overflow:auto}
.pv-tabs button{background:transparent;color:#a9c4d7;border:0;border-bottom:3px solid transparent;padding:12px 15px 11px;white-space:nowrap;font:700 13px var(--font-ui);cursor:pointer}
.pv-tabs button:hover,.pv-tabs button.active{color:var(--text);border-bottom-color:#4bd7c5}
.pv-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pv-card{border:1px solid rgba(139,207,231,.22);border-radius:14px;background:var(--surface);padding:16px;color:var(--text)}
.pv-card-head{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:13px}
.pv-card-head small{display:block;color:#77d8c8;font:800 10px var(--font-ui);letter-spacing:.08em}
.pv-card-head h3{margin:4px 0 0;font:700 18px var(--font-ui)}
.pv-actions{grid-column:span 2}
.pv-action-list{display:grid;gap:7px}
.pv-action{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;border-top:1px solid rgba(149,207,235,.14)}
.pv-action-dot{width:7px;height:7px;border-radius:50%;background:#44d6c3}
.pv-action-dot.amber{background:#ffc34a}
.pv-action-dot.red{background:#ff7f94}
.pv-action b,.pv-action strong,.pv-action small{display:block}
.pv-action b{color:var(--text);font-size:12px}
.pv-action strong{font-size:12px;margin:2px 0}
.pv-action small{color:#a8c4d7;font-size:11px}
.pv-health-content{display:flex;align-items:center;gap:15px}
.pv-health-content>div>b,.pv-health-content>div>small{display:block}
.pv-health-content>div>b{font-size:16px}
.pv-health-content>div>small,.pv-health-content p,.pv-team>small{color:#a9c5d8;font-size:11px}
.pv-health-content p{margin:7px 0 0}
.pv-ring{--pv-progress:0;position:relative;width:86px;height:86px;display:grid;place-content:center;text-align:center;border-radius:50%;background:var(--surface)}
.pv-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--surface)}
.pv-ring b,.pv-ring small{z-index:1}
.pv-ring b{font:700 19px var(--font-ui)}
.pv-ring small{font-size:10px;color:#a9c4d7}
.pv-status-list{display:grid;gap:9px}
.pv-status-list span{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;font-size:12px}
.pv-status-list i{width:8px;height:8px;border-radius:50%;background:#4cd7c5}
.pv-status-list i.blue{background:#59a6ff}
.pv-status-list i.amber{background:#ffbe4a}
.pv-status-list i.green{background:#4ed9a3}
.pv-compact-list{display:grid;gap:8px}
.pv-compact-list>div{display:flex;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid rgba(149,207,235,.12)}
.pv-compact-list span{min-width:0}
.pv-compact-list b,.pv-compact-list small{display:block}
.pv-compact-list b{font-size:12px}
.pv-compact-list small{font-size:11px;color:#abc5d7;margin-top:3px}
.pv-compact-list em{display:block;margin-top:6px;height:5px;border-radius:99px;background:var(--surface);overflow:hidden}
.pv-compact-list em i{display:block;height:100%;background:#a98aff;border-radius:inherit}
.pv-team p{font-size:12px;color:var(--text)}
.pv-avatars{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}
.pv-avatars span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--surface);color:var(--text);font:700 10px var(--font-ui)}
.pv-commercial{grid-column:span 2}
.pv-money{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.pv-money span{display:grid;gap:4px;color:#a9c7d9;font-size:11px}
.pv-money b{font:700 15px var(--font-ui);color:var(--text)}
.pv-table-card{min-width:0}
.pv-file-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pv-file{display:grid;grid-template-columns:26px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-top:1px solid rgba(149,207,235,.13)}
.pv-file>span{color:var(--text)}
.pv-file b,.pv-file small{display:block}
.pv-file b{font-size:12px}
.pv-file small{margin-top:3px;color:#aac7d8;font-size:11px}
.pv-activity{display:grid;gap:0}
.pv-activity>div{display:grid;grid-template-columns:11px 1fr;gap:10px;padding:9px 0;border-top:1px solid rgba(149,207,235,.13)}
.pv-activity i{width:8px;height:8px;margin-top:4px;border-radius:50%;background:#51d7be}
.pv-activity i.risk{background:#ffc34a}
.pv-activity b,.pv-activity small{display:block}
.pv-activity b{font-size:12px}
.pv-activity small{color:#aac7d8;font-size:11px;margin-top:3px}
@media(max-width:1050px){.pv-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pv-actions,.pv-commercial{grid-column:span 2}
}
@media(max-width:680px){.pv-header{display:grid}
.pv-header-side{justify-items:start;text-align:left}
.pv-overview-grid,.pv-file-grid{grid-template-columns:1fr}
.pv-actions,.pv-commercial{grid-column:auto}
.pv-money{grid-template-columns:1fr}
.pv-meta{display:grid}
.pv-header h1{font-size:23px}
}


/* Project viewport controls */
.pv-commercial-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:15px;padding-top:12px;border-top:1px solid rgba(149,207,235,.14)}
.pv-finance-action{display:flex;align-items:center;gap:8px;margin-top:9px;padding-top:9px;border-top:1px solid rgba(149,207,235,.12)}
.pv-finance-action span{display:grid;gap:2px}
.pv-finance-action b{font-size:11px}
.pv-finance-action small{font-size:10px;color:#aac7d8}
.pv-modal-backdrop{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:var(--surface);backdrop-filter:blur(4px)}
.pv-modal{width:min(620px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.pv-modal-head,.pv-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;border-bottom:1px solid rgba(149,207,235,.16)}
.pv-modal-head h2{margin:0;font:700 19px var(--font-ui)}
.pv-modal-head button{border:0;background:transparent;color:var(--text);font-size:24px;cursor:pointer}
.pv-modal-body{display:grid;gap:14px;padding:18px}
.pv-modal-actions{border-bottom:0;border-top:1px solid rgba(149,207,235,.16);justify-content:flex-end}
.pv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pv-form-grid label,.pv-modal-body>label{display:grid;gap:6px;color:var(--text);font:700 11px var(--font-ui)}
.pv-form-grid label.wide{grid-column:1 / -1}
.pv-modal input,.pv-modal select,.pv-modal textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:10px;font:13px var(--font-ui)}
.pv-modal textarea{min-height:94px;resize:vertical}
.pv-modal-intro{margin:0;color:var(--text);font-size:12px;line-height:1.5}
.pv-project-details-form{padding-top:2px}
.pv-modal:has(.pv-project-details-form){width:min(820px,100%)}
.pv-modal .optional{color:#81a6bd;font-weight:600}
.pv-check-list{display:grid;gap:3px;max-height:280px;overflow:auto;border:1px solid rgba(149,207,235,.17);border-radius:9px;padding:6px}
.pv-check{display:flex;align-items:center;gap:9px;padding:7px;border-radius:7px}
.pv-check:hover{background:var(--surface)}
.pv-check span{display:grid;gap:2px}
.pv-check b{font-size:12px}
.pv-check small{font-size:10px;color:#a9c7d8}
.pv-manager-editor{display:grid;gap:10px;padding-top:2px}
.pv-manager-editor+ .pv-manager-editor{padding-top:15px;border-top:1px solid rgba(149,207,235,.16)}
.pv-manager-editor>div small{display:block;color:var(--text);font:800 10px var(--font-ui);letter-spacing:.08em}
.pv-manager-editor h3{margin:4px 0 0;font:700 16px var(--font-ui)}
.pv-manager-editor>label{display:grid;gap:6px;color:var(--text);font:700 11px var(--font-ui)}
.pv-manager-editor>label small{font-weight:500;color:#8caabd;line-height:1.4}
@media(max-width:680px){.pv-form-grid{grid-template-columns:1fr}
}


/* Project ongoing */
.modal.work-form.project-on-the-go{width:min(600px,calc(100vw - 32px))!important;max-width:600px!important}
.project-on-the-go .work-form-grid{grid-template-columns:minmax(0,1fr)!important}
.project-on-the-go .work-form-grid>.allocation-section{display:none!important}
@media(max-width:650px){.modal.work-form.project-on-the-go{width:calc(100vw - 24px)!important}
}


/* Project manager picker */
/* Project Manager picker: open upward so it remains usable above the sticky form footer. */
.modal.work-form .manager-picker{position:relative!important;z-index:60}
.modal.work-form .manager-picker .manager-dropdown{position:absolute!important;top:auto!important;bottom:calc(100% + 7px)!important;left:0!important;right:0!important;z-index:80!important;max-height:250px!important;overflow-y:auto!important;padding:10px!important;border:1px solid #4d88a9!important;border-radius:10px!important;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.modal.work-form .manager-picker .manager-search{position:sticky;top:0;z-index:2;width:100%;box-sizing:border-box;margin:0 0 8px!important;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:9px 10px}
.modal.work-form .manager-picker .manager-choice{grid-template-columns:18px minmax(0,1fr) auto!important;gap:8px!important;margin:2px 0;padding:8px!important;border-radius:7px;background:transparent}
.modal.work-form .manager-picker .manager-choice:hover{background:var(--surface)}
.modal.work-form .manager-picker .manager-choice span{color:var(--text);font-size:12px}
.modal.work-form .manager-picker .manager-choice .work-link{font-size:11px;color:var(--text)}
.modal.work-form .manager-picker .manager-trigger{position:relative;z-index:1}


/* Deliverables v2 */
.dv-page{padding-bottom:40px}
.dv-head{margin-bottom:16px}
.dv-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.dv-kpis article,.dv-toolbar,.dv-table-wrap{border:1px solid rgba(139,203,229,.22);background:var(--surface);border-radius:12px}
.dv-kpis article{display:grid;gap:5px;padding:14px}
.dv-kpis small,.dv-kpis span{color:#a9c5d7;font-size:11px}
.dv-kpis b{font:700 24px var(--font-ui);color:var(--text)}
.dv-toolbar{display:flex;align-items:center;gap:10px;padding:12px;margin-bottom:16px}
.dv-toolbar input,.dv-toolbar select{background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:9px 10px;font:12px var(--font-ui)}
.dv-toolbar input{min-width:260px}
.dv-toolbar span{margin-left:auto;color:#a9c5d7;font-size:12px}
.dv-table-wrap{overflow:auto}
.dv-table{min-width:980px}
.dv-table tr[data-dv-open]{cursor:pointer}
.dv-table tr[data-dv-open]:hover{background:var(--surface)}
.dv-table td small{display:block;color:#9fbcd0;font-size:11px;margin-top:4px}
.dv-pill{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800;white-space:nowrap}
.dv-pill.green{background:rgba(48,190,146,.18);color:var(--text);border:1px solid rgba(48,190,146,.35)}
.dv-pill.amber{background:rgba(243,181,61,.16);color:var(--text);border:1px solid rgba(243,181,61,.35)}
.dv-pill.blue{background:rgba(73,148,234,.17);color:#9bcbff;border:1px solid rgba(73,148,234,.35)}
.dv-pill.red{background:rgba(237,100,117,.16);color:#ffb3ba;border:1px solid rgba(237,100,117,.35)}
.dv-empty{text-align:center;color:#a9c5d7;padding:32px!important}
.dv-modal{width:min(1120px,calc(100vw - 28px));max-height:calc(100vh - 26px);display:flex;flex-direction:column}
.dv-modal-head{display:flex;justify-content:space-between;align-items:start;padding:18px 20px;border-bottom:1px solid rgba(139,203,229,.2)}
.dv-modal-head h2{margin:0;font:700 22px var(--font-ui)}
.dv-modal-head p{margin:5px 0 0;color:#a9c5d7;font-size:12px}
.dv-modal-body{overflow:auto;padding:18px 20px}
.dv-modal .modal-actions{position:sticky;bottom:0;margin:0;padding:14px 20px;border-top:1px solid rgba(139,203,229,.2);background:var(--surface)}
.dv-create-note,.dv-import{border:1px solid rgba(91,219,196,.28);background:var(--surface);color:var(--text);border-radius:9px;padding:11px 13px;font-size:12px;margin-bottom:14px}
.dv-draft{border:1px solid rgba(139,203,229,.22);border-radius:11px;padding:13px;margin:12px 0;background:var(--surface)}
.dv-draft-head,.dv-section-head{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:10px}
.dv-draft-head>b,.dv-section-head h3{font:700 14px var(--font-ui);margin:0}
.dv-check{font-size:11px;color:#a9c5d7;margin-left:auto}
.dv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dv-grid label,.dv-modal label{display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.dv-grid input,.dv-grid select,.dv-grid textarea,.dv-modal textarea,.dv-modal input,.dv-modal select{box-sizing:border-box;width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:7px;padding:9px;font:12px var(--font-ui)}
.dv-grid textarea{min-height:62px;resize:vertical}
.dv-grid .wide{grid-column:span 2}
.dv-assignments{margin-top:12px;border-top:1px solid rgba(139,203,229,.15);padding-top:12px}
.dv-assignments>div:first-child{display:grid;gap:3px;margin-bottom:8px}
.dv-assignments small{color:#a9c5d7;font-size:11px}
.dv-assignment{display:grid;grid-template-columns:1fr 1.1fr 1.4fr 80px 120px 30px;gap:7px;margin:7px 0}
.dv-assignment input,.dv-assignment select{min-width:0}
.dv-create-footer{display:flex;justify-content:space-between;align-items:center;padding:13px 0 0;margin-top:10px;border-top:1px solid rgba(139,203,229,.15);color:#a9c5d7;font-size:12px}
.dv-modal-copy{margin:0 0 14px;color:var(--text);line-height:1.5;font-size:13px}
.dv-batch-list{display:grid;gap:5px}
.dv-matrix{margin-top:15px;border-top:1px solid rgba(139,203,229,.15);padding-top:12px}
.dv-matrix table{width:100%;border-collapse:collapse;margin-top:8px}
.dv-matrix th,.dv-matrix td{padding:7px;border-bottom:1px solid rgba(139,203,229,.15);text-align:left;font-size:11px}
.dv-matrix th small{display:block;color:#a9c5d7;font-weight:400}
.dv-matrix input{width:70px}
.dv-import{display:grid;gap:8px}
.dv-import input{padding:10px!important}
.dv-template-columns{display:grid;gap:4px;background:var(--surface);border-radius:8px;padding:10px;color:#a9c5d7;font-size:11px}
.dv-import-good{display:grid;gap:4px;background:rgba(44,189,154,.14);border:1px solid rgba(44,189,154,.3);padding:10px;border-radius:8px;color:var(--text);font-size:12px}
.dv-detail-meta{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:10px;margin-bottom:15px}
.dv-detail-meta>div{display:grid;gap:4px;border:1px solid rgba(139,203,229,.2);border-radius:9px;padding:10px;background:var(--surface)}
.dv-detail-meta small{font-size:10px;color:#9fc1d4;font-weight:800}
.dv-detail-meta span{font-size:11px;color:#a9c5d7}
.dv-detail-section{border:1px solid rgba(139,203,229,.2);border-radius:10px;padding:13px;margin-top:12px;background:var(--surface)}
.dv-assignment-table{overflow:auto}
.dv-assignment-table table{width:100%;border-collapse:collapse;min-width:650px}
.dv-assignment-table th,.dv-assignment-table td{padding:8px;border-bottom:1px solid rgba(139,203,229,.14);font-size:12px;text-align:left}
.dv-assignment-table small{display:block;color:#9fbcd0;margin-top:3px}
.dv-file{color:var(--text);font-size:12px}
.dv-activity p{color:#a9c5d7;font-size:11px;margin:7px 0}
.dv-activity small{margin-left:7px;color:#779ab0}
.dv-scope-card{display:flex;justify-content:space-between;align-items:center}
.dv-scope-card>div{display:grid;gap:4px}
.dv-scope-card small{color:#a9c5d7;font-size:11px}
@media(max-width:850px){.dv-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.dv-grid{grid-template-columns:1fr 1fr}
.dv-assignment{grid-template-columns:1fr 1fr 1fr 72px 28px}
.dv-assignment input[name=due]{display:none}
.dv-detail-meta{grid-template-columns:1fr 1fr}
}
@media(max-width:580px){.dv-head .work-actions,.dv-toolbar,.dv-create-footer{align-items:stretch;flex-direction:column}
.dv-toolbar input{min-width:0}
.dv-toolbar span{margin:0}
.dv-grid{grid-template-columns:1fr}
.dv-grid .wide{grid-column:auto}
.dv-assignment{grid-template-columns:1fr 1fr}
.dv-assignment input[name=work]{grid-column:1/-1}
.dv-kpis{grid-template-columns:1fr 1fr}
.dv-detail-meta{grid-template-columns:1fr}
.dv-modal{width:calc(100vw - 16px)}
}


/* Deliverables v2 enhance */
.dv-accept-actions{display:flex;gap:5px;margin-top:6px}
.dv-accept-actions button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:5px;font:700 10px var(--font-ui);padding:4px 6px;cursor:pointer}
.dv-accept-actions button:last-child{border-color:var(--line);color:var(--text)}
.dv-scope-guide{margin-bottom:12px;border:1px solid rgba(91,219,196,.28);background:var(--surface);color:var(--text);border-radius:8px;padding:10px;font-size:12px}
.dv-scope-line{border:1px solid rgba(139,203,229,.2);border-radius:9px;padding:11px;margin-bottom:10px;background:var(--surface)}
.dv-scope-line-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.dv-scope-line-head b{font:700 13px var(--font-ui)}
.dv-scope-card{gap:9px;flex-wrap:wrap}


/* Deliverables layout */
.dv-draft-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:14px;align-items:start}
.dv-details-pane,.dv-team-pane{border:1px solid rgba(139,203,229,.17);border-radius:10px;padding:12px;background:var(--surface)}
.dv-team-pane{background:var(--surface)}
.dv-project-field{position:relative}
.dv-project-field .work-link{position:absolute;right:0;top:0;font-size:10px}
.dv-project-field select{margin-top:2px}
.dv-stepper{display:flex;gap:7px;align-items:center;margin:0 0 11px}
.dv-stepper button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:700;cursor:pointer}
.dv-stepper button.active{background:var(--surface);border-color:#55dccd;color:var(--text)}
.dv-create-note{display:flex;justify-content:space-between;align-items:center;gap:12px}
.dv-draft[hidden]{display:none!important}
.dv-priority-toggle select{max-width:130px}
.dv-team-pane .dv-assignments{margin-top:0;border-top:0;padding-top:0}
@media(max-width:850px){.dv-draft-layout{grid-template-columns:1fr}
.dv-team-pane{margin-top:0}
}


/* Deliverables finish */
.dv-head [data-dv-import]{display:none}


/* Deliverables wizard */
.dw-modal{width:min(1180px,calc(100vw - 28px))}
.dw-toolbar{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;border-bottom:1px solid rgba(139,203,229,.18);font-size:12px;color:#a9c5d7}
.dw-steps{display:flex;gap:7px;padding:12px 20px;border-bottom:1px solid rgba(139,203,229,.18);overflow:auto}
.dw-steps button{display:grid;gap:2px;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:7px 10px;font-size:11px;white-space:nowrap}
.dw-steps button small{color:#8db1c7;font-size:9px}
.dw-steps button.active{background:var(--surface);border-color:#55dccd;color:var(--surface)}
.dw-main{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
.dw-details,.dw-team,.dw-shared>section{border:1px solid rgba(139,203,229,.2);border-radius:11px;background:var(--surface);padding:14px}
.dw-team{background:var(--surface)}
.dw-section-title{display:flex;justify-content:space-between;gap:8px;margin-bottom:12px}
.dw-section-title small,.dw-shared small{font-size:10px;font-weight:800;color:var(--text);letter-spacing:.08em}
.dw-section-title h3,.dw-shared h3{margin:2px 0;font:700 17px var(--font-ui)}
.dw-section-title p,.dw-shared p{margin:3px 0;color:#a9c5d7;font-size:11px}
.dw-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.dw-grid label,.dw-assignment label{display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.dw-grid input,.dw-grid select,.dw-grid textarea,.dw-assignment input,.dw-assignment select,.dw-shared input,.dw-shared select{box-sizing:border-box;width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:7px;padding:9px;font:12px var(--font-ui)}
.dw-grid .wide{grid-column:span 2}
.dw-grid textarea{min-height:88px;resize:vertical}
.dw-project{position:relative}
.dw-project .work-link{position:absolute;right:0;top:0;font-size:10px}
.dw-optional{margin-top:12px}
.dw-optional summary{cursor:pointer;color:var(--text);font-weight:700;font-size:12px;margin-bottom:9px}
.dw-toggle{display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.dw-toggle button{flex:1;border:0;background:var(--surface);color:var(--text);padding:8px;font-size:11px}
.dw-toggle button.active{background:var(--surface);color:var(--surface)}
.dw-assignment{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid rgba(139,203,229,.18);border-radius:8px;padding:10px;margin-bottom:9px;background:var(--surface)}
.dw-assignment-top{grid-column:1/-1;display:flex;justify-content:space-between;font-size:12px}
.dw-assignment>label:nth-of-type(3){grid-column:1/-1}
.dw-assignment-times{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dw-assignment-times label{display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.dw-shared{display:grid;gap:14px}
.dw-select-list{display:grid;gap:7px;margin-top:10px}
.dw-select-list label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;border:1px solid rgba(139,203,229,.18);padding:9px;border-radius:7px;font-size:12px}
.dw-select-list span{color:#9fc1d4;font-size:10px}
.dw-shared-person{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:7px;margin-bottom:8px}
.dw-hours>div{display:grid;gap:9px;margin-top:8px}
.dw-hours article{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:7px;border:1px solid rgba(139,203,229,.18);padding:9px;border-radius:8px}
.dw-hours label{display:grid;gap:4px;font-size:10px;color:var(--text)}
.danger{color:#ffb3ba!important}
@media(max-width:850px){.dw-main{grid-template-columns:1fr}
.dw-shared-person,.dw-hours article{grid-template-columns:1fr}
.dw-grid{grid-template-columns:1fr}
.dw-grid .wide{grid-column:auto}
.dw-toolbar{align-items:flex-start;flex-direction:column}
.dw-modal{width:calc(100vw - 14px)}
}


/* Deliverables wizard fixes */
.dw-toolbar .work-link{order:2;margin-left:auto}
.dw-toolbar span{order:1}
.dw-steps [data-step]{position:relative;padding-right:24px}
.dw-step-remove{position:absolute;right:5px;top:4px;width:15px;height:15px;padding:0;border:0!important;border-radius:50%;background:rgba(255,255,255,.12)!important;color:var(--surface)!important;font-size:13px!important;line-height:14px!important}
.dw-step-remove:hover{background:var(--surface)}


/* Work closure */
.wc-page{display:none;min-height:calc(100vh - 72px);margin:0 -24px;padding:20px 24px 44px;background:var(--surface);color:var(--text)}
.wc-page.open{display:block}
.wc-page *{box-sizing:border-box}
.wc-head,.wc-section-head,.wc-toolbar,.wc-dialog-head,.wc-dialog-foot,.wc-inline,.wc-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wc-head{margin-bottom:18px}
.wc-head h1{font:700 29px var(--font-ui);margin:2px 0}
.wc-head p,.wc-muted{color:#9fb9ce;margin:2px 0;font-size:12px;line-height:1.45}
.wc-eyebrow{color:#55d9c7!important;font-size:10px!important;font-weight:800;letter-spacing:.1em}
.wc-actions,.wc-tabs,.wc-segment,.wc-filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wc-btn{min-height:40px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:9px 13px;font:700 12px var(--font-ui);cursor:pointer}
.wc-btn:hover{border-color:#55d9c7;background:var(--surface)}
.wc-btn.primary{background:#4cd6c3;border-color:#4cd6c3;color:var(--muted)}
.wc-btn.danger,.wc-link.danger{color:#ffabb5;border-color:var(--line)}
.wc-btn:disabled{opacity:.45;cursor:not-allowed}
.wc-link{min-height:28px;border:0;background:transparent;color:var(--text);font:700 11px var(--font-ui);cursor:pointer}
.wc-icon{min-width:40px;width:40px;padding:0;display:grid;place-items:center}
.wc-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.wc-kpi,.wc-card{border:1px solid rgba(149,203,234,.18);background:var(--surface);border-radius:13px}
.wc-kpi{padding:14px 15px;display:grid;gap:5px}
.wc-kpi small{color:#9eb8cf;font-size:11px;font-weight:700}
.wc-kpi b{font:700 24px var(--font-ui)}
.wc-kpi span{font-size:10px;color:#8ca8bd}
.wc-project-search { max-width:320px; }
.wc-project-type { max-width:190px; }
.wc-back-actions { margin-bottom:12px; }
.wc-space-top-12 { margin-top:12px; }
.wc-space-top-10 { margin-top:10px; }
.wc-space-top-8 { margin-top:8px; }
.wc-matrix-scroll { overflow:auto; }
.wc-step-content { padding:14px 18px; }
.wc-task-context-switch { width:max-content; margin-bottom:13px; }
.wc-card{padding:15px}
.wc-card-head{margin-bottom:12px}
.wc-card h2,.wc-card h3{margin:0;font-family:var(--font-ui)}
.wc-table-wrap{overflow:auto;border:1px solid rgba(149,203,234,.16);border-radius:12px;background:var(--surface)}
.wc-table{width:100%;border-collapse:collapse;min-width:850px}
.wc-table th,.wc-table td{text-align:left;padding:12px 13px;border-bottom:1px solid rgba(149,203,234,.12);font-size:12px;vertical-align:middle}
.wc-table th{color:#93aec4;font-size:10px;text-transform:uppercase;letter-spacing:.05em}
.wc-table tbody tr{cursor:pointer}
.wc-table tbody tr:hover{background:var(--surface)}
.wc-table td b{display:block;color:var(--text)}
.wc-table td small{display:block;color:#8faabd;margin-top:3px}
.wc-pill{display:inline-flex;align-items:center;gap:5px;border-radius:99px;padding:4px 8px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:10px;font-weight:800;white-space:nowrap}
.wc-pill.green{border-color:var(--line);background:var(--surface);color:var(--text)}
.wc-pill.yellow{border-color:var(--line);background:var(--surface);color:var(--text)}
.wc-pill.red{border-color:var(--line);background:var(--surface);color:#ffafba}
.wc-pill.purple{border-color:var(--line);background:var(--surface);color:var(--text)}
.wc-pill.blue{border-color:var(--line);background:var(--surface);color:var(--text)}
.wc-empty{display:grid;place-items:center;text-align:center;gap:7px;padding:44px 18px;color:#9bb5ca}
.wc-empty b{color:var(--text);font:700 17px var(--font-ui)}
.wc-filters{display:flex;gap:9px;margin:0 0 14px;flex-wrap:wrap}
.wc-input,.wc-select,.wc-textarea,.wc-field input,.wc-field select,.wc-field textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:9px 10px;font:12px var(--font-ui)}
.wc-textarea,.wc-field textarea{min-height:82px;resize:vertical}
.wc-field{display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.wc-field small{font-weight:400;color:#91adc1}
.wc-field.invalid input,.wc-field.invalid select,.wc-field.invalid textarea{border-color:#ef7182}
.wc-error{color:#ff9eaa;font-size:10px;line-height:1.35}
.wc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.wc-grid .wide{grid-column:1/-1}
.wc-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}
.wc-progress{height:7px;border-radius:99px;background:var(--surface);overflow:hidden}
.wc-progress span{display:block;height:100%;background:#4bd6c3;border-radius:inherit}
.wc-tabs{border-bottom:1px solid rgba(149,203,234,.16);margin-bottom:14px}
.wc-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:#9fb9ce;padding:10px 9px;font:700 12px var(--font-ui);cursor:pointer}
.wc-tabs button.active{color:var(--text);border-color:#62e0cf}
.wc-dialog-backdrop{position:fixed;inset:0;z-index:2500;background:var(--surface);display:grid;place-items:center;padding:14px}
.wc-dialog{width:min(1120px,calc(100vw - 28px));max-height:calc(100vh - 28px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);box-shadow:0 4px 12px rgba(5, 0, 56, .06);overflow:hidden}
.wc-dialog.small{width:min(540px,calc(100vw - 28px))}
.wc-dialog-head,.wc-dialog-foot{padding:15px 18px;border-bottom:1px solid rgba(149,203,234,.18)}
.wc-dialog-head h2{font:700 21px var(--font-ui);margin:0}
.wc-dialog-head p{color:#a4bed2;font-size:11px;margin:4px 0 0}
.wc-dialog-foot{border-bottom:0;border-top:1px solid rgba(149,203,234,.18);justify-content:flex-end}
.wc-dialog-body{overflow:auto;padding:16px 18px}
.wc-dialog-body.no-pad{padding:0}
.wc-dialog-close{width:40px;height:40px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--surface);cursor:pointer}
.wc-form-section{border:1px solid rgba(149,203,234,.18);border-radius:11px;background:var(--surface);padding:14px;margin-bottom:12px}
.wc-form-section h3{font:700 16px var(--font-ui);margin:0 0 4px}
.wc-form-section>p{color:#97b2c7;font-size:11px;margin:0 0 12px}
.wc-row{display:grid;grid-template-columns:1.2fr 1fr .55fr .65fr auto;gap:8px;align-items:end;margin-top:8px}
.wc-row.scope{grid-template-columns:1.25fr .65fr .55fr .7fr auto}
.wc-row.pitch{grid-template-columns:1fr .7fr 1fr auto}
.wc-row .wc-btn{height:40px}
.wc-note{border:1px solid rgba(79,216,197,.28);background:var(--surface);color:var(--text);border-radius:9px;padding:10px 12px;font-size:11px;line-height:1.45}
.wc-note.warn{border-color:var(--line);background:var(--surface);color:var(--text)}
.wc-note.error{border-color:var(--line);background:var(--surface);color:var(--text)}
.wc-switch{display:flex;border:1px solid var(--line);border-radius:9px;padding:3px;background:var(--surface)}
.wc-switch button{min-height:34px;border:0;border-radius:6px;background:transparent;color:#9fb9ce;padding:7px 11px;font:700 11px var(--font-ui);cursor:pointer}
.wc-switch button.active{background:var(--surface);color:var(--surface)}
.wc-steps{display:flex;gap:7px;padding:11px 18px;border-bottom:1px solid rgba(149,203,234,.17);overflow:auto}
.wc-step{position:relative;min-width:128px;display:grid;gap:2px;text-align:left;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:8px 31px 8px 10px;cursor:pointer}
.wc-step small{color:#8daabf;font-size:9px}
.wc-step.active{background:var(--surface);border-color:#55ddcc}
.wc-step-remove{position:absolute;right:5px;top:5px;width:24px;height:24px;border:0;border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer}
.wc-wizard-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;border-bottom:1px solid rgba(149,203,234,.17)}
.wc-wizard-main{display:grid;grid-template-columns:1.08fr .92fr;gap:13px}
.wc-assignment{border:1px solid rgba(149,203,234,.17);border-radius:9px;background:var(--surface);padding:10px;margin-top:9px}
.wc-assignment-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.wc-assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.wc-assignment-grid .wide{grid-column:1/-1}
.wc-scope-map{border:1px solid rgba(79,216,197,.24);border-radius:9px;background:var(--surface);padding:10px;margin-top:9px}
.wc-scope-map-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.wc-scope-usage{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:8px 0}
.wc-scope-usage span{border:1px solid rgba(149,203,234,.15);border-radius:6px;padding:6px;font-size:9px;color:#91adc1}
.wc-scope-usage b{display:block;color:var(--text);font-size:12px;margin-top:2px}
.wc-allocation-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.wc-choice{border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);padding:20px;text-align:left;cursor:pointer}
.wc-choice:hover,.wc-choice.active{border-color:#55ddcc;background:var(--surface)}
.wc-choice b{display:block;font:700 17px var(--font-ui);margin-bottom:5px}
.wc-choice span{color:#9db8cc;font-size:11px;line-height:1.5}
.wc-select-list{display:grid;gap:7px}
.wc-check{display:flex;align-items:center;gap:9px;border:1px solid rgba(149,203,234,.17);border-radius:8px;padding:9px}
.wc-check input{width:18px;height:18px}
.wc-matrix{width:100%;border-collapse:collapse;margin-top:10px}
.wc-matrix th,.wc-matrix td{padding:8px;border-bottom:1px solid rgba(149,203,234,.14);font-size:11px}
.wc-matrix input{min-width:85px}
.wc-footer-status{margin-right:auto;color:#acc5d8;font-size:11px}
.wc-task-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px}
.wc-people{border-right:1px solid rgba(149,203,234,.15);padding-right:13px}
.wc-person{width:100%;display:flex;gap:8px;align-items:center;border:0;border-radius:8px;background:transparent;color:var(--text);padding:8px;text-align:left;cursor:pointer}
.wc-person.active{background:var(--surface)}
.wc-avatar{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#4cd6c3;color:var(--muted);font-size:10px;font-weight:800}
.wc-board{display:grid;grid-template-columns:repeat(6,minmax(220px,1fr));gap:11px;overflow:auto;padding-bottom:12px}
.wc-column{min-height:250px;border:1px solid rgba(149,203,234,.15);background:var(--surface);border-radius:11px;padding:10px}
.wc-column-head{display:flex;justify-content:space-between;margin-bottom:8px;font:700 12px var(--font-ui)}
.wc-task{border:1px solid rgba(149,203,234,.17);background:var(--surface);border-radius:9px;padding:11px;margin-bottom:8px}
.wc-task h4{margin:0;font-size:13px;line-height:1.4}
.wc-task p{margin:6px 0;color:#9db7ca;font-size:10px}
.wc-task-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:9px}
.wc-task-actions .wc-btn{min-height:30px;padding:5px 7px;font-size:10px}
.wc-error-summary{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:10px 12px;color:var(--text);margin-bottom:11px;font-size:11px}
.wc-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wc-import-preview{max-height:330px;overflow:auto}
.wc-file-drop{display:grid;place-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:26px;text-align:center;background:var(--surface)}
.wc-file-drop input{max-width:100%}
.wc-confirm-copy{color:var(--text);line-height:1.55;font-size:13px}
.wc-decision{border-left:3px solid #f5be55;padding-left:10px}
.wc-detail-list{display:grid;gap:8px}
.wc-detail-item{border:1px solid rgba(149,203,234,.15);border-radius:9px;padding:10px;background:var(--surface)}
.wc-detail-item b{display:block}
.wc-detail-item small{color:#91adc1}
.wc-focus-ring:focus,.wc-page button:focus-visible,.wc-page input:focus-visible,.wc-page select:focus-visible,.wc-page textarea:focus-visible,.wc-dialog button:focus-visible,.wc-dialog input:focus-visible,.wc-dialog select:focus-visible,.wc-dialog textarea:focus-visible{outline:3px solid #71e8d8;outline-offset:2px}
@media(max-width:1050px){.wc-kpis{grid-template-columns:repeat(2,1fr)}
.wc-wizard-main,.wc-detail-grid{grid-template-columns:1fr}
.wc-board{grid-template-columns:repeat(6,minmax(210px,1fr))}
}
@media(max-width:760px){.wc-page{margin:0 -12px;padding:14px 12px 32px}
.wc-head{align-items:flex-start;flex-direction:column}
.wc-grid,.wc-allocation-choice{grid-template-columns:1fr}
.wc-grid .wide{grid-column:auto}
.wc-row,.wc-row.scope,.wc-row.pitch{grid-template-columns:1fr}
.wc-task-layout{grid-template-columns:1fr}
.wc-people{border-right:0;border-bottom:1px solid rgba(149,203,234,.15);padding:0 0 10px}
.wc-kpis{grid-template-columns:1fr 1fr}
.wc-dialog-backdrop{padding:6px}
.wc-dialog{width:calc(100vw - 12px);max-height:calc(100vh - 12px)}
.wc-wizard-toolbar{align-items:flex-start;flex-direction:column}
}
.op-back{margin-bottom:12px}
.op-project-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}
.op-project-head h1{margin:2px 0 4px;font:700 30px var(--font-ui)}
.op-project-head p:not(.wc-eyebrow){margin:0;color:#9fb9ce;font-size:13px}
.op-project-details{border:1px solid rgba(149,203,234,.18);border-radius:13px;background:var(--surface);margin-bottom:14px}
.op-project-details dl{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));margin:0}
.op-project-details dl>div{padding:13px 14px;border-right:1px solid rgba(149,203,234,.13)}
.op-project-details dl>div:last-child{border:0}
.op-project-details dt{color:#91adc1;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.op-project-details dd{margin:6px 0 0;color:var(--text);font-size:12px;font-weight:700;line-height:1.35}
.op-deliverables{border:1px solid rgba(149,203,234,.18);border-radius:13px;background:var(--surface);overflow:hidden}
.op-deliverables-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px}
.op-deliverables-head h2{margin:0;font:700 18px var(--font-ui)}
.op-deliverables-head p{margin:4px 0 0;color:#9fb9ce;font-size:11px}
.op-table-wrap{overflow:auto;border-top:1px solid rgba(149,203,234,.15)}
.op-deliverables-table{width:100%;min-width:1480px;border-collapse:collapse}
.op-deliverables-table th,.op-deliverables-table td{padding:9px 10px;border-bottom:1px solid rgba(149,203,234,.12);vertical-align:middle;text-align:left}
.op-deliverables-table th{position:sticky;top:0;background:var(--surface);color:#91adc1;font-size:10px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.op-deliverables-table td{font-size:12px;color:var(--text)}
.op-deliverables-table tr:last-child td{border-bottom:0}
.op-deliverables-table tr:hover td{background:var(--surface)}
.op-deliverables-table input,.op-deliverables-table select{min-width:116px;width:100%;min-height:36px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:7px 8px;font:12px var(--font-ui)}
.op-deliverables-table td:nth-child(2) input{min-width:180px}
.op-deliverables-table td:nth-child(3) select{min-width:138px}
.op-deliverables-table td:nth-child(4) select{min-width:116px}
.op-deliverables-table td:nth-child(6){white-space:nowrap;color:#a8c4d6}
.op-deliverables-table td:nth-child(9) input,.op-deliverables-table td:nth-child(8) input{min-width:82px}
.op-amount{display:block;min-width:100px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text)}
.op-empty{display:grid;place-items:center;gap:5px;padding:36px;color:#99b4c7}
.op-empty b{color:var(--text);font:700 16px var(--font-ui)}
.op-empty span{font-size:12px}
@media(max-width:900px){.op-project-head{align-items:stretch;flex-direction:column}
.op-project-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.op-project-details dl>div:nth-child(2n){border-right:0}
.op-project-details dl>div:nth-child(-n+4){border-bottom:1px solid rgba(149,203,234,.13)}
.op-deliverables-head{align-items:flex-start;flex-direction:column}
}
.wc-kpi b em{font:500 11px var(--font-ui);color:#9fb9ce;font-style:normal}
.op-overview-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);gap:14px;margin-bottom:14px;align-items:stretch}
.op-overview-grid .op-project-details{margin:0}
.op-project-details h2,.op-project-more h2{font:700 17px var(--font-ui);margin:0;padding:14px 15px 4px}
.op-overview-grid .op-project-details dl{grid-template-columns:repeat(3,minmax(0,1fr))}
.op-overview-grid .op-project-details dl>div{border-right:0;border-bottom:1px solid rgba(149,203,234,.13)}
.op-project-more{border:1px solid rgba(149,203,234,.18);border-radius:13px;background:var(--surface);padding:0 14px 14px}
.op-project-more h2{padding-left:0}
.op-project-more label{display:grid;gap:6px;font-size:11px;font-weight:700;color:var(--text)}
.op-project-more textarea,.op-project-more input{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:8px;font:12px var(--font-ui)}
.op-project-more textarea{resize:vertical;min-height:70px}
.op-project-more>[data-op-save-note]{margin:8px 0}
.op-link-list{display:grid;gap:5px;margin:5px 0 10px;max-height:108px;overflow:auto}
.op-link-list>div{display:flex;justify-content:space-between;align-items:center;gap:8px}
.op-link-list a{color:var(--text);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.op-link-list button{background:none;border:0;color:#ff9ca7;cursor:pointer;font-size:19px}
.op-link-list small{color:#91adc1}
.op-link-add{display:grid;grid-template-columns:1fr 1.3fr auto;gap:6px}
.op-deliverables-table{min-width:1700px}
.op-row-actions{white-space:nowrap}
.op-row-actions .wc-btn{min-height:31px;padding:5px 8px;margin-right:5px;font-size:11px}
.op-row-actions small{display:inline-block;max-width:170px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;color:#ffb0b9}
.op-cancelled{opacity:.7}
.op-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:135px;width:100%;min-height:36px;padding:7px 8px;background:var(--surface);border:1px solid var(--line);border-radius:7px;color:var(--text);text-align:left;cursor:pointer;font:12px var(--font-ui)}
.op-floating-picker{position:fixed;z-index:10010;width:272px;max-height:340px;display:flex;flex-direction:column;gap:7px;padding:9px;border:1px solid #4b9ca8;border-radius:10px;background:var(--surface);box-shadow:0 15px 35px #001625b8}
.op-floating-picker input{width:100%;min-height:32px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:6px 8px;font:12px var(--font-ui)}
.op-picker-options{min-height:36px;max-height:180px;overflow-y:auto;overscroll-behavior:contain;display:grid;align-content:start;gap:2px}
.op-picker-options button{border:0;border-radius:5px;background:transparent;color:var(--text);padding:8px;text-align:left;cursor:pointer;font:12px var(--font-ui)}
.op-picker-options button:hover,.op-picker-options button.selected{background:var(--surface)}
.op-picker-options>span{padding:8px;color:#9fb9ce;font-size:11px}
.op-picker-add{display:grid;gap:5px;border-top:1px solid var(--line);padding-top:7px}
.op-picker-add small{color:#a8c4d6;font-weight:700}
.op-picker-add button{justify-self:start;min-height:29px}
.op-editing td{background:rgba(67,216,194,.05)}
@media(max-width:900px){.op-link-add{grid-template-columns:1fr 1fr}
.op-link-add button{grid-column:1/-1;justify-self:start}
}
.op-deliverables-table th:last-child,.op-deliverables-table td:last-child{position:sticky;right:0;z-index:2;min-width:145px;background:var(--surface);box-shadow:-8px 0 14px #00162580}
.op-deliverables-table th:last-child{z-index:3}
.op-editing td:last-child{background:var(--surface)}
.op-deliverables-table td:nth-child(3) .op-picker-trigger{min-width:138px}
.op-deliverables-table .op-document-cell{min-width:150px}
.op-document-cell b,.op-document-cell small{display:block;white-space:nowrap}
.op-document-cell b{color:var(--text);font-size:11px}
.op-document-cell small{margin-top:3px;color:#70d9d2;font-size:10px}
.op-finance-visibility{margin:0 0 14px;padding:16px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.op-finance-last-request{display:flex;align-items:center;gap:10px;padding:10px 0 14px;border-bottom:1px solid var(--line);font-size:12px}
.op-finance-last-request>b{color:#a9c7d9;white-space:nowrap}
.op-finance-last-request>span,.op-finance-document-group p{color:#93b3c7;font-size:11px}
.op-finance-document-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding-top:14px}
.op-finance-document-group h3{display:flex;align-items:center;gap:7px;margin:0 0 9px;font-size:13px}
.op-finance-document-group h3 small{display:grid;place-items:center;min-width:19px;height:19px;border-radius:99px;background:var(--surface);color:var(--text);font-size:10px}
.op-finance-record{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-width:0;margin:5px 0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;font-size:11px}
.op-finance-record:hover,.op-finance-record:focus-visible{border-color:#46cfc9;background:var(--surface)}
.op-finance-record span{overflow-wrap:anywhere}
.op-finance-record small{flex:0 0 auto;color:#76d8d0;font-size:10px}
.op-finance-record-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.op-finance-record-details div{min-width:0}
.op-finance-record-details dt{color:#9dbbd0;font-size:11px;text-transform:uppercase}
.op-finance-record-details dd{margin:4px 0 0;overflow-wrap:anywhere}
.op-finance-record-lines{margin-top:16px;padding-top:12px;border-top:1px solid var(--line)}
.op-finance-record-lines p,.op-finance-record-note{font-size:12px;color:var(--text)}
@media(max-width:720px){
.op-finance-document-groups{grid-template-columns:1fr}
.op-finance-last-request{align-items:stretch;flex-direction:column}
}
.op-overview-grid{align-items:start}
.op-project-details .op-finance-visibility{margin:0;padding:10px 13px 12px;border:0;border-top:1px solid rgba(149,203,234,.16);border-radius:0;background:transparent}
.op-project-details .op-finance-last-request{display:grid;grid-template-columns:76px minmax(0,1fr);gap:6px;padding:5px 0 9px}
.op-project-details .op-finance-last-request>b{font-size:10px}
.op-project-details .op-finance-document-groups{gap:6px;padding-top:9px}
.op-project-details .op-finance-document-group h3{gap:4px;margin:0;font-size:10px}
.op-project-details .op-finance-document-group h3 small{min-width:16px;height:16px;font-size:9px}
.op-project-details .op-finance-document-group p{display:none}
.op-project-details .op-finance-record{display:block;margin:5px 0 0;padding:5px 6px;font-size:10px}
.op-project-details .op-finance-record small{display:block;margin-top:3px;font-size:9px}
@media(max-width:720px){.op-project-details .op-finance-last-request{grid-template-columns:1fr}
.op-project-details .op-finance-document-groups{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.op-project-details .op-project-billing>dt{color:var(--text);font:700 14px var(--font-ui);letter-spacing:0;text-transform:none}
.op-project-details .op-project-billing>.op-finance-visibility{margin-top:10px;padding:9px 0 0}
.op-project-billing>.op-finance-visibility .op-finance-last-request{padding-top:0}
.op-picker-options{max-height:170px}
.op-picker-options button{min-height:34px}
.op-header-actions{display:flex;align-items:center;gap:7px}
@media(max-width:900px){.op-header-actions{width:100%;justify-content:flex-end}
}
.op-more-section{padding:8px 0;border-top:1px solid rgba(149,203,234,.13)}
.op-more-section:first-of-type{border-top:0}
.op-more-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;color:var(--text);font-size:11px}
.op-more-row .wc-btn{min-height:29px;padding:5px 8px;font-size:11px}
.op-pen{border:0;background:transparent;color:#68d8c8;font-size:17px;cursor:pointer;padding:2px 5px}
.op-pen:hover{color:var(--text)}
.op-frozen-note{min-height:48px;margin:0;padding:10px;border:1px solid rgba(149,203,234,.18);border-radius:7px;background:var(--surface);color:var(--text);font-size:12px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}
.op-frozen-note.empty{color:#91adc1;font-style:italic}
.op-more-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:7px}
.op-more-actions .wc-btn{min-height:31px;padding:5px 9px;font-size:11px}
.op-link-list{max-height:132px;margin:0}
.op-link-list>div{padding:5px 7px;border:1px solid rgba(149,203,234,.16);border-radius:6px;background:var(--surface)}
.op-link-list a{flex:1}
.op-link-add{grid-template-columns:1fr 1fr;margin-top:8px}
.op-link-add .op-more-actions{grid-column:1/-1}
.op-project-more textarea{width:100%}
.op-overview-grid{grid-template-columns:minmax(320px,.84fr) minmax(0,1.16fr);align-items:stretch}
.op-overview-grid .op-project-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.op-overview-grid .op-project-details dl>div{min-height:62px;padding:10px 13px}
.op-overview-grid .op-project-details dl>div:last-child{grid-column:1/-1;border-bottom:0}
.op-project-more{padding:0 16px 14px}
.op-project-more h2{padding-top:14px}
.op-note-hint{display:block;margin-top:5px;color:#91adc1;font-size:10px}
.op-project-more textarea{min-height:105px}
.op-link-list{max-height:150px}
@media(max-width:900px){.op-overview-grid{grid-template-columns:1fr}
.op-overview-grid .op-project-details dl{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.op-note-toolbar{display:flex;gap:5px;margin-bottom:6px}
.op-note-toolbar button{width:30px;height:28px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);cursor:pointer;font-size:15px}
.op-note-toolbar button:hover{border-color:#55d9c7}
.op-rich-note{max-height:150px;overflow:auto;white-space:normal}
.op-rich-note p{margin:0 0 5px}
.op-rich-note p:last-child{margin-bottom:0}
.op-rich-note ul{margin:3px 0 6px;padding-left:18px}
.op-rich-note li{margin:3px 0}
.op-rich-note li::marker{color:#53d5c7}
.op-transfer-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px;border:1px solid rgba(149,203,234,.18);border-radius:9px;background:var(--surface);margin-bottom:10px}
.op-transfer-intro div{display:grid;gap:4px}
.op-transfer-intro b{font-size:13px}
.op-transfer-intro span,.op-transfer-note{color:#9fb9ce;font-size:11px;line-height:1.5}
.op-transfer-intro input[type=file]{max-width:260px;color:var(--text);font-size:11px}
.op-transfer-message{margin:8px 0;color:var(--text);font-size:12px;line-height:1.5}
.op-transfer-message.error{color:var(--text)}
.op-transfer-message ul{margin:5px 0;padding-left:20px}
.op-import-preview{max-height:285px;overflow:auto}
.op-import-preview table{width:100%;border-collapse:collapse;font-size:11px}
.op-import-preview th,.op-import-preview td{text-align:left;padding:7px;border-bottom:1px solid rgba(149,203,234,.16)}
.op-import-preview th{color:#a8c4d6}
.op-transfer-tools{display:flex;align-items:center;gap:7px;margin-bottom:12px}
.op-transfer-tools .wc-btn{min-height:31px}
.op-transfer-tools span{margin-left:auto;color:#9fb9ce;font-size:11px}
.op-export-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.op-export-fields label{display:flex;align-items:center;gap:8px;border:1px solid rgba(149,203,234,.18);border-radius:7px;padding:9px;color:var(--text);font-size:12px;cursor:pointer}
.op-export-fields label:hover{border-color:#55d9c7}
.op-export-fields input{accent-color:#4cd6c3}
.op-export-format{display:flex;align-items:center;gap:7px;margin-right:auto;font-size:12px}
.op-export-format select{min-height:34px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:5px}
@media(max-width:760px){.op-transfer-intro{align-items:stretch;flex-direction:column}
.op-export-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.op-project-billing dd{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.op-project-billing dd>span{margin-right:auto}
.op-project-billing .wc-btn{min-height:30px;padding:5px 9px;font-size:11px}
.op-billing-menu-wrap{position:relative}
.op-billing-menu{position:absolute;right:0;top:calc(100% + 5px);z-index:15;min-width:180px;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.op-billing-menu[hidden],.wc-grid[hidden]{display:none}
.op-billing-menu button{display:block;width:100%;padding:8px;border:0;border-radius:5px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:12px var(--font-ui)}
.op-billing-menu button:hover{background:var(--surface)}
.op-status-link{padding:0;border:0;background:none;cursor:pointer}
.op-status-link .wc-pill{cursor:pointer}
.op-status-link:hover .wc-pill{border-color:#6ee4d4;box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.op-deliverables-table{min-width:1550px}
.op-complete-choice{display:flex;gap:10px;margin:13px 0}
.op-complete-choice label{display:flex;align-items:center;gap:6px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;font-size:12px}
.op-complete-choice input{accent-color:#4cd6c3}
.op-complete-choice + .wc-grid textarea{min-height:40px}
.op-project-billing .wc-btn:disabled{opacity:.45;cursor:not-allowed}
.op-finance-request-context{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--text)}
.op-finance-request-context span{color:#9fb9ce;font-size:12px}
.op-finance-request-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.op-finance-request-fields label,.op-finance-request-note{display:grid;gap:6px;color:var(--text);font-size:12px;font-weight:700}
.op-finance-request-fields input,.op-finance-request-fields select,.op-finance-request-note textarea,.op-finance-request-row input[type=number]{min-height:36px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:7px 8px;font:12px var(--font-ui)}
.op-finance-request-note textarea{resize:vertical}
.op-finance-request-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.op-finance-request-top>div{display:flex;gap:6px}
.op-finance-request-top .wc-btn{min-height:30px;padding:5px 8px}
.op-finance-request-list{display:grid;gap:5px;max-height:275px;overflow:auto}
.op-finance-request-row{display:grid;grid-template-columns:20px minmax(160px,1fr) 76px 88px 85px;align-items:center;gap:9px;padding:9px;border:1px solid rgba(149,203,234,.18);border-radius:7px;background:var(--surface);color:var(--text)}
.op-finance-request-row:not(:has([data-request-qty])){grid-template-columns:20px minmax(160px,1fr) auto}
.op-finance-request-row input[type=checkbox]{accent-color:#4cd6c3}
.op-finance-request-row span{min-width:0}
.op-finance-request-row b,.op-finance-request-row small{display:block;overflow:hidden;text-overflow:ellipsis}
.op-finance-request-row small{color:#9fb9ce;font-size:10px}
.op-finance-request-row> b{text-align:right;white-space:nowrap}
.op-finance-request-total{text-align:right;color:var(--text);font-size:13px;font-weight:700}
@media(max-width:650px){.op-finance-request-fields{grid-template-columns:1fr}
.op-finance-request-row{grid-template-columns:20px minmax(130px,1fr) 62px 70px 72px;gap:4px;font-size:11px}
.op-finance-request-context{flex-direction:column}
}
.op-finance-request-columns{display:grid;grid-template-columns:20px minmax(160px,1fr) 76px 88px 85px;gap:9px;padding:3px 9px 6px;color:#9fb9ce;font-size:10px;text-transform:uppercase}
.op-finance-request-columns b:last-child{text-align:right}
@media(max-width:650px){.op-finance-request-columns{grid-template-columns:20px minmax(130px,1fr) 62px 70px 72px;gap:4px}
}
.op-due-in.overdue{color:#ff737c;font-weight:800}
.op-deliverable-history-link{border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-decoration-color:#53cfc4;text-underline-offset:3px;cursor:pointer;padding:0;text-align:left}
.op-project-row-actions{white-space:nowrap}
.op-project-row-actions button{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:6px;min-width:30px;min-height:30px;margin-right:5px;cursor:pointer}
.op-project-row-actions button:last-child{color:#ff9c9c;border-color:var(--line)}


/* Pitch workspace */
.pitch-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 13px}
.pitch-toolbar>div{display:flex;gap:8px;flex-wrap:wrap}
.pitch-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.pitch-hero .wc-eyebrow{color:#52d9cb;margin:0 0 4px}
.pitch-hero h1{margin:0;color:var(--text);font:700 27px/1.15 var(--font-ui)}
.pitch-hero p:not(.wc-eyebrow){margin:8px 0 0;color:var(--text);font-size:13px}
.pitch-hero-badge{flex:none;padding:7px 10px;border:1px solid #58cbb078;border-radius:999px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700}
.pitch-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:13px 0}
.pitch-summary article{display:flex;flex-direction:column;gap:5px;min-width:0;min-height:95px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.pitch-summary small{color:#a5bfd2;font-size:11px}
.pitch-summary b{color:var(--text);font:700 18px var(--font-ui);overflow-wrap:anywhere}
.pitch-summary span{color:#8eb4c8;font-size:10px;line-height:1.3;overflow-wrap:anywhere}
.pitch-overview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:12px;margin-bottom:16px}
.pitch-context,.pitch-how-it-works,.pitch-output-section{border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.pitch-context,.pitch-how-it-works{padding:16px}
.pitch-context h2,.pitch-how-it-works h2,.pitch-output-section h2{margin:0;color:var(--text);font:700 17px var(--font-ui)}
.pitch-context dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:15px 0;padding-bottom:15px;border-bottom:1px solid var(--line)}
.pitch-context dt{color:#8eacc0;font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.pitch-context dd{margin:4px 0 0;color:var(--text);font-size:12px}
.pitch-context h3{margin:0 0 6px;color:var(--text);font-size:11px}
.pitch-brief{margin:0 0 10px;color:var(--text);font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.pitch-context a{color:var(--text);font-size:12px}
.pitch-how-it-works{background:var(--surface)}
.pitch-route-icon{position:relative;display:grid;place-items:center;width:48px;height:48px;margin-bottom:10px;border:1px solid #5fd4c07d;border-radius:12px;background:var(--surface);color:var(--text);font-size:30px}
.pitch-route-icon span{position:absolute;right:7px;bottom:4px;font-size:16px}
.pitch-how-it-works p{color:var(--text);font-size:12px;line-height:1.5}
.pitch-how-it-works>div:last-child{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.pitch-how-it-works>div:last-child span{padding:4px 7px;border-radius:6px;background:var(--surface);color:var(--text);font-size:10px}
.pitch-how-it-works i{color:#69d5c8;font-style:normal}
.pitch-output-section{padding:16px}
.pitch-output-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.pitch-output-section-head p{margin:5px 0 0;color:#a8c7d7;font-size:12px}
.pitch-output-group{margin-top:11px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.pitch-output-group-head{display:flex;align-items:center;gap:12px;padding:13px 14px;background:var(--surface)}
.pitch-folder-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border:1px solid #3daaa8;border-radius:9px;background:var(--surface);color:var(--text);font-size:20px}
.pitch-output-group-head>div:nth-child(2){min-width:0;flex:1}
.pitch-output-group-head h3{margin:0;color:var(--text);font:700 14px var(--font-ui)}
.pitch-output-group-head p{margin:4px 0 0;color:#a9c7d9;font-size:11px;overflow-wrap:anywhere}
.pitch-output-group-head small{display:block;margin-top:4px;color:var(--text);font-size:10px}
.pitch-group-actions{display:flex;gap:6px;flex-wrap:wrap}
.pitch-group-actions .wc-btn{min-height:30px;padding:5px 8px;font-size:11px}
.pitch-output{display:grid;grid-template-columns:minmax(230px,1.4fr) minmax(130px,.8fr) auto;align-items:center;gap:12px;padding:13px 14px;border-top:1px solid var(--line)}
.pitch-output-main{display:flex;align-items:flex-start;gap:10px;min-width:0}
.pitch-output-mark{color:#61d4c7;font-size:11px;margin-top:3px}
.pitch-output-main>div{min-width:0}
.pitch-output-main b{display:block;color:var(--text);font-size:12px}
.pitch-output-main small{display:block;margin-top:4px;color:#abc8d7;font-size:11px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pitch-output-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:7px}
.pitch-output-meta span{color:#8fb4c7;font-size:10px}
.pitch-output-meta span+span:before{content:'·';margin-right:7px}
.pitch-output-routing{display:flex;gap:5px;flex-wrap:wrap}
.pitch-output-routing span{padding:4px 6px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:10px}
.pitch-output-routing span.empty{border-color:var(--line);background:var(--surface);color:#aac2d0}
.pitch-output-actions{display:flex;gap:5px}
.pitch-output-actions .wc-btn{min-height:30px;padding:5px 8px;font-size:10px}
.pitch-group-empty,.pitch-empty{padding:24px;color:#a8c5d5;text-align:center;font-size:12px}
.pitch-empty b{color:var(--text);font-size:14px}
.pitch-empty p{margin:8px 0 14px}
.pitch-empty>div{display:flex;justify-content:center;gap:7px}
.pitch-dialog-backdrop{z-index:10020}
.pitch-group-dialog .wc-dialog-body{display:grid;gap:11px}
.pitch-dialog-error{color:#ffadb6;font-size:11px}
.pitch-dialog-actions{display:flex;justify-content:flex-end;gap:7px}
.pitch-output-actions{align-items:center;flex-wrap:wrap}
.pitch-output-actions label{display:grid;gap:3px;color:#93b7c9;font-size:9px}
.pitch-output-actions select{max-width:135px;min-height:30px;padding:4px 5px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:10px}
.pitch-context-extra{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.pitch-context-extra p{margin:5px 0 0;color:var(--text);font-size:12px}
.pitch-lead-list,.pitch-link-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}
.pitch-lead-list span,.pitch-link-list a{padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font-size:11px;text-decoration:none}
.pitch-lead-list b{color:var(--text);margin-right:5px}
.pitch-progress-panel{min-width:0;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.pitch-progress-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.pitch-progress-head>div{display:flex;align-items:center;gap:10px;min-width:0}
.pitch-progress-head h2{margin:0;color:var(--text);font:700 16px var(--font-ui)}
.pitch-progress-head p{margin:3px 0 0;color:#a8c6d4;font-size:10px;line-height:1.35}
.pitch-progress-head>strong{color:var(--text);font:700 19px var(--font-ui)}
.pitch-progress-track{height:7px;overflow:hidden;border-radius:999px;background:var(--surface)}
.pitch-progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#36b7bc,#6fe2bb);transition:width .25s ease}
.pitch-progress-track.small{height:5px;margin-top:8px}
.pitch-progress-empty{color:#aac7d6;font-size:11px}
.pitch-summary-compact{display:flex;flex-wrap:wrap;gap:0!important;margin-bottom:12px!important;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.pitch-summary-compact article{flex:1 1 155px;min-width:0;padding:10px 14px!important;border:0!important;border-right:1px solid var(--line);border-radius:0!important;background:transparent!important}
.pitch-summary-compact article:last-child{border-right:0!important}
.pitch-summary-compact article b{font-size:14px!important}
.pitch-summary-compact article span{display:none!important}
.pitch-context{position:relative}
.pitch-context-edit{position:absolute;right:15px;top:12px;font-size:11px!important;padding:6px 9px!important}
.pitch-detail-backdrop{position:fixed;inset:0;z-index:1100;display:flex;justify-content:flex-end;background:var(--surface)}
.pitch-detail-panel{display:flex;flex-direction:column;width:min(480px,100vw);height:100%;border-left:1px solid var(--line);background:var(--surface);box-shadow:-12px 0 40px #00152188;color:var(--text)}
.pitch-detail-panel>header,.pitch-detail-panel>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px;border-bottom:1px solid var(--line)}
.pitch-detail-panel>footer{margin-top:auto;border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end}
.pitch-detail-panel>header small{color:#68dacc;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.pitch-detail-panel>header h2{margin:4px 0 0;font:700 20px var(--font-ui)}
.pitch-detail-body{flex:1;min-height:0;overflow-y:auto;padding:16px}
.pitch-detail-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:18px}
.pitch-detail-meta span{padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:#a9c8d8;font-size:11px}
.pitch-detail-meta b{color:var(--text)}
.pitch-detail-body .wc-field{display:grid;gap:6px}
.pitch-detail-body textarea,.pitch-detail-link-row input{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:10px;font:12px var(--font-ui)}
.pitch-detail-links{margin-top:18px}
.pitch-detail-links>div:first-child{display:flex;align-items:center;justify-content:space-between}
.pitch-detail-links h3,.pitch-detail-tasks h3{margin:0 0 9px;font:700 14px var(--font-ui)}
.pitch-detail-link-row{display:grid;grid-template-columns:1fr 1.5fr auto;gap:6px;margin:7px 0}
.pitch-detail-tasks{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.pitch-detail-tasks h3 span{color:var(--text)}
.pitch-detail-tasks article{display:grid;gap:4px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}
.pitch-detail-tasks article small,.pitch-detail-tasks p{color:#abc9d8;font-size:11px}
@media(max-width:600px){.pitch-detail-link-row{grid-template-columns:1fr auto}
.pitch-detail-link-row input[type=url]{grid-column:1/-1;grid-row:2}
.pitch-summary-compact article{flex-basis:45%}
.pitch-summary-compact article:nth-child(2){border-right:0!important}
}
@media(max-width:1100px){.pitch-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
.pitch-output{grid-template-columns:1fr}
.pitch-output-actions{justify-content:flex-start}
}
@media(max-width:700px){.pitch-toolbar,.pitch-hero,.pitch-output-section-head,.pitch-output-group-head{align-items:flex-start;flex-wrap:wrap}
.pitch-hero-badge{flex:none}
.pitch-overview{grid-template-columns:1fr}
.pitch-output-group-head .pitch-group-actions{width:100%}
.pitch-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.pitch-hero>div{position:relative;flex:1;min-width:0;padding-right:40px}
.pitch-hero-edit{position:absolute;right:0;top:0;min-width:30px;min-height:30px;padding:4px 8px}
.pitch-context-extra:has(.pitch-link-list){position:relative}
.pitch-links-edit{float:right;margin-top:-26px;min-width:30px;min-height:28px;padding:3px 8px}
.pitch-group-actions [data-pitch-edit-group]{min-width:31px;font-size:15px}
.pitch-context-edit{min-width:31px;font-size:15px!important}
.pitch-output-status{font-weight:700}
.pitch-output-status.unassigned{color:#a9c8d7}
.pitch-output-status.ongoing{color:var(--text)}
.pitch-output-status.delayed{color:#ffacba}
.pitch-output-status.completed{color:var(--text)}
.pitch-output-actions{justify-content:flex-end}
.pitch-output-actions [data-pitch-complete]{border-color:#42a797;color:var(--text)}
.pitch-output-completion-link{display:inline-block;margin-top:4px;color:var(--text);font-size:11px;text-decoration:none}
.pitch-output-completion-link:hover{text-decoration:underline}
.pitch-connected-departments{position:relative;display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.pitch-department-trigger{width:100%;min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);text-align:left;font:12px var(--font-ui);cursor:pointer}
.pitch-department-menu{position:absolute;z-index:8;top:100%;left:0;right:0;display:grid;gap:6px;max-height:220px;padding:8px;border:1px solid #4b91a8;border-radius:8px;background:var(--surface);box-shadow:0 10px 24px #001522aa}
.pitch-department-menu[hidden],.pitch-department-menu label[hidden]{display:none}
.pitch-department-menu>input{min-height:32px!important}
.pitch-department-menu>div{overflow:auto;display:grid;gap:2px}
.pitch-department-menu label{display:flex;align-items:center;gap:7px;padding:6px;color:var(--text);font-size:11px;cursor:pointer}
.pitch-inline-form{padding:14px;border-top:1px solid var(--line);background:var(--surface)}
.pitch-inline-head,.pitch-inline-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pitch-inline-head{margin-bottom:12px}
.pitch-inline-head b{color:var(--text);font:700 13px var(--font-ui)}
.pitch-inline-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(150px,.6fr) minmax(200px,.9fr);gap:10px;align-items:start}
.pitch-inline-grid>label,.pitch-inline-owners>label{display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.pitch-inline-grid input:not([type=checkbox]),.pitch-inline-owners select{width:100%;min-height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.pitch-inline-grid fieldset{display:flex;flex-wrap:wrap;gap:5px;min-width:0;margin:0;padding:5px 7px;border:1px solid var(--line);border-radius:7px}
.pitch-inline-grid legend{color:var(--text);font-size:11px;font-weight:700}
.pitch-inline-grid fieldset label{display:flex;align-items:center;gap:4px;padding:3px 5px;color:var(--text);font-size:10px}
.pitch-inline-grid input[type=checkbox]{accent-color:#4ad3c4}
.pitch-inline-owners{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}
.pitch-inline-owners [hidden]{display:none!important}
.pitch-inline-error{min-height:14px;margin:8px 0;color:#ff9daa;font-size:11px}
.pitch-inline-actions{justify-content:flex-end}
.pitch-completion-dialog .wc-dialog-body{display:grid;gap:12px}
.pitch-completion-dialog textarea,.pitch-completion-dialog input{width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.pitch-completion-dialog .wc-field{display:grid;gap:5px;color:var(--text);font-size:11px}
.pitch-completion-link{display:grid;grid-template-columns:1fr 1.5fr;gap:10px}
@media(max-width:780px){.pitch-inline-grid{grid-template-columns:1fr 1fr}
.pitch-inline-grid fieldset{grid-column:1/-1}
.pitch-inline-owners{grid-template-columns:1fr}
}
@media(max-width:560px){.pitch-inline-grid,.pitch-completion-link{grid-template-columns:1fr}
.pitch-inline-grid fieldset{grid-column:auto}
}

/* Compact Pitch workspace: the key facts and actions should fit before the first group. */
.pitch-hero{padding:12px 16px;min-height:70px}
.pitch-hero .wc-eyebrow{font-size:9px}
.pitch-hero h1{font-size:21px}
.pitch-hero p:not(.wc-eyebrow){margin-top:3px;font-size:11px}
.pitch-hero-edit{top:4px}
.pitch-summary-compact{margin:8px 0!important}
.pitch-summary-compact article{min-height:52px!important;padding:7px 12px!important;gap:2px}
.pitch-summary-compact article small{font-size:10px}
.pitch-summary-compact article b{font-size:13px!important}
.pitch-overview{grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:8px;margin-bottom:9px}
.pitch-context,.pitch-progress-panel{padding:12px}
.pitch-context h2,.pitch-progress-head h2{font-size:14px}
.pitch-context dl{gap:5px 14px;margin:8px 0;padding-bottom:7px}
.pitch-context dd{margin-top:2px}
.pitch-context-extra{margin-top:7px;padding-top:7px}
.pitch-context-extra p,.pitch-brief{margin:3px 0;font-size:11px;line-height:1.3}
.pitch-context h3{margin-bottom:2px}
.pitch-link-list{margin-top:4px}
.pitch-link-list a{padding:3px 6px}
.pitch-context-edit{top:8px;right:10px}
.pitch-progress-head{align-items:baseline}
.pitch-progress-head>span{color:#a8cbd8;font-size:10px}
.pitch-progress-chart{display:flex;align-items:center;gap:16px;margin-top:10px}
.pitch-progress-donut{display:grid;place-items:center;flex:none;width:112px;height:112px;border-radius:50%;background:var(--surface)}
.pitch-progress-donut>span{display:grid;place-content:center;width:84px;height:84px;border-radius:50%;background:var(--surface);text-align:center}
.pitch-progress-donut strong{color:var(--text);font:700 23px var(--font-ui)}
.pitch-progress-donut small{color:#a6c6d3;font-size:10px}
.pitch-progress-bars{display:grid;flex:1;min-width:0;gap:8px;max-height:126px;overflow:auto}
.pitch-progress-bar-row>div:first-child{display:flex;justify-content:space-between;gap:6px;color:var(--text);font-size:10px}
.pitch-progress-bar-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pitch-progress-bar-row span{color:#9fc5d2;white-space:nowrap}
.pitch-progress-bar-row .pitch-progress-track{margin-top:4px}
.pitch-output-section{padding:11px}
.pitch-output-section-head{margin-bottom:8px}
.pitch-output-section-head p{margin-top:3px;font-size:10px}
.pitch-output-group{margin-top:8px}
.pitch-output-group-head{padding:9px 11px}
.pitch-output-group-head p{margin-top:2px}
.pitch-output-group-head small{margin-top:2px}
.pitch-output{grid-template-columns:minmax(240px,1.55fr) minmax(115px,.72fr) auto;gap:9px;padding:8px 11px}
.pitch-output-main small{margin-top:2px}
.pitch-output-meta{margin-top:3px}
.pitch-output-actions .wc-btn{min-height:27px}
.pitch-output-routing{justify-content:flex-start}
.pitch-assignment-choices{display:grid;gap:8px}
.pitch-assignment-choices .wc-btn{text-align:left}
@media(max-width:850px){.pitch-overview{grid-template-columns:1fr}
.pitch-output{grid-template-columns:1fr auto}
.pitch-output-routing{grid-column:1}
.pitch-output-actions{grid-column:2;grid-row:1/3;align-self:center}
}
@media(max-width:560px){.pitch-progress-chart{align-items:flex-start}
.pitch-progress-donut{width:92px;height:92px}
.pitch-progress-donut>span{width:68px;height:68px}
.pitch-progress-donut strong{font-size:18px}
.pitch-output{grid-template-columns:1fr}
.pitch-output-actions{grid-column:1;grid-row:auto;justify-content:flex-start}
}


/* Project billing conversion */
.op-project-billing dd:has(.op-billing-edit)>span{margin-right:0}
.op-project-billing dd .op-billing-edit{display:inline-grid;place-items:center;margin-left:-5px;padding:2px 5px;font-size:15px;line-height:1}
.op-project-billing dd .op-billing-menu-wrap{margin-left:auto}


/* Project list overrides */
.wc-page .op-project-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.op-project-kpis .wc-kpi[role="button"]{cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.op-project-kpis .wc-kpi[role="button"]:hover,.op-project-kpis .wc-kpi[role="button"]:focus-visible{border-color:#54d7c7;background:var(--surface);outline:none;transform:translateY(-1px)}
.op-project-kpis .wc-kpi.selected{border-color:#52d8c6;box-shadow:inset 0 0 0 1px #52d8c6;background:var(--surface)}
.wc-page .op-project-filters{display:block;margin-bottom:14px}
.op-project-quick{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:11px}
.op-project-quick button,.op-project-filter-foot button{min-height:31px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:700 11px var(--font-ui);cursor:pointer}
.op-project-quick button:hover,.op-project-filter-foot button:hover{border-color:#51d7c4;color:var(--text)}
.op-project-quick button.active{border-color:#52d8c6;background:var(--surface);color:var(--text)}
.op-project-filter-controls{display:grid;grid-template-columns:minmax(190px,1.7fr) repeat(4,minmax(120px,1fr));gap:8px;align-items:end}
.op-project-filter-controls label,.op-project-date-filters label{display:grid;gap:4px;color:#9ebdd0;font:700 10px var(--font-ui)}
.op-project-filter-controls .wc-input,.op-project-filter-controls .wc-select,.op-project-date-filters input{min-height:36px;height:36px;font-size:11px}
.op-project-filter-foot{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:8px;color:#9ebdd0;font-size:10px}
.op-project-filter-foot details{margin-right:auto;position:relative}
.op-project-filter-foot summary{cursor:pointer;color:var(--text);font-weight:700;list-style:none}
.op-project-filter-foot summary::-webkit-details-marker{display:none}
.op-project-filter-foot summary::after{content:' ▾'}
.op-project-filter-foot details[open] summary::after{content:' ▴'}
.op-project-date-filters{display:flex;gap:8px;margin-top:8px}
.op-project-date-filters input{width:150px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}
.op-project-list{min-width:0;table-layout:fixed}
.op-project-list th,.op-project-list td{padding:12px 9px;white-space:normal;overflow-wrap:break-word}
.op-project-list th:nth-child(1){width:10%}
.op-project-list th:nth-child(2){width:7%}
.op-project-list th:nth-child(3){width:7%}
.op-project-list th:nth-child(4){width:9%}
.op-project-list th:nth-child(5){width:16%}
.op-project-list th:nth-child(6){width:12%}
.op-project-list th:nth-child(7){width:17%}
.op-project-list th:nth-child(8){width:10%}
.op-project-list th:nth-child(9){width:12%}
.op-project-list .wc-pill{white-space:normal;text-align:center;line-height:1.15}
.op-project-list td:nth-child(7){min-width:0}
.op-project-alerts,.op-project-billing-statuses{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}
.op-project-billing-coverage,.op-project-work-progress{display:block;margin-top:5px;color:#a8c9d9;font-size:10px;line-height:1.25}
.op-project-work-progress{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;margin-top:0;white-space:nowrap}
.op-project-work-progress>span{display:inline-flex;align-items:center;gap:4px;min-width:0;color:var(--text);font-size:10px;line-height:1}
.op-project-work-progress>span:nth-child(1){color:var(--text)}
.op-project-work-progress>span:nth-child(2){color:var(--text)}
.op-project-work-progress>span:nth-child(3){color:var(--text)}
.op-project-work-progress abbr{text-decoration:none;font-weight:800}
.op-project-work-progress b{display:inline-grid!important;place-items:center;width:21px;height:21px;border:1px solid currentColor;border-radius:50%;background:var(--surface);color:inherit!important;font-size:10px}
.op-billing-menu{max-height:290px;overflow:auto}
.op-row-actions small + .wc-btn{margin-left:8px}
.op-row-actions .wc-btn.op-row-icon{display:inline-grid;place-items:center;width:31px;min-width:31px;height:31px;min-height:31px;padding:0;font-size:18px;line-height:1}
.op-header-actions{flex-wrap:wrap;justify-content:flex-end}
.op-header-actions .op-transfer-button{min-height:36px;padding:7px 10px;white-space:nowrap}
.op-cancelled .op-row-actions .wc-btn{opacity:1}
.op-project-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.op-project-toolbar .wc-actions{display:flex;justify-content:flex-end;gap:8px}
.op-project-details h2.op-project-title{font:700 24px/1.2 var(--font-ui);padding:15px 15px 12px;overflow-wrap:anywhere}
.op-project-more .op-fixed-scope{display:grid;gap:13px;margin:14px 0 0;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:inset 0 1px 0 #6be0d01c}
.op-project-more .op-fixed-scope-head{display:flex;align-items:center;gap:12px;min-width:0}
.op-fixed-scope-head svg{flex:none;width:52px;height:52px;padding:9px;border:1px solid #49cdb57d;border-radius:11px;background:var(--surface);fill:none;stroke:#85f0d9;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.op-fixed-scope-head h3{margin:0;color:var(--text);font:700 16px var(--font-ui)}
.op-fixed-scope-head p{margin:3px 0 0;color:#a8c9d9;font-size:11px;line-height:1.35}
.op-fixed-scope-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.op-fixed-scope-stats>div{display:flex;align-items:center;gap:9px;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.op-fixed-scope-stats b{display:grid;place-items:center;flex:none;min-width:26px;height:26px;padding:0 5px;border-radius:50%;background:var(--surface);color:var(--text);font-size:13px}
.op-fixed-scope-stats span{color:var(--text);font-size:11px;line-height:1.3}
.op-fixed-scope-commercial{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;padding-top:11px;border-top:1px solid #78d2c02e;font-size:11px}
.op-fixed-scope-commercial span{color:#a8c9d9}
.op-fixed-scope-commercial b{color:var(--text);font-size:11px}
.op-fixed-scope-commercial strong{margin-left:auto;color:var(--text);font-size:12px;white-space:nowrap}
.op-fixed-class{display:block;width:max-content;max-width:100%;margin-top:5px;padding:3px 6px;border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:10px;line-height:1.2;white-space:normal}
[data-fixed-rate][hidden]{display:none}
@media(max-width:700px){.op-fixed-scope-commercial strong{margin-left:0}
}
@media(max-width:650px){.op-project-toolbar{flex-wrap:wrap}
.op-project-toolbar .wc-actions{margin-left:auto;flex-wrap:wrap}
}
@media(max-width:1100px){.wc-page .op-project-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.op-project-list{min-width:1050px;table-layout:fixed}
}
@media(max-width:1100px){.op-project-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}
.op-project-filter-controls>.wc-input{grid-column:1/-1}
}
@media(max-width:650px){.wc-page .op-project-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.op-project-filter-controls{grid-template-columns:1fr 1fr}
.op-project-date-filters{flex-wrap:wrap}
}


/* Operating system */
/* Final Work / Finance / Cost Controller surface. Loaded last. */
.os-page{display:none;padding:20px 0 50px;color:var(--text)}
.os-page.open{display:block}
.os-page *{box-sizing:border-box}
.os-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}
.os-head h1{margin:2px 0 5px;font:700 30px var(--font-ui)}
.os-head p{margin:0;color:var(--muted);max-width:760px}
.os-eyebrow{color:var(--teal)!important;font-size:11px;font-weight:700;letter-spacing:.12em}
.os-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.os-btn{min-height:40px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:8px 13px;font:600 13px var(--font-ui);cursor:pointer}
.os-btn:hover{border-color:#4acbc0;background:var(--surface)}
.os-btn.primary{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.os-btn.danger{color:#ffb4b7;border-color:var(--line);background:var(--surface)}
.os-btn.icon{width:40px;padding:0}
.os-subnav{display:none;margin:-4px 0 18px;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);gap:6px;overflow:auto}
.os-subnav.open{display:flex}
.os-subnav button{flex:none;min-height:38px;border:0;border-radius:8px;background:transparent;color:#abc4dc;padding:8px 12px;font:600 12px var(--font-ui);cursor:pointer}
.os-subnav button:hover,.os-subnav button.active{background:var(--surface);color:var(--surface)}
.os-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}
.os-kpi,.os-card{border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.os-kpi{padding:15px;min-height:105px}
.os-kpi small{display:block;color:var(--muted)}
.os-kpi .os-entity-name { font-size:16px; }
.os-kpi b{display:block;font:700 25px var(--font-ui);margin:8px 0 4px}
.os-kpi span{color:#a9c2d8;font-size:12px}
.os-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.os-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.os-card{padding:16px}
.os-card h2{font:600 17px var(--font-ui);margin:0 0 4px}
.os-card h3{font-size:14px;margin:0}
.os-muted{color:var(--muted);font-size:12px}
.os-card-head,.os-between{display:flex;align-items:center;justify-content:space-between;gap:12px}
.os-card-head{margin-bottom:14px}
.os-list{display:grid;gap:8px}
.os-list-item{border:1px solid rgba(126,191,230,.13);background:var(--surface);border-radius:10px;padding:11px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.os-list-item small{display:block;color:var(--muted);margin-top:3px}
.os-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.os-table{width:100%;border-collapse:collapse;min-width:840px}
.os-table th,.os-table td{padding:11px 13px;text-align:left;border-bottom:1px solid rgba(126,191,230,.11);vertical-align:top}
.os-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#9eb9d2}
.os-table td{font-size:13px;color:var(--text)}
.os-table tbody tr:hover{background:rgba(51,148,193,.08)}
.os-table small{display:block;color:var(--muted);margin-top:3px}
.os-money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}
.os-toolbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--surface);margin-bottom:13px}
.os-input,.os-select,.os-field input,.os-field select,.os-field textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:9px 10px;font:13px var(--font-ui)}
.os-field textarea{min-height:86px;resize:vertical}
.os-input{width:260px}
.os-select{width:auto;min-width:160px}
.os-field{display:grid;gap:5px;color:var(--text);font-size:12px;font-weight:600}
.os-field.wide{grid-column:1/-1}
.os-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.os-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.os-tabs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:13px}
.os-tabs button{border:1px solid var(--line);background:transparent;color:#a9c1d9;border-radius:8px;min-height:38px;padding:8px 12px;cursor:pointer}
.os-tabs button.active{background:#42d2bf;color:var(--muted);border-color:#42d2bf;font-weight:700}
.os-pill{display:inline-flex;align-items:center;min-height:25px;border-radius:99px;padding:4px 9px;font-size:11px;font-weight:700;border:1px solid}
.os-pill.green{color:var(--text);border-color:var(--line);background:var(--surface)}
.os-pill.yellow{color:var(--text);border-color:var(--line);background:var(--surface)}
.os-pill.red{color:#ffafb4;border-color:var(--line);background:var(--surface)}
.os-pill.blue{color:var(--text);border-color:var(--line);background:var(--surface)}
.os-pill.purple{color:#d0baff;border-color:var(--line);background:var(--surface)}
.os-empty{padding:28px;text-align:center;color:var(--muted)}
.os-empty b{display:block;color:var(--text);margin-bottom:5px}
.os-progress{height:8px;border-radius:6px;background:var(--surface);overflow:hidden;margin:8px 0}
.os-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--blue));border-radius:inherit}
.os-entity-status { text-align:right; }
.os-alert-spaced { margin-top:12px; }
.os-alert-spaced-lg { margin-top:14px; }
.os-fieldset { border:0; padding:0; }
.os-document-terms { margin-top:24px; }
.os-alert{border:1px solid rgba(246,185,40,.5);background:var(--surface);border-radius:10px;padding:10px 12px;color:var(--text)}
.os-alert.error{border-color:var(--line);background:var(--surface);color:var(--text)}
.os-dialog-backdrop{position:fixed;inset:0;z-index:1400;background:var(--surface);display:grid;place-items:center;padding:20px}
.os-dialog{width:min(900px,96vw);max-height:min(90vh,840px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:0 24px 80px #0008;overflow:hidden}
.os-dialog.small{width:min(610px,96vw)}
.os-dialog-head,.os-dialog-foot{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:15px}
.os-dialog-head h2{margin:0;font:700 21px var(--font-ui)}
.os-dialog-head p{margin:4px 0 0;color:var(--muted)}
.os-dialog-body{padding:17px 18px;overflow:auto}
.os-dialog-foot{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end;align-items:center}
.os-dialog-close{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);width:40px;height:40px;font-size:20px;cursor:pointer}
.os-doc-shell{background:var(--surface);padding:24px;max-height:78vh;overflow:auto}
.os-a4{width:210mm;min-height:297mm;margin:0 auto 16px;background:var(--surface);color:var(--muted);padding:14mm 14mm 16mm;font:10.5pt Arial,sans-serif;box-shadow:0 3px 18px #0005;position:relative}
.os-a4 h1{font-size:18pt;margin:0}
.os-doc-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:10px}
.os-doc-title{text-align:right}
.os-doc-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}
.os-doc-meta div{border:1px solid #ccd4da;padding:7px}
.os-doc-meta small{display:block;color:var(--muted)}
.os-doc-parties{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.os-doc-box{border:1px solid #ccd4da;padding:10px;min-height:88px}
.os-doc-table{width:100%;border-collapse:collapse;margin:14px 0}
.os-doc-table th,.os-doc-table td{border:1px solid #bdc7ce;padding:7px;text-align:left}
.os-doc-table th{background:#e9f1f4}
.os-doc-total{margin-left:auto;width:48%;display:grid;gap:5px}
.os-doc-total div{display:flex;justify-content:space-between;border-bottom:1px solid #d5dde2;padding:5px}
.os-doc-total div:last-child{font-weight:700;font-size:12pt;border-top:1px solid var(--line)}
.os-doc-foot{position:absolute;left:14mm;right:14mm;bottom:10mm;border-top:1px solid #ccd4da;padding-top:8px;display:flex;justify-content:space-between;color:var(--muted);font-size:9pt}
.os-bar{height:10px;border-radius:7px;background:var(--surface);overflow:hidden}
.os-bar i{display:block;height:100%;background:var(--teal)}
.os-matrix{display:grid;grid-template-columns:1.2fr repeat(4,minmax(80px,1fr));gap:1px;background:rgba(126,191,230,.15);border:1px solid var(--line)}
.os-matrix>*{background:var(--surface);padding:10px}
.os-notice-count{display:grid;place-items:center;min-width:25px;height:25px;border-radius:20px;background:#fa6d75;color:var(--surface);font-size:11px;font-weight:700}
.os-split{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px}
.os-side-filter{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);height:max-content}
.os-side-filter button{width:100%;text-align:left;border:0;border-radius:8px;background:transparent;color:var(--text);padding:10px;cursor:pointer}
.os-side-filter button.active{background:var(--surface);color:var(--surface)}
.finance-page,.finance-subnav{z-index:auto}
.os-nav-button .nav-icon{font-weight:700}
.wc-page .os-commercial-strip{margin:14px 0}
.wc-page .os-commercial-strip .os-kpis{margin-bottom:0}
@media(max-width:1200px){.os-kpis{grid-template-columns:repeat(2,1fr)}
.os-grid.three{grid-template-columns:repeat(2,1fr)}
.os-form-grid.three{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){.os-head,.os-card-head{align-items:stretch;flex-direction:column}
.os-actions{justify-content:flex-start}
.os-grid,.os-grid.three,.os-form-grid,.os-form-grid.three,.os-split{grid-template-columns:1fr}
.os-kpis{grid-template-columns:1fr 1fr}
.os-subnav{max-width:calc(100vw - 110px)}
.os-a4{width:100%;min-height:0}
.os-doc-meta{grid-template-columns:1fr 1fr}
}
@media print{body *{visibility:hidden}
.os-doc-shell,.os-doc-shell *{visibility:visible}
.os-doc-shell{position:absolute;inset:0;background:var(--surface);padding:0;overflow:visible}
.os-a4{width:210mm;min-height:297mm;box-shadow:none;margin:0;page-break-after:always}
@page{size:A4 portrait;margin:0}
}


/* Work planning */
.pl-project-dialog,.pl-delivery-dialog{width:min(1180px,calc(100vw - 32px));height:min(850px,calc(100vh - 24px))}
.pl-project-dialog .wc-dialog-body,.pl-delivery-dialog .wc-dialog-body{padding:0 18px 18px}
.pl-project-layout.pl-fixed-project-layout{display:block}
.pl-fixed-project-layout>.wc-form-section{max-width:none}
.pl-fixed-project-layout .wc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.pl-project-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(430px,1.12fr);gap:12px;padding-top:14px;align-items:start}
.pl-project-layout>.wc-form-section{margin:0}
.pl-project-layout .pl-department-section{position:sticky;top:12px}
.pl-project-layout+.wc-form-section{margin-top:12px}
.pl-department-row{display:grid;grid-template-columns:1fr 1fr .72fr;gap:10px;align-items:start}
.pl-department-row:has(> :nth-child(4)){grid-template-columns:1fr 1fr .72fr .72fr}
.pl-ongoing-project-dialog{width:min(760px,calc(100vw - 32px));height:auto;max-height:calc(100vh - 24px)}
.pl-ongoing-project-layout{display:block;max-width:680px;margin:0 auto;padding-top:18px}
.pl-ongoing-project-layout .wc-form-section{border:0;background:transparent;padding:0}
.pl-ongoing-project-layout .wc-grid{grid-template-columns:1fr 1fr}
.pl-ongoing-project-layout .wc-field.wide{grid-column:1/-1}
.wc-field .pl-project-name-error{color:#ff9ca7;font-size:11px;margin-top:5px}
.wc-field input[aria-invalid="true"]{border-color:#ff788a!important;box-shadow:0 0 0 1px #ff788a}
.pl-internal-control{display:flex;align-items:center;gap:6px;min-width:0;margin:0 auto 0 14px;padding:0;border:0;color:var(--text)}
.pl-internal-control legend{float:left;margin-right:10px;font-weight:700;font-size:12px;line-height:32px}
.pl-internal-control legend small{display:block;color:#9fbdd1;font-size:10px;font-weight:400;line-height:12px}
.pl-internal-control label{display:inline-flex;align-items:center;justify-content:center;min-width:38px;padding:7px 9px;border:1px solid var(--line);border-radius:6px;cursor:pointer;font-size:12px}
.pl-internal-control label:has(input:checked){background:#46c9bd;border-color:#46c9bd;color:var(--muted);font-weight:700}
.pl-internal-control input{position:absolute;opacity:0;width:1px;height:1px}
.pl-internal-control label:focus-within{outline:2px solid #72dcda;outline-offset:2px}
@media(max-width:640px){.pl-ongoing-project-dialog .wc-dialog-foot{flex-wrap:wrap}
.pl-internal-control{order:-1;width:100%;margin:0 0 8px}
.pl-internal-control legend{min-width:125px}
}
.wc-field #plClientDuplicateError[hidden]{display:none!important}
.wc-field #plClientDuplicateError:not([hidden]){display:block;color:#b42335;font-size:11px;margin-top:5px}
.pl-ongoing-project-dialog .wc-dialog-foot{justify-content:space-between;gap:16px}
.pl-internal-control{margin:0;gap:14px}
.pl-internal-copy{display:grid;gap:4px;font-size:12px}
.pl-internal-copy small{color:#9fbdd1;font-size:10px}
.pl-internal-control label.pl-internal-switch,.pl-internal-control label.pl-internal-switch:has(input:checked){display:inline-flex;align-items:center;gap:9px;padding:0;border:0;background:transparent;color:var(--text);font-weight:600}
.pl-switch-track{display:flex;align-items:center;width:42px;height:24px;padding:3px;border-radius:20px;background:var(--surface);transition:background .16s}
.pl-switch-thumb{width:18px;height:18px;border-radius:50%;background:#eef8fd;box-shadow:0 1px 4px #00162580;transition:transform .16s}
.pl-internal-switch input:checked+.pl-switch-track{background:#46c9bd}
.pl-internal-switch input:checked+.pl-switch-track .pl-switch-thumb{transform:translateX(18px)}
.pl-internal-switch>b{min-width:22px;font-size:12px}
.pl-project-footer-actions{display:flex;gap:10px;align-items:center;margin-left:auto}
.pl-project-footer-actions .wc-btn{min-width:86px}
@media(max-width:640px){.pl-project-footer-actions{width:100%;justify-content:flex-end}
.pl-internal-control{margin-bottom:8px}
}
.pl-project-flags{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.pl-project-flags .pl-switch-track{position:relative;width:70px;height:27px;flex:none;padding:0 8px}
.pl-project-flags .pl-switch-thumb{position:absolute;left:4px;top:4px;width:19px;height:19px}
.pl-project-flags .pl-switch-track b{width:100%;padding-left:22px;color:var(--text);text-align:center;font-size:11px}
.pl-project-flags .pl-internal-switch input:checked+.pl-switch-track .pl-switch-thumb{transform:translateX(43px)}
.pl-project-flags .pl-internal-switch input:checked+.pl-switch-track b{padding:0 22px 0 0;color:var(--muted)}
.pl-project-flags .pl-internal-switch input:disabled+.pl-switch-track{opacity:.5;cursor:not-allowed}
.pl-fixed-head-actions{display:flex;gap:8px;align-items:center}
@media(max-width:760px){.pl-project-dialog .wc-dialog-foot{flex-wrap:wrap}
.pl-project-flags{width:100%;gap:12px}
.pl-internal-control{margin-bottom:0}
}
.pl-retainer-scope-list{display:grid;gap:10px}
.pl-retainer-scope-card{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.pl-retainer-scope-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.pl-retainer-dimensions{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.pl-retainer-dimensions summary{color:#58d8c9;font-weight:700;cursor:pointer}
.pl-retainer-dimensions p{font-size:11px;color:#9dbacc}
.pl-retainer-dimension{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;margin:8px 0}
.pl-retainer-commercials .wc-note{margin-top:12px}
@media(max-width:700px){.pl-retainer-dimension{grid-template-columns:1fr}
.pl-retainer-scope-card .wc-grid{grid-template-columns:1fr}
.pl-retainer-guardrails .wc-card-head{align-items:flex-start;flex-direction:column}
.pl-retainer-guardrails .pl-fixed-head-actions{flex-wrap:wrap}
}
.pl-select-trigger,.pl-member-trigger{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px;text-align:left;font:12px var(--font-ui);cursor:pointer}
.pl-select-trigger:hover,.pl-member-trigger:hover{border-color:var(--mint,#43d8c2)}
.pl-select-trigger:disabled{opacity:.55;cursor:not-allowed}
.pl-member-trigger{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-height:48px}
.pl-picker{display:grid;gap:10px}
.pl-search{display:flex;align-items:center;gap:9px;border:1px solid #b8b3d1;border-radius:10px;padding:0 12px;background:var(--surface);color:var(--muted)}
.pl-search span{font-size:22px}
.pl-search input{width:100%;min-height:50px;border:0!important;outline:0;background:transparent!important;color:var(--muted);font-size:16px!important}
.pl-picker [data-client-options],.pl-picker [data-people-options],.pl-contact-list{display:grid;gap:2px;max-height:340px;overflow:auto}
.pl-picker-row,.pl-person-option{border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;padding:11px 9px;font:600 14px var(--font-ui);cursor:pointer}
.pl-picker-row:hover,.pl-picker-row.selected,.pl-person-option:hover,.pl-person-option.checked{background:var(--surface)}
.pl-picker-row small,.pl-person-option small{display:block;color:#a9bfd0;font-size:11px;margin-top:3px}
.pl-person-option{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center}
.pl-person-option>span{font-size:21px;color:#a692ff}
.pl-person-option em{font-style:normal;color:var(--text);font-size:11px}
.pl-picker-chips{display:flex;flex-wrap:wrap;gap:7px;min-height:28px}
.pl-chip{display:inline-flex;align-items:center;gap:6px;border-radius:7px;background:#efeaff;color:var(--muted);padding:5px 8px;font-size:12px;font-weight:700}
.pl-chip b{border-radius:5px;background:var(--surface);color:var(--surface);padding:3px 5px;font-size:10px}
.pl-chip button{border:0;background:transparent;color:var(--muted);font-size:19px;line-height:1;cursor:pointer}
.pl-inline-picker{position:relative}
.pl-inline-menu{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 5px);display:grid;gap:8px;padding:10px;border:2px solid #8c79cf;border-radius:11px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.pl-inline-menu[hidden]{display:none}
.pl-inline-menu .pl-search{border-color:var(--line);background:var(--surface);color:var(--text)}
.pl-inline-menu .pl-search input{min-height:38px;color:var(--text);font-size:12px!important}
.pl-inline-options{display:grid;gap:2px;max-height:210px;overflow:auto;overscroll-behavior:contain}
.pl-inline-options>button{display:grid;grid-template-columns:22px 1fr auto;gap:7px;align-items:center;border:0;border-radius:7px;background:transparent;color:var(--text);padding:9px;text-align:left;font:600 12px var(--font-ui);cursor:pointer}
.pl-inline-options>button:hover{background:var(--surface)}
.pl-inline-options>button small{display:block;margin-top:2px;color:#9eb8cb;font-size:10px}
.pl-inline-options>button em{font-size:10px;color:var(--text);font-style:normal}
.pl-inline-fixed-action{border-top:1px solid var(--line);padding-top:9px!important;text-align:left!important}
.pl-inline-add{display:grid;grid-template-columns:1fr 1fr;gap:7px;border-top:1px solid var(--line);padding-top:9px}
.pl-inline-add>b{grid-column:1/-1;font-size:11px;color:var(--text)}
.pl-inline-add input{min-height:35px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:7px}
.pl-inline-add button{grid-column:1/-1}
.pl-member-menu{min-width:360px}
.pl-spoc-menu{min-width:330px}
.pl-chip-remove{display:grid;place-items:center;width:18px;height:18px;margin-left:2px;border-radius:50%;color:var(--muted);font-size:16px;line-height:1;cursor:pointer}
.pl-chip-remove:hover{background:#d8cff5;color:var(--muted)}
.pl-manager-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:8px;margin-top:12px}
.pl-person-pick{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:9px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);cursor:pointer}
.pl-person-pick:has(input[type=checkbox]:checked){border-color:var(--mint,#43d8c2);background:rgba(67,216,194,.08)}
.pl-person-pick span,.pl-person-pick small{display:block}
.pl-person-pick small{color:var(--muted,#8ba5b7);margin-top:2px}
.pl-person-pick em{font-style:normal;font-size:11px;color:var(--muted,#8ba5b7)}
.pl-plan-list,.pl-task-drafts,.pl-queue,.pl-overages{display:grid;gap:10px}
.pl-plan-card,.pl-task-card,.pl-queue-card,.pl-overage,.pl-workstream-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface)}
.pl-plan-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.pl-plan-head small{display:block;margin-top:3px;color:var(--muted,#8ba5b7);font-weight:400}
.pl-member-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:7px;margin-top:7px}
.pl-member-picks>label{display:flex;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:8px}
.pl-member-picks span,.pl-member-picks small{display:block}
.pl-scope-list,.pl-scope-mappings{display:grid;gap:8px}
.pl-scope-row{display:grid;grid-template-columns:2fr .7fr 1fr 1fr 1fr auto;gap:8px;align-items:end}
.pl-scope-map{display:grid;grid-template-columns:2fr 1fr 1.4fr auto;gap:8px;align-items:end;padding:9px;border:1px solid var(--line);border-radius:10px}
.pl-scope-map>span{font-size:11px;color:var(--muted,#8ba5b7);padding-bottom:12px}
.pl-fixed-baseline,.pl-fixed-commercials{margin-top:12px}
.pl-fixed-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
.pl-fixed-table{width:100%;min-width:850px;border-collapse:collapse;table-layout:fixed}
.pl-fixed-table th{padding:9px 8px;background:var(--surface);color:#a7c8d8;text-align:left;text-transform:uppercase;letter-spacing:.035em;font-size:10px}
.pl-fixed-table td{padding:8px;border-top:1px solid var(--line);vertical-align:middle}
.pl-fixed-table th:first-child{width:22%}
.pl-fixed-table th:nth-child(2){width:19%}
.pl-fixed-table th:nth-child(3){width:14%}
.pl-fixed-table th:nth-child(4){width:15%}
.pl-fixed-table th:nth-child(5){width:9%}
.pl-fixed-table th:last-child{width:8%}
.pl-fixed-table input,.pl-fixed-table select{width:100%;min-height:36px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.pl-fixed-table input:focus,.pl-fixed-table select:focus{outline:2px solid var(--mint,#43d8c2);outline-offset:1px}
.pl-fixed-table td small{color:var(--muted,#8ba5b7);font-size:10px}
.pl-fixed-table td b{white-space:nowrap;color:var(--text)}
.pl-fixed-table .pl-fixed-empty{padding:24px;color:var(--muted,#8ba5b7);text-align:center}
.pl-fixed-table .wc-btn.danger{min-width:32px;padding:5px 8px}
.pl-fixed-calculated{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:9px 12px;border:1px solid var(--line);border-radius:9px;color:var(--muted,#8ba5b7);font-size:12px}
.pl-fixed-calculated b{color:var(--text);font-size:17px}
.pl-wizard-toolbar{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;background:var(--surface);border-bottom:1px solid var(--line)}
.pl-delivery-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:12px;padding-top:14px}
.pl-delivery-layout>.wc-card{margin:0;align-self:start}
.wc-subsection{padding-top:14px;margin-top:14px;border-top:1px solid var(--line)}
.wc-label-action{float:right}
.wc-empty.compact{padding:24px}
.pl-task-card .pl-schedule{margin-top:10px}
.pl-schedule summary{cursor:pointer;color:var(--mint,#43d8c2);font-weight:700}
.pl-schedule>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;margin-top:9px}
.pl-schedule label{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px;border:1px solid var(--line);border-radius:8px}
.pl-schedule input{width:70px}
.pl-import-table{overflow:auto;max-height:350px;margin:12px 0}
.pl-import-table input{min-width:140px}
.pl-workstream-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.pl-cost-strip,.pl-overage-numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:7px;margin:10px 0}
.pl-cost-strip span,.pl-overage-numbers span{padding:8px;border-radius:8px;background:rgba(67,216,194,.07);font-size:11px}
.pl-cost-strip b,.pl-overage-numbers b{display:block;font-size:14px;margin-top:3px}
.pl-tabs{display:flex;gap:7px;margin:14px 0;border-bottom:1px solid var(--line)}
.pl-tabs button{min-height:42px;padding:0 16px;color:var(--muted,#8ba5b7);background:none;border:0;border-bottom:2px solid transparent;font-weight:700;cursor:pointer}
.pl-tabs button.active{color:var(--mint,#43d8c2);border-color:var(--mint,#43d8c2)}
.pl-tabs b{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:10px;background:var(--surface);color:var(--surface);font-size:11px}
.pl-queue-card{display:flex;justify-content:space-between;align-items:center;gap:18px}
.pl-queue-card small,.pl-queue-card p{display:block;color:var(--muted,#8ba5b7);margin:4px 0}
.pl-queue-card>div:last-child{display:flex;align-items:center;gap:8px}
.pl-bandwidth{overflow:auto}
.pl-bandwidth-row{display:grid;grid-template-columns:190px repeat(7,minmax(125px,1fr));min-width:1080px;border-bottom:1px solid var(--line)}
.pl-bandwidth-row>*{padding:10px;border-right:1px solid var(--line)}
.pl-bandwidth-row small{display:block;margin-top:3px;color:var(--muted,#8ba5b7)}
.pl-capacity{background:rgba(67,216,194,.06)}
.pl-capacity.full{background:rgba(216,92,92,.09);color:#ff9c9c}
.pl-overage{border-left:3px solid #ffae56}
.pl-overage p{color:var(--muted,#8ba5b7)}
.pl-task-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pl-task-choice .wc-choice{min-height:120px}
@media(max-width:900px){.pl-delivery-layout,.pl-project-layout{grid-template-columns:1fr}
.pl-project-layout .pl-department-section{position:static}
.pl-department-row{grid-template-columns:1fr 1fr}
.pl-scope-row{grid-template-columns:1fr 1fr}
.pl-manager-grid{grid-template-columns:1fr}
.pl-task-choice{grid-template-columns:1fr}
.pl-queue-card{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){.pl-project-dialog,.pl-delivery-dialog{width:100vw;height:100vh}
.pl-scope-map{grid-template-columns:1fr}
.pl-wizard-toolbar{align-items:flex-start;flex-direction:column}
.pl-queue-card>div:last-child{flex-wrap:wrap}
.pl-scope-row{grid-template-columns:1fr}
}
.pl-pitch-dialog .wc-dialog-body{padding:14px 18px 20px}
.pl-pitch-section{margin:0 0 12px}
.pl-pitch-section .wc-card-head{align-items:flex-start;margin-bottom:13px}
.pl-pitch-section .wc-card-head p{max-width:680px}
.pl-pitch-departments,.pl-pitch-links,.pl-pitch-outputs{display:grid;gap:10px}
.pl-pitch-department,.pl-pitch-output{padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.pl-pitch-dept-head,.pl-pitch-output-head,.pl-pitch-sub-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.pl-pitch-dept-head b,.pl-pitch-output-head b{color:var(--text);font-size:13px}
.pl-pitch-output-head small,.pl-pitch-sub-head span{color:#a5c4d5;font-size:11px}
.pl-pitch-people{display:flex;flex-wrap:wrap;gap:6px;min-height:39px;align-items:center;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.pl-pitch-people label{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:7px;color:var(--text);font-size:11px;cursor:pointer}
.pl-pitch-people label:has(input:checked){border-color:#49cdbb;background:var(--surface);color:var(--text)}
.pl-pitch-people small{padding:5px;color:#9ab7c8}
.pl-pitch-link,.pl-pitch-child{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:9px}
.pl-pitch-child{margin-top:8px;padding:10px;border-left:3px solid #54cdbb;border-radius:7px;background:var(--surface)}
.pl-pitch-link>.wc-btn,.pl-pitch-child>.wc-btn{margin-bottom:1px}
.pl-pitch-sub-head{margin:13px 0 4px}
.pl-pitch-output>.wc-grid{grid-template-columns:minmax(0,1.4fr) minmax(180px,.6fr)}
.pl-pitch-dialog .wc-footer-status{max-width:470px}
.pl-pitch-dialog .wc-field small{color:#9dbaca}
@media(max-width:700px){.pl-pitch-link,.pl-pitch-child,.pl-pitch-output>.wc-grid{grid-template-columns:1fr}
.pl-pitch-link>.wc-btn,.pl-pitch-child>.wc-btn{justify-self:start}
}
.pl-pitch-manager-list{display:flex;flex-wrap:wrap;gap:6px;max-height:120px;overflow-y:auto;padding:7px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.pl-pitch-manager-list label{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--line);border-radius:7px;color:var(--text);font-size:11px;cursor:pointer}
.pl-pitch-manager-list label:has(input:checked){border-color:#49cdbb;background:var(--surface);color:var(--text)}
.pl-pitch-manager-list label:has(input:disabled){cursor:default}
.pl-pitch-child{grid-template-columns:minmax(0,1.2fr) minmax(0,.75fr) minmax(0,.8fr) auto}
.pl-pitch-output>.wc-grid{grid-template-columns:minmax(0,1.4fr) minmax(160px,.6fr) minmax(160px,.6fr)}
@media(max-width:700px){.pl-pitch-child,.pl-pitch-output>.wc-grid{grid-template-columns:1fr}
}
.pl-pitch-manager-picker{position:relative}
.pl-pitch-manager-trigger{display:flex;align-items:center;flex-wrap:wrap;gap:5px;width:100%;min-height:40px;padding:5px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}
.pl-pitch-manager-trigger i{margin-left:auto;font-style:normal}
.pl-pitch-manager-menu{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;padding:8px;border:1px solid #4a91a1;border-radius:9px;background:var(--surface);box-shadow:0 12px 30px #001625bb}
.pl-pitch-manager-menu>input{width:100%;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}
.pl-pitch-manager-options{max-height:190px;overflow-y:auto;margin-top:6px}
.pl-pitch-manager-options button{display:flex;align-items:center;gap:8px;width:100%;padding:8px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.pl-pitch-manager-options button:hover{background:var(--surface)}
.pl-pitch-manager-options button b{flex:1}
.pl-pitch-manager-options button small{color:#9fc7d2}
.pl-pitch-manager-options em{color:var(--text);font-style:normal}
.pl-pitch-department-select{position:relative;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.pl-pitch-department-select summary{padding:10px;color:var(--text);font-size:11px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-pitch-department-select>div{position:absolute;z-index:20;left:0;right:0;top:100%;max-height:170px;overflow:auto;padding:6px;border:1px solid #4b8da1;border-radius:7px;background:var(--surface);box-shadow:0 12px 25px #001521aa}
.pl-pitch-department-select label{gap:6px;padding:5px;font-size:11px;cursor:pointer}
.pl-pitch-owners{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.pl-pitch-owners h4{margin:0;font:700 14px var(--font-ui)}
.pl-pitch-owners p{margin:5px 0 12px;color:#a9c7d6;font-size:11px}
.pl-pitch-owner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.pl-pitch-field-error{display:block!important;margin-top:4px;color:#ff9aa7!important;font-size:10px!important}
.pl-pitch-dialog [aria-invalid=true]{border-color:#ef758c!important;outline:1px solid #ef758c}
.pl-pitch-department-select:has(summary[aria-invalid=true]){border-color:#ef758c}
@media(max-width:700px){.pl-pitch-owner-grid{grid-template-columns:1fr}
}
.pl-project-dialog [data-pitch-pane][hidden],.pl-project-dialog [data-project-pane][hidden],.pl-project-dialog .wc-dialog-foot [hidden]{display:none!important}
.pl-form-steps{display:flex;gap:7px;align-items:center;overflow-x:auto;padding:12px 0 14px;scrollbar-width:thin}
.pl-form-steps button{display:flex;align-items:center;gap:8px;flex:1;min-width:max-content;padding:9px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:#9cbacb;text-align:left;font:600 12px var(--font-ui);cursor:pointer}
.pl-form-steps button:hover{border-color:#55c5b8;color:var(--text)}
.pl-form-steps button.active{border-color:#52d5c3;background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px #52d5c344}
.pl-form-steps button span{display:grid;place-items:center;flex:none;width:21px;height:21px;border:1px solid currentColor;border-radius:50%;font-size:10px}
.pl-form-steps button b{font-weight:700}
.pl-pitch-dialog .pl-pitch-section,.pl-fixed-project-layout+.pl-fixed-baseline{margin:0}
.pl-pitch-dialog .pl-pitch-section{min-height:260px;padding:16px 18px}
.pl-pitch-dialog .pl-pitch-section .wc-card-head{margin-bottom:10px}
.pl-pitch-dialog .pl-pitch-section .wc-card-head p{margin-top:3px;font-size:12px;color:#9dbacc}
.pl-form-intro{display:grid;gap:3px;margin:18px auto 4px;max-width:680px;padding:0 2px}
.pl-form-intro b{font:700 16px var(--font-ui);color:var(--text)}
.pl-form-intro small{font-size:11px;color:#9dbacc}
.pl-ongoing-project-layout{padding-top:7px}
.pl-ongoing-project-dialog .wc-dialog-body{padding:0 22px 18px}
.pl-ongoing-project-dialog .wc-field small{font-size:10px}
.pl-project-dialog .wc-dialog-foot{gap:10px}
.pl-project-dialog [data-pitch-progress]{font-size:11px;color:var(--text)}
@media(max-width:700px){.pl-form-steps button{flex:0 0 auto}
.pl-project-dialog .wc-dialog-foot{flex-wrap:wrap}
.pl-project-dialog .pl-project-footer-actions{width:100%;justify-content:flex-end}
}
.pl-project-footer-error{margin-right:auto;max-width:420px;color:#b42318;font-size:11px;line-height:1.35}
.pl-pitch-dialog .pl-form-steps[hidden],.pl-pitch-dialog .pl-form-steps [hidden],.pl-pitch-dialog [data-pitch-add-output][hidden]{display:none!important}
.pl-pitch-dialog .pl-pitch-child>[data-pitch-remove-child]{min-width:33px;height:34px;padding:3px 9px;font-size:18px;line-height:1}
.pl-pitch-dialog .pl-pitch-child>.wc-field{min-width:0}
.pl-pitch-department-select>div{min-width:220px;max-width:280px;right:auto;padding:8px}
.pl-pitch-department-select label{display:grid;grid-template-columns:16px minmax(0,1fr);gap:9px;min-height:34px;line-height:1.35}
.pl-pitch-department-select label input[type=checkbox]{appearance:auto!important;width:16px!important;height:16px!important;min-width:16px!important;margin:0!important;padding:0!important;accent-color:#31c8c0}
.pl-pitch-department-select label span{white-space:normal;overflow-wrap:anywhere}


/* Bandwidth planning */
.bandwidth-planning-page{display:none;min-height:calc(100vh - 72px);padding:22px 0 48px;color:var(--text)}
.bandwidth-planning-page.open{display:block}
.bp-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}
.bp-title{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.bp-title h1{font:700 30px var(--font-ui);margin:0}
.bp-date-nav{display:flex;align-items:center;border:1px solid rgba(126,191,230,.18);background:var(--surface);border-radius:12px;overflow:hidden}
.bp-date-nav button{width:42px;height:42px;border:0;background:transparent;color:var(--text);font-size:20px;cursor:pointer}
.bp-date-nav button:hover{background:var(--surface)}
.bp-date-nav label{min-width:190px;height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border-inline:1px solid rgba(126,191,230,.15);font-weight:700;cursor:pointer}
.bp-date-nav input{position:absolute;opacity:0;pointer-events:none}
.bp-tools{display:flex;align-items:center;gap:10px}
.bp-tools select,.bp-tools input{height:42px;background:var(--surface);color:var(--text);border:1px solid rgba(126,191,230,.22);border-radius:10px;padding:0 12px;font:13px var(--font-ui)}
.bp-tools input{width:285px}
.bp-tabs{display:flex;gap:3px;overflow:auto;border-bottom:1px solid rgba(126,191,230,.15);margin-bottom:16px}
.bp-tabs button{border:0;background:transparent;color:#a9c0d6;padding:11px 13px;white-space:nowrap;font:700 13px var(--font-ui);cursor:pointer}
.bp-tabs button.active{color:var(--surface);border-bottom:3px solid var(--teal)}
.bp-department{margin-bottom:14px}
.bp-department-head{width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid rgba(126,191,230,.15);border-radius:10px;background:var(--surface);color:var(--text);padding:10px 13px;cursor:pointer}
.bp-department-head span{display:flex;align-items:center;gap:9px}
.bp-department-head b{font:700 16px var(--font-ui)}
.bp-department-head small{color:#a8c4dc}
.bp-member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:10px;padding-top:9px}
.bp-member-card{min-height:205px;border:1px solid rgba(126,191,230,.17);border-radius:11px;padding:12px;display:flex;flex-direction:column}
.bp-member-head{display:grid;grid-template-columns:38px 1fr auto;gap:9px;align-items:center;margin-bottom:10px}
.bp-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#6678ef,#5ed6d0);color:var(--muted);font:800 16px var(--font-ui)}
.bp-member-head b{display:block;font-size:13px}
.bp-member-head small{display:block;color:#9db9cf;font-size:11px;margin-top:2px}
.bp-count{color:#a9c5da;font-size:11px}
.bp-client{margin:5px 0}
.bp-client>strong{display:block;font-size:12px;margin:7px 0 4px}
.bp-task{display:grid;grid-template-columns:18px 33px minmax(0,1fr) 22px;gap:6px;align-items:start;padding:5px 0;border-bottom:1px solid rgba(126,191,230,.09)}
.bp-task input[type=checkbox]{width:15px;height:15px;margin:2px 0 0;accent-color:var(--teal)}
.bp-priority{border:0;border-radius:5px;padding:3px 4px;font:800 10px var(--font-ui);cursor:pointer}
.bp-priority.p0{background:var(--surface);color:#ffafb8}
.bp-priority.p1{background:var(--surface);color:var(--text)}
.bp-priority.p2{background:var(--surface);color:var(--text)}
.bp-priority.p3{background:var(--surface);color:var(--text)}
.bp-task-title{font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.bp-task.done .bp-task-title{text-decoration:line-through;color:#7895aa}
.bp-more{border:0;background:transparent;color:#9dbbd2;cursor:pointer;padding:1px;font-size:16px}
.bp-task-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr auto auto auto;gap:6px;padding:5px 0 3px}
.bp-task-actions select{min-width:0;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:6px;font:11px var(--font-ui)}
.bp-icon-btn{width:29px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);cursor:pointer}
.bp-icon-btn.danger{color:#ff9faa;border-color:var(--line)}
.bp-add{margin-top:auto;padding-top:9px;border:0;border-top:1px solid rgba(126,191,230,.13);background:transparent;color:var(--text);text-align:left;font:700 12px var(--font-ui);cursor:pointer}
.bp-empty{padding:42px 20px;text-align:center;border:1px dashed rgba(126,191,230,.2);border-radius:12px;color:#9db9cf}
.bp-empty b{display:block;color:var(--text);font:600 16px var(--font-ui);margin-bottom:5px}
.bp-dialog-backdrop{position:fixed;inset:0;z-index:5000;background:var(--surface);display:grid;place-items:center;padding:20px}
.bp-dialog{width:min(570px,96vw);border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06);color:var(--text)}
.bp-dialog header,.bp-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid rgba(126,191,230,.16)}
.bp-dialog footer{border:0;border-top:1px solid rgba(126,191,230,.16);justify-content:flex-end}
.bp-dialog h2{font:700 20px var(--font-ui);margin:0}
.bp-dialog header button{border:0;background:transparent;color:var(--text);font-size:22px;cursor:pointer}
.bp-dialog-body{padding:16px}
.bp-dialog label{display:grid;gap:6px;color:var(--text);font-size:12px}
.bp-dialog textarea{min-height:220px;resize:vertical;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:12px;font:13px/1.6 var(--font-ui)}
.bp-dialog p{color:#9eb9ce;font-size:12px;line-height:1.5;margin:0 0 12px}
.bp-dialog-error{min-height:18px;color:#ffabb5;font-size:12px;margin-top:8px}
.bp-btn{border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:9px 13px;font:700 12px var(--font-ui);cursor:pointer}
.bp-btn.primary{background:var(--teal);border-color:var(--teal);color:var(--muted)}
.bp-dragging{opacity:.35}
.bp-drop-target{outline:2px solid var(--teal);outline-offset:2px}
@media(max-width:900px){.bp-head{align-items:flex-start;flex-direction:column}
.bp-tools{flex-wrap:wrap}
.bp-tools input{flex:1;min-width:190px}
.bp-member-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
}
@media(max-width:620px){.bp-title{align-items:flex-start;flex-direction:column}
.bp-date-nav label{min-width:160px}
.bp-tools select,.bp-tools input{width:100%}
}
.bp-manager-projects{display:grid;gap:16px}
.bp-manager-project{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px}
.bp-manager-project h2{margin:0 0 4px;font-size:17px}
.bp-manager-project>p{margin:0 0 12px;color:#a9c5d6}
.bp-manager-list{display:grid;gap:8px}
.bp-manager-item{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;padding:10px 12px}
.bp-manager-item>div:first-child{display:grid;gap:4px}
.bp-manager-item small{color:#a9c5d6}
.bp-manager-actions{display:flex;flex-wrap:wrap;gap:6px}
.bp-manager-actions button{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:7px 10px;cursor:pointer}


/* Bandwidth planning refinements */
.bp-member-card[data-bp-open-member]{cursor:pointer}
.bp-member-card[data-bp-open-member]:focus-visible{outline:2px solid var(--teal);outline-offset:2px}
.bp-member-card button,.bp-member-card input,.bp-member-card select{cursor:pointer}
.bp-icon-btn:disabled{opacity:.35;cursor:not-allowed}
.bp-btn.danger{background:var(--surface);border-color:var(--line);color:#ffb1ba}
.bp-format{display:grid;gap:7px;margin-bottom:14px;padding:11px 12px;border:1px solid rgba(65,210,191,.32);border-radius:9px;background:var(--surface);font-size:12px}
.bp-format b{color:var(--text)}
.bp-format code{white-space:pre-wrap;color:var(--text);font:12px/1.5 'DM Mono',monospace}
.bp-add-date{width:190px;margin-bottom:13px}
.bp-add-date input{height:38px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:8px;font:13px var(--font-ui)}
.bp-history-subtitle{margin:4px 0 0;color:#9eb9ce;font-size:13px}
.bp-history-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:12px}
.bp-history-date{min-height:170px;border:1px solid rgba(126,191,230,.17);border-radius:11px;background:var(--surface);padding:13px}
.bp-history-date>header{display:flex;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid rgba(126,191,230,.13);font-size:13px}
.bp-history-date>header span{color:#9db9cf;font-size:11px}
.bp-history-task{display:grid;grid-template-columns:33px 1fr auto;gap:7px;align-items:center;padding:5px 0;font-size:12px;border-bottom:1px solid rgba(126,191,230,.08)}
.bp-history-task small{font-size:10px;color:#9db9cf}
.bp-history-task.done>span:nth-child(2){text-decoration:line-through;color:#7895aa}
@media(max-width:620px){.bp-history-grid{grid-template-columns:1fr}
.bp-add-date{width:100%}
}


/* Bandwidth planning layout */
.bp-tools{position:relative}
.bp-tools>select{min-width:106px}
.bp-department-picker{position:relative}
.bp-filter-trigger{height:42px;min-width:180px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;border:1px solid rgba(126,191,230,.22);border-radius:10px;background:var(--surface);color:var(--text);padding:0 11px;font:13px var(--font-ui);cursor:pointer;text-align:left}
.bp-filter-trigger b{font-size:11px;color:#a9c5da;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bp-filter-trigger i{font-style:normal;color:#a9c5da}
.bp-filter-menu{position:absolute;z-index:20;top:calc(100% + 7px);right:0;width:225px;display:grid;gap:3px;padding:8px;border:1px solid rgba(118,185,223,.28);border-radius:11px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bp-filter-option{display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px;border-radius:7px;color:var(--text);font-size:13px;cursor:pointer}
.bp-filter-option:hover{background:rgba(91,207,196,.1)}
.bp-filter-option.all{padding-bottom:9px;margin-bottom:3px;border-bottom:1px solid rgba(153,205,230,.14);font-weight:700;color:var(--surface)}
.bp-filter-option input{width:15px;height:15px;margin:0;accent-color:#4dd9ca}
.bp-filter-option small{font-size:11px;color:#9eb8c8}
.bp-planning-results{min-width:0}
.bp-member-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.bp-history-tabs{display:flex;gap:4px;margin:-3px 0 14px}
.bp-history-tabs button{border:1px solid rgba(126,191,230,.22);border-radius:8px;background:var(--surface);color:#a9c5da;padding:8px 12px;font:700 12px var(--font-ui);cursor:pointer}
.bp-history-tabs button.active{background:rgba(81,211,198,.16);border-color:var(--teal);color:var(--text)}
@media(max-width:1180px){.bp-member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){.bp-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.bp-tools{width:100%}
.bp-filter-trigger{min-width:170px}
}
@media(max-width:620px){.bp-tools{display:grid;grid-template-columns:1fr 1fr}
.bp-tools input{grid-column:1/-1;width:100%}
.bp-filter-trigger{width:100%}
.bp-filter-menu{left:0;right:auto;width:min(225px,calc(100vw - 40px))}
.bp-member-grid{grid-template-columns:1fr}
}


/* Bandwidth planning polish */
.bandwidth-planning-page .bp-head{flex-wrap:wrap}
.bandwidth-planning-page .bp-head>.bp-tools{margin-left:auto}
@media(max-width:900px){.bandwidth-planning-page .bp-head>.bp-tools{margin-left:0}
}
.bp-card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:9px;border-top:1px solid rgba(126,191,230,.13)}
.bp-card-actions .bp-add{margin-top:0;padding-top:0;border-top:0}
.bp-view-more{border:0;background:transparent;color:#a9c5da;padding:0;font:700 12px var(--font-ui);cursor:pointer}
.bp-view-more:hover{color:var(--text)}
.bp-member-card{cursor:default}
.bandwidth-planning-page .bp-head{align-items:flex-start}
.bp-right-controls{display:grid;justify-items:end;gap:10px;margin-left:auto}
.bp-right-controls>.bp-tools{margin-left:0}
.bp-filter-trigger{min-width:132px;grid-template-columns:1fr auto auto}
.bp-filter-count{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:rgba(81,211,198,.2);color:var(--text);font-size:11px!important;font-weight:800!important}
.bp-shared-resource{color:var(--text);font-weight:700}
@media(max-width:900px){.bp-right-controls{width:100%;justify-items:stretch;margin-left:0}
.bp-right-controls>.bp-date-nav{justify-self:end}
.bp-right-controls>.bp-tools{margin-left:0}
}
@media(max-width:620px){.bp-right-controls>.bp-date-nav{justify-self:start}
}
.bp-transfer-table{overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.bp-transfer-table table{width:100%;border-collapse:collapse;min-width:720px}
.bp-transfer-table th,.bp-transfer-table td{padding:13px 15px;text-align:left;border-bottom:1px solid var(--line);font-size:13px}
.bp-transfer-table th{color:#a9c6d8;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.bp-transfer-table td{color:var(--text)}
.bp-transfer-table tr:last-child td{border-bottom:0}
.bp-transfer-table td[colspan]{text-align:center;color:#a9c6d8;padding:28px}
.bp-transfer-expand{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit}
.bp-transfer-expand small{color:#8fb8ce;font-size:10px}
.bp-transfer-expand:hover b,.bp-transfer-expand:focus-visible b{color:#54ddcb;text-decoration:underline}
.bp-transfer-detail td{background:var(--surface);padding:16px 20px!important}
.bp-transfer-detail ol{display:grid;gap:8px;margin:10px 0 0;padding-left:20px}
.bp-transfer-detail li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;color:var(--text)}
.bp-transfer-detail li strong{color:var(--text)}
.bp-transfer-detail li em{width:100%;font-style:normal;color:#8fb8ce}


/* Bandwidth planning workflow */
.bp-workflow-tabs{display:flex;gap:4px;margin:0 0 14px;border-bottom:1px solid rgba(126,191,230,.2)}
.bp-workflow-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:#aac4d7;padding:10px 14px;font:700 13px var(--font-ui);cursor:pointer}
.bp-workflow-tabs button.active{border-bottom-color:#47d5c8;color:var(--text)}
.bp-workflow-panel{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.bp-workflow-panel>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px;border-bottom:1px solid var(--line)}
.bp-workflow-panel h2{margin:0;font-size:17px}
.bp-workflow-panel p{margin:5px 0 0;color:#a9c6d9;font-size:13px}
.bp-workflow-panel>header>b{display:grid;place-items:center;min-width:29px;height:29px;border-radius:50%;background:var(--surface);color:var(--text)}
.bp-unassigned-list{display:grid}
.bp-unassigned-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line)}
.bp-unassigned-list article:last-child{border-bottom:0}
.bp-unassigned-list b,.bp-unassigned-list small{display:block}
.bp-unassigned-list small{margin-top:4px;color:#a9c6d9;font-size:12px}
.bp-unassigned-list em{font-style:normal;border-radius:6px;padding:5px 8px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700}
.bp-task-actions select{max-width:150px}
.bp-client-table{overflow-x:auto}
.bp-client-table table{width:100%;border-collapse:collapse;text-align:left}
.bp-client-table th,.bp-client-table td{padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:middle}
.bp-client-table tr:last-child td{border-bottom:0}
.bp-client-table th{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.bp-client-table td{font-size:13px}
.bp-client-table td b{color:var(--text)}
.bp-client-table select{min-width:190px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:8px 10px;font:600 12px var(--font-ui)}
.bp-unassigned-panel{overflow:visible}
.bp-unassigned-table{padding:4px 0}
.bp-unassigned-table table{width:100%;border-collapse:collapse;text-align:left}
.bp-unassigned-table th,.bp-unassigned-table td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle}
.bp-unassigned-table tr:last-child td{border-bottom:0}
.bp-unassigned-table th{background:var(--surface);color:#9fc3d8;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.bp-unassigned-table td{color:var(--text);font-size:13px}
.bp-unassigned-table td b{color:var(--text)}
.bp-unassigned-table td small{display:block;color:#9ebdd1;font-size:11px;margin-top:3px}
.bp-unassigned-table th:nth-child(1){width:21%}
.bp-unassigned-table th:nth-child(2){width:24%}
.bp-unassigned-table th:nth-child(3){width:35%}
.bp-unassigned-table th:nth-child(4){width:20%}
.bp-unassigned-table tr:hover td{background:rgba(62,157,191,.08)}
.bp-unassigned-assignee{max-width:230px}
.bp-unassigned-table tr:last-child .bp-client-assignee-menu{top:auto;bottom:calc(100% + 6px)}
@media(max-width:760px){.bp-unassigned-table{overflow-x:auto}
.bp-unassigned-table table{min-width:680px}
}
.bp-unassigned-table{overflow-x:auto}
.bp-unassigned-table table{min-width:1320px;table-layout:fixed}
.bp-unassigned-table th,.bp-unassigned-table td{padding:12px 13px;overflow-wrap:anywhere}
.bp-unassigned-table th:nth-child(1){width:12%}
.bp-unassigned-table th:nth-child(2){width:14%}
.bp-unassigned-table th:nth-child(3){width:10%}
.bp-unassigned-table th:nth-child(4){width:17%}
.bp-unassigned-table th:nth-child(5){width:11%}
.bp-unassigned-table th:nth-child(6){width:10%}
.bp-unassigned-table th:nth-child(7){width:5%}
.bp-unassigned-table th:nth-child(8){width:10%}
.bp-unassigned-table th:nth-child(9){width:11%}
.bp-unassigned-table .bp-unassigned-assignee{min-width:130px}
.bp-unassigned-table td:nth-child(7),.bp-unassigned-table td:nth-child(8){white-space:nowrap}
.bp-unassigned-table .bp-client-assignee-menu,.bp-unassigned-table tr:last-child .bp-client-assignee-menu{position:fixed;right:auto;bottom:auto;z-index:100;width:245px}
.bp-unassigned-assignee .bp-split-trigger{display:block;width:100%;padding:10px 12px;border:0;border-top:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;font-weight:700;cursor:pointer}
.bp-unassigned-assignee .bp-split-trigger:hover{background:#f3f4fa}
.bp-manager-assignees{display:flex;flex-wrap:wrap;gap:5px}
.bp-assignee-label,.bp-task-portion{display:inline-flex;align-items:center;width:max-content;padding:2px 7px;border-radius:999px;background:#fff4c3;color:var(--text);font-size:11px;font-weight:700;white-space:nowrap}
.bp-task-portion{background:#ece9fa}
.bp-dialog-body:has([data-bp-split-first]){display:grid;gap:12px}
.bp-dialog-body:has([data-bp-split-first]) label{display:grid;gap:5px}
.bp-dialog-body:has([data-bp-split-first]) select,.bp-dialog-body:has([data-bp-split-first]) input{width:100%;min-height:38px;padding:7px 9px;border:1px solid #c9cbd3;border-radius:7px;background:var(--surface);color:var(--text)}
.bp-dialog-body:has([data-bp-split-first]) p{margin:0}
.bp-unassigned-projects{display:grid;gap:10px;padding:12px}
.bp-unassigned-project{overflow:visible;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.bp-unassigned-project-head{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.bp-unassigned-project-head:hover,.bp-unassigned-project-head:focus-visible{background:var(--surface);outline:2px solid transparent}
.bp-unassigned-project-head:focus-visible{outline-color:#60d9ca;outline-offset:-2px}
.bp-unassigned-project-chevron{display:grid;place-items:center;flex:none;width:26px;height:26px;border:1px solid var(--line);border-radius:7px;color:var(--text);font-size:21px}
.bp-unassigned-project-title{flex:1;min-width:0}
.bp-unassigned-project-title b,.bp-unassigned-project-title small{display:block}
.bp-unassigned-project-title b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.bp-unassigned-project-title small{margin-top:3px;color:#a7c6d8;font-size:11px}
.bp-unassigned-project-count{flex:none;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700}
.bp-unassigned-project-table{border-top:1px solid var(--line)}
.bp-unassigned-project-table table{min-width:970px}
.bp-unassigned-project-table th:nth-child(1){width:25%}
.bp-unassigned-project-table th:nth-child(2){width:14%}
.bp-unassigned-project-table th:nth-child(3){width:12%}
.bp-unassigned-project-table th:nth-child(4){width:6%}
.bp-unassigned-project-table th:nth-child(5){width:13%}
.bp-unassigned-project-table th:nth-child(6){width:13%}
.bp-unassigned-project-table th:nth-child(7){width:17%}
.bp-unassigned-project-table td:nth-child(6){white-space:normal}
.bp-linked-context{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;margin:0 0 12px;border:1px solid #4bd6c3;border-radius:9px;background:var(--surface);color:var(--text)}
.bp-linked-context b,.bp-linked-context small{display:block}
.bp-linked-context small{margin-top:3px;color:var(--text);font-size:11px}
.bp-linked-context button{border:0;background:transparent;color:var(--text);cursor:pointer;font-size:20px}
.bp-linked-focus{outline:2px solid #4bd6c3;outline-offset:-2px}
.bp-linked-focus td{background:rgba(75,214,195,.1)!important}
.bp-unassigned-project-table table{min-width:1250px}
.bp-unassigned-project-table th:nth-child(1){width:11%}
.bp-unassigned-project-table th:nth-child(2){width:15%}
.bp-unassigned-project-table th:nth-child(3){width:18%}
.bp-unassigned-project-table th:nth-child(4){width:9%}
.bp-unassigned-project-table th:nth-child(5){width:11%}
.bp-unassigned-project-table th:nth-child(6){width:5%}
.bp-unassigned-project-table th:nth-child(7){width:12%}
.bp-unassigned-project-table th:nth-child(8){width:8%}
.bp-unassigned-project-table th:nth-child(9){width:11%}
.bp-unassigned-project-table td:nth-child(6){white-space:nowrap}
.bp-unassigned-project-table td:nth-child(7){white-space:nowrap}
.bp-unassigned-project-table td:nth-child(8){white-space:normal}
.bp-unassigned-project-table td:nth-child(9){white-space:nowrap}


/* Bandwidth planning actions */
.bp-task-actions{grid-template-columns:minmax(112px,1fr) minmax(138px,1.25fr);align-items:start}
.bp-task-actions select,.bp-next-control input{width:100%;min-width:0;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:6px;font:11px var(--font-ui)}
.bp-next-control{display:grid;gap:5px}
.bp-next-control input{height:29px}
.bp-action-note textarea{min-height:100px}
.bp-workflow-panel,.bp-client-table{overflow:visible}
.bp-client-assignee{position:relative;min-width:176px}
.bp-client-assignee>button{display:flex;align-items:center;justify-content:space-between;width:100%;border:1px solid var(--line);border-radius:7px;padding:8px 10px;font:700 12px var(--font-ui);cursor:pointer}
.bp-client-assignee>button i{font-style:normal;color:#8db9d3}
.bp-client-assignee-menu{position:absolute;z-index:40;right:0;top:calc(100% + 6px);width:245px;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bp-client-assignee-menu input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:8px 9px;font:12px var(--font-ui)}
.bp-client-person-list{display:grid;max-height:184px;margin:8px -3px 7px;overflow:auto}
.bp-client-person-list button{display:grid;width:100%;gap:2px;border:0;border-radius:6px;background:transparent;color:var(--text);padding:7px 8px;text-align:left;cursor:pointer}
.bp-client-person-list button:hover{background:var(--surface)}
.bp-client-person-list b{font-size:12px}
.bp-client-person-list small{color:#9cc1d5;font-size:11px}
.bp-client-person-list p{margin:8px;color:#a8c4d7;font-size:12px}
.bp-client-complete{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:8px;font:700 11px var(--font-ui);cursor:pointer}


/* Bandwidth planning ux */
/* Compact task-card actions and assignment overlays. */
.bp-member-card{min-height:0;padding:13px;box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bp-member-head{margin-bottom:8px}
.bp-member-head small{line-height:1.3}
.bp-client{margin:7px 0}
.bp-client>strong{margin:8px 0 3px;color:var(--text)}
.bp-task{grid-template-columns:17px 32px minmax(0,1fr) 18px;padding:6px 0}
.bp-task-title{padding-top:2px}
.bp-more{line-height:1}
.bp-task-actions{position:relative;grid-template-columns:minmax(116px,.9fr) minmax(132px,1.1fr);gap:7px;margin:2px 0 4px;padding:7px;background:var(--surface);border:1px solid rgba(86,161,203,.2);border-radius:9px}
.bp-task-actions select,.bp-next-control>button{height:31px;width:100%;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:0 9px;font:600 11px var(--font-ui);text-align:left;cursor:pointer}
.bp-next-control>button{display:flex;align-items:center;justify-content:space-between}
.bp-next-control>button:hover{border-color:#58dacd;background:var(--surface)}
.bp-next-control{position:relative;display:block}
.bp-next-menu{position:absolute;z-index:90;top:36px;right:0;width:min(280px,calc(100vw - 54px));padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bp-next-menu input{width:100%;height:32px;box-sizing:border-box;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:0 9px;font:12px var(--font-ui)}
.bp-next-person-list{display:grid;max-height:185px;overflow:auto;margin:7px 0}
.bp-next-person-list button{display:grid;width:100%;gap:2px;padding:8px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.bp-next-person-list button:hover{background:var(--surface)}
.bp-next-person-list small{color:#9bc1d7;font-size:10px}
.bp-next-person-list p{margin:8px;color:#a9c6d9;font-size:11px}
.bp-next-workflow{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding-top:7px;border-top:1px solid rgba(126,191,230,.14)}
.bp-next-workflow button{border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:7px;font:700 10px var(--font-ui);cursor:pointer}
.bp-next-workflow button:hover{border-color:#5bdaca;color:var(--text)}
.bp-dialog.bp-confirm{width:min(480px,94vw)}
.bp-dialog.bp-confirm .bp-dialog-body{display:grid;gap:11px;padding:15px 17px}
.bp-dialog.bp-confirm .bp-dialog-body>p{margin:0;padding-bottom:2px;color:#a9c6d9}
.bp-dialog.bp-confirm label{gap:5px;font-weight:700}
.bp-dialog.bp-confirm textarea{min-height:88px;padding:9px;line-height:1.45}
.bp-dialog.bp-confirm select,.bp-dialog.bp-confirm input[type=date]{height:36px;box-sizing:border-box;width:100%;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:0 9px;font:13px var(--font-ui)}
.bp-dialog.bp-confirm footer{padding:12px 17px}
.bp-dialog.bp-confirm header{padding:13px 17px}
.bp-dialog.bp-confirm h2{font-size:18px}
@media(max-width:620px){.bp-task-actions{grid-template-columns:1fr}
.bp-next-menu{left:0;right:auto;width:calc(100vw - 74px)}
}
.bp-next-menu,.bp-next-person-list{overscroll-behavior:contain}
.bp-next-workflow button:disabled{cursor:not-allowed;opacity:.55}
.bp-task-title-button{border:0;background:transparent;color:var(--text);padding:2px 0;text-align:left;font:inherit;cursor:pointer}
.bp-task-title-button:hover{color:var(--text);text-decoration:underline}
.bp-task-note-history{grid-column:1/-1;margin:2px 0 5px;padding:9px;border:1px solid rgba(83,211,197,.3);border-radius:8px;background:var(--surface)}
.bp-task-note-history header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:var(--text);font-size:11px}
.bp-task-note-history header button{border:0;background:transparent;color:#a9c6d9;font-size:17px;line-height:1;cursor:pointer}
.bp-task-note-history article{padding:7px 0;border-top:1px solid rgba(126,191,230,.13)}
.bp-task-note-history p{margin:0 0 4px;color:var(--text);font-size:12px;line-height:1.4}
.bp-task-note-history small,.bp-note-empty{color:#9abdd0;font-size:10px;line-height:1.35}
.bp-note-empty{margin:0}
.bp-task-note-history header,.bp-task-note-history article small{display:none}
.bp-task-note-history{padding:8px 9px}
.bp-task-note-history article{padding:0;border:0}
.bp-task-note-history article p{margin:0}
.bp-client-note-link{border:0;background:transparent;color:var(--text);padding:0;font:700 13px var(--font-ui);text-align:left;cursor:pointer}
.bp-client-note-link:hover{color:var(--text);text-decoration:underline}
.bp-client-note-row td{padding:0!important;background:var(--surface)}
.bp-client-note-row p{margin:0;padding:10px 15px;color:var(--text);font-size:12px;line-height:1.45}
.bp-client-note-row p+p{border-top:1px solid rgba(126,191,230,.12)}
.bp-task-note-history article{display:inline}
.bp-task-note-history article+article::before{content:' | ';color:#79a6bf}
.bp-task-note-history article p{display:inline}
.bp-task-note-history article:first-of-type p::before{content:'N: ';color:var(--text);font-weight:800}
.bp-task-note-history article:not(:first-of-type) p::before{content:'O: ';color:#9fc2d5;font-weight:800}
.bp-client-note-row p{display:inline;padding:10px 0}
.bp-client-note-row p:first-child{padding-left:15px}
.bp-client-note-row p+p{border:0}
.bp-client-note-row p+p::before{content:' | ';color:#79a6bf}
.bp-client-note-row p:first-child::before{content:'N: ';color:var(--text);font-weight:800}
.bp-client-note-row p:not(:first-child)::before{content:'O: ';color:#9fc2d5;font-weight:800}
.bp-workflow-panel{border-color:var(--line);background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bp-client-table{padding:5px 0}
.bp-client-table table{min-width:1160px;table-layout:fixed}
.bp-client-table th{padding:13px 14px!important;background:var(--surface);color:#9fc5da!important;font-size:10px!important;letter-spacing:.065em}
.bp-client-table td{padding:14px!important;color:var(--text);font-size:12px!important;line-height:1.35}
.bp-client-table tbody tr{transition:background .15s ease}
.bp-client-table tbody tr:hover{background:rgba(62,157,191,.1)}
.bp-client-table tbody tr:nth-child(even){background:var(--surface)}
.bp-client-table th:nth-child(1){width:12%}
.bp-client-table th:nth-child(2){width:13%}
.bp-client-table th:nth-child(3){width:9%}
.bp-client-table th:nth-child(4){width:20%}
.bp-client-table th:nth-child(5){width:9%}
.bp-client-table th:nth-child(6){width:7%}
.bp-client-table th:nth-child(7){width:12%}
.bp-client-table th:nth-child(8){width:11%}
.bp-client-table th:nth-child(9){width:135px}
.bp-client-table td:nth-child(3),.bp-client-table td:nth-child(6){color:#a6cadd!important;font-size:11px!important}
.bp-client-table td:nth-child(4){color:var(--text)}
.bp-client-assignee>button{min-width:118px;height:34px;border-color:var(--line);background:var(--surface);color:var(--text);font:700 11px var(--font-ui)}
.bp-client-assignee>button:hover{border-color:#5ae0d0;background:var(--surface)}
.bp-client-table td:has(.bp-client-assignee){background:var(--surface)}
.bp-client-table table{min-width:1080px}
.bp-card-actions .bp-add{display:none}
.bp-card-actions{justify-content:flex-end}


/* Bandwidth planning history */
.bp-history-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr))}
.bp-history-grid>.bp-history-date{width:100%;max-width:330px}
.bp-history-date.current{border-color:#3caaad;background:var(--surface)}
.bp-history-date header>div{display:grid;gap:3px}
.bp-history-date header small{color:#58dac7;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.bp-history-empty{margin:14px 0;color:#9db9cf;font-size:12px}
.bp-history-task-title{min-width:0;overflow-wrap:anywhere}
.bp-history-actions{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 4px}
.bp-history-actions button{border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:5px 8px;font:700 11px var(--font-ui);cursor:pointer}
.bp-history-actions button:hover,.bp-history-actions button[aria-expanded="true"]{border-color:#4dd9ca;color:var(--text)}
.bp-history-picker{grid-column:1/-1;min-width:0;padding:9px;border:1px solid rgba(77,217,202,.4);border-radius:8px;background:var(--surface)}
.bp-history-picker label{display:grid;gap:5px;color:var(--text);font-size:11px;font-weight:700}
.bp-history-picker input{width:100%;height:34px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);padding:6px 8px;font:12px var(--font-ui)}
.bp-history-people{max-height:160px;overflow:auto;display:grid;gap:3px;margin-top:6px}
.bp-history-people button{display:flex;justify-content:space-between;align-items:center;gap:7px;border:0;border-radius:6px;background:transparent;color:var(--text);padding:7px;text-align:left;cursor:pointer;font:12px var(--font-ui)}
.bp-history-people button:hover,.bp-history-people button:focus-visible{background:var(--surface)}
.bp-history-people button small{color:#9ebdce}
.bp-history-people p{margin:6px;color:#9ebdce;font-size:11px}
.bandwidth-planning-page .bp-member-history-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 16px}
.bp-member-history-head .bp-title{display:contents}
.bp-member-history-head [data-bp-back]{grid-column:1;grid-row:1;justify-self:start}
.bp-member-history-head .bp-title>div{grid-column:1/-1;grid-row:2}
.bp-member-history-head [data-bp-history-add]{grid-column:2;grid-row:1;justify-self:end}
/* Member detail: today's outstanding work and one chronological incoming list. */
.bp-history-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.18fr);align-items:start;gap:14px}
.bp-history-overview>.bp-history-date{width:auto;max-width:none;min-width:0;padding:0;overflow:hidden}
.bp-history-overview>.bp-history-date>header{padding:15px 17px;background:var(--surface)}
.bp-history-overview>.bp-history-date.incoming>header{background:var(--surface)}
.bp-history-overview .bp-history-card-body{max-height:min(68vh,720px);overflow-y:auto;padding:5px 16px 14px;scrollbar-color:#6b6f7e}
.bp-history-overview .bp-history-day{padding:9px 0 7px;border-bottom:1px solid rgba(126,191,230,.16)}
.bp-history-overview .bp-history-day:last-child{border-bottom:0}
.bp-history-overview .bp-history-day h3{margin:0 0 8px;font:700 12px var(--font-ui);letter-spacing:.02em}
.bp-history-overview .bp-client{margin:8px 0}
.bp-history-overview .bp-history-task{grid-template-columns:34px minmax(0,1fr) auto;gap:8px;padding:8px 0}
.bp-history-overview .bp-history-task-title{overflow-wrap:normal;word-break:normal;font-weight:600}
.bp-history-overview .bp-history-task.delayed>small{color:#ffad9b;font-weight:800}
.bp-history-overview .bp-history-empty{padding:10px 0}
@media(max-width:820px){.bp-history-overview{grid-template-columns:1fr}
.bp-history-overview .bp-history-card-body{max-height:none}
}


/* Bandwidth planning refresh */
/* Keep the date and filters together without compressing the planning cards. */
.bandwidth-planning-page > .bp-head:not(.bp-member-history-head){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;align-items:center}
.bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-right-controls{display:contents}
.bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-date-nav{grid-column:2;grid-row:1;justify-self:end}
.bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-tools{grid-column:1/-1;grid-row:2;justify-content:flex-end;min-width:0}
.bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-tools input{width:min(340px,40vw);min-width:200px}
.bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-tools.bp-list-search input{width:min(440px,55vw)}
.bp-date-nav{position:relative}
.bp-date-nav .bp-calendar-trigger{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;min-width:190px;padding:0 14px;border-inline:1px solid rgba(126,191,230,.15);font:700 13px var(--font-ui);white-space:nowrap}
.bp-date-nav .bp-calendar-trigger:hover,.bp-date-nav .bp-calendar-trigger:focus-visible{background:var(--surface);outline:2px solid #51d3c7;outline-offset:-2px}
.bp-date-nav input[data-bp-date]{left:50%;top:100%;width:1px;height:1px;padding:0;border:0;opacity:0}
.bp-view-summary{margin:0 0 13px;padding:9px 12px;border:1px solid rgba(83,184,187,.22);border-radius:9px;background:var(--surface);color:var(--text);font-size:12px}
.bp-member-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.bp-member-card{min-width:0;padding:15px;border-color:var(--line)}
.bp-member-head{grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:10px;padding-bottom:10px;border-bottom:1px solid rgba(126,191,230,.14)}
.bp-member-head > span:nth-child(2){min-width:0}
.bp-member-head b,.bp-member-head small{overflow-wrap:normal;word-break:normal}
.bp-member-head .bp-count{white-space:nowrap;padding:4px 7px;border-radius:10px;background:var(--surface);color:var(--text)}
.bp-task-list{min-width:0}
.bp-client{min-width:0;margin:9px 0}
.bp-client > strong{margin:0 0 5px;color:#97c7d9;font-size:11px;letter-spacing:.02em}
.bp-task{grid-template-columns:18px 32px minmax(0,1fr) 22px;gap:7px;align-items:start;padding:8px 0}
.bp-task.bp-task-no-complete{grid-template-columns:32px minmax(0,1fr) 22px}
.bp-view-toggle{display:inline-flex;gap:3px;padding:3px;border:1px solid #dce0e7;border-radius:9px;background:#f5f6f8}
.bp-view-toggle button{border:0;border-radius:6px;padding:7px 12px;background:transparent;color:#424755;font:700 12px var(--font-ui);cursor:pointer}
.bp-view-toggle button.active{background:var(--text);color:var(--surface)}
.bp-agenda-head{align-items:flex-start}
.bp-agenda-controls{display:flex;gap:9px;align-items:end;flex-wrap:wrap}
.bp-agenda-controls label{display:grid;gap:4px;font-size:11px;font-weight:700;color:#555}
.bp-agenda-controls input,.bp-agenda-controls select{height:36px;padding:0 10px;border:1px solid #dce0e7;border-radius:7px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.bp-agenda-controls input[type=search]{min-width:230px}
.bp-agenda-departments{display:flex;gap:5px;overflow-x:auto;padding:0 0 9px;margin:0 0 14px;border-bottom:1px solid var(--line)}
.bp-agenda-departments button{flex:none;border:1px solid #dce0e7;border-radius:7px;padding:8px 11px;background:var(--surface);color:#424755;font:700 12px var(--font-ui);cursor:pointer;white-space:nowrap}
.bp-agenda-departments button.active{background:var(--text);border-color:var(--text);color:var(--surface)}
.bp-agenda-list{display:grid;gap:14px}
.bp-agenda-day{border:1px solid var(--line);border-radius:11px;background:var(--surface);overflow:hidden}
.bp-agenda-day>header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:11px 15px;background:#f7f8fa;border-bottom:1px solid var(--line)}
.bp-agenda-day h2{margin:0;font:700 15px var(--font-ui);color:var(--text)}
.bp-agenda-day>header span{font-size:11px;color:#626778;white-space:nowrap}
.bp-agenda-item{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(90px,160px);align-items:center;gap:12px;padding:10px 15px;border-top:1px solid #eceef2}
.bp-agenda-item:first-child{border-top:0}
.bp-agenda-priority{font-size:11px;font-weight:800;color:var(--text)}
.bp-agenda-item strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.bp-agenda-item small{display:block;margin-top:2px;color:#626778;font-size:11px}
.bp-agenda-person{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;font-size:12px;font-weight:700}
.bp-agenda-list .bp-empty{background:var(--surface)}
@media(max-width:760px){.bp-agenda-head{display:block}
.bp-agenda-controls{margin-top:14px}
.bp-agenda-item{grid-template-columns:30px minmax(0,1fr)}
.bp-agenda-person{grid-column:2;text-align:left;color:#626778}
}
.bp-people-hint{margin:0 0 14px;color:#626778;font-size:12px}
.bp-people-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,390px),1fr));gap:13px}
.bp-people-card{min-width:0;border:1px solid var(--line);border-radius:11px;background:var(--surface);overflow:hidden}
.bp-people-card>header{display:flex;align-items:center;gap:9px;padding:12px 14px;border-bottom:1px solid var(--line);background:#f8f9fb}
.bp-people-card>header h2{margin:0;font:700 14px var(--font-ui)}
.bp-people-card>header small{display:block;margin-top:2px;color:#626778;font-size:11px}
.bp-people-client-count{margin-left:auto;border-radius:12px;padding:4px 7px;background:#fff2be;color:#483500;font-size:10px;font-weight:800;white-space:nowrap}
.bp-people-date{border-top:1px solid #eceef2}
.bp-people-date:first-of-type{border-top:0}
.bp-people-date h3{margin:0;padding:8px 14px;background:#f8f9fb;color:#555;font-size:11px}
.bp-people-item{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px 14px;border-top:1px solid #f0f1f3}
.bp-people-item>div{min-width:0}
.bp-people-item strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.bp-people-item small{display:block;margin-top:2px;color:#626778;font-size:11px}
.bp-people-status{flex:none;border:1px solid #dce0e7;border-radius:12px;padding:4px 7px;color:#454b57;background:#f5f6f8;font-size:10px;font-weight:700;white-space:nowrap}
.bp-people-status.client{border-color:#ecd679;background:#fff2be;color:#483500}
@media(max-width:520px){.bp-people-item{align-items:flex-start;flex-direction:column}
}
.bp-board-departments{margin:-1px 0 13px;padding-top:9px}
.bp-card-date{padding-top:8px;border-top:1px solid #e8eaee}
.bp-card-date:first-child{padding-top:0;border-top:0}
.bp-card-date h3{margin:4px 0 7px;color:#555b67;font:700 11px var(--font-ui)}
.bp-card-date .bp-client{margin:6px 0 9px}
.bp-department-head:not(button){cursor:default}
.bp-task-title{min-width:0;overflow-wrap:normal;word-break:normal;hyphens:none;line-height:1.4}
.bp-task-title-button{width:100%;overflow-wrap:normal;word-break:normal}
.bp-more{min-width:22px;min-height:24px}
.bp-card-actions{padding-top:12px}
@media(max-width:760px){
  .bandwidth-planning-page > .bp-head:not(.bp-member-history-head){grid-template-columns:1fr}
  .bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-date-nav{grid-column:1;grid-row:2;justify-self:start}
  .bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-tools{grid-column:1;grid-row:3;justify-content:stretch;flex-wrap:wrap}
  .bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-tools input{width:100%;min-width:0;flex:1 1 100%}
  .bandwidth-planning-page > .bp-head:not(.bp-member-history-head) .bp-tools.bp-list-search input{width:100%}
  .bp-member-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
}


/* Bandwidth tasks */
.bpt-page{color:var(--text)}
.bpt-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin:4px 0 16px}
.bpt-eyebrow{color:#50d7cd!important;font-size:11px!important;font-weight:800!important;letter-spacing:.1em;margin:0 0 4px!important}
.bpt-head h1{margin:0;font-size:30px;line-height:1.1;color:var(--text)}
.bpt-head p:not(.bpt-eyebrow){margin:6px 0 0;color:#a7c0d5}
.bpt-actions{display:flex;align-items:center;gap:10px}
.bpt-date-nav{display:flex;height:40px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}
.bpt-date-nav button{width:38px;border:0;background:transparent;color:var(--text);font-size:23px;cursor:pointer}
.bpt-date-nav label{position:relative;display:flex;align-items:center;gap:8px;padding:0 15px;border-left:1px solid var(--line);border-right:1px solid var(--line);font-size:13px;font-weight:750}
.bpt-date-nav input{position:absolute;inset:0;opacity:0;cursor:pointer}
.bpt-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.bpt-tabs{display:flex;gap:4px}
.bpt-tabs button{padding:10px 12px;border:0;border-bottom:3px solid transparent;background:transparent;color:#a9c3d7;font-weight:750;cursor:pointer}
.bpt-tabs button.active{border-bottom-color:#48d6cf;color:var(--text)}
.bpt-filters{display:flex;align-items:center;gap:10px;position:relative;padding-bottom:10px}
.bpt-filters select,.bpt-filters input,.bpt-department-picker>button{height:40px;background:var(--surface);border:1px solid var(--line);border-radius:9px;color:var(--text);padding:0 12px}
.bpt-filters input{width:265px}
.bpt-department-picker{position:relative}
.bpt-department-picker>button{display:flex;align-items:center;gap:7px;cursor:pointer}
.bpt-department-picker b{display:grid;place-items:center;min-width:19px;height:19px;border-radius:50%;background:#39cfc7;color:var(--muted);font-size:11px}
.bpt-department-menu{position:absolute;right:0;top:46px;z-index:10;width:225px;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bpt-department-menu label{display:flex;align-items:center;gap:8px;padding:8px 5px;font-size:13px}
.bpt-department-menu input{width:auto;height:auto;accent-color:#43d4ca}
.bpt-department-menu small{margin-left:auto;color:#95b7cd}
.bpt-results{display:grid;gap:14px}
.bpt-department{border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}
.bpt-department>header{display:flex;gap:8px;align-items:baseline;padding:11px 13px;border-bottom:1px solid var(--line)}
.bpt-department>header b{font-size:16px}
.bpt-department>header small{color:#a9c6d8}
.bpt-member-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:10px}
.bpt-member-card{display:flex;flex-direction:column;min-height:260px;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px}
.bpt-member-head{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:start}
.bpt-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#7993f1,#4fd8ca);color:var(--muted);font-weight:850}
.bpt-member-head b,.bpt-member-head small{display:block}
.bpt-member-head small{margin-top:2px;color:#a8c6d9;font-size:11px}
.bpt-member-head .bpt-shared{color:#55d7ce}
.bpt-count,.bpt-empty-card{color:var(--text);font-size:11px;white-space:nowrap}
.bpt-task-list{margin-top:15px}
.bpt-client{margin-top:9px}
.bpt-client:first-child{margin-top:0}
.bpt-client strong{display:block;margin-bottom:4px;font-size:12px}
.bpt-task{display:flex;align-items:center;gap:7px;min-height:29px;border-bottom:1px solid var(--line);font-size:12px}
.bpt-task.done{opacity:.6}
.bpt-priority{flex:0 0 auto;border-radius:5px;padding:3px 7px;background:var(--surface);color:var(--text);font-size:10px;font-weight:800}
.bpt-priority.p0{background:var(--surface);color:var(--text)}
.bpt-priority.p1{background:var(--surface)}
.bpt-priority.p2{background:var(--surface)}
.bpt-priority.p3{background:var(--surface)}
.bpt-task-title{min-width:0;flex:1}
.bpt-status{font-size:10px;color:#a8c2d4}
.bpt-delayed{border-radius:5px;padding:2px 5px;background:var(--surface);color:var(--text);font-size:10px;font-weight:800}
.bpt-empty{padding:42px;text-align:center;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.bpt-empty b,.bpt-empty span{display:block}
.bpt-empty span{margin-top:5px;color:#acc6d8}
.bpt-bell{position:relative;cursor:pointer}
.bpt-notification-menu{position:absolute;z-index:50;right:-12px;top:31px;width:280px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06);color:var(--text)}
.bpt-notification-menu>b{display:block;margin-bottom:8px}
.bpt-notification-menu div{padding:8px 0;border-top:1px solid var(--line)}
.bpt-notification-menu strong,.bpt-notification-menu small{display:block}
.bpt-notification-menu small{margin-top:3px;color:#a9c6d8}
.bpt-notification-menu p{margin:4px 0;color:#aac5d7}
.bpt-self-form{display:grid;gap:13px}
.bpt-self-form label{display:grid;gap:6px;color:var(--text);font-size:13px;font-weight:700}
.bpt-self-form input{height:39px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:0 10px}
.bpt-self-form small{color:#9fbdd0;font-weight:400}
@media(max-width:1100px){.bpt-member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){.bpt-head,.bpt-toolbar{align-items:stretch;flex-direction:column}
.bpt-filters{flex-wrap:wrap}
.bpt-filters input{width:100%}
.bpt-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){.bpt-member-grid{grid-template-columns:1fr}
.bpt-actions{align-items:stretch;flex-direction:column}
.bpt-date-nav{justify-content:center}
}


/* Bandwidth tasks refinements */
.bpt-edit{border:0;background:transparent;color:#57dbd1;font:700 11px var(--font-ui);cursor:pointer}
.bpt-edit:hover{text-decoration:underline}
.bpt-add-tab{margin-left:6px;border:1px solid var(--line);border-radius:7px!important;color:var(--text)}
.bpt-card-actions{display:flex;justify-content:flex-end;margin-top:auto;padding-top:10px}
.bpt-card-actions button{border:0;background:transparent;color:#59dacf;font:700 11px var(--font-ui);cursor:pointer}
.bpt-card-actions button:hover{text-decoration:underline}
.bpt-self-form select,.bpt-self-form textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:10px;font:13px var(--font-ui)}
.bpt-self-form textarea{min-height:122px;resize:vertical}
.bpt-form-error{min-height:16px;margin:0;color:#ffb1ba;font-size:12px}


/* Bandwidth tasks add task */
.bpt-self-task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.bpt-self-task-card{display:flex;flex-direction:column;min-height:205px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.bpt-self-task-card>header{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:start}
.bpt-self-task-card header b,.bpt-self-task-card header small{display:block}
.bpt-self-task-card header b{font-size:14px}
.bpt-self-task-card header small{margin-top:3px;color:#a8c6d9;font-size:11px}
.bpt-self-task-meta{display:flex;align-items:center;gap:7px;margin:13px 0 7px}
.bpt-checklist{display:grid;gap:7px;margin-top:4px}
.bpt-checklist>b{color:var(--text);font-size:11px}
.bpt-checklist label{display:flex;align-items:center;gap:7px;color:var(--text);font-size:12px}
.bpt-checklist input{accent-color:#47d4ca}
.bpt-checklist-empty{margin:15px 0;color:#9bb9ce;font-size:12px}
.bpt-self-task-card footer{margin-top:auto;padding-top:12px;text-align:right}
.bpt-checklist-editor{display:grid;gap:8px;margin:0;padding:0;border:0}
.bpt-checklist-editor legend{padding:0;color:var(--text);font-size:13px;font-weight:700}
.bpt-checklist-editor [data-bpt-checklist-items]{display:grid;gap:7px}
.bpt-checklist-input{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:8px}
.bpt-checklist-input input[type=checkbox]{width:15px;height:15px;accent-color:#46d5ca}
.bpt-checklist-input input[type=text],.bpt-checklist-input input:not([type]){width:100%;height:38px;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:0 10px}
.bpt-add-checklist{justify-self:start;border:0;background:transparent;color:var(--text);padding:2px 0;font:700 12px var(--font-ui);cursor:pointer}
.bpt-add-checklist:hover{text-decoration:underline}


/* Bandwidth tasks ux */
.bpt-task-form{gap:10px}
.bpt-task-form .wide{grid-column:1/-1}
.bpt-task-form textarea{min-height:78px;resize:vertical}
.bpt-assignee-picker{position:relative}
.bpt-assignee-picker>button{display:flex;align-items:center;justify-content:space-between;width:100%;height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:0 10px;font:13px var(--font-ui);cursor:pointer}
.bpt-assignee-picker>button:hover{border-color:#5adccc}
.bpt-assignee-picker [data-bpt-assignee-menu]{position:absolute;z-index:30;top:43px;left:0;right:0;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.bpt-assignee-picker [data-bpt-assignee-menu] input{height:34px}
.bpt-assignee-picker [data-bpt-assignee-options]{display:grid;max-height:160px;overflow:auto;margin-top:7px}
.bpt-assignee-picker [data-bpt-assignee-options] button{display:grid;gap:2px;padding:8px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.bpt-assignee-picker [data-bpt-assignee-options] button:hover{background:var(--surface)}
.bpt-assignee-picker small{color:#9fc2d5;font-size:10px}
.bpt-team-tabs{display:flex;gap:6px;margin:-6px 0 14px}
.bpt-team-tabs button{border:1px solid var(--line);border-radius:999px;background:var(--surface);color:#aac8d9;padding:7px 11px;font:700 12px var(--font-ui);cursor:pointer}
.bpt-team-tabs button.active{border-color:#58dacd;background:rgba(62,203,190,.12);color:var(--text)}
.bpt-self-note{margin:8px 0 2px;padding:9px 10px;border-left:2px solid #55d9cc;border-radius:0 7px 7px 0;background:var(--surface)}
.bpt-self-note>b{font-size:11px;color:var(--text)}
.bpt-self-note ul{margin:5px 0 0;padding-left:16px;color:var(--text);font-size:12px;line-height:1.5}
.bpt-delete{margin-left:8px;border:0;background:transparent;color:#ffafb8;padding:4px;font:700 12px var(--font-ui);cursor:pointer}
.bpt-delete:hover{text-decoration:underline}
@media(max-width:560px){.bpt-task-form{grid-template-columns:1fr}
.bpt-task-form .wide{grid-column:auto}
}
.bpt-self-task-card footer .bpt-edit,.bpt-self-task-card footer .bpt-delete{display:inline-grid;place-items:center;width:25px;height:25px;margin:0 0 0 5px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;font-size:0;cursor:pointer}
.bpt-self-task-card footer .bpt-edit{color:var(--text)}
.bpt-self-task-card footer .bpt-delete{color:#ffadb6}
.bpt-self-task-card footer .bpt-edit::after{content:'✎';font:700 16px/1 sans-serif}
.bpt-self-task-card footer .bpt-delete::after{content:'×';font:700 19px/1 sans-serif}
.bpt-self-task-card footer .bpt-edit:hover,.bpt-self-task-card footer .bpt-delete:hover{border-color:currentColor;background:rgba(255,255,255,.05)}
.bpt-assignee-help{margin:6px 0 2px;color:#9fc2d5;font-size:11px}
.bpt-assignee-picker [data-bpt-assignee-options] button{grid-template-columns:17px 1fr;align-items:center}
.bpt-assignee-picker [data-bpt-assignee-options] button>span{color:var(--text);font-weight:800}
.bpt-assignee-picker [data-bpt-assignee-options] button.selected{background:rgba(63,210,194,.13)}
.bpt-tabs [data-bpt-scope="by-me"]{display:none}
.wc-dialog:has(.bpt-task-form){width:min(550px,calc(100vw - 28px))}
.bpt-task-form{grid-template-columns:1fr 1fr;gap:11px}
.bpt-task-form label:nth-of-type(1){order:6}
.bpt-task-form label:nth-of-type(2){order:5}
.bpt-task-form label:nth-of-type(3){order:4}
.bpt-task-form label:nth-of-type(4){order:1;grid-column:1/-1}
.bpt-task-form label:nth-of-type(5){order:2;grid-column:1/-1}
.bpt-task-form label:nth-of-type(6){order:3}
.bpt-task-form .bpt-form-error{order:7}
.bpt-task-form label:nth-of-type(1) [data-bpt-assignee-menu]{top:auto;bottom:43px}
.bpt-assignee-picker [data-bpt-assignee-options]{max-height:145px}
.bpt-assignee-picker [data-bpt-assignee-options] button>div{display:grid;gap:2px}
.bpt-assignee-picker [data-bpt-assignee-options] b,.bpt-assignee-picker [data-bpt-assignee-options] small{display:block}
.bpt-assignee-picker [data-bpt-assignee-options] small{line-height:1.15}
.bpt-checklist input:checked+span{color:#7f9bad;text-decoration:line-through;text-decoration-thickness:1.5px}


/* Bandwidth tasks header */
.bpt-actions{flex-wrap:wrap;justify-content:flex-end}
.bpt-actions>.wc-btn{white-space:nowrap}
@media(max-width:800px){.bpt-actions{justify-content:flex-start}
}


/* Bandwidth tasks scope */
.bpt-tabs [data-bpt-scope]{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.bpt-origin-badge{display:inline-grid;place-items:center;flex:none;width:17px;height:17px;border:1px solid #55d8d0;border-radius:50%;background:var(--surface);color:var(--text);font-size:10px;font-weight:800;line-height:1}
.bpt-self-task-card>header>span:nth-child(2)>b::before{content:'S';display:inline-grid;place-items:center;width:17px;height:17px;margin-right:6px;border:1px solid #55d8d0;border-radius:50%;background:var(--surface);color:var(--text);font-size:10px;font-weight:800;line-height:1;vertical-align:1px}
.bpt-task .bpt-origin-badge{width:16px;height:16px;border-color:#70a9ff;background:var(--surface);color:var(--text);font-size:9px}
@media(max-width:900px){.bpt-tabs{flex-wrap:wrap}
.bpt-tabs [data-bpt-scope]{white-space:normal}
}


/* Bandwidth tasks workspace */
.btw-page{min-width:0}
.btw-head{margin:12px 0 26px}
.btw-head h1{font:700 30px var(--font-ui)}
.btw-toolbar{margin-bottom:18px}
.btw-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:14px;border-bottom:1px solid var(--line)}
.btw-tabs button{flex:none;min-height:39px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:0 14px;font:700 12px var(--font-ui);white-space:nowrap;cursor:pointer}
.btw-tabs button:hover,.btw-tabs button.active{border-color:#4ed8cf;color:var(--text);background:var(--surface)}
.btw-tabs button:focus-visible,.btw-page button:focus-visible,.btw-page input:focus-visible,.btw-page select:focus-visible{outline:2px solid #54b9ff;outline-offset:2px}
.btw-filters{display:flex;align-items:center;gap:10px;padding:13px 0 0}
.btw-filters>input,.btw-filters>select{height:39px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:0 12px;font:12px var(--font-ui)}
.btw-filters>input{width:min(430px,100%);min-width:160px}
.btw-filters>input::placeholder{color:#8baec6}
.btw-filters>select{min-width:150px}
.btw-view{display:flex;margin-left:auto;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.btw-view button{height:37px;min-width:66px;border:0;background:var(--surface);color:#a9c9dc;font:700 12px var(--font-ui);cursor:pointer}
.btw-view button+button{border-left:1px solid var(--line)}
.btw-view button.active{background:var(--surface);color:var(--text)}
.btw-results{display:grid;gap:15px}
.btw-group{min-width:0}
.btw-group>header{display:flex;align-items:center;gap:8px;min-height:37px;border-bottom:1px solid var(--line)}
.btw-group>header h2{font:700 15px var(--font-ui);color:var(--text)}
.btw-group>header small{color:#a9c6d9;font-size:12px}
.btw-group-dot{width:11px;height:11px;border-radius:50%;background:#46d2c2}
.btw-teamTodo .btw-group-dot{background:#efc65e}
.btw-clientTeam .btw-group-dot{background:#5da8f5}
.btw-items{display:grid}
.btw-task{border-bottom:1px solid var(--line);background:var(--surface)}
.btw-task.expanded{border:1px solid var(--line);border-radius:9px;margin:5px 0;background:var(--surface);overflow:hidden}
.btw-row{display:grid;grid-template-columns:minmax(220px,2.4fr) minmax(125px,1fr) minmax(104px,.72fr) 61px 100px 66px;gap:11px;align-items:center;min-height:67px;padding:8px 12px}
.btw-primary{display:flex;align-items:center;gap:13px;min-width:0;border:0;background:transparent;color:var(--text);text-align:left;padding:0;cursor:pointer}
.btw-primary:hover strong{color:var(--text)}
.btw-chevron{flex:none;display:grid;place-items:center;width:20px;height:20px;color:var(--text);font-size:23px;line-height:1}
.btw-title-wrap{display:grid;gap:3px;min-width:0}
.btw-title-wrap strong{font-size:13px;line-height:1.25;overflow-wrap:anywhere}
.btw-title-wrap small{color:#a6c4d7;font-size:11px;line-height:1.3;overflow-wrap:anywhere}
.btw-person{display:flex;align-items:center;gap:7px;min-width:0;color:var(--text);font-size:11px}
.btw-person>span{min-width:0;overflow-wrap:anywhere}
.btw-person small{display:block;color:#9db8cc;font-size:10px}
.btw-avatar{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:linear-gradient(130deg,#69b8f3,#40d5ca);color:var(--muted);font-size:10px;font-weight:800}
.btw-date{color:var(--text);font-size:11px;white-space:nowrap}
.btw-date.late{color:#ff9aa8}
.btw-priority{justify-self:start;border:1px solid var(--line);border-radius:6px;padding:4px 6px;background:var(--surface);color:var(--text);font-size:10px;font-weight:800}
.btw-priority.p0,.btw-priority.p1{border-color:var(--line);background:var(--surface);color:var(--text)}
.btw-priority.p2{border-color:var(--line);background:var(--surface);color:var(--text)}
.btw-status{justify-self:start;border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--text);background:var(--surface);font-size:10px;font-weight:800;white-space:nowrap}
.btw-status.completed{border-color:var(--line);background:var(--surface);color:var(--text)}
.btw-status.overdue{border-color:var(--line);background:var(--surface);color:#ffadb8}
.btw-task.completed .btw-title-wrap strong{color:#abc5d2}
.btw-detail{padding:16px 18px 13px;border-top:1px solid var(--line);background:var(--surface)}
.btw-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:15px}
.btw-detail-item{min-width:0;padding-right:13px;border-right:1px solid var(--line);color:var(--text);font-size:12px;overflow-wrap:anywhere}
.btw-detail-item:last-child{border-right:0}
.btw-detail-item>b{display:block;margin-bottom:6px;color:#9ec4d7;font-size:11px}
.btw-detail-item p{margin:0 0 6px;white-space:pre-wrap;line-height:1.4}
.btw-links{display:grid;gap:5px}
.btw-links a{color:var(--text);text-decoration:underline}
.btw-checklist label{display:flex;align-items:flex-start;gap:6px;margin:5px 0;line-height:1.3;cursor:pointer}
.btw-checklist input{accent-color:#46d2c2}
.btw-checklist input:checked+span{text-decoration:line-through;color:#91aec0}
.btw-no-details{margin:0;color:#aac4d5;font-size:12px}
.btw-detail-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
.btw-detail-actions .wc-btn{min-height:31px;padding:5px 10px;font-size:11px}
.btw-empty{margin:0;padding:18px 12px;color:#8fadc1;font-size:12px}
.btw-results.grid .btw-items{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:8px}
.btw-results.grid .btw-task{border:1px solid var(--line);border-radius:9px;overflow:hidden}

.btw-results.grid .btw-row{grid-template-columns:1fr auto;gap:10px;align-items:start;padding:13px;min-height:160px}
.btw-results.grid .btw-primary{grid-column:1/-1}
.btw-results.grid .btw-person{grid-column:1}
.btw-results.grid .btw-date{justify-self:end}
.btw-results.grid .btw-priority,.btw-results.grid .btw-priority-placeholder{grid-column:1;grid-row:3}
.btw-results.grid .btw-status{grid-column:2;grid-row:3}

.btw-results.grid .btw-detail-grid{grid-template-columns:1fr}
.btw-results.grid .btw-detail-item{border-right:0;border-bottom:1px solid var(--line);padding:0 0 8px}
@media(max-width:1200px){.btw-row{grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) 92px 52px 80px 55px;gap:7px;padding:8px}
.btw-results.grid .btw-items{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){.btw-filters{flex-wrap:wrap}
.btw-filters>input{flex:1}
.btw-view{margin-left:0}
.btw-row{grid-template-columns:minmax(150px,2fr) minmax(90px,1fr) 84px 75px 55px}
.btw-priority,.btw-priority-placeholder{display:none}
}
@media(max-width:650px){.btw-head{gap:14px}
.btw-filters>input{width:100%;flex:auto}
.btw-row{grid-template-columns:1fr auto;gap:8px;min-height:0}
.btw-primary{grid-column:1/-1}
.btw-person{grid-column:1}
.btw-date{grid-column:2}
.btw-status{grid-column:1}
.btw-detail-grid{grid-template-columns:1fr 1fr}
.btw-results.grid .btw-items{grid-template-columns:1fr}
}
.btw-group>header{display:block}
.btw-group>header h2{margin:0}
.btw-group-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:37px;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.btw-group-title{font:700 15px var(--font-ui)}
.btw-group-toggle small{color:#a9c6d9;font-size:12px}
.btw-group-chevron{margin-left:auto;color:#a9c6d9;font-size:23px;line-height:1}
.btw-group-toggle:hover .btw-group-title{color:var(--text)}
.btw-column-head,.btw-row{display:grid;grid-template-columns:minmax(220px,2.4fr) minmax(125px,1fr) minmax(104px,.72fr) 61px 100px;gap:11px;align-items:center}
.btw-column-head{min-height:35px;padding:6px 12px;border-bottom:1px solid var(--line);color:#9dbccc;font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.btw-row{width:100%;border:0;border-radius:0;background:transparent;color:var(--text);text-align:left;font:inherit;cursor:pointer}
.btw-row:hover{background:var(--surface)}
.btw-row:hover .btw-title-wrap strong{color:var(--text)}
.btw-primary{cursor:inherit}
.btw-detail-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.btw-detail-item:has(.btw-links),.btw-detail-notes{min-width:210px}
.btw-detail-notes p{max-width:70ch}
.btw-results.grid .btw-items{display:block;padding-top:8px}
.btw-results.grid .btw-task{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}
.btw-results.grid .btw-task.expanded{margin:0;border:0;border-bottom:1px solid var(--line)}
.btw-results.grid .btw-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;min-height:54px;padding:9px 12px}
.btw-results.grid .btw-primary{grid-row:auto}
.btw-results.grid .btw-person,.btw-results.grid .btw-priority,.btw-results.grid .btw-priority-placeholder{display:none}
.btw-results.grid .btw-date{grid-row:auto}
.btw-results.grid .btw-status{grid-column:3}
.btw-results.grid .btw-detail{padding:13px}
.btw-results.grid .btw-detail-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.btw-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.btw-bundle{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.btw-bundle-head{display:flex;align-items:flex-start;gap:10px;width:100%;min-height:96px;padding:14px;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.btw-bundle-head:hover{background:var(--surface)}
.btw-bundle-chevron{color:#94d2df;font-size:24px;line-height:1}
.btw-bundle-heading{display:grid;gap:4px;flex:1;min-width:0}
.btw-bundle-heading strong{font:700 15px var(--font-ui)}
.btw-bundle-heading small{color:#9fc3d3;font-size:11px}
.btw-bundle-heading em{overflow:hidden;color:#b1ccda;font-size:11px;font-style:normal;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.btw-bundle-count{flex:none;padding:5px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:10px;font-weight:700}
.btw-bundle-tasks{border-top:1px solid var(--line)}
.btw-department{margin:0 0 14px}
.btw-department h3{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:var(--text);font:700 12px var(--font-ui)}
.btw-department h3 small{color:#92b8cb;font:500 10px var(--font-ui)}
.btw-grid-empty{color:#9fc0d1}
.btw-results.grid .btw-todo .btw-bundle{width:100%}
.btw-results.grid .btw-clientMine .btw-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.btw-results.grid .btw-teamTodo .btw-items,.btw-results.grid .btw-clientTeam .btw-items{display:block}
@media(max-width:1000px){.btw-column-head,.btw-row{grid-template-columns:minmax(170px,2fr) minmax(105px,1fr) 90px 52px 80px;gap:7px}
.btw-cards,.btw-results.grid .btw-clientMine .btw-items{grid-template-columns:1fr}
}
@media(max-width:780px){.btw-column-head,.btw-row{grid-template-columns:minmax(150px,2fr) minmax(95px,1fr) 84px 80px}
.btw-column-head span:nth-child(4),.btw-row>.btw-priority,.btw-row>.btw-priority-placeholder{display:none}
}
@media(max-width:600px){.btw-column-head{display:none}
.btw-row{grid-template-columns:minmax(0,1fr) auto;gap:7px}
.btw-primary{grid-column:1/-1}
.btw-person{grid-column:1}
.btw-date{grid-column:2}
.btw-status{grid-column:1}
.btw-results.grid .btw-row{grid-template-columns:minmax(0,1fr) auto}
.btw-results.grid .btw-primary{grid-column:1/-1}
.btw-results.grid .btw-date{grid-column:1}
.btw-results.grid .btw-status{grid-column:2}
.btw-bundle-head{min-height:78px}
.btw-bundle-count{white-space:nowrap}
.btw-detail-grid{grid-template-columns:1fr}
}
.btw-results:not(.grid) .btw-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px 18px}
.btw-results:not(.grid) .btw-detail-notes,.btw-results:not(.grid) .btw-checklist{grid-column:1/-1;border-right:0;padding-right:0}
.btw-results:not(.grid) .btw-detail-notes p{max-width:100%;margin-bottom:4px}
.btw-results.grid .btw-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}
.btw-results.grid .btw-detail-item{min-width:0}
.btw-results.grid .btw-detail-notes,.btw-results.grid .btw-checklist{grid-column:1/-1}
.btw-results.grid .btw-detail-notes p{max-width:100%}
.btw-row-shell{position:relative}
.btw-row-shell.has-review .btw-row{padding-right:92px}
.btw-review-link{position:absolute;top:50%;right:12px;transform:translateY(-50%);z-index:1;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:6px 9px;font:700 11px var(--font-ui);cursor:pointer}
.btw-review-link:hover,.btw-review-link:focus-visible{border-color:#4dd9ca;color:var(--text)}
.btw-results.grid .btw-row-shell.has-review .btw-row{padding-right:12px;padding-bottom:40px}
.btw-results.grid .btw-review-link{top:auto;bottom:7px;right:9px;transform:none}
.btw-detail-empty{color:#8eacbf;font-style:italic}
@media(max-width:850px){.btw-results:not(.grid) .btw-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){.btw-results:not(.grid) .btw-detail-grid{grid-template-columns:1fr}
}
.btw-results.grid .btw-teamTodo .btw-items,.btw-results.grid .btw-clientTeam .btw-items{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:8px 2px 15px}
.btw-results.grid .btw-department{flex:0 0 min(720px,85vw);min-width:0;scroll-snap-align:start}
.btw-results.grid .btw-department .btw-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.btw-results.grid .btw-row{grid-template-columns:minmax(0,1fr) auto auto auto}
.btw-results.grid .btw-primary{grid-column:1;min-width:0}
.btw-results.grid .btw-date{grid-column:2}
.btw-results.grid .btw-priority{display:inline-block;grid-column:3;grid-row:auto}
.btw-results.grid .btw-status{grid-column:4;grid-row:auto}
.btw-assignment-queue{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.btw-assignment-queue h2{margin:0 0 10px;color:var(--text);font:700 15px var(--font-ui)}
.btw-assignment-queue h2 small{color:var(--text)}
.btw-assignment-queue>div{display:grid;gap:8px}
.btw-assignment-queue article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.btw-assignment-queue article>div{display:grid;gap:3px}
.btw-assignment-queue b{color:var(--text);font-size:12px}
.btw-assignment-queue small,.btw-assignment-queue p{margin:0;color:#a9c9d7;font-size:11px}
.btw-assignment-queue a{color:var(--text);font-size:11px}
.btw-action-form{display:grid;gap:10px}
.btw-action-form label{display:grid;gap:5px;color:var(--text);font-size:11px}
.btw-action-form input,.btw-action-form select,.btw-action-form textarea{min-height:36px;padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text)}
.btw-action-error{color:#ff9da8;font-size:11px}
@media(max-width:760px){.btw-results.grid .btw-department{flex-basis:min(540px,88vw)}
.btw-results.grid .btw-department .btw-cards{grid-template-columns:1fr}
.btw-results.grid .btw-row{grid-template-columns:minmax(0,1fr) auto auto}
.btw-results.grid .btw-primary{grid-column:1/-1}
.btw-results.grid .btw-date{grid-column:1}
.btw-results.grid .btw-priority{grid-column:2}
.btw-results.grid .btw-status{grid-column:3}
}
.btw-detail-actions .btw-icon-delete{display:grid;place-items:center;width:28px;height:28px;padding:0;border-color:var(--line);color:var(--text);font-size:18px;line-height:1}
.btw-task-finish{display:inline-flex;align-items:center;gap:8px;margin-top:12px;color:var(--text);font-size:11px;cursor:pointer}
.btw-task-finish input{accent-color:#4bd4c3}
/* Due-date-first workspace. Expanded briefs stay in the task row for people without Projects access. */
.btw-timeline-page .btw-timeline{display:grid;gap:14px;margin-top:18px}
.btw-time-section{border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden}
.btw-time-section h2{margin:0}
.btw-time-section h2 button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 15px;border:0;background:var(--surface);color:var(--text);text-align:left;font:700 14px var(--font-ui);cursor:pointer}
.btw-time-section h2 button small{padding:2px 7px;border-radius:12px;background:var(--surface);color:var(--text);font-size:11px}
.btw-time-section h2 button span:last-child{margin-left:auto;color:#90c9d9}
.btw-time-section:first-child h2 button{border-left:3px solid #ef927b}
.btw-time-section:nth-child(2) h2 button{border-left:3px solid #48d0c2}
.btw-time-items .btw-task{border-top:1px solid var(--line)}
.btw-time-items .btw-row-shell{display:flex;align-items:center}
.btw-time-items .btw-row{flex:1;min-width:0}
.btw-time-items .btw-row-shell.has-review .btw-row{padding-right:100px}
.btw-quick-check{display:grid;place-items:center;flex:0 0 34px;margin-left:8px;cursor:pointer}
.btw-quick-check input{width:16px;height:16px;accent-color:#45cfc1;cursor:pointer}
.btw-timeline.grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.btw-timeline.grid .btw-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
.btw-timeline.grid .btw-person,.btw-timeline.grid .btw-priority,.btw-timeline.grid .btw-priority-placeholder{display:none}
.btw-timeline .btw-empty{margin:0;padding:13px 16px;color:#a8c8d8}
@media(max-width:850px){.btw-timeline.grid{grid-template-columns:1fr}
}
/* Timeline cards retain the person responsible in both list and grid views. */
.btw-timeline.grid .btw-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-height:0;padding:12px 14px}
.btw-timeline.grid .btw-primary{grid-column:1/-1;min-width:0}
.btw-timeline.grid .btw-person{display:flex;grid-column:1;grid-row:2;min-width:0;color:var(--text);font-size:12px;font-weight:700}
.btw-timeline.grid .btw-person>span{overflow-wrap:normal;word-break:normal}
.btw-timeline.grid .btw-date{grid-column:2;grid-row:2;white-space:nowrap}
.btw-timeline.grid .btw-priority{display:inline-flex;grid-column:1;grid-row:3;justify-self:start}
.btw-timeline.grid .btw-priority-placeholder{display:none}
.btw-timeline.grid .btw-status{grid-column:2;grid-row:3;justify-self:end}
.btw-time-section h2 button .btw-owner-summary{min-width:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:11px;font-style:normal;font-weight:500}
.btw-time-section h2 button span:last-child{margin-left:0}
.btw-timeline.grid .btw-time-items{max-height:600px;overflow-y:auto;scrollbar-color:#6b6f7e}
.btw-timeline.grid .btw-task.expanded .btw-detail{background:var(--surface)}
.btw-filters [data-btw-assignee]{min-width:150px;max-width:220px}
@media(max-width:620px){.btw-timeline.grid .btw-date{white-space:normal}
.btw-time-section h2 button .btw-owner-summary{max-width:45%}
}
.btw-self-label{display:inline-block;width:max-content;border:1px solid #53cfc4;border-radius:999px;padding:2px 7px;color:#53cfc4;font-size:11px;font-weight:700}
.btw-title-wrap .btw-manager-assignee,.btw-title-wrap .btw-split-portion{display:inline-flex;width:max-content;max-width:100%;padding:2px 7px;border-radius:999px;background:#fff4c3;color:var(--text);font-size:11px;font-weight:700;white-space:nowrap}
.btw-title-wrap .btw-split-portion{background:#ece9fa}
.btw-title-wrap:has(.btw-manager-assignee),.btw-title-wrap:has(.btw-split-portion){display:flex;flex-wrap:wrap;align-items:center;gap:3px 5px}
.btw-title-wrap:has(.btw-manager-assignee)>strong,.btw-title-wrap:has(.btw-split-portion)>strong{flex-basis:100%}
.btw-reopen-self{border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700;padding:6px 8px;cursor:pointer}
.btw-reopen-items{display:grid;gap:7px;margin-top:12px}
.btw-reopen-items label{display:flex;gap:8px;align-items:flex-start}
.btw-completed-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto;margin-left:8px}
.btw-delete-self{border:1px solid var(--line);border-radius:6px;background:var(--surface);color:#ff9c9c;width:28px;height:28px;font-size:16px;cursor:pointer}


/* Team member select search */
.ev-member-source{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.ev-member-combobox{position:relative;width:100%;min-width:0}
.ev-member-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:38px;padding:8px 11px;border:1px solid #c9cbd3;border-radius:8px;background:var(--surface);color:var(--text);text-align:left;font:inherit;cursor:pointer}
.ev-member-trigger::after{content:'⌄';flex:none;color:#626778}
.ev-member-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:1px}
.ev-member-options{position:absolute;z-index:1000;top:calc(100% + 5px);left:0;right:0;display:grid;gap:8px;min-width:min(280px,calc(100vw - 28px));max-height:min(300px,45vh);padding:10px;overflow:hidden;background:var(--surface);border:1px solid #dce0e7;border-radius:12px;box-shadow:0 12px 32px #1a213421}
.ev-member-options[hidden]{display:none}
.ev-member-options>input{box-sizing:border-box;width:100%;min-height:38px;padding:8px 11px;border:1px solid #d4d7de;border-radius:9px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.ev-member-options>input:focus-visible{outline:2px solid var(--blue);outline-offset:1px}
.ev-member-list{min-height:0;overflow:auto;overscroll-behavior:contain}
.ev-member-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;font:600 12px var(--font-ui);cursor:pointer}
.ev-member-option:hover,.ev-member-option:focus-visible{background:#f2f5f9}
.ev-member-option b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ev-member-option small{flex:none;color:#666d7e;font-size:11px;text-align:right}
.ev-member-list>p{margin:8px 10px;color:#666d7e;font-size:11px}


/* Bandwidth tasks team */
/* Tasks: role-aware overview and three-bucket team board. */
.btw-timeline.team,.btw-timeline.unassigned,.btw-timeline.overview{grid-template-columns:minmax(0,1fr)}
.btw-timeline.team .btw-time-section{min-width:0}
.btw-team-status[data-btw-status="delayed"]>h2>button{border-left:3px solid #ef927b}
.btw-team-status[data-btw-status="today"]>h2>button{border-left:3px solid #48d0c2}
.btw-team-status[data-btw-status="incoming"]>h2>button{border-left:3px solid #67aaf5}
.btw-team-departments{display:grid;gap:11px;padding:12px}
.btw-team-department{min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}
.btw-team-department h3{margin:0}
.btw-team-department h3 button{display:flex;align-items:center;gap:9px;width:100%;padding:10px 13px;border:0;background:var(--surface);color:var(--text);text-align:left;font:700 13px var(--font-ui);cursor:pointer}
.btw-team-department h3 button small{color:#a7cddd;font-size:11px;font-weight:500}
.btw-team-department h3 button span:last-child{margin-left:auto;color:#91d2dd}
.btw-team-members{display:grid;grid-template-columns:1fr;gap:10px;padding:10px}
.btw-timeline.team.grid .btw-team-members{grid-template-columns:repeat(2,minmax(0,1fr))}
.btw-team-member{min-width:0;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.btw-team-member>header button{display:flex;align-items:center;gap:9px;width:100%;min-height:48px;padding:9px 11px;border:0;color:var(--text);text-align:left;cursor:pointer}
.btw-team-member>header button:hover{background:var(--surface)}
.btw-team-member>header strong{font-size:13px}
.btw-team-member>header small{min-width:0;margin-left:auto;font-weight:500;text-align:right}
.btw-team-member>header span:last-child{flex:none;color:var(--text)}
.btw-member-tasks{border-top:1px solid var(--line)}
.btw-team-member .btw-task{border-bottom:1px solid var(--line)}
.btw-team-member .btw-task:last-child{border-bottom:0}
.btw-timeline.team .btw-team-member .btw-row{grid-template-columns:minmax(0,1fr) auto auto auto;gap:7px;min-height:55px;padding:8px 11px}
.btw-timeline.team .btw-team-member .btw-row .btw-primary{grid-column:1;grid-row:1;min-width:0}
.btw-team-member .btw-row .btw-person{display:none}
.btw-timeline.team .btw-team-member .btw-row .btw-date{grid-column:2;grid-row:1}
.btw-timeline.team .btw-team-member .btw-row .btw-priority{display:inline-flex;grid-column:3;grid-row:1}
.btw-team-member .btw-row .btw-priority-placeholder{display:none}
.btw-timeline.team .btw-team-member .btw-row .btw-status{grid-column:4;grid-row:1}
.btw-team-member .btw-row-shell.has-review .btw-row{padding-right:90px}
.btw-team-member .btw-review-link{right:8px}
.btw-timeline.team.grid .btw-team-member .btw-row{grid-template-columns:minmax(0,1fr) auto auto;gap:5px 9px}
.btw-timeline.team.grid .btw-team-member .btw-row .btw-primary{grid-column:1/-1;grid-row:1}
.btw-timeline.team.grid .btw-team-member .btw-row .btw-date{grid-column:1;grid-row:2}
.btw-timeline.team.grid .btw-team-member .btw-row .btw-priority{grid-column:2;grid-row:2}
.btw-timeline.team.grid .btw-team-member .btw-row .btw-status{grid-column:3;grid-row:2}
.btw-timeline.team.grid .btw-team-member .btw-row-shell.has-review .btw-row{padding-right:11px;padding-bottom:40px}
.btw-timeline.team.grid .btw-team-member .btw-review-link{top:auto;bottom:7px;transform:none}
.btw-team-member .btw-title-wrap strong,.btw-team-member .btw-title-wrap small{overflow-wrap:normal;word-break:normal}
.btw-team-member .btw-detail-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.btw-overview{display:grid;gap:10px;margin:0 0 20px}
.btw-overview-intro h2{margin:0 0 4px;color:var(--text);font:700 20px var(--font-ui)}
.btw-overview-intro p{margin:0;color:#aac9db;font-size:12px}
.btw-overview-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.btw-overview-tiles button{display:grid;gap:4px;min-height:105px;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}
.btw-overview-tiles button:hover,.btw-overview-tiles button.active{border-color:#51d9cf;background:var(--surface)}
.btw-overview-tiles strong{color:var(--text);font:800 30px var(--font-ui)}
.btw-overview-tiles span{font-size:14px;font-weight:800}
.btw-overview-tiles small{color:#a7c9d9;font-size:11px;line-height:1.35}
.btw-assignment-queue{margin:0}
.btw-assignment-queue>p{margin:0 0 13px;color:#a9c9d7;font-size:12px}
@media(max-width:920px){.btw-timeline.team.grid .btw-team-members{grid-template-columns:1fr}
.btw-overview-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){.btw-team-departments{padding:8px}
.btw-team-members{padding:8px}
.btw-timeline.team .btw-team-member .btw-row{grid-template-columns:minmax(0,1fr) auto;gap:7px}
.btw-timeline.team .btw-team-member .btw-row .btw-primary{grid-column:1/-1}
.btw-timeline.team .btw-team-member .btw-row .btw-date{grid-column:1;grid-row:2}
.btw-timeline.team .btw-team-member .btw-row .btw-priority{grid-column:2;grid-row:2}
.btw-timeline.team .btw-team-member .btw-row .btw-status{grid-column:1;grid-row:3}
.btw-team-member>header button{flex-wrap:wrap}
.btw-team-member>header small{margin-left:0}
.btw-overview-tiles{grid-template-columns:1fr 1fr}
.btw-overview-tiles button{min-height:108px;padding:13px}
}


/* Work planning project picker */
.pl-project-type-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pl-project-type-picker button{min-height:112px;display:grid;align-content:start;gap:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:14px;text-align:left;cursor:pointer}
.pl-project-type-picker button:hover{border-color:#5bdfcf;background:var(--surface);transform:translateY(-1px)}
.pl-project-type-picker b{font:700 17px var(--font-ui)}
.pl-project-type-picker small{color:#a9c6d9;font:12px/1.45 var(--font-ui)}
@media(max-width:540px){.pl-project-type-picker{grid-template-columns:1fr}
}


/* Finance request inbox */
.finance-request-inbox{min-height:calc(100vh - 72px);margin:0 -24px;padding:24px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.finance-request-inbox *{box-sizing:border-box}
.finance-request-inbox header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.finance-request-inbox header p{margin:0 0 4px;color:#55d9c7;font-weight:800;font-size:10px;letter-spacing:.1em}
.finance-request-inbox h1{margin:0 0 4px;font:700 28px var(--font-ui)}
.finance-request-inbox header span{display:block;color:var(--muted)}
.finance-request-inbox header>b{padding:7px 11px;border-radius:20px;background:var(--surface);color:var(--text)}
.finance-request-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.finance-request-tabs button,.finance-request-actions button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 12px;font:700 12px var(--font-ui);cursor:pointer}
.finance-request-tabs button.active,.finance-request-actions button:hover{border-color:#55d9c7;background:var(--surface)}
.finance-request-list{display:grid;gap:10px}
.finance-request-card{padding:15px;border:1px solid rgba(149,203,234,.2);border-radius:12px;background:var(--surface)}
.finance-request-card details{border-top:1px solid rgba(149,203,234,.16);padding-top:10px}
.finance-request-card summary{color:var(--text);cursor:pointer;font-weight:700}
.finance-request-table-wrap{overflow:auto;margin-top:10px}
.finance-request-card table{width:100%;border-collapse:collapse;min-width:440px}
.finance-request-card th,.finance-request-card td{padding:8px;text-align:left;border-bottom:1px solid rgba(149,203,234,.13)}
.finance-request-card th{color:var(--muted);text-transform:uppercase;font-size:10px}
.finance-request-card details p{white-space:pre-wrap;line-height:1.5}
.finance-request-actions{display:flex;justify-content:flex-end;margin-top:12px}
.finance-request-empty{padding:34px;border:1px solid var(--line);border-radius:10px;color:var(--muted);text-align:center}
.finance-request-actions{align-items:center;gap:8px}
.finance-request-actions button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 12px;font:700 12px var(--font-ui);cursor:pointer}
.finance-request-actions button.primary{border-color:#4cd6c3;background:#4cd6c3;color:var(--muted)}
.finance-request-actions span{margin-right:auto;color:var(--text);font-weight:700}
.finance-request-details[hidden]{display:none}
.finance-request-details{margin-top:12px;padding-top:10px;border-top:1px solid rgba(149,203,234,.16)}
.finance-request-details p{white-space:pre-wrap;line-height:1.5}
.finance-request-create .finance-request-card h2{margin:0 0 12px;font:700 19px var(--font-ui)}
.finance-request-error{min-height:18px;color:var(--text)}
@media(max-width:700px){
.finance-request-inbox header{align-items:flex-start}
}
.finance-request-list{gap:7px}
.finance-request-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 12px}
.finance-request-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px) auto;align-items:center;gap:14px;width:100%;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;padding:4px 0}
.finance-request-row:hover strong,.finance-request-row:focus-visible strong{color:var(--text)}
.finance-request-row strong{display:block;font:700 14px var(--font-ui)}
.finance-request-row small{display:block;margin-top:3px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.finance-request-row .finance-request-compact-meta b{display:block;margin-top:3px;color:var(--text);font-size:13px}
.finance-request-row em{justify-self:end;padding:4px 7px;border-radius:14px;background:var(--surface);color:var(--text);font:600 10px var(--font-ui);white-space:nowrap}
.finance-request-row em.new{background:var(--surface);color:var(--text)}
.finance-request-card .finance-request-actions{margin:0;white-space:nowrap}
.finance-request-card .finance-request-actions button{padding:7px 9px;font-size:11px}
.finance-inbox-backdrop{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:20px;background:var(--surface)}
.finance-inbox-dialog{display:flex;flex-direction:column;width:min(960px,100%);max-height:min(90vh,850px);border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--text);box-shadow:0 4px 12px rgba(5, 0, 56, .06);font:12px var(--font-ui)}
.finance-inbox-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:16px 18px;border-bottom:1px solid var(--line)}
.finance-inbox-dialog h2{margin:0 0 3px;font:700 20px var(--font-ui)}
.finance-inbox-dialog header span{color:var(--muted)}
.finance-inbox-dialog header button,.finance-request-dialog-actions button{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 12px;font:700 12px var(--font-ui);cursor:pointer}
.finance-inbox-dialog header button{font-size:18px;line-height:1}
.finance-inbox-dialog-body{overflow:auto;padding:16px 18px}
.finance-request-context{display:flex;flex-wrap:wrap;gap:10px 22px;padding:10px 12px;border-radius:9px;background:var(--surface)}
.finance-request-context span{display:grid;gap:3px}
.finance-request-context b{font-size:10px;color:var(--muted);text-transform:uppercase}
.finance-inbox-dialog .finance-request-details{margin:14px 0}
.finance-inbox-dialog table{width:100%;border-collapse:collapse;min-width:440px}
.finance-inbox-dialog th,.finance-inbox-dialog td{padding:8px;text-align:left;border-bottom:1px solid rgba(149,203,234,.13)}
.finance-inbox-dialog th{color:var(--muted);text-transform:uppercase;font-size:10px}
.finance-request-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:14px}
.finance-request-dialog-actions button.primary{border-color:#4cd6c3;background:#4cd6c3;color:var(--muted)}
.finance-query-form{display:grid;gap:12px;margin-top:16px}
.finance-query-form label{display:grid;gap:6px;color:var(--text);font-weight:700}
.finance-query-form select,.finance-query-form textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);padding:9px;font:12px var(--font-ui)}
@media(max-width:1050px){.finance-request-card{grid-template-columns:1fr}
.finance-request-row{grid-template-columns:minmax(0,1fr) minmax(120px,180px) auto}
}
@media(max-width:650px){.finance-request-row{grid-template-columns:minmax(0,1fr) auto}
.finance-request-row em{grid-column:2;grid-row:1}
.finance-request-compact-meta{grid-column:1/-1}
.finance-inbox-backdrop{padding:8px}
.finance-inbox-dialog-body{padding:12px}
}
.finance-request-columns,.finance-request-card{display:grid;grid-template-columns:minmax(165px,1fr) 100px minmax(150px,1fr) minmax(145px,.8fr) max-content;align-items:center;gap:12px}
.finance-request-columns{padding:6px 12px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.finance-request-card{min-height:61px}
.finance-request-main strong,.finance-request-context-cell strong{display:block;font:700 13px var(--font-ui)}
.finance-request-main small,.finance-request-context-cell small,.finance-request-compact-meta small{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.finance-request-date{font-size:11px;color:var(--muted);white-space:nowrap}
.finance-request-compact-meta b{display:block;margin-top:4px;color:var(--text)}
.finance-request-card .finance-request-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.finance-request-card .finance-request-actions span{margin:0;color:var(--muted);font-size:10px}
.finance-query-scope{display:grid;gap:8px;margin:0;padding:12px;border:1px solid var(--line);border-radius:9px}
.finance-query-scope legend{padding:0 5px;color:var(--text);font-weight:700}
.finance-query-scope>label{display:flex;align-items:center;gap:8px;font-weight:500}
.finance-query-scope input[type=radio],.finance-query-scope input[type=checkbox]{width:auto;accent-color:#4cd6c3}
.finance-query-scope-note{color:var(--muted);font-size:11px}
.finance-query-scope{display:flex;flex-wrap:wrap;gap:8px 18px}
.finance-query-scope>label{padding:8px 10px;border:1px solid var(--line);border-radius:8px;cursor:pointer}
.finance-query-scope>label:has(input:checked){border-color:#4cd6c3;background:var(--surface);color:var(--surface)}
.finance-query-deliverables{min-width:0}
.finance-query-deliverables>p{margin:0;color:var(--muted);font-size:11px}
.finance-query-deliverables .finance-request-table-wrap{margin-top:6px}
.finance-query-deliverables th:first-child,.finance-query-deliverables td:first-child{width:60px;text-align:center}
.finance-query-deliverables input[type=checkbox]{width:17px;height:17px;accent-color:#4cd6c3;cursor:pointer}
.finance-query-deliverables input:disabled{cursor:not-allowed;opacity:.4}
.finance-query-original-note{margin:0;padding:10px 12px;border-left:2px solid #4cd6c3;background:var(--surface);color:var(--text);white-space:pre-wrap;line-height:1.45}
@media(max-width:1050px){.finance-request-columns{display:none}
.finance-request-card{grid-template-columns:1fr 1fr}
.finance-request-card .finance-request-actions{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:650px){.finance-request-card{grid-template-columns:1fr}
.finance-request-card .finance-request-actions{grid-column:auto}
}


/* Finance masters */
.fm{display:grid;gap:18px}
.fm-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:0 8px}
.fm-tabs button{border:0;background:transparent;color:var(--muted);padding:13px 20px 11px;font:600 15px var(--font-ui);cursor:pointer;border-bottom:3px solid transparent}
.fm-tabs button.active{color:var(--surface);border-color:var(--teal)}
.fm-tabs b{margin-left:9px;padding:3px 13px;background:var(--surface);border-radius:99px;font-size:12px}
.fm-tabs .active b{background:#4bcab3;color:var(--muted)}
.fm-table{overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.fm-table table{width:100%;min-width:1000px;border-collapse:collapse}
.fm-table th,.fm-table td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left}
.fm-table th{color:var(--muted);font-size:12px}
.fm-table td{font-size:13px}
.fm-table a{color:var(--teal);font-weight:700;cursor:pointer}
.fm-table .finance-btn{padding:7px 10px;margin:2px}
.fm-filters{border:1px solid var(--line);border-radius:14px;padding:18px;display:grid;grid-template-columns:repeat(5,1fr);gap:13px;background:var(--surface)}
.fm-filters label{display:grid;gap:6px;color:var(--text)}
.fm-filters input,.fm-filters select,.fm-inline select,.fm-grid input,.fm-grid select,.fm-grid textarea{background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:9px}
.fm-filters .wide{grid-column:span 5;display:flex;gap:10px;align-items:center}
.fm-filters .wide select,.fm-filters .wide input{flex:1}
.fm-filter-actions{grid-column:span 5;justify-self:end}
.fm-form,.fm-detail{max-width:790px;max-height:90vh;overflow:auto}
.fm-section{margin:18px 0 12px;padding:11px 0;border-bottom:1px solid var(--line);font-weight:700}
.fm-radio{display:flex;gap:15px;align-items:center;margin:12px 0}
.fm-radio label{font-weight:400}
.fm-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fm-grid label{display:grid;gap:6px;color:var(--text);font-size:12px}
.fm-grid .wide{grid-column:span 2}
.fm-grid textarea{min-height:65px}
.fm-grid small{color:var(--teal);justify-self:end;margin-top:-27px;padding:5px}
.fm-inline{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--muted)}
.fm-inline select{min-width:210px}
.fm-detail dl{display:grid;grid-template-columns:150px 1fr;gap:10px;margin:0}
.fm-detail dt{color:var(--muted)}
.fm-detail dd{margin:0;color:var(--text)}
@media(max-width:800px){.fm-filters{grid-template-columns:1fr 1fr}
.fm-filters .wide,.fm-filter-actions{grid-column:span 2}
.fm-filters .wide{display:grid}
.fm-grid{grid-template-columns:1fr}
.fm-grid .wide{grid-column:auto}
.fm-radio{flex-wrap:wrap}
}


/* Finance masters linked */
.fm-search{display:flex;align-items:end;gap:12px;border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--surface)}
.fm-search label{display:grid;gap:6px;flex:1;color:var(--text)}
.fm-search input{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);padding:10px}
.fm-table table{min-width:760px}
.fm-actions{white-space:nowrap}
.fm-actions .finance-btn{padding:7px 8px}
.fm-actions [data-fm-delete],.fm-delete-confirm{border-color:var(--line);color:var(--text);background:var(--surface)}
.fm-actions [data-fm-delete]:hover,.fm-delete-confirm:hover{background:var(--surface)}
.fm-template{display:inline-block;margin:4px 0 18px;text-decoration:none}
.fm-pending-status{display:block;width:max-content;margin-top:5px;padding:3px 8px;border:1px solid var(--line);border-radius:99px;color:var(--text);background:var(--surface);font-size:10px}
.fm-empty{text-align:center!important;color:var(--muted);padding:28px!important}
.fm-form-error{min-height:18px;color:#ff9baa}
.fm-gstin-status{margin:0;color:#a9c8d9;font-size:12px;line-height:1.4}
.fm-gstin-status:empty{display:none}
.fm-form input[type=radio]{accent-color:var(--teal)}
.fm-form .modal-actions{position:sticky;bottom:0;background:var(--surface);padding:10px 0}
@media(max-width:700px){.fm-tabs{gap:3px;overflow:auto}
.fm-tabs button{white-space:nowrap;padding:10px}
.fm-search{flex-direction:column;align-items:stretch}
}


/* Finance service tracker */
.fst{display:grid;gap:18px}
.fst .finance-head{margin:0}
.fst-summary{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}
.fst-summary>div{min-width:170px;border:1px solid var(--line);border-radius:13px;background:var(--surface);padding:14px 18px;display:grid;gap:4px}
.fst-summary span{color:#a9c4d9;font-size:12px}
.fst-summary strong{font-size:23px;color:var(--text)}
.fst-summary p{flex:1;min-width:260px;margin:0;border:1px solid var(--line);border-radius:13px;padding:15px 18px;color:var(--text);line-height:1.5}
.fst-search{display:grid;gap:7px;max-width:420px;font-size:13px;color:var(--text);font-weight:600}
.fst-search input{height:41px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--surface);padding:9px 12px;font:14px var(--font-ui)}
.fst-search input:focus{outline:2px solid var(--teal);outline-offset:2px}
.fst-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fst-chart{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px}
.fst-chart header,.fst-list-head{display:flex;align-items:end;justify-content:space-between;gap:12px}
.fst-chart h2,.fst-list-head h2{margin:0;font:700 16px var(--font-ui)}
.fst-bar{display:grid;grid-template-columns:minmax(105px,1fr) minmax(90px,1.4fr) auto;gap:9px;align-items:center;margin-top:13px;font-size:12px}
.fst-bar i{display:block;height:8px;background:#eef3f6;border-radius:99px;overflow:hidden}
.fst-bar i b{display:block;height:100%;border-radius:99px;background:var(--teal)}
.fst-bar strong{font-size:12px}
.fst-list-head{margin-top:8px;align-items:end}
.fst-list-head p{margin:4px 0 0;color:#7890a2;font-size:12px}
.fst-list-head label{display:grid;gap:6px;font-size:12px;font-weight:700}
.fst-list-head input,.fst-list-head select{height:39px;min-width:170px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:var(--surface);font:12px var(--font-ui)}
.fst-table{overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.fst-table table{width:100%;min-width:760px;border-collapse:collapse}
.fst-table th,.fst-table td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line);font-size:13px}
.fst-table th{color:var(--text);font-size:12px}
.fst-table td{color:var(--text)}
.fst-table td:nth-child(2){min-width:180px}
.fst-table td:nth-child(3) b{color:var(--teal)}
.fst-table tr:last-child td{border-bottom:0}
.fst-empty{text-align:center!important;color:var(--text);padding:35px 20px!important}
.fst-backdrop{display:flex;align-items:center;justify-content:center}
.modal.fst-dialog{width:min(560px,calc(100vw - 30px));max-height:min(80vh,700px);overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--surface)}
.fst-dialog header,.fst-dialog footer{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}
.fst-dialog header h2{font-size:19px;margin:0}
.fst-dialog header button{border:0;border-radius:50%;width:28px;height:28px;background:var(--surface);color:var(--surface);font-size:20px;cursor:pointer}
.fst-dialog p{padding:0 20px;color:var(--text)}
.fst-dialog ul{list-style:none;margin:0;padding:0 20px 16px}
.fst-dialog li{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}
.fst-dialog li span,.fst-dialog li time{color:var(--text)}
.fst-dialog footer{justify-content:flex-end;border-top:1px solid var(--line);border-bottom:0}
@media(max-width:700px){.fst-charts{grid-template-columns:1fr}
.fst-list-head{align-items:stretch;flex-direction:column}
.fst-list-head label{width:100%}
}
@media(max-width:600px){.fst-dialog li{grid-template-columns:1fr 1fr}
.fst-dialog li time{grid-column:2}
}


/* Finance invoice print */
/* A4 print component. Screen preview uses the same content width as the page. */
.ii-print.ei-document{width:min(210mm,calc(100vw - 32px));height:min(94vh,297mm);overflow:auto;margin:auto;background:var(--surface);color:var(--muted);box-shadow:0 18px 56px #0007;font-family:Poppins,var(--font-ui)}
.ei-document .ei-preview-header{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 15px;background:#eef3f7;color:var(--muted);position:sticky;top:0;z-index:2;font-size:12px}
.ei-document .ei-page{padding:15mm 25.4mm;min-height:297mm;box-sizing:border-box;background:var(--surface)}
.ei-document h1,.ei-document h2,.ei-document h3,.ei-document p{margin:0}
.ei-brand{display:grid;grid-template-columns:34% 66%;gap:0;align-items:center;min-height:31mm}
.ei-logo{padding-right:9mm}
.ei-logo img{display:block;width:100%;height:auto;object-fit:contain}
.ei-company{border-left:1px solid #c8d4de;padding-left:6mm}
.ei-company h1{font-size:14pt;line-height:1.25;color:var(--muted);font-weight:700;margin-bottom:2mm}
.ei-company p{font-size:8.5pt;line-height:1.35;color:var(--muted)}
.ei-company p+p{margin-top:1mm}
.ei-separator{padding:0 2mm;color:#aab7c5}
.ei-document .ei-title{font-size:20pt;font-weight:750;text-align:center;letter-spacing:.02em;color:var(--muted);border:0;border-top:1px solid #bbcbd8;border-bottom:1px solid #bbcbd8;padding:2mm 0;margin:5mm 0 6mm!important}
.ei-parties{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:6mm;min-height:39mm}
.ei-parties section{padding-right:7mm}
.ei-parties section+section{border-left:1px solid #c8d4de;padding-left:7mm;padding-right:0}
.ei-document h3{font-size:9pt;letter-spacing:.02em;color:#00bfae;font-weight:700;margin-bottom:2mm}
.ei-parties strong{display:block;font-size:10pt;line-height:1.35}
.ei-parties p{font-size:8.5pt;color:var(--muted);line-height:1.4;white-space:pre-line;margin:2mm 0 3mm}
.ei-parties dl,.ei-finance-bottom dl{display:grid;grid-template-columns:auto 1fr;column-gap:5mm;row-gap:1.5mm;margin:0;font-size:8.5pt;line-height:1.35}
.ei-parties dt,.ei-finance-bottom dt{color:var(--muted)}
.ei-parties dd,.ei-finance-bottom dd{margin:0;color:var(--muted)}
.ei-parties section+section dl{grid-template-columns:1fr auto;row-gap:2.5mm}
.ei-parties section+section dd{text-align:right;font-weight:600}
.ei-lines{width:100%;min-width:0!important;border-collapse:collapse;table-layout:fixed;margin:0!important}
.ei-lines th,.ei-lines td{border:0!important;border-bottom:1px solid #d0dbe4!important;padding:2.5mm 1.3mm!important;font-size:8pt!important;line-height:1.35;vertical-align:top;overflow-wrap:anywhere}
.ei-lines th{background:#f2f5f7!important;color:var(--muted);font-weight:600;text-align:right}
.ei-lines th:nth-child(1),.ei-lines th:nth-child(3),.ei-lines th:nth-child(4){text-align:center}
.ei-lines th:nth-child(2){text-align:left}
.ei-lines th:nth-child(1){width:5%}
.ei-lines th:nth-child(2){width:31%}
.ei-lines th:nth-child(3){width:11%}
.ei-lines th:nth-child(4){width:6%}
.ei-lines th:nth-child(5){width:11%}
.ei-lines th:nth-child(6){width:14%}
.ei-lines th:nth-child(7){width:10%}
.ei-lines th:nth-child(8){width:12%}
.ei-lines .ei-center{text-align:center}
.ei-lines .ei-money{text-align:right;white-space:nowrap}
.ei-lines .ei-strong{font-weight:700}
.ei-deliverable strong,.ei-deliverable span{display:block}
.ei-deliverable strong{font-weight:700}
.ei-deliverable span{color:var(--muted);margin-top:1mm;white-space:pre-line}
.ei-invoice-total{display:flex;justify-content:space-between;align-items:center;gap:6mm;border-bottom:1px solid #bbcbd8;padding:3mm 0;margin-bottom:4mm}
.ei-invoice-total strong{display:block;font-size:9pt}
.ei-invoice-total small{display:block;font-size:7.3pt;color:var(--muted);line-height:1.3;margin-top:1mm}
.ei-invoice-total>b{font-size:16pt;white-space:nowrap}
.ei-finance-bottom,.ei-footer{display:grid;grid-template-columns:1fr 1fr;column-gap:8mm}
.ei-finance-bottom{margin-bottom:6mm}
.ei-finance-bottom dl{grid-template-columns:24mm 1fr;font-size:8pt;row-gap:1mm}
.ei-tax-rows{display:grid;gap:1mm;font-size:8pt}
.ei-tax-rows>div{display:flex;justify-content:space-between;gap:4mm;color:var(--muted)}
.ei-tax-rows b{font-weight:500;color:var(--muted);white-space:nowrap}
.ei-tax-rows .ei-tax-final{color:var(--muted);font-weight:700;padding-top:1mm}
.ei-tax-rows .ei-tax-final b{font-weight:700}
.ei-footer section{min-width:0}
.ei-footer p{font-size:7.5pt;line-height:1.4;white-space:pre-line;color:var(--muted)}
.ei-sign{text-align:right}
.ei-sign p{color:var(--muted)}
.ei-sign div{height:14mm;border-bottom:1px solid #c2d0dc}
.ei-sign small{font-size:7.5pt;color:var(--muted)}
.ei-extra-footer{font-size:7pt;color:var(--muted);margin-top:3mm!important}
.ei-print-actions{position:sticky;bottom:0;background:#eef3f7;padding:9px 15px;display:flex;justify-content:flex-end}
@media(max-width:700px){.ii-print.ei-document{width:100vw;height:100vh}
.ei-document .ei-page{width:210mm;min-height:297mm}
.ii-backdrop:has(.ei-document){overflow:auto;align-items:flex-start}
}
@page{size:A4 portrait;margin:15mm 25.4mm}
@media print{
  html,body{background:var(--surface)!important;margin:0!important;padding:0!important}
  body.ei-printing>*:not(.ei-print-backdrop){display:none!important}
  body.ei-printing>.modal-backdrop:not(.ei-print-backdrop){display:none!important}
  .ei-print-backdrop{position:static!important;display:block!important;background:none!important;padding:0!important;margin:0!important;overflow:visible!important}
  .ei-print-backdrop .ii-print.ei-document{width:auto!important;height:auto!important;overflow:visible!important;margin:0!important;box-shadow:none!important}
  .ei-document .ei-preview-header,.ei-document .ei-print-actions{display:none!important}
  .ei-document .ei-page{padding:0!important;min-height:0!important;width:auto!important}
  .ei-lines thead{display:table-header-group}
  .ei-lines tr,.ei-brand,.ei-parties,.ei-invoice-total,.ei-finance-bottom,.ei-footer{break-inside:avoid;page-break-inside:avoid}
  .ei-document{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.ii-bank-preview{margin:12px 0 16px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.ii-bank-preview[hidden],.ii-summary [hidden]{display:none!important}
.ii-bank-preview h3{margin:0 0 9px!important;color:#48d1c2;font-size:12px}
.ii-bank-preview dl{display:grid;grid-template-columns:125px 1fr;gap:6px 10px;margin:0;font-size:11px}
.ii-bank-preview dt{color:#a9c3d7}
.ii-bank-preview dd{margin:0;overflow-wrap:anywhere}
.ii-summary .ii-value-preview{display:grid;gap:5px;padding:12px 13px;margin-bottom:13px;border-bottom:1px solid var(--line)}
.ii-value-preview span{color:var(--text);font-size:11px;font-weight:700;letter-spacing:.03em}
.ii-value-preview b{color:var(--surface);font-size:22px}
.ii-value-preview small{color:var(--text);font-size:11px;line-height:1.4}
.ii-summary h3{margin:0 0 8px;color:#48d1c2;font-size:12px}
.ii-summary p{padding:6px 0}
.ii-summary .ii-summary-final{color:var(--surface);font-weight:700;border-bottom:0;border-top:1px solid var(--line);margin-top:3px}
.ii-summary .ii-saved-difference{display:block;border:1px solid #a7863f;border-radius:7px;background:var(--surface);color:var(--text);padding:9px 10px;margin-top:10px;line-height:1.4}


/* Finance invoice */
.ii{display:grid;gap:18px}
.ii-tabs{display:flex;border-bottom:1px solid var(--line);gap:8px}
.ii-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:12px 18px;font:600 14px var(--font-ui);cursor:pointer}
.ii-tabs button.active{color:var(--surface);border-color:var(--teal)}
.ii-section-title{display:flex;align-items:baseline;justify-content:space-between}
.ii-section-title h2{margin:0;font:600 19px var(--font-ui)}
.ii-section-title span{color:var(--muted);font-size:12px}
.ii-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ii-kpis div{text-align:center;display:grid;gap:6px}
.ii-kpis span{font-size:12px;color:var(--text)}
.ii-kpis b{font-size:13px}
.ii-search{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.ii-search label{display:grid;gap:6px;color:var(--text);font-size:12px}
.ii-search input,.ii-search select{height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:8px 10px;font:12px var(--font-ui)}
.ii-advanced{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 38px;gap:9px;align-items:end}
.ii-advanced b{grid-column:1/-1}
.ii-advanced button{height:38px;border:0;border-radius:50%;background:var(--teal);font-size:18px}
.ii-filter-actions{grid-column:1/-1;justify-self:end;display:flex;gap:8px}
.ii-table{border:1px solid var(--line);border-radius:14px;overflow:auto;background:var(--surface)}
.ii-table table{width:100%;min-width:1000px;border-collapse:collapse}
.ii-table th,.ii-table td{border-bottom:1px solid var(--line);padding:13px 15px;text-align:left;font-size:13px}
.ii-table th{font-size:12px;color:var(--text)}
.ii-table input[type=checkbox]{accent-color:var(--teal);width:18px;height:18px}
.ii-table .finance-btn{padding:7px 9px;margin:2px;font-size:12px}
.ii-editor{width:min(1190px,calc(100vw - 28px));height:94vh;margin:auto;overflow:auto;border-radius:16px;background:var(--surface);color:var(--surface)}
.ii-editor>header{display:flex;height:52px;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3;background:var(--surface)}
.ii-editor>header button,.ii-print>header button{width:27px;height:27px;border:0;border-radius:50%;background:var(--surface);color:var(--text);font-size:18px}
.ii-editor form{padding:16px}
.ii-top{display:grid;grid-template-columns:1fr 1.45fr;gap:16px}
.ii-top section,.ii-items,.ii-bottom>section{padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.ii-top h3,.ii-items h3,.ii-bottom h3{font-size:13px;margin:0 0 12px}
.ii-top label,.ii-bottom label{display:grid;grid-template-columns:122px 1fr;gap:8px;align-items:center;margin:7px 0;color:var(--text);font-size:11px}
.ii-top input,.ii-top select,.ii-top textarea,.ii-bottom input,.ii-bottom select,.ii-bottom textarea,.ii-items input,.ii-items textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--surface);padding:7px 9px;font:11px var(--font-ui)}
.ii-top textarea{height:47px}
.ii-items{margin-top:16px}
.ii-items h3{display:flex;justify-content:space-between}
.ii-items h3 small{font-weight:400}
.ii-items table{width:100%;border-collapse:collapse}
.ii-items th,.ii-items td{border:1px solid var(--line);padding:7px;font-size:10px;vertical-align:top}
.ii-items textarea{height:44px}
.ii-bottom{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px}
.ii-summary p{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin:0;padding:8px 0;font-size:12px}
.ii-summary>label{grid-template-columns:1fr 1fr}
.ii-grand{background:var(--surface);padding:9px!important}
.ii-suggest{background:var(--surface);padding:9px!important}
.ii-editor footer{display:flex;justify-content:flex-end;gap:8px;padding-top:16px}
.ii-print{width:min(780px,calc(100vw - 40px));height:93vh;margin:auto;overflow:auto;background:var(--surface);color:var(--muted);box-shadow:0 24px 70px #0009}
.ii-print>header{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#eef4f8;position:sticky;top:0;z-index:2}
.ii-print>main{padding:30px}
.ii-mark{float:left;margin-right:18px;font:700 48px var(--font-ui);letter-spacing:-4px;color:#3bd2c0}
.ii-print h1{margin:0;font-size:22px}
.ii-print p{font-size:12px}
.ii-print h2{text-align:center;color:var(--muted);border:1px solid #0785e4;margin-top:18px}
.ii-print table{width:100%;border-collapse:collapse;margin-top:15px}
.ii-print th,.ii-print td{border:1px solid #0785e4;padding:7px;font-size:11px;vertical-align:top}
.ii-print th{background:#e7f3ff}
.ii-print tbody td{height:165px}
.ii-print footer{padding:10px;border:1px solid #0785e4;border-top:0;font-size:11px}
@media(max-width:900px){.ii-kpis{grid-template-columns:repeat(2,1fr)}
.ii-search{grid-template-columns:1fr 1fr}
.ii-advanced{grid-template-columns:1fr 1fr}
.ii-advanced b{grid-column:1/-1}
.ii-filter-actions{grid-column:1/-1}
.ii-top,.ii-bottom{grid-template-columns:1fr}
.ii-editor,.ii-print{width:100vw;height:100vh;border-radius:0}
.ii-print>main{padding:18px 12px}
}
.ii-items-scroll{overflow-x:auto}
.ii-items table{min-width:800px}
.ii-items td:nth-child(2){min-width:210px}
.ii-items td:nth-child(3){min-width:105px}
.ii-items td:nth-child(4),.ii-items td:nth-child(5){min-width:80px}
.ii-items td[data-line-total]{white-space:nowrap}
.ii-items [data-remove-line]{min-width:30px;padding:5px 8px}
.ii-tax-hint{margin:0 0 10px;color:var(--text);font-size:11px}
.ii-add-line{margin-top:12px}
.ii-error{min-height:18px;color:var(--text)}
.ii-editor input[readonly],.ii-editor textarea[readonly]{opacity:.75;cursor:default}
.ii-print tbody td{height:auto;min-height:36px}
.ii-editor input[type="date"]{color-scheme:dark}
.ii-request-context{margin:14px 16px 0;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:12px}
.ii-request-context b{color:var(--text)}
.ii-edit-note{display:grid;gap:7px;margin-top:16px;color:var(--text);font-size:12px;font-weight:700}
.ii-edit-note textarea{width:100%;min-height:72px;resize:vertical;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--surface);padding:9px;font:12px var(--font-ui)}
.ii-editor select:disabled,.ii-editor input:disabled{opacity:.7;cursor:not-allowed}
.ii-search{grid-template-columns:repeat(4,minmax(0,1fr))}
.ii-search .ii-filter-actions{grid-column:1/-1}
.ii-table table{min-width:780px}
.ii-action-menu{z-index:6;min-width:190px}
.ii-action-menu button{display:block;width:100%;text-align:left}
@media(max-width:800px){.ii-search{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){.ii-search{grid-template-columns:1fr}
}


/* Finance client po */
.ii-po-tabs{display:flex;gap:9px;margin:-4px 0 18px;border-bottom:1px solid var(--line)}
.ii-po-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:#b1ccdf;padding:10px 17px;cursor:pointer;font:600 14px var(--font-ui)}
.ii-po-tabs button.active{border-color:var(--teal);color:var(--surface)}
.ii-client-po{display:grid;gap:16px}
.ii-client-po-intro{display:flex;align-items:start;justify-content:space-between;gap:15px}
.ii-client-po-intro h2{margin:0 0 6px;font:600 19px var(--font-ui)}
.ii-client-po-intro p{margin:0;color:#afc9db;font-size:13px}
.ii-client-po-summary{display:flex;justify-content:space-between;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.ii-client-po-dialog{width:min(680px,calc(100vw - 28px));max-height:92vh;overflow:auto;margin:auto;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;color:var(--surface)}
.ii-client-po-dialog header,.ii-client-po-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:16px 20px;border-bottom:1px solid var(--line)}
.ii-client-po-dialog header h2{margin:0;font:600 19px var(--font-ui)}
.ii-client-po-dialog header button{border:0;background:var(--surface);color:var(--surface);border-radius:50%;width:28px;height:28px;font-size:19px}
.ii-client-po-dialog form{padding:18px 20px}
.ii-client-po-dialog form>p{color:var(--text);font-size:13px;line-height:1.5}
.ii-client-po-dialog .ii-client-po-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.ii-client-po-fields label{display:grid;gap:6px;font-size:12px;color:var(--text)}
.ii-client-po-fields label.wide{grid-column:1/-1}
.ii-client-po-fields input,.ii-client-po-fields select,.ii-client-po-fields textarea{width:100%;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);font:13px var(--font-ui)}
.ii-client-po-fields textarea{min-height:72px}
.ii-client-po-dialog footer{justify-content:flex-end;border-bottom:0;border-top:1px solid var(--line);padding:15px 0 0}
.ii-client-po-warning{color:var(--text)}
.ii-client-po-dialog .ii-error{color:#ffb4bd!important}
@media(max-width:700px){.ii-client-po-dialog .ii-client-po-fields{grid-template-columns:1fr}
.ii-client-po-intro{display:block}
.ii-client-po-intro button{margin-top:12px}
}
.ii-bank-print,.ii-footer-print{font-size:11px;line-height:1.45}


/* Finance settings */
.fset{display:grid;gap:18px}
.fset-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:18px}
.fset-nav{display:grid;align-content:start;border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--surface)}
.fset-nav button{padding:14px 16px;text-align:left;border:0;border-bottom:1px solid var(--line);color:var(--text);background:transparent;cursor:pointer;font:600 13px var(--font-ui)}
.fset-nav button.active{color:var(--muted);background:var(--teal)}
.fset-panel{min-width:0;padding:23px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.fset-panel h2{margin:0 0 7px;font:650 20px var(--font-ui)}
.fset-panel p{color:var(--text);font-size:13px;line-height:1.55}
.fset-panel form{display:grid;gap:17px;margin-top:20px}
.fset-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fset-panel label{display:grid;gap:6px;color:var(--text);font-size:12px}
.fset-panel input:not([type=checkbox]):not([type=radio]),.fset-panel textarea{width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);font:13px var(--font-ui)}
.fset-panel textarea{resize:vertical;min-height:80px}
.fset-panel .finance-btn.primary{justify-self:start}
.fset-panel .fset-static{margin:0;color:#92b2c8}
.fset-error{margin:0;color:#ffa5b2!important}
.fset-saved{padding:9px 11px;border:1px solid #4ccbb8;border-radius:8px;color:var(--text)}
.fset-checks{display:grid;gap:12px}
.fset-checks label,.fset-default{display:flex!important;align-items:center;gap:9px}
.fset-checks input,.fset-default input{accent-color:var(--teal)}
.fset-bank{border:1px solid var(--line);border-radius:10px;padding:17px;margin:0 0 16px}
.fset-bank legend{padding:0 7px;color:var(--surface);font-weight:700}
.fset-bank .fset-default{margin:15px 0}
.fset-term-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px;border-bottom:1px solid var(--line)}
.fset-term-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:#a8c3d6;padding:10px;cursor:pointer}
.fset-term-tabs button.active{border-color:var(--teal);color:var(--surface)}
.fset-connection{padding:15px;border:1px solid var(--line);border-radius:10px;color:var(--text)}
@media(max-width:780px){.fset-layout{grid-template-columns:1fr}
.fset-nav{display:flex;overflow:auto}
.fset-nav button{white-space:nowrap}
.fset-fields{grid-template-columns:1fr}
}
.fset-template-choices{display:flex;flex-wrap:wrap;gap:12px}
.fset-template-choices label{display:flex;align-items:center;gap:8px;padding:14px;border:1px solid var(--line);border-radius:9px}
.fset-template-choices input{accent-color:var(--teal)}
.fset-logo{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:10px;padding:14px}
.fset-logo>div{display:grid;gap:8px}
.fset-logo small{color:#9abbd0}
.fset-logo input[type=file]{max-width:350px}
.fset-logo img{max-width:180px;max-height:85px;object-fit:contain;background:var(--surface);border-radius:7px;padding:9px}
.fset-logo .finance-btn{justify-self:start}
@media(max-width:600px){.fset-logo{align-items:flex-start;flex-direction:column}
}


/* Finance invoice conversion */
.ii-table td:last-child{position:relative;white-space:nowrap}
.ii-action-menu{position:absolute;z-index:8;right:7px;top:45px;min-width:210px;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
.ii-action-menu button{display:block;width:100%;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;font:12px var(--font-ui);cursor:pointer}
.ii-action-menu button:hover{background:var(--surface);color:var(--teal)}
.ii-action-menu span{display:block;padding:8px;color:#a9c9de;font-size:11px}
.modal.ii-convert{width:min(440px,calc(100vw - 28px));margin:auto;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface);color:var(--surface)}
.ii-convert header{height:52px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.ii-convert header button{border:0;border-radius:50%;width:26px;height:26px;background:var(--surface);color:var(--surface)}
.ii-convert p{padding:0 18px;color:var(--text);line-height:1.55}
.ii-convert footer{padding:16px 18px;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line)}
.ii-convert label{display:grid;gap:7px;margin:12px 18px 2px;color:var(--text);font:700 12px var(--font-ui)}
.ii-convert textarea{width:100%;min-height:80px;resize:vertical;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:9px 10px;font:12px var(--font-ui)}
.ii-convert .ii-error{margin:4px 18px 0;padding:0}


/* Finance document print */
.ii-print h2{padding:5px;margin-bottom:0}
.ii-print tfoot td{height:auto!important}


/* Finance notes linked */
.fn{display:grid;gap:18px}
.fn .finance-head{margin:0}
.fn-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line)}
.fn-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:12px 18px;font:600 14px var(--font-ui);cursor:pointer}
.fn-tabs button.active{color:var(--surface);border-color:var(--teal)}
.fn-stats{display:flex;gap:12px}
.fn-stats div{display:grid;gap:4px;min-width:160px;padding:15px 18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.fn-stats span{font-size:12px;color:#59616e}
.fn-stats b{font-size:19px}
.fn-search{display:grid;gap:7px;max-width:420px;color:var(--text);font-size:13px}
.fn-search input{height:40px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--surface);padding:8px 11px}
.fn-list{overflow:auto;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.fn-list table{width:100%;min-width:720px;border-collapse:collapse}
.fn-list th,.fn-list td{text-align:left;padding:13px 15px;border-bottom:1px solid var(--line);font-size:13px}
.fn-list th{color:#aec9dc;font-size:12px}
.fn-list tr:last-child td{border-bottom:0}
.fn-empty{text-align:center!important;color:#a8c2d7;padding:30px!important}
.fn-backdrop{display:flex;align-items:center;justify-content:center}
.fn-editor{width:min(1050px,calc(100vw - 28px));max-height:94vh;overflow:auto;color:var(--surface);border:1px solid var(--line);border-radius:14px}
.fn-editor>header,.fn-print>header{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:2}
.fn-editor h2{margin:0;font-size:18px}
.fn-editor>header button,.fn-print>header button{border:0;border-radius:50%;width:28px;height:28px;background:var(--surface);color:var(--surface);font-size:20px;cursor:pointer}
.fn-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fn-grid section,.fn-items{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface)}
.fn-grid h3,.fn-items h3{font-size:13px;margin:0 0 12px}
.fn-grid label{display:grid;grid-template-columns:145px 1fr;align-items:center;gap:9px;margin:9px 0;color:var(--text);font-size:12px}
.fn-grid input,.fn-grid select,.fn-grid textarea,.fn-items input,.fn-items select{min-width:0;width:100%;height:38px;background:var(--surface);color:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 9px;font:12px var(--font-ui)}
.fn-grid textarea{min-height:56px;resize:vertical}
.fn-grid input[readonly],.fn-grid textarea[readonly]{opacity:.85}
.fn-items{margin-top:16px}
.fn-items p{font-size:12px;color:#94ccca}
.fn-table-wrap{overflow:auto}
.fn-items table{width:100%;min-width:690px;border-collapse:collapse}
.fn-items th,.fn-items td{border-bottom:1px solid var(--line);padding:9px 7px;font-size:12px;text-align:left}
.fn-items th{color:#b6cbdc}
.fn-items td:first-child{min-width:215px}
.fn-items td small{display:block;color:#9cb8ca;margin-top:4px}
.fn-items td:nth-child(2){min-width:105px}
.fn-items td:nth-child(3),.fn-items td:nth-child(4){min-width:75px}
.fn-items [data-fn-add]{margin-top:13px}
.fn-lower{margin-top:16px}
.fn-lower textarea{min-height:100px}
.fn-totals p{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);margin:0;font-size:12px}
.fn-totals [hidden]{display:none!important}
.fn-totals .fn-grand{font-weight:700;font-size:14px;border-bottom:0}
.fn-totals small{display:block;color:#a9c9dc;line-height:1.45;margin-top:6px}
.fn-error{min-height:18px;color:#ffb4c0;font-size:12px}
.fn-editor footer{display:flex;justify-content:flex-end;gap:10px}
.fn-editor .finance-btn{white-space:nowrap}
.fn-editor{width:min(1190px,calc(100vw - 28px));background:var(--surface)}
.fn-editor>header{min-height:52px;padding:0 20px;background:var(--surface)}
.fn-editor form{padding:16px}
.fn-grid.fn-top{grid-template-columns:1fr 1.45fr}
.fn-grid.fn-top label{grid-template-columns:122px 1fr;font-size:11px;gap:8px;margin:7px 0}
.fn-grid.fn-top input,.fn-grid.fn-top select{height:35px;font-size:11px}
.fn-grid.fn-top textarea{min-height:47px;font-size:11px}
.fn-items table{min-width:850px}
.fn-items th,.fn-items td{border:1px solid var(--line);padding:7px;font-size:11px;vertical-align:top}
.fn-items td:first-child{min-width:34px;width:34px}
.fn-items td:nth-child(2){min-width:210px}
.fn-items td:nth-child(3){min-width:105px}
.fn-items td:nth-child(4),.fn-items td:nth-child(5){min-width:75px}
.fn-items textarea{width:100%;min-height:42px;resize:vertical;margin-top:4px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--surface);padding:7px 9px;font:11px var(--font-ui)}
.fn-items input[readonly],.fn-items textarea[readonly]{opacity:.78}
.fn-items [data-line-total]{white-space:nowrap}
.fn-lower{grid-template-columns:1.2fr .8fr}
.fn-lower label{grid-template-columns:122px 1fr}
.fn-totals .fn-value-preview{display:grid;gap:3px;margin-bottom:13px;padding:10px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fn-value-preview span{font-size:11px;font-weight:700;color:var(--text)}
.fn-value-preview b{font-size:23px;color:var(--surface)}
.fn-value-preview small{margin:0;color:#a9c9dc}
.fn-totals h3{margin:0 0 5px}
.fn-totals .fn-grand{margin-top:5px;padding:9px!important;background:var(--surface)}
.fn-print{width:min(210mm,calc(100vw - 30px));max-height:94vh;overflow:auto;background:var(--surface);color:var(--muted);font-family:Poppins,var(--font-ui)}
.fn-print>header{background:#eef3f7;color:var(--muted)}
.fn-print main{padding:15mm 25.4mm;min-height:297mm;box-sizing:border-box}
.fn-print h1,.fn-print h2,.fn-print h3,.fn-print p{margin:0}
.fn-print-brand{display:grid;grid-template-columns:34% 66%;align-items:center;min-height:30mm}
.fn-print-brand img{width:85%;height:auto}
.fn-print-brand>div{border-left:1px solid #c8d4de;padding-left:6mm}
.fn-print-brand h1{font-size:14pt}
.fn-print-brand p{font-size:8pt;color:var(--muted);line-height:1.4;margin-top:2mm}
.fn-print h2{text-align:center;font-size:20pt;border-top:1px solid #bbcbd8;border-bottom:1px solid #bbcbd8;padding:2mm 0;margin:5mm 0!important}
.fn-print h3{font-size:9pt;color:#00bfae;margin-bottom:2mm}
.fn-print-info{display:grid;grid-template-columns:1fr 1fr;gap:7mm;margin-bottom:6mm}
.fn-print-info section+section{border-left:1px solid #c8d4de;padding-left:7mm}
.fn-print-info p{font-size:8pt;color:var(--muted);line-height:1.5;margin-top:2mm}
.fn-print-info section+section p{display:flex;justify-content:space-between}
.fn-print-info strong{font-size:10pt}
.fn-print table{width:100%;border-collapse:collapse}
.fn-print th,.fn-print td{border-bottom:1px solid #d0dbe4;padding:3mm 1.5mm;text-align:left;font-size:8pt}
.fn-print th{background:#f2f5f7}
.fn-print td:nth-child(n+3),.fn-print th:nth-child(n+3){text-align:right}
.fn-print-bottom{display:grid;grid-template-columns:1fr 1fr;gap:8mm;margin-top:6mm}
.fn-print-bottom p{font-size:8pt;line-height:1.5}
.fn-print-bottom section+section p{display:flex;justify-content:space-between}
.fn-print-total{font-weight:700;border-top:1px solid #c8d4de;padding-top:2mm}
.fn-print-footer{display:flex;justify-content:space-between;gap:8mm;margin-top:13mm;font-size:8pt}
.fn-print-footer small{max-width:50%;color:var(--muted)}
.fn-print-footer div{text-align:right}
.fn-print-footer span{display:block;border-top:1px solid #c8d4de;margin-top:14mm;padding-top:2mm;color:var(--muted)}
.fn-print>footer{display:flex;justify-content:flex-end;padding:10px 16px;background:#eef3f7}
@page{size:A4 portrait;margin:15mm 25.4mm}
@media print{body.fn-printing>*:not(.fn-print-backdrop){display:none!important}
body.fn-printing>.modal-backdrop:not(.fn-print-backdrop){display:none!important}
.fn-print-backdrop{position:static!important;display:block!important;background:none!important;padding:0!important;margin:0!important;overflow:visible!important}
.fn-print{width:auto!important;max-height:none!important;overflow:visible!important}
.fn-print>header,.fn-print>footer{display:none!important}
.fn-print main{padding:0!important;min-height:0!important}
.fn-print table thead{display:table-header-group}
.fn-print tr,.fn-print-brand,.fn-print-info,.fn-print-bottom,.fn-print-footer{break-inside:avoid;page-break-inside:avoid}
.fn-print{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media(max-width:900px){.fn-grid.fn-top,.fn-lower{grid-template-columns:1fr}
}
@media(max-width:700px){.fn-grid{grid-template-columns:1fr}
.fn-grid label,.fn-grid.fn-top label,.fn-lower label{grid-template-columns:1fr}
.fn-editor{width:100vw;max-height:100vh;border-radius:0}
.fn-print{width:100vw;max-height:100vh}
.fn-print main{width:210mm}
}


/* Finance payments */
.pp{display:grid;gap:18px}
.pp>h2{margin:0;font:600 19px var(--font-ui)}
.pp-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line)}
.pp-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:12px 18px;font:600 14px var(--font-ui);cursor:pointer}
.pp-tabs button.active{border-color:var(--teal);color:var(--surface)}
.pp-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;border:1px solid var(--line);border-radius:14px;padding:18px;background:var(--surface)}
.pp-metrics div{text-align:center;display:grid;gap:6px}
.pp-metrics span{font-size:12px;color:var(--text)}
.pp-metrics b{font-size:14px}
.pp-filter{display:flex;gap:10px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.pp-filter input,.pp-filter select,.pp-editor input,.pp-editor select,.pp-editor textarea{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:8px 10px;font:12px var(--font-ui)}
.pp-filter input{flex:1}
.pp-table{border:1px solid var(--line);border-radius:14px;overflow:auto;background:var(--surface)}
.pp-table table{width:100%;min-width:1120px;border-collapse:collapse}
.pp-table th,.pp-table td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}
.pp-table th{font-size:12px;color:var(--text)}
.pp-table td small{display:block;color:#90afc7;margin-top:3px}
.pp-table input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal)}
.pp-table .finance-btn{padding:7px 9px;margin:2px;font-size:12px}
.pp-status{display:inline-block;padding:6px 8px;border-radius:7px;font-size:10px;font-weight:700;background:var(--surface);color:var(--text)}
.pp-status.advance,.pp-status.pending{background:var(--surface);color:var(--text)}
.pp-status.approved{background:var(--surface);color:#81bcff}
.pp-editor{width:min(860px,calc(100vw - 28px));margin:auto;border-radius:16px;background:var(--surface);color:var(--surface);overflow:auto}
.pp-editor>header{height:52px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.pp-editor>header button,.pp-detail header button{border:0;border-radius:50%;width:27px;height:27px;background:var(--surface);color:var(--surface);font-size:18px}
.pp-editor form{padding:18px}
.pp-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pp-form section{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.pp-form h3{margin:0 0 14px;font-size:13px}
.pp-form label{display:grid;grid-template-columns:135px 1fr;align-items:center;gap:8px;margin:9px 0;font-size:11px;color:var(--text)}
.pp-form textarea{height:80px}
.pp-hint{font-size:11px;line-height:1.5;color:#a9c7dc}
.pp-editor footer{display:flex;justify-content:flex-end;gap:8px;padding-top:16px}
.modal.pp-detail{width:min(430px,calc(100vw - 28px));margin:auto;border-radius:14px;overflow:hidden;background:var(--surface);color:var(--surface)}
.pp-detail header{height:52px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.pp-detail>div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:20px;font-size:12px}
.pp-detail>div span{color:#adc8dc}
.pp-detail footer{padding:14px 18px;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line)}
@media(max-width:800px){.pp-metrics{grid-template-columns:1fr 1fr}
.pp-form{grid-template-columns:1fr}
.pp-editor{width:100vw;border-radius:0;min-height:100vh}
.pp-filter{flex-wrap:wrap}
}

.pp-form label[hidden]{display:none}
.pp-search{display:grid;gap:7px;color:var(--text);font-size:12px}
.pp-search input{max-width:360px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:10px}
.pp-editor input[readonly]{color:var(--text);background:var(--surface)}
.pp-settlement{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:12px;color:var(--text);font-size:12px}
.pp-settlement b{color:var(--surface)}
.pp-match{min-height:17px;margin:4px 0;color:var(--text);font-size:11px}
.pp-match.over{color:#ff9baa}
.pp-linked-error{color:#ff9baa;font-size:12px;min-height:18px}
.pp-allocate form{display:grid;gap:14px}
.pp-allocate form>label{display:grid;gap:7px;font-size:12px}
.pp-status.partially-allocated{background:var(--surface);color:var(--text)}


/* Finance reports */
.rr{display:grid;gap:18px}
.rr-tabs{display:flex;gap:7px;overflow:auto;border-bottom:1px solid var(--line)}
.rr-tabs button{white-space:nowrap;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:12px 15px;font:600 13px var(--font-ui);cursor:pointer}
.rr-tabs button.active{color:var(--surface);border-color:var(--teal)}
.rr-filter,.rr-pl-filter{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--surface)}
.rr-filter>header{display:flex;align-items:center;justify-content:space-between;padding-bottom:17px;border-bottom:1px solid var(--line)}
.rr-filter h2,.rr-pl-filter h2{margin:0;font:600 17px var(--font-ui)}
.rr-fields{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding-top:17px}
.rr-fields label,.rr-pl-filter label{display:grid;gap:6px;color:var(--text);font-size:12px}
.rr-fields input,.rr-fields select,.rr-pl-filter input{height:38px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--surface);padding:8px 10px;font:12px var(--font-ui)}
.rr-checks{display:grid;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);color:var(--text)}
.rr-checks input{width:18px;height:18px;vertical-align:-4px;margin-right:8px;accent-color:var(--teal)}
.rr-filter footer{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}
.rr-output{position:relative;border:1px solid var(--line);border-radius:14px;padding:25px;background:var(--surface);overflow:auto}
.rr-company{display:grid;gap:5px;max-width:310px;line-height:1.5}
.rr-company b{font:700 20px var(--font-ui)}
.rr-company span{font-size:11px;color:var(--text)}
.rr-output>h1{text-align:center;margin:-55px 0 4px;font:600 21px var(--font-ui)}
.rr-output>p{text-align:center;margin:0 0 40px;color:var(--text);font-size:12px}
.rr-output table{width:100%;min-width:820px;border-collapse:collapse}
.rr-output th,.rr-output td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}
.rr-output th{color:var(--text)}
.rr-output td:nth-last-child(-n+2),.rr-output th:nth-last-child(-n+2){text-align:right}
.rr-link{color:var(--teal)}
.rr-outstanding h3{margin:45px 0 8px;font-size:14px}
.rr-outstanding .finance-btn{padding:6px 8px;font-size:11px;margin-left:4px}
.rr-pl-filter{display:flex;flex-wrap:wrap;gap:12px;align-items:end}
.rr-pl-filter h2,.rr-pl-filter p{width:100%}
.rr-pl-filter label{width:280px}
.rr-pl-filter p{line-height:1.5;color:var(--text);font-size:12px;margin:15px 0 0}
.rr-update{display:grid;grid-template-columns:1fr auto;gap:5px;border:1px solid rgba(65,210,191,.35);border-radius:12px;padding:16px 20px;background:var(--surface);color:var(--text)}
.rr-update b{color:var(--surface)}
.rr-update span{grid-column:1;font-size:12px}
.rr-update button{grid-column:2;grid-row:1;border:0;border-radius:50%;background:transparent;color:var(--text)}
.rr-pl>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:35px}
.rr-pl table{min-width:0}
.rr-pl td:nth-last-child(1),.rr-pl th:nth-last-child(1){text-align:right}
.rr-highlight{box-shadow:0 4px 12px rgba(5, 0, 56, .06)}
@media(max-width:900px){.rr-fields{grid-template-columns:1fr 1fr}
.rr-filter>header{align-items:flex-start;gap:9px;flex-direction:column}
.rr-output>h1{margin:20px 0 4px}
.rr-pl>div{grid-template-columns:1fr}
.rr-pl-filter label{width:100%}
}


/* Finance reports drilldown */
.rr-drill-link{padding:0;border:0;background:transparent;color:var(--teal);font:inherit;cursor:pointer}
.rr-drill-link:hover{text-decoration:underline}
.rr-drill{width:min(1120px,calc(100vw - 40px));height:min(91vh,900px);margin:auto;overflow:auto;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--surface)}
.rr-drill>header{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:2}
.rr-drill>header button{border:0;border-radius:50%;width:27px;height:27px;background:var(--surface);color:var(--surface);font-size:18px}
.rr-drill main{padding:25px}
.rr-drill .rr-company{max-width:320px}
.rr-drill h1{text-align:center;margin:-55px 0 4px;font:600 22px var(--font-ui)}
.rr-drill main>p{text-align:center;margin:0 0 38px;color:var(--text);font-size:12px}
.rr-drill table{width:100%;border-collapse:collapse}
.rr-drill th,.rr-drill td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}
.rr-drill th:last-child,.rr-drill td:last-child{text-align:right}
.rr-drill .credit-row{background:rgba(255,105,110,.08)}
.rr-drill .credit-row td:last-child{color:#ff9da1}
.rr-drill tfoot th{padding-top:14px;border-top:2px solid var(--teal);color:var(--surface)}
.rr-drill>footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--line);position:sticky;bottom:0;background:var(--surface)}
@media(max-width:700px){.rr-drill{width:100vw;height:100vh;border-radius:0}
.rr-drill h1{margin:20px 0 4px}
.rr-drill main{padding:18px}
.rr-drill table{min-width:700px}
}


/* Finance dashboard metrics */
.finance-kpis.finance-kpis-four{grid-template-columns:repeat(4,minmax(0,1fr))}
.finance-empty-inline{color:var(--muted);padding:22px 0;font-size:13px}
.fac{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--panel,var(--surface))}
.fac .ft-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:15px}
.fac .ft-dashboard-head h2{margin:0 0 4px}
.fac .ft-dashboard-head p{margin:0;color:var(--muted);font-size:13px}
.fac-alerts{justify-content:flex-end}
.fac-alerts span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--text);font-size:11px;font-weight:700}
.fac-tabs{display:flex;gap:8px;overflow:auto;margin:18px 0 12px;padding-bottom:2px}
.fac-tabs button{white-space:nowrap;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--muted);padding:8px 11px;font:600 12px var(--font-ui);cursor:pointer}
.fac-tabs button.active{border-color:var(--teal);background:rgba(65,210,191,.12);color:var(--text)}
.fac-panel{display:none}
.fac-panel.active{display:block}
.fac .ft-table-wrap{border:1px solid var(--line);border-radius:10px}
@media(max-width:800px){.finance-kpis.finance-kpis-four{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){.fac .ft-dashboard-head{flex-direction:column}
.fac-alerts{justify-content:flex-start}
}


/* Finance action centre */
.fac-page{max-width:1320px;margin:0 auto;padding:26px 20px 50px}
.fac-page .finance-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.fac-page .finance-head p{margin:0;color:var(--teal);font-size:11px;font-weight:800;letter-spacing:.08em}
.fac-page .finance-head h1{margin:4px 0}
.fac-page .finance-head span{color:var(--muted)}
.fac-alerts{display:flex;gap:8px;flex-wrap:wrap}
.fac-alerts span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff7eb;font-size:11px;font-weight:700}
.fac-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.fac-kpis article{border:1px solid var(--line);border-radius:13px;padding:16px;background:var(--panel,var(--surface))}
.fac-kpis small,.fac-kpis span{display:block;color:var(--muted);font-size:12px}
.fac-kpis b{display:block;font:700 23px var(--font-ui);margin:10px 0 5px}
.fac-table{overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel,var(--surface))}
.fac-table table{border-collapse:collapse;width:100%;min-width:720px}
.fac-table th,.fac-table td{padding:13px;border-bottom:1px solid var(--line);text-align:left;font-size:12px;vertical-align:top}
.fac-table th{color:var(--muted);font-size:11px;text-transform:uppercase}
.fac-table td small{display:block;color:var(--muted);margin-top:3px}
.fac-table tr:last-child td{border-bottom:0}
.fac-empty{text-align:center;color:var(--muted);padding:30px!important}
@media(max-width:800px){.fac-page .finance-head{flex-direction:column}
.fac-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){.fac-page{padding:16px 10px}
.fac-kpis{grid-template-columns:1fr}
}


/* Finance tracker */
.finance-tracker{max-width:1400px;padding:18px 22px 64px;color:var(--text)}
.ft-head{display:flex;justify-content:space-between;align-items:end;margin:0 0 22px}
.ft-head p{margin:0 0 5px;color:#4bd6ce;font-size:11px;font-weight:800;letter-spacing:.12em}
.ft-head h1{margin:0 0 5px;font-size:30px;line-height:1.1}
.ft-head span,.ft-section header p{color:#abc5d8;font-size:13px}
.ft-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px}
.ft-kpis a{display:flex;flex-direction:column;gap:7px;min-height:112px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:inherit;text-decoration:none}
.ft-kpis a:hover{border-color:#4bd6ce}
.ft-kpis small{color:#abc5d8;font-size:11px;font-weight:700}
.ft-kpis strong{font-size:25px;line-height:1.15}
.ft-kpis strong.ft-money{font-size:18px;overflow-wrap:anywhere}
.ft-kpis span{color:#8ab2c9;font-size:11px}
.ft-section{margin:15px 0;padding:17px 17px 8px;border:1px solid var(--line);border-radius:13px;background:var(--surface);scroll-margin-top:16px}
.ft-section header{margin:0 0 13px}
.ft-section h2{margin:0 0 3px;font-size:17px}
.ft-section h2 span{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 5px;border-radius:20px;background:var(--surface);color:#55d8d2;font-size:11px;vertical-align:middle}
.ft-section header p{margin:0}
.ft-table-wrap{overflow-x:auto}
.ft-section table{width:100%;border-collapse:collapse;font-size:12px;min-width:630px}
.ft-section th{text-align:left;padding:10px 9px;color:#97b7cb;background:var(--surface);text-transform:uppercase;letter-spacing:.04em;font-size:10px;white-space:nowrap}
.ft-section td{padding:11px 9px;border-top:1px solid var(--line);vertical-align:middle}
.ft-section td strong{font-weight:700}
.ft-section td small{display:block;margin-top:3px;color:#8bacbf}
.ft-section .ft-empty{text-align:center;color:#9cb7c9;padding:20px}
.ft-tag{display:inline-block;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:700;white-space:nowrap}
.ft-tag.wait{background:var(--surface);color:var(--text);border:1px solid var(--line)}
.ft-tag.partial{background:var(--surface);color:var(--text);border:1px solid var(--line)}
@media(max-width:1200px){.ft-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:750px){.finance-tracker{padding:16px 12px 48px}
.ft-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.ft-head h1{font-size:25px}
}
@media(max-width:440px){.ft-kpis{grid-template-columns:1fr}
}
.finance-tracker-dashboard{margin:24px 0 50px;color:var(--text)}
.ft-dashboard-head h2{margin:0 0 4px;font:700 20px var(--font-ui)}
.ft-dashboard-head p{margin:0 0 14px;color:#abc5d8;font-size:12px}
.finance-tracker-dashboard .ft-kpis>div{display:flex;flex-direction:column;gap:7px;min-height:112px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.finance-tracker-dashboard details.ft-section{padding:0}
.finance-tracker-dashboard details.ft-section summary{display:flex;align-items:center;gap:9px;padding:15px 17px;cursor:pointer;list-style:none}
.finance-tracker-dashboard details.ft-section summary::-webkit-details-marker{display:none}
.finance-tracker-dashboard details.ft-section summary::after{content:'⌄';margin-left:auto;color:#8ab2c9}
.finance-tracker-dashboard details.ft-section[open] summary::after{content:'⌃'}
.finance-tracker-dashboard details.ft-section summary span{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 5px;border-radius:20px;background:var(--surface);color:#55d8d2;font-size:11px}
.finance-tracker-dashboard .ft-table-wrap{padding:0 17px 12px}
@media(max-width:440px){.finance-tracker-dashboard .ft-kpis{grid-template-columns:1fr}
}


/* Sidebar layout */
#nav > .primary-nav-item { padding: 12px 15px; font-size: 15px; }
#nav > .primary-nav-item .nav-icon { font-size: 17px; }
#nav > .wip-nav-group { margin-top: 15px; }
#nav > .wip-nav-group .work-child { width: 100%; padding: 10px 15px; font-size: 14px; }


/* Shared interface styling */
/* Shared visual and layout rules. */
@media screen {
  :root {
    color-scheme: light;


    --purple: #bf90df;
    --red: #d76363;

    --accent-pressed: #2a41b6;
    --identity-yellow: #ffd02f;

    --surface-shadow: 0 1px 2px #0500380a;
    --panel: #ffffff;
    --border: #e0e2e8;
  }

  html, body { background: var(--page-surface) !important; color: var(--text); }
  body { font-size: 14px; line-height: 1.45; }
  .shell, .main { background: var(--page-surface) !important; color: var(--text); }
  .main { padding-inline: clamp(16px, 2.2vw, 32px); }
  .main :is(h1, h2, h3) { color: var(--text); letter-spacing: -.035em; }
  .main h1 { font-weight: 700; }
  .main h2, .main h3 { font-weight: 650; }
  .main a, .main .link { color: var(--blue); }
  .main :is(p, small, time, dt, .muted) { color: var(--muted); }

  /* App chrome: white board, canary brand cue and clear active signal. */
  .sidebar { background: var(--surface) !important; border-right: 1px solid var(--line) !important; box-shadow: none; }
  .sidebar .brand { padding-bottom: 27px; }

  .sidebar .brand::after { color: var(--text); }
  #nav button, #nav .work-child, #nav .finance-subnav button { background: transparent !important; color: #2c2c34 !important; border-radius: 8px; }
  #nav button:hover, #nav .work-child:hover { background: #f4f4f3 !important; color: #111 !important; }
  #nav button.active, #nav .work-child.active, #nav .finance-subnav button.active { background: #eef0ff !important; color: #2a41b6 !important; box-shadow: inset 3px 0 0 var(--blue); }
  #nav .nav-icon, #nav .active .nav-icon { color: inherit !important; }
  #nav :is(.nav-section-label, .wip-nav-label, .wip-nav-title) { color: #77716c !important; }
  .topbar { background: var(--surface); border-bottom-color: var(--line) !important; margin-inline: calc(-1 * clamp(16px, 2.2vw, 32px)); padding-inline: clamp(16px, 2.2vw, 32px); }
  .search, .key, .clock { background: var(--surface) !important; border: 1px solid #c7cad5 !important; color: var(--text) !important; box-shadow: none !important; }
  .search input { color: var(--text) !important; }
  .search input::placeholder, input::placeholder, textarea::placeholder { color: #8c8884 !important; opacity: 1; }
  .key { background: #f7f8fa !important; color: var(--muted) !important; }
  .live, .bell, .profile, .profile small, .actions > span { color: var(--muted) !important; }
  .avatar { background: #e5f1fb !important; color: #2a41b6 !important; }
  .badge { background: #b63342; color: var(--surface); }
  .hero { padding-top: 25px; }
  .hero h1 { font-size: clamp(26px, 2.4vw, 34px); }
  .hero p, .date, .date small { color: var(--muted) !important; }

  /* Shared panels, lists and data surfaces. */
  :is(.card, .panel, .finance-kpi, .finance-card, .finance-table-wrap,
    .ops-kpi, .ops-card, .ops-detail-top, .ops-metric, .ops-health,
    .bp-member-card, .bp-manager-project, .bp-manager-item,
    .pitch-hero, .pitch-summary article, .pitch-context, .pitch-how-it-works,
    .pitch-output-section, .pitch-output-group, .pitch-progress-panel,
    .btw-task, .btw-task.expanded, .btw-results.grid .btw-task,
    .clock-banner) {
    background: var(--surface) !important;
    border-color: var(--line) !important;
    color: var(--text) !important;
    box-shadow: var(--surface-shadow) !important;
    border-radius: 12px;
  }

  .clock-banner p, .metric small, .metric h3, .mini label, .mini small,
  .project small, .timeline-item small, .timeline-item time, .list-row,
  .finance-kpi small, .finance-row small, .ops-kpi small, .ops-kpi em,
  .ops-note, .ops-activity span, .bp-member-head small, .bp-count,
  .pitch-summary small, .pitch-summary span, .pitch-context dt,
  .pitch-output-group-head p, .pitch-output-main small, .pitch-progress-head p,
  .btw-title-wrap small, .btw-person small, .btw-detail-item > b {
    color: var(--muted) !important;
  }
  .metric b, .mini b, .finance-kpi b, .ops-kpi b { color: var(--text) !important; }
  .metric-icon { color: var(--blue) !important; border-radius: 10px}
  .chart, .finance-bars { background: repeating-linear-gradient(to bottom, transparent 0 41px, #ecebea 42px 43px) !important; }
  .bar { background: linear-gradient(to top, var(--blue) 0 48%, #62aef0 48% 78%, #d6b6f6 78%) !important; }
  .donut::before, .pitch-progress-donut > span { background: var(--surface) !important; }
  .donut { background: conic-gradient(var(--blue) 0 86%, #62aef0 86% 93%, #e8e5e2 93%) !important; }
  .progress, .ops-progress, .pitch-progress-track { background: #ebeae8 !important; }
  .progress span, .ops-progress i, .pitch-progress-track > span { background: var(--blue) !important; }
  .pitch-progress-donut { background: conic-gradient(var(--blue) var(--pitch-percent), #eae9e7 0) !important; }
  .legend, .attendance, .project, .timeline-item, .list-row,
  .finance-row, .ops-finance-line, .bp-task, .btw-row,
  .pitch-output, .pitch-brief, .pitch-context dd { color: var(--text) !important; }
  .table th, .finance-table th, .ops-table th,
  .wc-table th, .op-deliverables-table th { background: #f8f7f6 !important; color: var(--muted) !important; border-color: var(--line) !important; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .045em; }
  .table td, .finance-table td, .ops-table td,
  .wc-table td, .op-deliverables-table td { color: var(--text) !important; border-color: var(--line) !important; }
  .table td:first-child, .ops-table td:first-child { color: var(--text) !important; }
  .table tr:hover, .finance-table tr:hover, .ops-table tr:hover,
  .wc-table tbody tr:hover { background: #f8f7f6 !important; }
  .tabs, .bp-tabs, .ops-tabs, .btw-tabs { border-color: var(--line) !important; }
  :is(.tab, .bp-tabs button, .ops-tabs button, .btw-tabs button) { color: var(--muted) !important; }
  :is(.tab.active, .bp-tabs button.active, .ops-tabs button.active, .btw-tabs button.active) { background: #eef5fc !important; color: var(--accent-pressed) !important; border-color: var(--blue) !important; }

  /* Forms and actions retain their existing sizes and affordances. */
  .main :is(input:not([type=checkbox]):not([type=radio]):not([type=range]), select, textarea),
  .bp-dialog :is(input, select, textarea), .finance-modal :is(input, select, textarea) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #dcdad7 !important; border-radius: 5px;
  }
  .main :is(input, select, textarea):focus-visible,
  .main button:focus-visible, .sidebar button:focus-visible {
    outline: 2px solid var(--blue) !important; outline-offset: 2px;
  }
  input[type=checkbox], input[type=radio] { accent-color: var(--blue) !important; }
  .main :is(label, legend) { color: #2c2c34; }
  :is(.clock-cta, .finance-btn.primary, .finance-tabs button.active,
    .ops-btn.primary, .bp-btn.primary, .wc-btn.primary,
    .wc-btn-primary, .ai) {
    background: var(--blue) !important; border-color: var(--blue) !important;
    color: var(--surface) !important; box-shadow: none !important;
  }
  :is(.clock-cta, .finance-btn.primary, .ops-btn.primary, .bp-btn.primary, .ai):hover { background: var(--accent-pressed) !important; }
  :is(.clock, .select, .finance-btn, .ops-btn, .bp-btn, .wc-btn,
    .bp-icon-btn, .bp-manager-actions button, .btw-view button) {
    background: var(--surface) !important; color: var(--text) !important;
    border: 1px solid #c7cad5 !important; border-radius: 8px; box-shadow: none;
  }
  .main :is(button, a) { transition: background-color .15s ease, border-color .15s ease, color .15s ease; }
  .main :is(button, a):hover { border-color: #b5b1ad; }
  .ai { box-shadow: 0 4px 18px #0000001a !important; border-radius: 999px; }


  /* Planning and work: preserve grouping without the former dark blocks. */
  :is(.bandwidth-planning-page, .ops-page, .finance-page, .btw-page) { color: var(--text) !important; }
  :is(.bp-department-head, .bp-date-nav, .bp-task-actions select, .bp-icon-btn,
    .bp-manager-actions button, .ops-list button, .ops-rule,
    .btw-detail, .btw-view, .btw-view button, .btw-group > header,
    .pitch-output-group-head, .pitch-inline-form,
    .pitch-progress-donut > span, .pitch-department-menu) {
    background: var(--surface) !important; border-color: var(--line) !important;
    color: var(--text) !important;
  }
  .bp-department-head { border-radius: 8px; box-shadow: inset 3px 0 0 var(--blue); }
  .bp-department-head b, .bp-client > strong, .bp-empty b,
  .ops-empty strong, .ops-finance-line b,
  .pitch-hero h1, .pitch-context h2, .pitch-how-it-works h2,
  .pitch-output-section h2, .pitch-output-group-head h3,
  .pitch-output-main b, .pitch-progress-head h2,
  .btw-group > header h2, .btw-primary, .btw-detail-item { color: var(--text) !important; }
  .bp-task, .btw-task, .pitch-output, .finance-row, .ops-activity p { border-color: var(--line) !important; }
  .bp-task.done .bp-task-title, .btw-task.completed .btw-title-wrap strong { color: #77716c !important; }
  .bp-empty, .btw-empty, .finance-empty, .ops-empty, .pitch-empty { color: var(--muted) !important; border-color: var(--line) !important; }
  .bp-task-actions select, .bp-tools select, .bp-tools input,
  .btw-filters > input, .btw-filters > select { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  .bp-date-nav button, .bp-date-nav label, .bp-more { color: var(--text) !important; }
  .btw-task.expanded { border-color: #b9d9f3 !important; }
  .btw-person, .btw-date, .btw-chevron { color: var(--muted) !important; }
  .btw-detail { border-top: 1px solid var(--line) !important; }
  .btw-detail-item { border-right-color: var(--line) !important; }

  /* Popovers, dialogs and side sheets should sit above the paper canvas. */
  :is(.bp-dialog, .wc-dialog, .finance-modal, .modal, .pitch-detail-panel,
    .bp-next-menu, .bp-client-assignee-menu, .pitch-department-menu) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: 0 10px 30px #00000018, 0 25px 52px #0000000d !important;
  }
  :is(.bp-dialog-backdrop, .wc-dialog-backdrop, .modal-backdrop,
    .pitch-detail-backdrop) { background: #24211e6b !important; }
  :is(.bp-dialog, .wc-dialog, .finance-modal, .pitch-detail-panel) :is(h1, h2, h3, p, label, small, b, strong) { color: var(--text); }
  .bp-dialog :is(header, footer), .pitch-detail-panel > :is(header, footer) { border-color: var(--line) !important; }
  .bp-dialog header button { color: var(--text) !important; }

  /* Project, client-health and invoice workspaces use additional local surfaces. */
  :is(.work-card, .work-kpi, .work-detail-head, .work-health,
    .work-form-section, .live-pnl, .project-row, .project-hero, .project-panel,
    .ch-filters, .ch-panel, .ch-summary div, .ch-kpis article,
    .ii-kpis, .ii-search, .ii-table, .ii-editor, .ii-top section,
    .ii-items, .ii-bottom > section, .ii-request-context) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: var(--surface-shadow) !important; border-radius: 12px;
  }
  .project-row.active { background: #eef0ff !important; border-color: var(--blue) !important; box-shadow: inset 3px 0 0 var(--blue) !important; }
  .project-mark, .member-avatar { background: #e6f2fc !important; color: var(--accent-pressed) !important; }
  .project-progress, .allocation-bar { background: #eae9e7 !important; }
  .project-progress i, .allocation-bar i { background: var(--blue) !important; }
  .project-badge { background: #f2f1f0 !important; color: var(--muted) !important; }
  .project-badge.approved, .billable { background: #e9f6ed !important; color: #247541 !important; }
  .ring, .ring.green { background: conic-gradient(var(--blue) var(--ring), #eae9e7 0) !important; }
  .ring::before { background: var(--surface) !important; }
  .work-kpi small, .work-kpi em, .work-table td small,
  .work-list small, .work-note, .work-health span,
  .ii-kpis span { color: var(--muted) !important; }
  .work-kpi b, .work-table td:first-child, .work-detail-head h2,
  .work-health b, .project-table td:first-child,
  .ch-summary b, .ch-kpis b { color: var(--text) !important; }
  .work-table th, .ch-table th, .ii-table th, .ii-items th,
  .project-table th { background: #f8f7f6 !important; color: var(--muted) !important; border-color: var(--line) !important; }
  .work-table td, .ch-table td, .ii-table td, .ii-items td,
  .project-table td { color: var(--text) !important; border-color: var(--line) !important; }
  .work-table tr:hover, .ch-table tr:hover, .ii-table tr:hover { background: #f8f7f6 !important; }
  .work-list button, .work-health, .live-pnl,
  .ch-summary div, .ch-kpis article { background: var(--surface) !important; color: var(--text) !important; border-color: var(--line) !important; }
  .work-list button, .work-list b, .work-finance.total b { color: var(--text) !important; }
  .work-tabs, .ii-tabs { border-color: var(--line) !important; }
  .work-tabs button, .ii-tabs button { color: var(--muted) !important; }
  .work-tabs button.active, .ii-tabs button.active,
  .project-filter button.active { color: var(--blue) !important; border-color: var(--blue) !important; }
  .work-btn, .ch-btn, .ch-tabs button, .project-tabs button,
  .rail-actions button, .icon-button { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; border-radius: 8px; }
  .work-btn.primary, .ch-btn.primary, .rail-actions .primary,
  .project-tabs .active { background: var(--blue) !important; color: var(--surface) !important; border-color: var(--blue) !important; }
  .ch-tabs button.active { background: #eef0ff !important; color: var(--accent-pressed) !important; border-color: var(--blue) !important; }
  .ch-health.healthy { background: #e9f6ed !important; color: #247541 !important; }
  .ch-health.risk { background: #fff5e5 !important; color: #925317 !important; }
  .ch-health.critical { background: #fbeaec !important; color: #a02d39 !important; }
  .ch-health.na { background: #f1f1f0 !important; color: var(--muted) !important; }
  .ch-progress { background: #eae9e7 !important; }
  .ii-editor > header { background: var(--surface) !important; border-color: var(--line) !important; }
  .ii-editor > header button { background: #f1f0ee !important; color: var(--text) !important; }
  .ii-items th, .ii-items td { border-color: var(--line) !important; }
  .ii-grand, .ii-suggest, .ii-request-context { background: #f0f2ff !important; color: var(--text) !important; }
  .ii-editor input[type=date] { color-scheme: light; }

  :is(.wc-card, .wc-kpi, .wc-column, .wc-board, .wc-form-section,
    .wc-dialog, .wc-table-wrap, .wc-filters, .wc-note,
    .os-kpi, .os-card, .os-list-item, .os-table-wrap, .os-toolbar,
    .os-subnav, .os-side-filter, .os-dialog, .os-matrix > *) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: var(--surface-shadow) !important; border-radius: 12px;
  }
  .wc-page, .os-page { color: var(--text) !important; }
  .wc-page :is(.wc-muted, .wc-note, .wc-kpi small),
  .os-kpi span, .os-list-item small { color: var(--muted) !important; }
  .os-empty b { color: var(--text) !important; }
  .os-table th { background: #f8f7f6 !important; color: var(--muted) !important; border-color: var(--line) !important; }
  .os-table td { color: var(--text) !important; border-color: var(--line) !important; }
  .os-table tbody tr:hover { background: #f8f7f6 !important; }
  .os-btn { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  .os-btn.primary { background: var(--blue) !important; color: var(--surface) !important; border-color: var(--blue) !important; }
  .os-subnav button, .os-tabs button, .os-side-filter button { color: var(--muted) !important; }
  .os-subnav button.active, .os-tabs button.active, .os-side-filter button.active { background: #eef0ff !important; color: var(--accent-pressed) !important; }
  .os-dialog-close { background: #f1f0ee !important; color: var(--text) !important; border-color: var(--line) !important; }
  .os-dialog-backdrop { background: #24211e6b !important; }
  .os-progress, .os-bar { background: #eae9e7 !important; }
  .os-progress span, .os-bar i { background: var(--blue) !important; }
  .os-alert { background: #fff5e5 !important; color: #925317 !important; border-color: #efd8b0 !important; }
  .os-alert.error { background: #fbeaec !important; color: #a02d39 !important; border-color: #efc4ca !important; }
  .os-pill.green { background: #e9f6ed !important; color: #247541 !important; border-color: #c4e6ce !important; }
  .os-pill.blue { background: #f0f2ff !important; color: #2a41b6 !important; border-color: #d9dfff !important; }
  .os-pill.red { background: #fbeaec !important; color: #a02d39 !important; border-color: #efc4ca !important; }
  .os-pill.yellow { background: #fff5e5 !important; color: #925317 !important; border-color: #efd8b0 !important; }
  .os-pill.purple { background: #f5eefb !important; color: #68388b !important; border-color: #e4d4ef !important; }

  /* Project delivery: the main viewport, wizard and project-detail controls. */
  .wc-page { background: var(--page-surface) !important; }
  :is(.wc-switch, .wc-step, .wc-assignment, .wc-scope-map,
    .wc-choice, .wc-check, .wc-column, .wc-task, .wc-detail-item,
    .wc-file-drop, .op-project-details, .op-project-more,
    .op-deliverables, .op-finance-visibility, .op-floating-picker,
    .op-picker-trigger, .op-project-quick button, .op-project-filter-foot button) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
  }
  :is(.wc-step.active, .wc-choice.active, .wc-person.active,
    .op-project-kpis .wc-kpi.selected, .op-project-quick button.active) {
    background: #eef0ff !important; color: var(--accent-pressed) !important;
    border-color: var(--blue) !important;
  }
  :is(.wc-table td b, .wc-empty b, .wc-scope-usage b,
    .op-project-details dd, .op-empty b, .op-document-cell b) { color: var(--text) !important; }
  :is(.wc-kpi small, .wc-kpi span, .wc-table td small, .wc-field small,
    .wc-step small, .wc-choice span,
    .op-project-details dt, .op-document-cell small,
    .op-deliverables-head p, .op-project-head p:not(.wc-eyebrow)) { color: var(--muted) !important; }
  .wc-table tbody tr:hover, .op-deliverables-table tr:hover td,
  .op-picker-options button:hover, .op-picker-options button.selected { background: #f8f7f6 !important; }
  .wc-tabs, .wc-steps, .wc-dialog-head, .wc-dialog-foot,
  .wc-wizard-toolbar, .op-table-wrap { border-color: var(--line) !important; }
  .wc-tabs button, .wc-person, .wc-switch button,
  .op-picker-options button { color: var(--muted) !important; }
  .wc-tabs button.active, .wc-switch button.active { color: var(--accent-pressed) !important; border-color: var(--blue) !important; background: #eef0ff !important; }
  .wc-pill { background: #f1f1f0 !important; color: var(--muted) !important; border-color: #c7cad5 !important; }
  .wc-pill.green { background: #e9f6ed !important; color: #247541 !important; border-color: #c4e6ce !important; }
  .wc-pill.blue { background: #f0f2ff !important; color: #2a41b6 !important; border-color: #d9dfff !important; }
  .wc-pill.red { background: #fbeaec !important; color: #a02d39 !important; border-color: #efc4ca !important; }
  .wc-pill.yellow { background: #fff5e5 !important; color: #925317 !important; border-color: #efd8b0 !important; }
  .wc-pill.purple { background: #f5eefb !important; color: #68388b !important; border-color: #e4d4ef !important; }
  .wc-note { background: #f0f2ff !important; color: #31546f !important; border-color: #e1e5ff !important; }
  .wc-note.warn { background: #fff5e5 !important; color: #925317 !important; border-color: #efd8b0 !important; }
  .wc-note.error, .wc-error-summary { background: #fbeaec !important; color: #a02d39 !important; border-color: #efc4ca !important; }
  .wc-progress { background: #eae9e7 !important; }
  .wc-progress span { background: var(--blue) !important; }
  .wc-btn.primary, .wc-btn-primary { background: var(--blue) !important; color: var(--surface) !important; border-color: var(--blue) !important; }
  .wc-link, .op-link-list a, .work-link { color: var(--blue) !important; }
  .wc-dialog-close { background: #f1f0ee !important; color: var(--text) !important; border-color: var(--line) !important; }
  .op-deliverables-table th:last-child, .op-deliverables-table td:last-child,
  .op-editing td:last-child { background: var(--surface) !important; box-shadow: -6px 0 12px #0000000a !important; }
  .op-deliverables-table td:nth-child(6), .op-amount { color: var(--muted) !important; }
  .op-floating-picker { box-shadow: 0 14px 35px #0000001a !important; }

  /* Tasks, people and business centre. */
  .task-page { background: var(--page-surface) !important; color: var(--text) !important; }
  :is(.board-column, .task-card, .task-context, .todo-form, .people-panel,
    .hr-kpi, .hr-table-wrap, .hr-panel, .request-card, .payslip,
    .department-list button, .events-card, .org-summary article,
    .org-detail, .dept-level, .dept-team-row,
    .bc-metric, .bc-card, .bc-kanban > article,
    .bc-pitch-grid > article, .bc-detail > header,
    .bc-plan-grid article, .bc-prospect-list article,
    .bc-kanban > article > button, .bc-handover article,
    .bc-detail-grid article, .bc-intelligence,
    .bc-referral-access, .bc-pitch-notice) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: var(--surface-shadow) !important;
  }
  :is(.task-card, .board-column, .hr-kpi, .hr-panel,
    .bc-card, .bc-metric, .bc-kanban > article) { border-radius: 12px; }
  .hr-rail button, .department-list button { color: var(--muted) !important; }
  .hr-rail button.active, .department-list button.active,
  .hr-tabs button.active, .hr-filter button.active,
  .person-filter.active { background: #eef0ff !important; color: var(--accent-pressed) !important; border-color: var(--blue) !important; }
  .hr-button.primary, .self-submit, .bc-btn.primary,
  .attendance-actions button.selected { background: var(--blue) !important; color: var(--surface) !important; border-color: var(--blue) !important; }
  .hr-search, .self-form input, .self-form select { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  .attendance-actions button, .department-list button, .bc-btn,
  .card-actions button, .row-actions button { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  .employment, .approve { background: #e9f6ed !important; color: #247541 !important; }
  .employment.inactive, .reject { background: #fbeaec !important; color: #a02d39 !important; }
  .employment.onboarding { background: #fff5e5 !important; color: #925317 !important; }
  .bc-attention-row, .bc-follow, .bc-op-row,
  .bc-structure, .bc-structure b, .bc-coverage p b,
  .bc-plan-grid p, .bc-handover ol, .bc-detail-grid span { color: var(--text) !important; }
  .bc-op-row:hover { background: #f8f7f6 !important; }
  .bc-table th { background: #f8f7f6 !important; color: var(--muted) !important; }
  .bc-table td { color: var(--text) !important; }
  .bc-tabs button.active { color: var(--blue) !important; border-color: var(--blue) !important; }
  .bc-chip, .bc-milestones span { background: #f1f1f0 !important; color: var(--muted) !important; }
  .bc-chip.approved, .bc-chip.green, .bc-chip.on-track,
  .bc-milestones span.done { background: #e9f6ed !important; color: #247541 !important; }
  .bc-chip.risk, .bc-chip.orange,
  .bc-milestones span.active { background: #fff5e5 !important; color: #925317 !important; }
  .bc-ring { border-color: #eae9e7 !important; border-top-color: var(--blue) !important; border-right-color: #62aef0 !important; }

  /* Planning, personal tasks, client health and adjacent workspaces. */
  :is(.bp-workflow-panel, .bp-unassigned-project, .bp-transfer-table,
    .bp-history-date, .bp-history-picker, .bp-view-summary,
    .bp-filter-trigger, .bp-filter-menu, .bp-next-menu,
    .bp-client-assignee-menu, .bp-task-actions,
    .bpt-self-task-card, .bpt-department, .bpt-member-card,
    .bpt-department-menu, .bpt-assignee-picker [data-bpt-assignee-menu],
    .btw-team-department, .btw-team-member,
    .btw-overview-tiles button, .btw-detail,
    .ch2-overview article, .ch2-filters, .ch2-dimension,
    .ch3-summary, .ch3-section, .ch3-detail > header,
    .gc-metrics > article, .gc-card, .gc-skill-grid article,
    .gc-path article, .tt-overview article, .tt-challenge,
    .tt-card, .tt-detail-grid article) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: var(--surface-shadow) !important;
  }
  :is(.bp-filter-option:hover, .bp-history-people button:hover,
    .bp-next-person-list button:hover, .bpt-assignee-picker [data-bpt-assignee-options] button:hover,
    .ch2-row:hover, .ch3-row:hover) { background: #f8f7f6 !important; color: var(--text) !important; }
  :is(.bp-filter-trigger, .bp-history-actions button,
    .bp-client-assignee > button, .bp-next-control > button,
    .bpt-assignee-picker > button, .bpt-team-tabs button,
    .gc-btn, .tt-btn, .ch2-action) { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  :is(.bp-history-tabs button.active, .bp-view-tabs button.active,
    .bpt-team-tabs button.active, .gc-subnav button.active) { background: #eef0ff !important; color: var(--accent-pressed) !important; border-color: var(--blue) !important; }
  :is(.gc-btn.primary, .tt-btn.primary, .ch2-action.primary) { background: var(--blue) !important; color: var(--surface) !important; border-color: var(--blue) !important; }
  :is(.bp-unassigned-table th, .bp-transfer-detail th,
    .ch2-dimension th, .ch3-section th) { background: #f8f7f6 !important; color: var(--muted) !important; }
  .bp-unassigned-table td, .bp-transfer-detail td { background: var(--surface) !important; color: var(--text) !important; }
  .bp-format, .bp-filter-count, .bpt-origin-badge { background: #f0f2ff !important; color: #2a41b6 !important; border-color: #d9dfff !important; }
  .bp-task-actions select, .bp-next-control input,
  .bp-client-assignee-menu input, .bp-next-menu input,
  .bp-filter-menu input, .bpt-checklist-input input,
  .bpt-self-form select, .bpt-self-form textarea { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  .ch3-grade.green { background: #e9f6ed !important; color: #247541 !important; }
  .ch3-grade.orange, .ch3-grade.yellow { background: #fff5e5 !important; color: #925317 !important; }
  .ch3-grade.red { background: #fbeaec !important; color: #a02d39 !important; }
  .gc-progress { background: #eae9e7 !important; }
  .gc-progress i { background: var(--blue) !important; }

  /* Finance forms, ledgers, settings, reports and side drawers. */
  :is(.fd-card, .fd-line, .fm-table, .fm-filters,
    .fm-search, .fm-mini, .fset-nav, .fset-panel,
    .fn-stats div, .fn-list, .fn-editor, .fn-grid section,
    .fn-items, .nn-summary, .nn-table, .nn-editor,
    .nn-top section, .nn-items, .nn-bottom > section,
    .pp-metrics, .pp-filter, .pp-table, .pp-editor,
    .sp-summary, .sp-filter, .sp-table, .sp-editor,
    .fs-table, .fs-search, .fs-drawer,
    .fst-summary > div, .fst-table, .modal.fst-dialog,
    .rr-filter, .rr-pl-filter, .rr-output, .rr-drill,
    .tax-period, .tax-kpis article, .tax-grid article,
    .tax-register, .ft-kpis a, .ft-section,
    .fin2-kpis article, .fin2-card, .fin2-table-wrap,
    .fin2-note, .fin2-archive,
    .finance-request-inbox, .finance-request-card,
    .ii-client-po-summary, .ii-client-po-dialog,
    .modal.cv-drawer, .modal.ii-convert) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: var(--surface-shadow) !important;
  }
  :is(.fn-editor > header, .nn-editor > header,
    .fs-drawer header, .fs-dialog header,
    .rr-drill > header, .rr-drill > footer,
    .cv-drawer header, .cv-drawer footer) { background: var(--surface) !important; color: var(--text) !important; border-color: var(--line) !important; }
  :is(.finance-request-tabs button, .finance-request-actions button,
    .fd-quick button, .fin2-btn, .fset-nav button,
    .rr-update) { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  :is(.finance-request-tabs button.active, .fset-nav button.active,
    .fin2-tabs button.active) { background: #eef0ff !important; color: var(--accent-pressed) !important; border-color: var(--blue) !important; }
  .finance-request-inbox header > b,
  .ft-section h2 span { background: #f0f2ff !important; color: #2a41b6 !important; }
  :is(.pp-filter input, .pp-filter select, .pp-editor input,
    .pp-editor select, .sp-filter input, .sp-filter select,
    .sp-editor input, .sp-editor select, .fm-search input,
    .fm-filters input, .fm-filters select, .fset-panel input,
    .fset-panel textarea, .fn-search input, .rr-fields input,
    .rr-fields select, .fst-search input,
    .ii-client-po-fields input, .ii-client-po-fields select,
    .cv-grid input, .cv-grid select, .cv-grid textarea) {
    background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important;
  }
  :is(.pp-table th, .sp-table th, .fm-table th,
    .fn-list th, .nn-table th, .fs-table th,
    .fst-table th, .tax-register th, .ft-section th,
    .fin2 th) { background: #f8f7f6 !important; color: var(--muted) !important; border-color: var(--line) !important; }
  :is(.pp-table td, .sp-table td, .fm-table td,
    .fn-list td, .nn-table td, .fs-table td,
    .fst-table td, .tax-register td, .ft-section td,
    .fin2 td) { color: var(--text) !important; border-color: var(--line) !important; }
  .pp-status.approved, .tax-pill.receivable,
  .fin2-status.approved { background: #e9f6ed !important; color: #247541 !important; }
  .pp-status, .fin2-status { background: #f0f2ff !important; color: #2a41b6 !important; }
  .fd-bars i, .fin2-chart span, .ft-progress span { background: var(--blue) !important; }

  /* Editors commonly mount outside .main, so they need the same surface and type rules. */
  :is(.modal, .action-menu, .profile-menu, .pp-form section,
    .sp-form section, .nn-top section, .nn-items,
    .fn-grid section, .fn-items, .ii-top section, .ii-items,
    .pp-detail, .finance-request-card, .rr-drill .credit-row,
    .ii-action-menu) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
    box-shadow: var(--surface-shadow) !important;
  }
  :is(.modal, .pp-editor, .sp-editor, .nn-editor, .fn-editor,
    .ii-editor, .wc-dialog, .os-dialog, .bp-dialog,
    .pitch-detail-panel, .pv-modal, .fs-drawer, .ii-client-po-dialog)
    :is(h1, h2, h3, h4, b, strong, label, legend, dt, dd) {
    color: var(--text) !important;
  }
  :is(.modal, .pp-editor, .sp-editor, .nn-editor, .fn-editor,
    .ii-editor, .wc-dialog, .os-dialog, .bp-dialog,
    .pitch-detail-panel, .pv-modal, .fs-drawer, .ii-client-po-dialog)
    :is(p, small, time) { color: var(--muted) !important; }
  :is(.modal, .pp-editor, .sp-editor, .nn-editor, .fn-editor,
    .ii-editor, .wc-dialog, .os-dialog, .bp-dialog,
    .pitch-detail-panel, .pv-modal, .fs-drawer, .ii-client-po-dialog)
    :is(input:not([type=checkbox]):not([type=radio]), select, textarea) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #c7cad5 !important; border-radius: 5px;
  }
  :is(.modal, .pp-editor, .sp-editor, .nn-editor, .fn-editor,
    .ii-editor, .wc-dialog, .os-dialog, .bp-dialog,
    .pitch-detail-panel, .pv-modal, .fs-drawer, .ii-client-po-dialog)
    :is(input, select, textarea, button):focus-visible {
    outline: 2px solid var(--blue) !important; outline-offset: 2px;
  }
  .modal-backdrop { background: #24211e6b !important; }
  .action-menu button, .profile-menu button { color: var(--text) !important; }
  .action-menu button:hover, .profile-menu button:hover { background: #f8f7f6 !important; }
  .profile-menu .account b { color: var(--text) !important; }
  .secondary, .filter-pill, .quick-btn, .round-add {
    background: var(--surface) !important; color: var(--text) !important;
    border: 1px solid #c7cad5 !important;
  }
  .primary, .filter-pill.active, .quick-btn, .round-add {
    background: var(--blue) !important; color: var(--surface) !important;
    border-color: var(--blue) !important;
  }
  .toast { background: var(--surface) !important; color: var(--text) !important; border-color: var(--line) !important; box-shadow: var(--surface-shadow) !important; }
  .performer { background: var(--surface) !important; border: 1px solid var(--line); }
  .rank { background: #f0f2ff !important; color: var(--accent-pressed) !important; }

  :root { --page-surface: #ffffff; }
  body, .shell, .main, .wc-page, .task-page { background: var(--surface) !important; }
  .main :is(h1, h2, h3) { font-weight: 600; letter-spacing: -.02em; }
  .sidebar .brand { background: transparent; border-radius: 0; padding: 13px 15px; margin: 0 0 21px; }
  .sidebar .brand img { filter: brightness(0) saturate(100%); }
  #nav button, #nav .work-child { border-radius: 999px; }
  #nav button.active, #nav .work-child.active,
  #nav .finance-subnav button.active {
    background: var(--text) !important; color: var(--surface) !important;
    box-shadow: none !important;
  }
  #nav button.active .nav-icon, #nav .work-child.active .nav-icon { color: var(--identity-yellow) !important; }
  .topbar { box-shadow: 0 1px 0 var(--line); }
  .search { background: #f7f8fa !important; border-color: var(--line) !important; }
  .search, .search input { border-radius: 8px; }
  .hero h1 { font-weight: 600; letter-spacing: -.035em; }
  .hero p { color: #555a6a !important; }

  .main :is(.summary .metric, .finance-kpi, .ops-kpi, .work-kpi,
    .wc-kpi, .bc-metric, .pitch-summary article) { box-shadow: none !important; border-radius: 16px; }
  .main :is(.summary .metric, .finance-kpi, .ops-kpi, .work-kpi,
    .wc-kpi, .bc-metric, .pitch-summary article) :is(b, strong, h2, h3) { color: var(--text) !important; }

  /* Primary actions are black pills. Blue is for links and keyboard focus. */
  body :is(.clock-cta, .finance-btn.primary, .ops-btn.primary,
    .work-btn.primary, .bp-btn.primary, .wc-btn.primary,
    .wc-btn-primary, .os-btn.primary, .ch-btn.primary,
    .bc-btn.primary, .gc-btn.primary, .tt-btn.primary,
    .hr-button.primary, .self-submit, .rail-actions .primary,
    .project-tabs .active, .quick-btn, .round-add,
    .modal-actions .primary, .primary, .ai) {
    background: var(--text) !important; color: var(--surface) !important;
    border-color: var(--text) !important; border-radius: 999px !important;
    box-shadow: none !important;
  }
  body :is(.clock-cta, .finance-btn.primary, .ops-btn.primary,
    .work-btn.primary, .bp-btn.primary, .wc-btn.primary,
    .os-btn.primary, .ch-btn.primary, .bc-btn.primary,
    .self-submit, .quick-btn, .ai):hover { background: #2c2c34 !important; }
  body :is(.finance-btn, .ops-btn, .work-btn, .bp-btn, .wc-btn,
    .os-btn, .ch-btn, .bc-btn, .gc-btn, .tt-btn,
    .hr-button, .clock, .select, .filter-pill,
    .modal-actions button, .rail-actions button, .project-tabs button,
    .bp-task-actions button, .bp-next-control > button) {
    border-radius: 999px !important;
  }
  body :is(.chip, .wc-pill, .os-pill, .ops-pill, .work-pill,
    .bc-chip, .ch-health, .bp-count, .btw-status,
    .employment, .pp-status, .fin2-status) { border-radius: 999px !important; }
  body :is(.tab.active, .bp-tabs button.active, .ops-tabs button.active,
    .work-tabs button.active, .wc-tabs button.active, .ii-tabs button.active,
    .pp-tabs button.active, .fn-tabs button.active, .bc-tabs button.active,
    .btw-tabs button.active) { color: var(--text) !important; border-color: var(--text) !important; background: #fff4c4 !important; border-radius: 999px !important; }
  body :is(.tab, .bp-tabs button, .ops-tabs button, .work-tabs button,
    .wc-tabs button, .ii-tabs button, .pp-tabs button, .fn-tabs button,
    .bc-tabs button, .btw-tabs button) { border-radius: 999px !important; }
  body :is(.main a, .main .link, .wc-link, .work-link, .ops-link,
    .op-link-list a) { color: var(--blue) !important; }
  body :is(.main input, .main select, .main textarea,
    .modal input, .modal select, .modal textarea,
    .wc-dialog input, .wc-dialog select, .wc-dialog textarea) { border-radius: 8px !important; }
  body :is(input, select, textarea, button):focus-visible { outline: 2px solid var(--blue) !important; outline-offset: 2px; }
  .ai i { color: #ffd02f !important; }

  @media (max-width: 900px) {
    .sidebar .brand { padding: 8px; border-radius: 12px; }
    .sidebar .brand img { display: none !important; }
    .sidebar .brand::after { color: var(--text) !important; }
  }

  /* Screen-local themes missed by the shared component selectors. */
  :is(.access-team-search, .access-context, .access-context .chip,
    .bp-task-note-history, .bp-client-note-row td,
    .bp-linked-context, .bp-linked-focus td,
    .btw-bundle, .btw-bundle-head, .btw-bundle-count,
    .bpt-date-nav, .bpt-empty, .bpt-notification-menu,
    .ch3-reason, .ch3-signal-grid article, .ch3-evidence,
    .dv-details-pane, .dv-team-pane, .dv-scope-guide,
    .dv-scope-line, .dv-kpis article, .dv-toolbar,
    .dv-table-wrap, .dw-details, .dw-team,
    .dw-shared > section, .dw-assignment,
    .fin2-dialog,
    .fin2-form-total, .gc-learning article,
    .gc-callout, .org-ladder span, .org-meta div,
    .org-note, .op-finance-record, .op-fixed-scope-stats > div,
    .pv-header, .pv-card, .roles-people,
    .roles-editor, .roles-group, .pl-retainer-scope-card,
    .pl-inline-menu, .pl-select-trigger, .pl-member-trigger) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important; box-shadow: none !important;
  }
  :is(.bp-client-table th, .bp-unassigned-table th,
    .dv-table th, .ft-section th, .finance-request-table th) {
    background: #f7f8fa !important; color: var(--muted) !important;
    border-color: var(--line) !important;
  }
  :is(.bp-client-table td, .dv-table td,
    .finance-request-table td) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #eef0f3 !important;
  }
  :is(.bp-client-table tbody tr:hover, .dv-table tr[data-dv-open]:hover,
    .bp-unassigned-project-head:hover, .op-finance-record:hover,
    .pl-picker-row:hover, .pl-person-option:hover,
    .roles-person-list button:hover) { background: #f7f8fa !important; }
  :is(.bp-next-workflow button, .bp-history-actions button,
    .dv-accept-actions button, .dv-stepper button,
    .dw-steps button, .dw-toggle button,
    .org-list button, .roles-editor-foot button,
    .pl-project-type-picker button) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #c7cad5 !important; border-radius: 999px !important;
  }
  :is(.dv-stepper button.active, .dw-steps button.active,
    .org-list button.active, .pl-project-type-picker button.active,
    .roles-person-list button.selected,
    .pl-picker-row.selected, .pl-person-option.checked) {
    background: #fff4c4 !important; color: var(--text) !important;
    border-color: #ffd02f !important;
  }
  :is(.dv-kpis article, .ch3-signal-grid article,
    .gc-learning article, .org-summary article,
    .pl-retainer-scope-card) { border-radius: 16px !important; }
  .dv-kpis article:nth-child(4n+1), .ch3-signal-grid article:nth-child(4n+1),
  .gc-learning article:nth-child(4n+1) { background: #fff4c4 !important; }
  .dv-kpis article:nth-child(4n+2), .ch3-signal-grid article:nth-child(4n+2),
  .gc-learning article:nth-child(4n+2) { background: #c3faf5 !important; }
  .dv-kpis article:nth-child(4n+3), .ch3-signal-grid article:nth-child(4n+3),
  .gc-learning article:nth-child(4n+3) { background: #fde0f0 !important; }
  .dv-kpis article:nth-child(4n), .ch3-signal-grid article:nth-child(4n),
  .gc-learning article:nth-child(4n) { background: #ffc6c6 !important; }
  .dv-pill.green, .tt-status.approved, .tt-status.implemented {
    background: #ddf7ee !important; color: #187574 !important; border-color: #b4e8d7 !important;
  }
  .dv-pill.amber, .tt-status.submitted, .gc-pill {
    background: #fff4c4 !important; color: #746019 !important; border-color: #ffe79b !important;
  }
  .dv-pill.blue, .gc-pill.teal {
    background: #c3faf5 !important; color: #187574 !important; border-color: #9eeae2 !important;
  }
  .tt-tag, .pitch-hero-badge, .pitch-output-routing span,
  .bp-unassigned-project-count, .btw-bundle-count {
    background: #fde0f0 !important; color: #600000 !important; border-color: #f5c6e1 !important;
  }
  .pitch-output-routing span.empty { background: #f7f8fa !important; color: var(--muted) !important; border-color: var(--line) !important; }
  .pitch-route-icon, .pitch-folder-icon, .pv-mark,
  .roles-avatar, .btw-avatar, .bpt-avatar {
    background: #ffd02f !important; color: var(--text) !important; border-color: #fcb900 !important;
  }
  .pv-ring::before { background: var(--surface) !important; }
  .pv-pill.green { background: #ddf7ee !important; color: #187574 !important; }
  .pv-pill.blue { background: #f5f3ff !important; color: var(--blue) !important; }

  :is(.access-team-search, .bp-client-table select,
    .bpt-filters input, .bpt-filters select,
    .bpt-department-picker > button,
    .bc-toolbar input, .bc-toolbar select,
    .bc-modal input, .bc-modal select,
    .dv-toolbar input, .dv-toolbar select,
    .dw-grid input, .dw-grid select, .dw-grid textarea,
    .dw-assignment input, .dw-assignment select,
    .dw-shared input, .dw-shared select,
    .fin2-dialog input, .fin2-dialog select,
    .fin2-dialog textarea, .gc-modal input,
    .hrms-page input, .hrms-page select,
    .hrms-page textarea, .op-project-date-filters input,
    .roles-people input, .roles-preset select,
    .tt-toolbar input, .tt-toolbar select,
    .tt-modal input, .tt-modal select, .tt-modal textarea,
    .pl-inline-menu .pl-search, .pl-select-trigger,
    .pl-member-trigger, .wc-input, .wc-select,
    .wc-textarea, .wc-field input, .wc-field select,
    .wc-field textarea) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #c7cad5 !important; border-radius: 8px !important;
  }
  :is(.fin2-dialog, .finance-inbox-backdrop,
    .bp-notification-menu, .bpt-notification-menu,
    .pl-inline-menu, .roles-editor) { box-shadow: 0 16px 48px -8px #0500381f !important; }
  .finance-inbox-backdrop, .fin2-backdrop { background: #05003866 !important; }
  .fin2-dialog header, .fin2-dialog footer,
  .finance-request-card {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important;
  }
  .finance-request-row em, .op-project-work-progress b,
  .op-fixed-scope-stats b { background: #fff4c4 !important; color: #746019 !important; }
  .finance-request-tabs button.active,
  .finance-request-actions button:hover,
  .hrms-subnav button.active,
  .bc-subnav button.active { background: var(--text) !important; color: var(--surface) !important; border-radius: 999px !important; }
  .gc-callout, .ch3-reason, .op-finance-record {
    border-left: 4px solid #ffd02f !important;
    background: #fff8e0 !important;
  }
  .pitch-hero { background: #fff4c4 !important; border-color: #ffe79b !important; }
  .pitch-context, .pitch-progress-panel,
  .pitch-output-section { background: var(--surface) !important; }
  .pitch-progress-track > span, .pitch-progress-donut { background-color: #0fbcb0 !important; }
  .pitch-progress-donut { background: conic-gradient(#0fbcb0 var(--pitch-percent), var(--line) 0) !important; }
  .clock-banner { background: #fff8e0 !important; border-color: #ffe79b !important; }
  .chart .bar { background: linear-gradient(to top, #ffd02f 0 32%, #0fbcb0 32% 58%, var(--blue) 58% 78%, #ff9999 78%) !important; }
  .donut { background: conic-gradient(#0fbcb0 0 77%, #ffd02f 77% 88%, var(--blue) 88% 96%, #ff9999 96%) !important; }
  .metric-icon { background: var(--surface) !important; color: var(--text) !important; }
  .progress span, .ops-progress i, .pitch-progress-track > span,
  .wc-progress span, .os-progress span, .os-bar i,
  .gc-progress i { background: #0fbcb0 !important; }
  .table th, .finance-table th, .ops-table th,
  .wc-table th, .op-deliverables-table th,
  .os-table th, .ii-table th, .pp-table th,
  .fn-list th { background: #f7f8fa !important; }
  .main :is(.card, .panel, .finance-card, .ops-card,
    .work-card, .wc-card, .os-card) { box-shadow: none !important; }
  body a.primary, body .primary a { color: var(--surface) !important; }

  :is(.btw-assignment-queue, .btw-assignment-queue article,
    .btw-time-section, .dv-create-note, .dv-import,
    .dv-draft, .dv-template-columns, .dv-detail-meta > div,
    .dv-detail-section, .finance-inbox-dialog,
    .finance-request-context, .finance-query-original-note,
    .pitch-lead-list span, .pitch-link-list a,
    .pitch-detail-meta span,
    .pitch-department-trigger, .pitch-inline-form,
    .op-frozen-note, .op-link-list > div,
    .op-transfer-intro, .op-finance-request-row,
    .op-billing-menu, .pl-plan-card, .pl-task-card,
    .pl-queue-card, .pl-overage, .pl-workstream-card,
    .pl-capacity, .pl-pitch-department, .pl-pitch-output,
    .pl-pitch-people, .pl-pitch-child,
    .pl-pitch-manager-list, .pl-pitch-manager-trigger,
    .pl-pitch-manager-menu, .pl-pitch-department-select,
    .pl-pitch-department-select > div, .pl-pitch-owners,
    .pl-person-pick) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important; box-shadow: none !important;
  }
  :is(.btw-review-link, .btw-reopen-self, .btw-delete-self,
    .btw-time-section h2 button, .op-note-toolbar button,
    .op-project-row-actions button, .pl-form-steps button) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #c7cad5 !important; border-radius: 999px !important;
  }
  :is(.pl-pitch-people label:has(input:checked),
    .pl-pitch-manager-list label:has(input:checked),
    .pl-person-pick:has(input[type=checkbox]:checked),
    .finance-query-scope > label:has(input:checked)) {
    background: #fff4c4 !important; color: var(--text) !important;
    border-color: #ffd02f !important;
  }
  :is(.btw-priority, .btw-bundle-count,
    .pl-cost-strip span, .pl-overage-numbers span) {
    background: #fde0f0 !important; color: #600000 !important;
    border-color: #f5c6e1 !important;
  }
  .pl-capacity.full { background: #ffc6c6 !important; color: #600000 !important; }
  .dv-import-good { background: #ddf7ee !important; color: #187574 !important; }
  .dv-pill.red { background: #fbd4d4 !important; color: #600000 !important; border-color: #e3c5c5 !important; }
  :is(.btw-action-form input, .btw-action-form select,
    .btw-action-form textarea, .dv-grid input,
    .dv-grid select, .dv-grid textarea,
    .dv-modal textarea, .dv-modal input, .dv-modal select,
    .finance-query-form select,
    .finance-query-form textarea, .pitch-output-actions select,
    .pitch-department-menu input, .pitch-inline-grid input,
    .pitch-inline-owners select, .pitch-completion-dialog textarea,
    .pitch-completion-dialog input,
    .op-export-format select, .op-finance-request-fields input,
    .op-finance-request-fields select,
    .op-finance-request-note textarea,
    .pl-inline-add input, .pl-fixed-table input,
    .pl-fixed-table select, .pl-pitch-manager-menu > input) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #c7cad5 !important; border-radius: 8px !important;
  }
  .finance-inbox-dialog header button,
  .finance-request-dialog-actions button,
  .op-billing-menu button { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; }
  .op-billing-menu button:hover, .pl-inline-options > button:hover,
  .pl-pitch-manager-options button:hover,
  .pitch-department-menu label:hover { background: #f7f8fa !important; color: var(--text) !important; }
  .pl-fixed-table th { background: #f7f8fa !important; color: var(--muted) !important; }
  .pl-fixed-table td { background: var(--surface) !important; color: var(--text) !important; }
  .dv-modal .modal-actions { background: var(--surface) !important; border-color: var(--line) !important; }
  .btw-row:hover, .btw-bundle-head:hover { background: #f7f8fa !important; }
  .pitch-department-menu { box-shadow: 0 16px 48px -8px #0500381f !important; }
  .main .bp-client-table th, .main .bp-client-table td {
    color: var(--text) !important; background: var(--surface) !important;
    border-color: #eef0f3 !important;
  }
  .main .bp-client-table th { background: #f7f8fa !important; color: var(--muted) !important; }
  .main .bp-client-table td:nth-child(3),
  .main .bp-client-table td:nth-child(4),
  .main .bp-client-table td:nth-child(6) { color: var(--text) !important; }
  .main .bp-client-table tbody tr:nth-child(even),
  .main .bp-client-table td:has(.bp-client-assignee) { background: var(--surface) !important; }
  .main .bp-client-table tbody tr:hover td { background: #f7f8fa !important; }
  .dw-optional summary, .dw-section-title small,
  .dw-shared small, .dw-select-list span,
  .dw-grid label, .dw-assignment label,
  .pl-pitch-child label, .pl-pitch-manager-list label {
    color: #555a6a !important;
  }
  .bp-client-assignee > button { background: var(--surface) !important; color: var(--text) !important; border-color: #c7cad5 !important; border-radius: 999px !important; }

  /* Finance Tracker's dashboard mounts its KPI cards as divs, not links. */
  .finance-tracker, .finance-tracker-dashboard { color: var(--text) !important; }
  .finance-tracker :is(.ft-head p, .ft-head span, .ft-section header p,
    .ft-dashboard-head p, .ft-kpis small, .ft-kpis span,
    .ft-section td small, .ft-section .ft-empty) { color: var(--muted) !important; }
  .finance-tracker-dashboard .ft-kpis > div,
  .finance-tracker .ft-kpis > a {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important; box-shadow: none !important;
    border-radius: 16px !important;
  }
  .finance-tracker :is(.ft-section, .finance-tracker-dashboard details.ft-section) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: var(--line) !important; box-shadow: none !important;
  }
  .finance-tracker :is(.ft-section th, .ft-section td) { background: var(--surface) !important; color: var(--text) !important; border-color: #eef0f3 !important; }
  .finance-tracker .ft-section th { background: #f7f8fa !important; color: var(--muted) !important; }
  .finance-tracker .ft-section h2 span,
  .finance-tracker-dashboard details.ft-section summary span {
    background: var(--text) !important; color: #ffd02f !important;
  }

  /* Legacy CSS safety net. Most feature files predate the shared token system and
     declare navy surfaces directly. This captures their component families before
     semantic colours below restore status-specific emphasis. */
  .main :where(
    [class*="-card"], [class*="-panel"], [class*="-section"],
    [class*="-editor"], [class*="-drawer"], [class*="-dialog"],
    [class*="-table-wrap"], [class*="-table"], [class*="-form"],
    [class*="-toolbar"], [class*="-filters"], [class*="-kpi"],
    [class*="-metric"], [class*="-tile"], [class*="-list"],
    [class*="-detail"], [class*="-workflow"], [class*="-scope"],
    [class*="-record"], [class*="-queue"], [class*="-summary"],
    [class*="-overview"], [class*="-history"], [class*="-picker"],
    [class*="-menu"], [class*="-master"], [class*="-notes"],
    [class*="-report"], [class*="-tracker"], [class*="-progress"],
    [class*="-board"], [class*="-column"], [class*="-challenge"],
    [class*="-evidence"], [class*="-timeline"], [class*="-notice"],
    [class*="-alert"], [class*="-context"], [class*="-callout"]
  ) {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--line) !important;
  }
  .main :where(
    [class*="-card"], [class*="-panel"], [class*="-section"],
    [class*="-editor"], [class*="-drawer"], [class*="-dialog"],
    [class*="-table-wrap"], [class*="-table"], [class*="-form"],
    [class*="-toolbar"], [class*="-filters"], [class*="-kpi"],
    [class*="-metric"], [class*="-tile"], [class*="-list"],
    [class*="-detail"], [class*="-workflow"], [class*="-scope"],
    [class*="-record"], [class*="-queue"], [class*="-summary"],
    [class*="-overview"], [class*="-history"], [class*="-picker"],
    [class*="-menu"], [class*="-master"], [class*="-notes"],
    [class*="-report"], [class*="-tracker"], [class*="-progress"],
    [class*="-board"], [class*="-column"], [class*="-challenge"],
    [class*="-evidence"], [class*="-timeline"], [class*="-notice"],
    [class*="-alert"], [class*="-context"], [class*="-callout"]
  ) :is(h1, h2, h3, h4, h5, b, strong, td, th, dd, dt, p, label, legend) {
    color: var(--text) !important;
  }
  .main :where(
    [class*="-card"], [class*="-panel"], [class*="-section"],
    [class*="-editor"], [class*="-drawer"], [class*="-dialog"],
    [class*="-table-wrap"], [class*="-table"], [class*="-form"],
    [class*="-toolbar"], [class*="-filters"], [class*="-kpi"],
    [class*="-metric"], [class*="-tile"], [class*="-list"],
    [class*="-detail"], [class*="-workflow"], [class*="-scope"],
    [class*="-record"], [class*="-queue"], [class*="-summary"],
    [class*="-overview"], [class*="-history"], [class*="-picker"],
    [class*="-menu"], [class*="-master"], [class*="-notes"],
    [class*="-report"], [class*="-tracker"], [class*="-progress"],
    [class*="-board"], [class*="-column"], [class*="-challenge"],
    [class*="-evidence"], [class*="-timeline"], [class*="-notice"],
    [class*="-alert"], [class*="-context"], [class*="-callout"]
  ) :is(small, time, .muted, [class*="-muted"], [class*="-hint"], [class*="-meta"]) {
    color: var(--muted) !important;
  }
  .main :where(table, .table, .wc-table, .ops-table, .finance-table,
    .ft-section table, .dv-table, .pp-table, .sp-table, .fn-list table,
    .nn-table, .fs-table, .fst-table, .tax-register, .fin2-table) :is(th, td) {
    background: var(--surface) !important; color: var(--text) !important;
    border-color: #eef0f3 !important;
  }
  .main :where(table, .table, .wc-table, .ops-table, .finance-table,
    .ft-section table, .dv-table, .pp-table, .sp-table, .fn-list table,
    .nn-table, .fs-table, .fst-table, .tax-register, .fin2-table) th {
    background: #f7f8fa !important; color: var(--muted) !important;
    font-weight: 600 !important;
  }
  .main :is(button, [role="button"]) {
    color: var(--text);
    border-color: #c7cad5;
  }
  .main :is(button, [role="button"]):not(.primary):not(.active):not([aria-pressed="true"]) {
    background-color: var(--surface) !important;
  }
  .main :is(
    .active, [aria-current="page"], [aria-selected="true"],
    [aria-pressed="true"], .selected, .is-active,
    .person-filter.active, .scope-tabs button.active,
    .date-filters button.active, .view-toggle button.active,
    .bpt-tabs button.active, .bp-workflow-tabs button.active,
    .fm-tabs button.active, .rr-tabs button.active, .fs-tabs button.active,
    .nn-tabs button.active, .sp-payment button.active,
    .fset-term-tabs button.active, .dept-workspace-tabs button.active,
    .gc-tabs button.active, .tt-tabs button.active
  ) {
    background: var(--text) !important;
    color: var(--surface) !important;
    border-color: var(--text) !important;
  }
  .main :is(.avatar, .bp-avatar, .bpt-avatar, .btw-avatar, .hr-avatar,
    .wc-avatar, .roles-avatar, .pv-avatars span, .tiny-avatar,
    .member-avatar, .avatar-stack i, .performer .small-avatar) {
    background: #ffd02f !important;
    color: var(--text) !important;
    border-color: #fcb900 !important;
  }
  .main :is(.danger, .error, [class*="-error"], .over, .late,
    .delayed, .critical, .risk) {
    color: #a52e2e !important;
  }
  .main :is(.success, .completed, .done, .approved, .healthy, .green) {
    color: #187574 !important;
  }

  :is(.work-pill.green) { background: #e9f6ed !important; color: #247541 !important; border-color: #c4e6ce !important; }
  :is(.work-pill.blue) { background: #f0f2ff !important; color: #2a41b6 !important; border-color: #d9dfff !important; }
  :is(.work-pill.red) { background: #fbeaec !important; color: #a02d39 !important; border-color: #efc4ca !important; }
  :is(.work-pill.yellow, .work-pill.amber) { background: #fff5e5 !important; color: #925317 !important; border-color: #efd8b0 !important; }

  /* Semantic states stay legible in the lighter system. */
  :is(.chip.done, .ops-pill.green, .btw-status.completed) { background: #e9f6ed !important; color: #247541 !important; border-color: #c4e6ce !important; }
  :is(.chip.inprogress, .ops-pill.blue, .btw-status) { background: #f0f2ff !important; color: #2a41b6 !important; border-color: #d9dfff !important; }
  :is(.chip.high, .ops-pill.red, .btw-status.overdue) { background: #fbeaec !important; color: #a02d39 !important; border-color: #efc4ca !important; }
  :is(.chip.medium, .ops-pill.yellow, .ops-pill.amber) { background: #fff5e5 !important; color: #925317 !important; border-color: #efd8b0 !important; }
  .chip.low { background: #f0f0ef !important; color: var(--muted) !important; border-color: #c7cad5 !important; }

  @media (max-width: 900px) {
    .sidebar .brand::after { color: var(--text); }
    .main { padding-inline: 16px; }
    .topbar { margin-inline: -16px; padding-inline: 16px; }
  }
  @media (max-width: 620px) {
    .main { padding-inline: 12px; }
    .topbar { margin-inline: -12px; padding-inline: 12px; }
    .summary { gap: 10px; }
  }

  /* Final component audit: one readable light system for every legacy surface. */
  body, .shell, .main, .wc-page, .task-page, .finance-page,
  .bandwidth-planning-page, .ops-page, .work-planning-page {
    background: var(--page-surface) !important;
    color: var(--text);
  }
  :is(.modal-backdrop, .wc-dialog-backdrop, .bp-dialog-backdrop, .pv-modal-backdrop,
    .finance-inbox-backdrop, .fin2-backdrop, .fn-backdrop, .fs-backdrop, .fst-backdrop,
    .ii-backdrop, .os-dialog-backdrop, .pitch-detail-backdrop, .pitch-dialog-backdrop,
    .ei-print-backdrop, .fn-print-backdrop) { background: rgba(5, 0, 56, .42) !important; }
  :is(.modal, .wc-dialog, .bp-dialog, .pv-modal, .fin2-dialog, .finance-inbox-dialog,
    .fn-dialog, .fs-dialog, .fst-dialog, .ii-convert, .os-dialog, .pitch-detail-dialog,
    .pitch-dialog) { background: var(--surface) !important; color: var(--text) !important; }
  :is(.modal, .wc-dialog, .bp-dialog, .pv-modal, .fin2-dialog, .finance-inbox-dialog,
    .fn-dialog, .fs-dialog, .fst-dialog, .ii-convert, .os-dialog, .pitch-detail-dialog,
    .pitch-dialog) :is(h1, h2, h3, h4, p, label, small, span, button) { color: inherit; }

  /* Text, avatar and action contrast remains reliable in every state. */
  :is(button, [role="button"], .wc-btn, .bp-btn, .finance-btn, .ops-btn, .hr-button,
    .task-actions button, .card-actions button, .row-actions button) {
    line-height: 1.2;
  }
  :is(button, [role="button"], .wc-btn, .bp-btn, .finance-btn, .ops-btn, .hr-button)
    :is(.avatar, .bp-avatar, .tiny-avatar, .person-filter i) { color: inherit; }
  :is(.avatar, .bp-avatar, .tiny-avatar, .person-filter i, .profile .avatar) {
    color: var(--text) !important;
    background: #c3faf5 !important;
    border: 1px solid #86ddd5;
  }
  :is(button.active, [aria-selected="true"], [aria-current="page"], .selected,
    .wc-btn.primary, .bp-btn.primary, .finance-btn.primary, .ops-btn.primary,
    .task-actions .assign, .self-submit) {
    background: var(--text) !important;
    border-color: var(--text) !important;
    color: var(--surface) !important;
  }
  :is(button.active, [aria-selected="true"], [aria-current="page"], .selected,
    .wc-btn.primary, .bp-btn.primary, .finance-btn.primary, .ops-btn.primary,
    .task-actions .assign, .self-submit) :is(svg, i, span, small) { color: var(--surface) !important; }
  :is(.table th, table th, .wc-table th, .task-table th, .op-project-list th,
    .bp-unassigned-table th) { background: #f7f7f8 !important; color: #535663 !important; }
  :is(.table td, table td, .wc-table td, .task-table td, .op-project-list td,
    .bp-unassigned-table td) { color: var(--text); border-color: var(--line) !important; }
  :is(input, select, textarea) { background: var(--surface) !important; color: var(--text) !important; }
  :is(input, select, textarea)::placeholder { color: var(--muted) !important; opacity: 1; }

  /* Compact controls do not split labels; content columns retain natural wrapping. */
  :is(.chip, .work-pill, .ops-pill, .btw-status, .bp-count, .badge, .tag,
    .status, .status-pill, .wc-btn, .bp-btn, .finance-btn, .ops-btn, .hr-button,
    .card-actions button, .row-actions button, .table-actions button) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    max-width: 100%;
  }
  :is(.table td, .wc-table td, .task-table td, .op-project-list td,
    .bp-unassigned-table td, .bp-history-task-title, .btw-title-wrap,
    .ops-card, .finance-request-row, .project-name) {
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  :is(.bp-task-title, .btw-title-wrap strong, .op-project-title, .project-name) {
    line-height: 1.35;
  }

  /* Projects: keep column labels and row values on one line; the table scrolls. */
  .wc-page .wc-table-wrap:has(.op-project-list) { overflow-x: auto !important; }
  .wc-page .op-project-list {
    width: 100%;
    min-width: 1180px !important;
    table-layout: fixed;
  }
  .wc-page .op-project-list th,
  .wc-page .op-project-list td {
    box-sizing: border-box;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    vertical-align: middle;
  }
  .wc-page .op-project-list th:nth-child(1) { width: 11%; }
  .wc-page .op-project-list th:nth-child(2) { width: 8%; }
  .wc-page .op-project-list th:nth-child(3) { width: 7%; }
  .wc-page .op-project-list th:nth-child(4) { width: 8%; }
  .wc-page .op-project-list th:nth-child(5) { width: 15%; }
  .wc-page .op-project-list th:nth-child(6) { width: 15%; }
  .wc-page .op-project-list th:nth-child(7) { width: 12%; }
  .wc-page .op-project-list th:nth-child(8) { width: 10%; }
  .wc-page .op-project-list th:nth-child(9) { width: 8%; }
  .wc-page .op-project-list th:nth-child(10) { width: 6%; }
  .wc-page .op-project-list td > :is(b, span, small),
  .wc-page .op-project-list .wc-pill {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap !important;
  }
  .wc-page .op-project-list .op-project-alerts,
  .wc-page .op-project-list .op-project-billing-statuses,
  .wc-page .op-project-list .op-project-work-progress {
    flex-wrap: nowrap;
    overflow: hidden;
  }
  .wc-page .op-project-list .op-project-alerts > *,
  .wc-page .op-project-list .op-project-billing-statuses > * { min-width: 0; }
  .wc-page .op-project-list .op-project-billing-statuses > span { overflow: hidden; text-overflow: ellipsis; }

  /* The global header has only working actions now. */
  .topbar .actions { margin-left: auto; }
  .topbar #quickBtn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 142px;
    min-height: 40px;
    padding: 9px 16px !important;
    border: 1px solid var(--text) !important;
    border-radius: 999px;
    background: var(--text) !important;
    color: var(--surface) !important;
    font: 700 13px/1.2 var(--font-ui) !important;
    white-space: nowrap;
  }
  .topbar #quickBtn::before { content: none !important; }
  .topbar #quickBtn:hover,
  .topbar #quickBtn:focus-visible { background: #33343a !important; color: var(--surface) !important; }
}


/* Work card reference */
/* Reference-inspired person cards and containment for Work views. */
.wc-page.open{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
.wc-page .op-table-wrap,.wc-page .wc-table-wrap{max-width:100%;overflow-x:auto}
.wc-page .wc-table-wrap:has(.op-project-list){width:100%;scrollbar-width:thin;scrollbar-color:#aeb4c0 #f4f5f7}
.wc-page .op-project-list th:last-child,.wc-page .op-project-list td:last-child{position:sticky;right:0;z-index:2;min-width:90px;background:var(--surface);box-shadow:-8px 0 12px -10px rgba(20,24,32,.5)}
.wc-page .op-project-list th:last-child{z-index:3;background:#f7f8fa}
.wc-page .op-project-list td:last-child .op-project-row-actions{display:flex;gap:4px;align-items:center;justify-content:center}
.wc-page .op-project-list td:last-child button{flex:none;margin:0}
.wc-page .op-project-filters,.wc-page .op-project-filter-controls{min-width:0}
.btw-page,.btw-toolbar,.btw-timeline,.btw-time-section,.btw-team-department,.btw-team-members{min-width:0;max-width:100%}
.btw-filters{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(145px,1fr) minmax(125px,.65fr) auto;align-items:center}
.btw-filters>input,.btw-filters>select,.btw-filters [data-btw-assignee]{width:100%;min-width:0;max-width:none}
.btw-filters .btw-view{margin-left:0;min-width:max-content;justify-self:end}
.btw-tabs{max-width:100%}
.btw-sidebar-backdrop{position:fixed;inset:0;z-index:6900;background:rgba(16,18,26,.28)}
.btw-sidebar{position:fixed;top:0;right:0;bottom:0;z-index:6901;width:min(520px,100vw);max-width:100vw;overflow-y:auto;background:var(--surface);box-shadow:-18px 0 45px rgba(21,24,32,.2)}
.btw-sidebar>header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:23px 25px;border-bottom:1px solid var(--line);background:var(--surface)}
.btw-sidebar>header small{color:#6b7280;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.btw-sidebar>header h2{margin:5px 0 0;font:700 22px var(--font-ui);overflow-wrap:anywhere}
.btw-sidebar>header button{flex:none;width:32px;height:32px;border:1px solid #dce0e7;border-radius:8px;background:var(--surface);color:var(--text);font-size:23px;cursor:pointer}
.btw-sidebar .btw-detail{border:0;padding:22px 25px}
.btw-sidebar .btw-detail-grid,.btw-results:not(.grid) .btw-sidebar .btw-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.btw-sidebar .btw-detail-item{min-width:0;border:0;padding:0}
.btw-sidebar .btw-detail-notes,.btw-sidebar .btw-checklist{grid-column:1/-1}
.bp-member-card{padding:0;overflow:hidden;border:1px solid #dce0e7;border-radius:15px;background:var(--surface);box-shadow:none}
.bp-member-card:has(.bp-next-menu){position:relative;z-index:20;overflow:visible}
.bp-member-grid:has(.bp-next-menu),.bp-card-date:has(.bp-next-menu),.bp-client:has(.bp-next-menu){overflow:visible}
.bp-next-menu{max-height:min(420px,calc(100vh - 24px));overflow-y:auto}
.bp-history-picker .bp-next-workflow{margin-top:8px}
.bp-history-picker .bp-next-workflow button:disabled{opacity:.5;cursor:not-allowed}
.wc-dialog:has(.op-single-member-picker .pl-inline-menu:not([hidden])){overflow:visible}
.wc-dialog:has(.op-single-member-picker .pl-inline-menu:not([hidden])) .wc-dialog-body{overflow:visible}
.op-single-member-picker .pl-member-menu{z-index:7000;max-height:min(320px,calc(100vh - 110px));overflow:auto}
.op-single-member-picker .pl-inline-options>button[hidden]{display:none}
.wc-retainer-scope-grid{grid-template-columns:minmax(0,1fr)}
.wc-retainer-scope-grid .wc-card-head>button[data-manage-scope]{margin-left:auto}
.wc-retainer-scope-grid .wc-card-head{gap:10px}
.wc-retainer-scope-disclosure{margin-top:12px}
.wc-retainer-scope-disclosure>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:#303643;font-size:12px;font-weight:800;list-style:none}
.wc-retainer-scope-disclosure>summary::-webkit-details-marker{display:none}
.wc-retainer-scope-disclosure[open]>summary{margin-bottom:12px}
.wc-retainer-scope-disclosure[open]>summary span{transform:rotate(180deg)}
.wc-retainer-project-overview{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:26px;margin:0 0 18px}
.wc-retainer-project-overview.op-overview-grid{grid-template-columns:minmax(320px,.84fr) minmax(0,1.16fr);gap:26px;align-items:stretch}
.wc-retainer-project-overview>article,.wc-retainer-project-overview>aside{min-width:0;border:2px solid #e0e3e8;border-radius:26px;background:var(--surface);padding:26px}
.wc-retainer-project-overview>.op-project-more{display:block;padding:26px 28px}
.wc-retainer-project-overview>.op-project-more h2{padding:0 0 16px}
.wc-retainer-project-overview>.op-project-more .op-more-section{padding:13px 0 16px}
.wc-retainer-project-overview>.op-project-more .op-more-row{font-size:15px;margin-bottom:12px}
.wc-retainer-project-overview>.op-project-more .op-frozen-note{min-height:64px;padding:14px 16px;border:2px solid #e0e3e8;border-radius:12px;font-size:16px}
.wc-retainer-project-overview>.op-project-more .op-link-list{max-height:none}
.wc-retainer-project-overview>.op-project-more .op-link-add{margin-top:10px}
.wc-retainer-project-overview>.op-project-more .op-more-row .wc-btn{min-height:34px;padding:6px 12px;font-size:12px}
.wc-retainer-project-card h2,.wc-retainer-notes-card h2{margin:0;color:var(--text);font:700 32px/1.15 var(--font-ui);letter-spacing:-.035em}
.wc-retainer-project-overview dl{display:grid;grid-template-columns:1fr 1fr;margin:17px -26px 0}
.wc-retainer-project-overview dl>div{min-height:78px;padding:15px 24px;border-top:1px solid #e4e7ec}
.wc-retainer-project-overview dl>div:nth-child(odd){border-right:1px solid #e4e7ec}
.wc-retainer-project-overview dt{margin-bottom:7px;color:#6b7280;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.wc-retainer-project-overview dd{margin:0;color:#202124;font:700 16px var(--font-ui);overflow-wrap:anywhere}
.wc-retainer-finance{margin:0 -26px -26px;padding:18px 24px 0;border-top:1px solid #e4e7ec}
.wc-retainer-finance h3{margin:0 0 14px;color:#596173;font:800 19px var(--font-ui)}
.wc-retainer-finance-billing{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid #e4e7ec;font:700 17px var(--font-ui)}
.wc-retainer-finance-billing .op-pen{margin-right:auto;color:var(--text);font-size:18px}
.wc-retainer-finance-billing .wc-btn{min-height:38px}
.wc-retainer-finance-menu{position:absolute;z-index:5;display:grid;gap:2px;min-width:160px;margin-top:-7px;padding:6px;border:1px solid #d9dde5;border-radius:10px;background:var(--surface);box-shadow:0 12px 24px rgba(20,24,32,.13)}
.wc-retainer-finance-menu[hidden]{display:none}
.wc-retainer-finance-menu button{border:0;border-radius:6px;background:var(--surface);padding:8px 9px;text-align:left;cursor:pointer;font:700 12px var(--font-ui)}
.wc-retainer-finance-menu button:hover{background:#f3f5f8}
.wc-retainer-finance-request{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px;padding:13px 0;border-bottom:1px solid #e4e7ec;font-size:12px}
.wc-retainer-finance-request span{color:#85abc8;font-weight:700}
.wc-retainer-finance-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:13px 0 16px;font-size:12px}
.wc-retainer-finance-counts span{display:flex;gap:7px;align-items:center;font-weight:700}
.wc-retainer-finance-counts b{color:#777f90}
.wc-retainer-notes-card{display:grid;align-content:start;gap:16px}
.wc-retainer-note-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:21px 0 12px;font-size:16px}
.wc-retainer-note-head small{color:#707789;font-size:11px;font-weight:700}
.wc-retainer-note-box{min-height:92px;border:2px solid #e0e3e8;border-radius:15px;padding:19px 20px;color:#202124;font:italic 18px/1.4 var(--font-ui);white-space:pre-wrap}
.wc-retainer-note-box.empty{color:#31343b}
.wc-retainer-pen{border:0;background:transparent;color:var(--text);font-size:24px;cursor:pointer}
.wc-retainer-links-section{padding-top:15px;border-top:1px solid #dde1e7}
.wc-retainer-project-links{display:grid;gap:5px;margin-top:10px}
.wc-retainer-project-links a{color:#245ca8;font:700 13px var(--font-ui);overflow-wrap:anywhere}
.wc-retainer-scope-chart-card{margin:0 0 18px;padding:18px 22px;border:2px solid #e0e3e8;border-radius:18px;background:var(--surface)}
.wc-retainer-scope-chart-card .wc-retainer-note-head{margin:0 0 12px}
.wc-retainer-scope-combined{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 22px;align-items:start;margin:0 0 18px;padding:18px 22px;border:2px solid #e0e3e8;border-radius:18px;background:var(--surface)}
.wc-retainer-scope-combined>.wc-retainer-note-head{grid-column:1/-1;margin:0;padding-bottom:11px;border-bottom:1px solid #e4e7ec}
.wc-retainer-scope-combined>.wc-retainer-note-head h2{margin:0;font:700 21px var(--font-ui)}
.wc-retainer-scope-combined>.wc-retainer-note-head small{font-size:11px}
.wc-retainer-available-label{display:block;width:62px;margin:0 0 3px auto;text-align:right;color:#667085;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.wc-retainer-scope-combined>.wc-retainer-scope-chart-card{margin:0;padding:3px 18px 3px 0;border:0;border-right:1px solid #e4e7ec;border-radius:0}
.wc-retainer-scope-combined>.wc-retainer-scope-chart-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wc-retainer-available-chart,.wc-retainer-adhoc-chart{padding:12px;border:1px solid #d9e1e8;border-radius:12px}
.wc-retainer-available-chart{background:#f4fbfa}
.wc-retainer-adhoc-chart{background:#fff8ee;border-color:#f0d7ad}
.wc-retainer-scope-chart-card .wc-retainer-chart-row{grid-template-columns:67px minmax(0,1fr) 39px;gap:5px}
.wc-retainer-scope-chart-card .wc-retainer-chart-row span{white-space:nowrap}
.wc-retainer-available-chart .wc-retainer-available-label,.wc-retainer-adhoc-chart .wc-retainer-available-label{width:auto;margin:0 0 8px;text-align:left}
.wc-retainer-available-chart .wc-retainer-available-label{color:#08796d}
.wc-retainer-adhoc-chart .wc-retainer-available-label{color:#a15a00;text-transform:uppercase}
.wc-retainer-adhoc-chart .wc-retainer-chart-track i{background:linear-gradient(90deg,#f2a100,#e06c2c)}
.wc-retainer-scope-combined>.wc-retainer-scope-grid{min-width:0;margin:0}
.wc-retainer-scope-combined>.wc-retainer-scope-grid>.wc-card{padding:0;border:0;box-shadow:none}
.wc-retainer-scope-combined .wc-card-head{justify-content:flex-end;flex-wrap:nowrap;gap:8px}
.wc-retainer-scope-combined .wc-card-head>div{margin-right:auto}
.wc-retainer-scope-combined .wc-card-head h2{font-size:17px}
.wc-retainer-scope-combined>.wc-retainer-scope-disclosure{grid-column:1/-1;width:100%;margin-top:4px;padding-top:10px;border-top:1px solid #e4e7ec}
.wc-retainer-scope-combined .wc-card-head>button[data-manage-scope]{margin-left:0}
.wc-retainer-scope-combined .wc-card-head>.wc-btn{white-space:nowrap}
.wc-retainer-additions{display:grid;gap:6px;margin-top:8px}
.wc-retainer-additions label{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #dce0e7;border-radius:8px}
.wc-retainer-additions input{width:auto}
.wc-retainer-additions label b{margin-left:auto}
.wc-retainer-billing-total{display:flex;justify-content:space-between;align-items:center}
.wc-dialog [data-retainer-po-period][hidden],.wc-dialog [data-retainer-po-addition][hidden],.wc-dialog [data-retainer-additions][hidden],.wc-dialog [data-retainer-base-field][hidden],.wc-dialog [data-retainer-discount-field][hidden],.wc-dialog [data-retainer-discount-reason-field][hidden],.wc-dialog [data-retainer-mode-field][hidden]{display:none!important}
.wc-retainer-chart-row{display:grid;grid-template-columns:56px minmax(80px,1fr) 52px;gap:9px;align-items:center;margin:6px 0;color:#525967;font-size:11px;font-weight:700}
.wc-retainer-chart-row b{color:var(--text);text-align:right}
.wc-retainer-chart-track{height:8px;overflow:hidden;border-radius:999px;background:#e8ebef}
.wc-retainer-chart-track i{display:block;height:100%;min-width:2px;border-radius:inherit;background:linear-gradient(90deg,#19b5a1,var(--blue))}
.wc-retainer-allowance details summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none}
.wc-retainer-allowance details summary::-webkit-details-marker{display:none}
.wc-retainer-allowance-summary{display:grid;grid-template-columns:minmax(135px,1.35fr) repeat(3,minmax(90px,.75fr));gap:12px;align-items:center;min-width:0;flex:1}
.wc-retainer-allowance-summary>span{display:grid;gap:3px;min-width:0}
.wc-retainer-allowance details summary small{display:block;color:#666d7e;line-height:1.2;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.wc-retainer-allowance-summary b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wc-retainer-availability{display:grid;gap:3px;text-align:right;white-space:nowrap}
.wc-retainer-allowance .wc-details-chevron{color:#666d7e}
.wc-retainer-allowance details[open] .wc-details-chevron{transform:rotate(180deg)}
.wc-retainer-usage{display:grid;gap:5px;border-top:1px solid #dce0e7;margin-top:12px;padding-top:12px;color:#444b59;font-size:12px}
.wc-retainer-usage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.wc-retainer-usage>section{min-width:0;display:grid;align-content:start;gap:8px}
.wc-retainer-usage>section+section{border-left:1px solid #e1e5ec;padding-left:20px}
.wc-retainer-usage-bar{display:grid;grid-template-columns:65px minmax(0,1fr) 24px;gap:8px;align-items:center;font-size:11px}
.wc-retainer-usage-bar b{text-align:right}
.wc-retainer-format-head{display:flex;align-items:center;justify-content:space-between}
.wc-retainer-format-list{display:flex;flex-wrap:wrap;gap:6px}
.wc-retainer-format-list span{border:1px solid #dfe3ea;border-radius:999px;padding:4px 8px;background:#f8f9fb;font-size:11px}
.wc-retainer-format-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
.wc-retainer-deliverables .wc-card-head{align-items:flex-start}
.wc-retainer-deliverable{display:flex;align-items:center;justify-content:space-between;gap:12px}
.wc-retainer-deliverable>div{min-width:0}
.wc-retainer-deliverable small{display:block;margin-top:4px;line-height:1.4;color:#666d7e}
.wc-retainer-deliverables-table{min-width:1120px}
.wc-retainer-deliverables-table :is(input,select,textarea){box-sizing:border-box;width:100%;min-height:36px;border:1px solid #d4d7de;border-radius:7px;background:var(--surface);color:var(--text);padding:7px 8px;font:12px var(--font-ui)}
.wc-retainer-deliverables-table textarea{resize:vertical;min-width:155px}
.wc-retainer-inline-row{background:#f8fbff}
.wc-retainer-inline-row td{vertical-align:top}
.wc-retainer-inline-row td:last-child{min-width:165px}
.wc-retainer-inline-row .wc-btn{min-height:34px;padding:6px 9px;margin:0 4px 5px 0}
.wc-retainer-scope-state{display:inline-flex;align-items:center;min-height:36px;color:var(--text);font-size:11px;font-weight:700;white-space:nowrap}
.wc-retainer-scope-state.invalid{color:#a35b00}
.wc-retainer-exception{display:grid;gap:5px;margin-top:7px;padding-top:7px;border-top:1px solid #e1c993;color:#8a4b00;font-size:10px;line-height:1.3}
.wc-retainer-exception b{font-size:10px;text-transform:uppercase;letter-spacing:.04em}
.wc-retainer-exception :is(select,textarea){min-height:31px;font-size:11px}
.wc-retainer-exception [data-retainer-billable-amount]{display:block}
.wc-retainer-exception [data-retainer-billable-amount][hidden]{display:none}
.wc-retainer-treatment{display:flex;gap:5px}
.wc-retainer-treatment button{flex:1;min-height:30px;border:1px solid #d7dbe3;border-radius:7px;background:var(--surface);color:#515867;cursor:pointer;font:800 10px var(--font-ui)}
.wc-retainer-treatment button.selected{border-color:var(--text);background:var(--text);color:var(--surface)}
.wc-retainer-brief-cell{display:grid;gap:5px;white-space:normal;min-width:0}
.wc-retainer-brief-cell small{display:block;color:#667085;font-size:11px;line-height:1.35}
.wc-retainer-brief-cell small b{color:#525967}
.wc-retainer-exception-dialog{display:grid;gap:14px}
.wc-retainer-exception-dialog [data-retainer-dialog-amount][hidden]{display:none!important}
.wc-retainer-exception-dialog .wc-retainer-treatment button{min-height:38px;font-size:12px}
.wc-retainer-inline-row .wc-error{display:block;margin:4px 0 0;font-size:10px;line-height:1.35}
.wc-retainer-format-list{line-height:1.55}
.wc-retainer-format-picker{display:grid;grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr);gap:18px}
.wc-retainer-format-source{display:grid;align-content:start;gap:10px;padding-right:18px;border-right:1px solid #e4e7ec}
.wc-retainer-format-source input,.wc-retainer-format-create input{width:100%;min-height:36px;border:1px solid #d7dce5;border-radius:8px;padding:7px 10px;font:12px var(--font-ui)}
.wc-retainer-format-choices{display:grid;align-content:start;gap:4px;max-height:210px;overflow:auto;border:1px solid #d7dce5;border-radius:8px;padding:5px}
.wc-retainer-format-choices>button{display:flex;align-items:center;gap:8px;width:100%;border:0;border-radius:6px;background:var(--surface);padding:7px 8px;color:var(--text);text-align:left;font:12px var(--font-ui);cursor:pointer}
.wc-retainer-format-choices>button:hover,.wc-retainer-format-choices>button[aria-pressed="true"]{background:#eef5ff}
.wc-retainer-format-choices>button>span{width:16px;color:#275fa7;font-weight:800}
.wc-retainer-format-choices>button small{margin-left:auto;color:#667085;font-size:10px}
.wc-retainer-format-selected{display:grid;align-content:start;gap:10px}
.wc-retainer-format-selected>b{font:700 13px var(--font-ui)}
.wc-retainer-format-options{gap:11px}
.wc-retainer-format-options .wc-retainer-format-chip{min-height:29px!important;border:1px solid #9dbce3!important;padding:6px 24px 6px 11px!important;font:700 12px/1.1 var(--font-ui)!important}
.wc-retainer-format-options .wc-retainer-format-chip button{right:-6px!important;top:-6px!important}
.wc-retainer-format-options .wc-retainer-format-chip button:hover{background:#dcecff!important;color:#153a63!important}
.wc-retainer-format-options small{color:#667085;font-size:12px}
.wc-retainer-format-create{border-top:1px solid #e4e7ec;padding-top:10px}
.wc-retainer-format-create>div:not([hidden]){display:flex;gap:8px;margin-top:8px}
.wc-retainer-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:170px}
.wc-retainer-row-actions .wc-btn{min-height:30px;padding:5px 8px;font-size:11px}
.wc-retainer-row-actions .wc-retainer-icon-action{width:32px;min-width:32px;padding:4px;font-size:18px;line-height:1}
.wc-retainer-scope-cell{display:grid;gap:3px;min-width:120px}
.wc-retainer-scope-cell b{color:#147065;font-size:11px}
.wc-retainer-scope-cell small{color:#667085;font-size:10px;line-height:1.3}
.wc-retainer-scope-cell.outside b{color:#9a5a00}
@media(max-width:1000px){.wc-retainer-project-overview{grid-template-columns:1fr}
.wc-retainer-project-overview dl{grid-template-columns:repeat(2,minmax(0,1fr))}
.wc-retainer-allowance-summary{grid-template-columns:repeat(2,minmax(100px,1fr))}
}
@media(max-width:1000px){.wc-retainer-scope-combined{grid-template-columns:1fr}
.wc-retainer-scope-combined>.wc-retainer-scope-chart-card{padding:0 0 12px;border-right:0;border-bottom:1px solid #e4e7ec}
.wc-retainer-scope-combined .wc-card-head{flex-wrap:wrap}
}
@media(max-width:650px){.wc-retainer-scope-combined>.wc-retainer-scope-chart-card,.wc-retainer-format-picker{grid-template-columns:1fr}
.wc-retainer-format-source{padding:0 0 12px;border-right:0;border-bottom:1px solid #e4e7ec}
}
@media(max-width:1000px){.wc-retainer-project-overview.op-overview-grid{grid-template-columns:1fr}
}
@media(max-width:650px){.wc-retainer-usage{grid-template-columns:1fr}
.wc-retainer-usage>section+section{border-left:0;border-top:1px solid #e1e5ec;padding:12px 0 0}
.wc-retainer-format-editor{grid-template-columns:1fr}
}
@media(max-width:650px){.wc-retainer-deliverables .wc-card-head,.wc-retainer-deliverable{flex-direction:column;align-items:flex-start}
.wc-retainer-project-overview>article,.wc-retainer-project-overview>aside{padding:20px;border-radius:18px}
.wc-retainer-project-card h2,.wc-retainer-notes-card h2{font-size:25px}
.wc-retainer-project-overview dl{grid-template-columns:1fr;margin:20px -20px 0}
.wc-retainer-project-overview dl>div{min-height:auto;padding:15px 20px}
.wc-retainer-project-overview dl>div:nth-child(odd){border-right:0}
.wc-retainer-finance{margin:0 -20px -20px;padding:18px 20px 0}
.wc-retainer-allowance-summary{grid-template-columns:1fr}
.wc-retainer-availability{justify-items:start;text-align:left}
}
.bp-member-card .bp-member-head{grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;margin:0;padding:17px;border-bottom:1px solid #dce0e7;background:#f7f8fa}
.bp-member-card .bp-avatar,.btw-team-member .btw-avatar{width:44px;height:44px;border:1px solid #f6ae00;background:#ffcf32;color:var(--text);font:800 17px var(--font-ui)}
.bp-member-card .bp-member-head b{font:700 17px var(--font-ui)}
.bp-member-card .bp-member-head small{color:#626778;font-size:12px}
.bp-member-card .bp-task-list{flex:1}
.bp-member-card .bp-card-date{padding:0;border:0}
.bp-member-card .bp-card-date h3{margin:0;padding:10px 17px;border-bottom:1px solid #e5e8ee;background:#f7f8fa;color:var(--text);font-size:12px}
.bp-member-card .bp-client{margin:0;padding:11px 17px;border-bottom:1px solid #edf0f3}
.bp-member-card .bp-client>strong{color:#626778;font-size:11px}
.bp-member-card .bp-card-actions{margin-top:auto;padding:10px 17px;border-top:1px solid #e5e8ee}
.btw-team-member{border:1px solid #dce0e7;border-radius:15px;background:var(--surface)}

/* One visual system for task-assignment menus in Board and member history. */
.bp-assignment-menu{box-sizing:border-box;min-width:min(280px,100%);padding:10px;border:1px solid #dce0e7;border-radius:12px;background:#f7f8fa;box-shadow:0 10px 26px rgba(20,24,32,.11);color:var(--text)}
.bp-assignment-menu label{display:grid;gap:7px;color:var(--text);font-size:11px;font-weight:700}
.bp-assignment-menu input[type="search"]{box-sizing:border-box;width:100%;height:36px;padding:7px 10px;border:1px solid #cfd5df;border-radius:8px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.bp-assignment-menu :is(.bp-next-person-list,.bp-history-people){display:grid;gap:2px;max-height:185px;margin:7px 0;overflow:auto}
.bp-assignment-menu :is(.bp-next-person-list,.bp-history-people)>button{box-sizing:border-box;display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:8px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:12px var(--font-ui)}
.bp-assignment-menu :is(.bp-next-person-list,.bp-history-people)>button:hover,.bp-assignment-menu :is(.bp-next-person-list,.bp-history-people)>button:focus-visible{background:#e8edf4}
.bp-assignment-menu :is(.bp-next-person-list,.bp-history-people)>button small{color:#626778;font-size:11px}
.bp-assignment-menu .bp-next-workflow{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid #dce0e7}
.bp-assignment-menu .bp-next-workflow button{min-width:0;border:1px solid #cfd5df;border-radius:8px;background:var(--surface);color:var(--text);padding:8px 5px;font:700 11px var(--font-ui);cursor:pointer}
.bp-assignment-menu .bp-next-workflow button:disabled{opacity:.5;cursor:not-allowed}
.bp-department-picker .bp-filter-option.all{color:var(--text)}

/* Member-history cards follow the same header/date/content bands as Board cards. */
.bp-history-overview>.bp-history-date{min-height:240px;border:1px solid #dce0e7;border-radius:15px;background:var(--surface);box-shadow:none}
.bp-history-overview>.bp-history-date>header,.bp-history-overview>.bp-history-date.incoming>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px;background:#f7f8fa;border-bottom:1px solid #dce0e7}
.bp-history-overview>.bp-history-date>header small{color:#626778}
.bp-history-overview>.bp-history-date>header b{color:var(--text);font:700 16px var(--font-ui)}
.bp-history-overview>.bp-history-date>header span{flex:none;padding:5px 8px;border-radius:999px;background:var(--surface);color:#626778;font-size:11px}
.bp-history-overview .bp-history-card-body{padding:0;max-height:none;overflow:visible}
.bp-history-overview .bp-history-day{padding:0;border:0}
.bp-history-overview .bp-history-day h3{margin:0;padding:10px 17px;border-bottom:1px solid #e5e8ee;background:#f7f8fa;color:var(--text);font-size:12px}
.bp-history-overview .bp-client{margin:0;padding:13px 17px;border-bottom:1px solid #edf0f3}
.bp-history-overview .bp-client>strong{display:block;margin-bottom:6px;color:#626778;font-size:11px}
.bp-history-overview .bp-history-task{padding:9px 0;grid-template-columns:34px minmax(0,1fr) auto}
.bp-history-overview .bp-history-task:last-child{border-bottom:0}
.bp-history-overview .bp-history-empty{margin:0;padding:18px;color:#626778}
.bp-task-actions .bp-change-date{grid-column:1/-1;width:100%;min-height:31px;border:1px solid #cfd5df;border-radius:7px;background:var(--surface);color:var(--text);padding:0 9px;text-align:left;font:600 11px var(--font-ui);cursor:pointer}
.bp-task-actions .bp-change-date:hover{border-color:#3caaad}
.bp-card-date.bp-drop-target{outline:2px solid #3caaad;outline-offset:-2px;background:#f1fcfa}
.bp-card-date.bp-drop-target>h3{background:#e6f8f5}
.bp-project-client{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;margin-bottom:8px}
.bp-project-client strong,.bp-project-client span{display:block;box-sizing:border-box;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 7px;border:1px solid;border-radius:7px;font-size:11px;line-height:1.25}
.bp-project-client strong{max-width:65%;border-color:#eadba9;background:#fff8df;color:#302915}
.bp-project-client span{flex:none;max-width:40%;border-color:#d8e4f2;background:#f0f6fc;color:#3c5672;text-align:right}
.bp-member-card .bp-task,.bp-history-overview .bp-history-task{grid-template-columns:32px minmax(0,1fr) 22px;gap:7px;align-items:center;padding:9px 0;border-bottom:1px solid #e5e8ee;background:transparent}
.bp-member-card .bp-task-title,.bp-history-overview .bp-history-task-title{color:var(--text);font:600 12px var(--font-ui);line-height:1.4}
.bp-task-quantity{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;min-width:19px;height:19px;box-sizing:border-box;margin-left:5px;padding:0 4px;border:1px solid #e1c76c;border-radius:999px;background:#fff3bd;color:var(--text);font:700 10px var(--font-ui)}
.bp-history-overview .bp-history-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:2px 0 0}
.bp-history-overview .bp-history-actions .bp-change-date{grid-column:1/-1}
.bp-history-overview .bp-history-picker{grid-column:1/-1}
.bp-history-overview [data-bp-history-drop-date].bp-drop-target{outline:2px solid #3caaad;outline-offset:-2px;background:#f1fcfa}
.btw-team-member>header button{min-height:78px;padding:15px 17px;border-bottom:1px solid #dce0e7;background:#f7f8fa}
.btw-team-member>header strong{font:700 17px var(--font-ui)}
.btw-team-member>header small{color:#626778;font-size:11px}
.btw-team-member .btw-task{border-bottom:1px solid #edf0f3}
.btw-member-date h4{margin:0;padding:10px 17px;border-bottom:1px solid #e5e8ee;background:#f7f8fa;color:var(--text);font-size:12px;font-weight:700}
.btw-member-date+.btw-member-date{border-top:1px solid #dce0e7}
.btw-team-member .btw-row-shell{display:block}
.btw-timeline.team .btw-team-member .btw-row{min-height:76px;padding:12px 17px}
.btw-team-member .btw-row .btw-title-wrap strong{font-size:14px}
.btw-team-member .btw-row .btw-title-wrap small{color:#626778;font-size:11px}
/* Team Work: department-level delayed queue and Board-style ongoing member cards. */
.btw-timeline.team .btw-team-board-section{border:0;overflow:visible;background:transparent}
.btw-timeline.team .btw-team-board-section>h2{margin:0 0 12px}
.btw-timeline.team .btw-team-board-section>h2>button{border:1px solid #dce0e7;border-left:3px solid #ef927b;border-radius:10px;background:var(--surface);color:var(--text)}
.btw-timeline.team .btw-team-board-section[data-btw-status="ongoing"]>h2>button{border-left-color:#48d0c2}
.btw-timeline.team .btw-team-board-section .btw-team-departments{padding:0;gap:15px}
.btw-timeline.team .btw-team-board-section[data-btw-status="delayed"] .btw-team-departments{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));align-items:start}
.btw-timeline.team .btw-delayed-department{border:1px solid #dce0e7;border-radius:13px;background:var(--surface)}
.btw-timeline.team .btw-delayed-department h3 button,.btw-timeline.team .btw-ongoing-department h3 button{min-height:42px;padding:10px 13px;background:var(--surface);color:var(--text);font:700 14px var(--font-ui)}
.btw-timeline.team .btw-delayed-department h3 button small,.btw-timeline.team .btw-ongoing-department h3 button small{color:#626778;font:500 11px var(--font-ui)}
.btw-timeline.team .btw-delayed-people{display:grid;padding:0 13px}
.btw-timeline.team .btw-delayed-person{min-width:0;padding:12px 0;border-top:1px solid #edf0f3}
.btw-timeline.team .btw-delayed-person>header{display:flex;align-items:center;gap:9px;margin-bottom:6px}
.btw-timeline.team .btw-delayed-person>header strong{font:700 13px var(--font-ui)}
.btw-timeline.team .btw-delayed-person>header small{margin-left:auto;color:#a3403c;font-size:11px}
.btw-timeline.team .btw-delayed-person .btw-task{border:0;border-top:1px solid #edf0f3}
.btw-timeline.team .btw-delayed-person .btw-row{min-height:50px;padding:8px 0;grid-template-columns:minmax(0,1fr) auto auto auto;gap:7px}
.btw-timeline.team .btw-delayed-person .btw-row .btw-person{display:none}
.btw-timeline.team .btw-delayed-person .btw-row .btw-primary{grid-column:1;grid-row:1}
.btw-timeline.team .btw-delayed-person .btw-row .btw-date{grid-column:2;grid-row:1}
.btw-timeline.team .btw-delayed-person .btw-row .btw-priority{grid-column:3;grid-row:1}
.btw-timeline.team .btw-delayed-person .btw-row .btw-status{grid-column:4;grid-row:1}
.btw-timeline.team .btw-ongoing-department{border:0;overflow:visible;background:transparent}
.btw-timeline.team .btw-ongoing-department h3{margin-bottom:9px}
.btw-timeline.team .btw-ongoing-department h3 button{border:1px solid #dce0e7;border-left:3px solid #4266ff;border-radius:9px}
.btw-timeline.team .btw-board-members,.btw-timeline.team.grid .btw-board-members{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0}
.btw-timeline.team .btw-board-member{display:flex;flex-direction:column;border:1px solid #dce0e7;border-radius:14px;background:var(--surface);overflow:hidden}
.btw-timeline.team .btw-board-member>header button{display:flex;align-items:center;gap:11px;min-height:72px;padding:14px 16px;border:0;border-bottom:1px solid #dce0e7;background:#f7f8fa}
.btw-timeline.team .btw-board-member .btw-member-identity{display:grid;gap:2px;min-width:0}
.btw-timeline.team .btw-board-member .btw-member-identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 16px var(--font-ui)}
.btw-timeline.team .btw-board-member .btw-member-identity small{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#626778;font-size:11px;text-align:left}
.btw-timeline.team .btw-board-member .btw-member-count{margin-left:auto;padding:5px 7px;border-radius:999px;background:var(--surface);color:#626778;font-size:11px;white-space:nowrap}
.btw-timeline.team .btw-board-member .btw-member-tasks{flex:1;border:0}
.btw-timeline.team .btw-board-member .btw-member-date{border:0}
.btw-timeline.team .btw-board-member .btw-member-date h4{margin:0;padding:10px 16px;border-bottom:1px solid #e5e8ee;background:#f7f8fa;color:var(--text);font-size:12px}
.btw-timeline.team .btw-board-member .btw-board-project{padding:10px 16px;border-bottom:1px solid #edf0f3}
.btw-timeline.team .btw-board-member .btw-board-project h5{display:flex;justify-content:space-between;gap:10px;margin:0 0 5px;color:var(--text);font-size:11px}
.btw-timeline.team .btw-board-member .btw-board-project h5 strong,.btw-timeline.team .btw-board-member .btw-board-project h5 span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btw-timeline.team .btw-board-member .btw-board-project h5 span{max-width:45%;color:#626778;font-weight:500}
.btw-timeline.team .btw-board-member .bp-project-client{align-items:center;gap:8px;margin:0 0 8px}
.btw-timeline.team .btw-board-member .bp-project-client strong,.btw-timeline.team .btw-board-member .bp-project-client span{box-sizing:border-box;padding:5px 7px;border:1px solid;border-radius:7px;font-size:11px;line-height:1.25}
.btw-timeline.team .btw-board-member .bp-project-client strong{max-width:65%;border-color:#eadba9;background:#fff8df;color:#302915}
.btw-timeline.team .btw-board-member .bp-project-client span{max-width:40%;border-color:#d8e4f2;background:#f0f6fc;color:#3c5672}
.btw-timeline.team .btw-board-member .btw-board-project .btw-task{border:0;border-bottom:1px solid #edf0f3}
.btw-timeline.team .btw-board-member .btw-board-project .btw-task:last-child{border-bottom:0}
.btw-timeline.team .btw-board-member .btw-row{min-height:44px;padding:7px 0;grid-template-columns:minmax(0,1fr) auto auto;gap:6px}
.btw-timeline.team .btw-board-member .btw-row .btw-primary{grid-column:1;grid-row:1}
.btw-timeline.team .btw-board-member .btw-row .btw-date,.btw-timeline.team .btw-board-member .btw-row .btw-person,.btw-timeline.team .btw-board-member .btw-row .btw-title-wrap>small{display:none}
.btw-timeline.team .btw-board-member .btw-row .btw-priority{grid-column:2;grid-row:1}
.btw-timeline.team .btw-board-member .btw-row .btw-status{grid-column:3;grid-row:1}
.btw-timeline.team .btw-board-member:has(.btw-task-menu-panel:not([hidden])){position:relative;z-index:8;overflow:visible}
.btw-timeline.team .btw-board-member .btw-board-task{margin:0;border:0;border-bottom:1px solid #e5e8ee;border-radius:0;overflow:visible}
.btw-board-task .btw-row-shell{display:grid;grid-template-columns:32px minmax(0,1fr) 25px;align-items:center;gap:7px;min-height:41px;padding:5px 0}
.btw-timeline.team.grid .btw-board-task .btw-priority{display:inline-flex;grid-column:1;grid-row:1;justify-self:start;border:0;background:transparent;color:var(--text);padding:3px 4px;font-size:10px}
.btw-board-task .btw-board-title{grid-column:2;grid-row:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 0;border:0;background:transparent;color:var(--text);text-align:left;font:600 12px var(--font-ui);cursor:pointer}
.btw-board-task .btw-board-title:hover,.btw-board-task .btw-board-title:focus-visible{text-decoration:underline}
.btw-board-task .btw-task-menu{position:relative;grid-column:3;grid-row:1;justify-self:end}
.btw-board-task .btw-task-menu-trigger{width:25px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--text);font-size:19px;line-height:1;cursor:pointer}
.btw-board-task .btw-task-menu-trigger:hover,.btw-board-task .btw-task-menu-trigger[aria-expanded="true"]{background:#edf0f5}
.btw-board-task .btw-task-menu-panel{position:absolute;top:calc(100% + 3px);right:0;z-index:20;display:grid;min-width:125px;padding:5px;border:1px solid #dce0e7;border-radius:9px;background:var(--surface);box-shadow:0 10px 25px rgba(20,24,32,.16)}
.btw-board-task .btw-task-menu-panel[hidden]{display:none}
.btw-board-task .btw-task-menu-panel button{width:100%;padding:8px 9px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;font:600 11px var(--font-ui);cursor:pointer}
.btw-board-task .btw-task-menu-panel button:hover{background:#f1f4f8}
.btw-board-task .btw-quick-check{grid-column:1;grid-row:1;margin:0;justify-self:center}
.btw-board-task:has(.btw-quick-check) .btw-priority{display:none}
.btw-timeline.team .btw-list-section{border:0;background:transparent;overflow:visible}
.btw-timeline.team .btw-list-section>h2>button{margin-bottom:10px;border:1px solid #dce0e7;border-left:3px solid #ef927b;border-radius:10px;background:var(--surface)}
.btw-timeline.team .btw-list-section[data-btw-status="ongoing"]>h2>button{border-left-color:#48d0c2}
.btw-list-department{margin-bottom:12px;border:1px solid #dce0e7;border-radius:11px;background:var(--surface);overflow:hidden}
.btw-list-department h3{display:flex;align-items:center;gap:8px;margin:0;padding:12px 15px;border-bottom:1px solid #e5e8ee;font:700 14px var(--font-ui)}
.btw-list-department h3 small{color:#626778;font:500 11px var(--font-ui)}
.btw-list-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(95px,1fr) 90px 55px 95px;gap:9px;padding:8px 15px;background:#f7f8fa;color:#626778;font:700 10px var(--font-ui);text-transform:uppercase;letter-spacing:.04em}
.btw-list-department .btw-task{border:0;border-top:1px solid #edf0f3}
.btw-list-department .btw-row{grid-template-columns:minmax(0,2fr) minmax(95px,1fr) 90px 55px 95px;gap:9px;min-height:57px;padding:9px 15px}
.btw-list-department .btw-row .btw-primary,.btw-list-department .btw-row .btw-person,.btw-list-department .btw-row .btw-date,.btw-list-department .btw-row .btw-priority,.btw-list-department .btw-row .btw-status{grid-row:1}
.btw-list-department .btw-row .btw-primary{grid-column:1}
.btw-list-department .btw-row .btw-person{display:flex;grid-column:2}
.btw-list-department .btw-row .btw-date{display:block;grid-column:3}
.btw-list-department .btw-row .btw-priority{display:inline-flex;grid-column:4}
.btw-list-department .btw-row .btw-status{grid-column:5}
.btw-list-department .btw-chevron{display:none}
.btw-list-department .btw-row:hover .btw-title-wrap strong{text-decoration:underline}
.btw-list-department .btw-review-link{right:15px}
.btw-reassignment-panel{border:1px solid #dce0e7;border-radius:12px;background:var(--surface);overflow:hidden}
.btw-reassignment-panel>header{padding:16px 18px;border-bottom:1px solid #e5e8ee;background:#f7f8fa}
.btw-reassignment-panel h2{margin:0;font:700 17px var(--font-ui)}
.btw-reassignment-panel h2 small{margin-left:5px;color:#ae392f;font:700 12px var(--font-ui)}
.btw-reassignment-panel header p{margin:5px 0 0;color:#626778;font-size:11px}
.btw-reassignment-panel article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-top:1px solid #edf0f3}
.btw-reassignment-panel article:first-of-type{border-top:0}
.btw-reassignment-panel article div{display:grid;gap:4px;min-width:0}
.btw-reassignment-panel article strong{font-size:12px}
.btw-reassignment-panel article small{color:#626778;font-size:11px}
.btw-reassignment-panel article button{flex:none;border:1px solid #cfd5df;border-radius:7px;background:var(--surface);padding:7px 10px;font:700 11px var(--font-ui);cursor:pointer}
.btw-tabs [data-btw-scope="reassign"] small{border-radius:999px;background:#fff0ec;color:#a83c30;padding:2px 6px}
.btw-timeline:has(>.btw-data-table){grid-template-columns:minmax(0,1fr)}
.btw-data-table{min-width:0;width:100%;border:1px solid #dce0e7;border-radius:11px;background:var(--surface);overflow:hidden}
.btw-data-table>h2{display:flex;align-items:center;gap:8px;margin:0;padding:12px 15px;border-bottom:1px solid #dce0e7;background:#f7f8fa;font:700 14px var(--font-ui)}
.btw-data-table>h2 small{color:#626778;font:500 11px var(--font-ui)}
.btw-table-scroll{max-width:100%;overflow-x:auto}
.btw-work-table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed}
.btw-work-table th{padding:10px 14px;border-bottom:1px solid #dce0e7;background:#f7f8fa;color:#626778;font:700 10px var(--font-ui);letter-spacing:.04em;text-transform:uppercase}
.btw-work-table td{padding:12px 14px;border-top:1px solid #edf0f3;color:#30343c;font-size:12px;line-height:1.4;overflow-wrap:anywhere;vertical-align:top}
.btw-work-table tbody tr:first-child td{border-top:0}
.btw-work-table tbody tr:hover{background:#fafbfc}
.btw-work-table td:first-child,.btw-work-table th:first-child{width:27%}
.btw-client-table{min-width:900px}
.btw-client-table td:first-child,.btw-client-table th:first-child{width:14%}
.main .shared-client-table{width:100%;min-width:900px;table-layout:fixed;border-collapse:collapse;text-align:left}
.main .shared-client-table th{padding:11px 14px!important;border-bottom:1px solid #dce0e7;background:#f7f8fa!important;color:#626778!important;font:700 10px var(--font-ui)!important;letter-spacing:.04em;text-transform:uppercase}
.main .shared-client-table td{padding:12px 14px!important;border-bottom:1px solid #e3e7ee;color:#30343c!important;font:12px/1.4 var(--font-ui)!important;overflow-wrap:anywhere;vertical-align:middle}
.main .shared-client-table tbody tr:last-child td{border-bottom:0}
.main .shared-client-table tbody tr:hover td{background:#f7f8fa!important}
.main .shared-client-table td:nth-child(4) button[data-btw-expand]{all:unset;display:block;max-width:100%;color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer}
.main .shared-client-table td:nth-child(4) button[data-btw-expand]:focus-visible{outline:2px solid #4266ff;outline-offset:2px;border-radius:2px}
.main .shared-client-table :is(th,td):nth-child(1){width:13%}
.main .shared-client-table :is(th,td):nth-child(2){width:17%}
.main .shared-client-table :is(th,td):nth-child(3){width:22%}
.main .shared-client-table :is(th,td):nth-child(4){width:13%}
.main .shared-client-table :is(th,td):nth-child(5){width:13%}
.main .shared-client-table :is(th,td):nth-child(6){width:10%}
.main .shared-client-table :is(th,td):nth-child(7){width:12%}
.btw-data-table:has(.bp-client-assignee-menu),.btw-table-scroll:has(.bp-client-assignee-menu){overflow:visible}
.btw-client-table td:has(.bp-client-assignee-menu){position:relative;z-index:10}
.bp-member-card .bp-task-title{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;min-width:0}
.bp-member-card .bp-task.bp-task-no-complete{grid-template-columns:30px minmax(0,1fr)}
.bp-member-card .bp-task-title{flex-wrap:nowrap;gap:3px;font-size:11px;white-space:nowrap;overflow:hidden}
.bp-member-card .bp-task-deliverable{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal}
.bp-member-card .bp-task-field{flex:none;padding:2px 4px;font-size:9px}
.bp-member-card .bp-task-quantity{flex:none;margin-left:1px}
.bp-member-card .bp-project-client strong{flex:1;max-width:none}
.bp-member-card .bp-project-client span{max-width:35%}
.bp-member-card .bp-header-more{flex:none;width:20px;min-width:20px;color:var(--text)}
.bp-project-client strong::before{content:"Project: ";font-weight:500;color:#705f31}
.bp-member-card .bp-task,.btw-board-task{position:relative}
.bp-member-card .bp-priority,.btw-timeline.team.grid .btw-board-task .btw-priority{display:inline-flex;align-items:center;justify-content:center;min-width:27px;min-height:21px;border:1px solid #d7dce5;border-radius:5px;background:#f3f5f8;color:#313747;font-weight:800}
.bp-member-card .bp-task.is-delayed .bp-priority,.btw-timeline.team.grid .btw-board-task.is-delayed .btw-priority{border-color:#e9a6a9;background:#fff0f0;color:#b42330}
.bp-member-card .bp-task.is-delayed,.btw-board-task.is-delayed{border-left:3px solid #dd7f8e;border-radius:7px;background:#fff0f3;padding-left:7px;padding-right:7px}
.bp-member-card .bp-task.is-delayed::after,.btw-board-task.is-delayed::after{content:"";position:absolute;right:7px;top:4px;width:5px;height:5px;border-radius:50%;background:#c8475d}
.btw-board-project{position:relative}
.btw-board-project .bp-project-client{padding-right:23px}
.btw-board-project .btw-row-shell{grid-template-columns:30px minmax(0,1fr);padding-right:0}
.btw-board-project .btw-task-menu{position:absolute;top:-31px;right:0}
.btw-board-task .btw-board-title{display:flex;align-items:center;gap:3px;font-size:11px}
.btw-board-task .btw-board-title .bp-task-deliverable{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.btw-board-task .btw-board-title .bp-task-field{flex:none;padding:2px 4px;border:1px solid #dce0e7;border-radius:4px;background:#f4f6f9;font-size:9px}
.btw-board-task .btw-board-title .bp-task-quantity{flex:none}
.btw-board-task .btw-board-title .btw-manager-assignee{flex:none;padding:2px 6px;border-radius:999px;background:#fff4c3;color:var(--text);font-size:9px;font-weight:700;white-space:nowrap}
/* Both boards use the same member/date/project/task card geometry. */
.btw-timeline.team .btw-board-member.bp-member-card{border-radius:15px}
.btw-timeline.team .btw-board-member.bp-member-card>header .bp-member-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto 12px;gap:10px;min-height:78px;width:100%;padding:15px 17px;text-align:left}
.btw-timeline.team .btw-board-member.bp-member-card .btw-member-count{margin:0}
.btw-timeline.team .btw-board-member.bp-member-card .btw-member-date.bp-card-date h4{padding:10px 17px}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-project.bp-client{margin:0;padding:11px 17px;border-bottom:1px solid #edf0f3}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-project .bp-project-client{margin:0 0 8px;padding:0;gap:8px}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-project .bp-project-client strong{flex:1;max-width:none}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-project .bp-project-client span{flex:none;max-width:35%}
.btw-board-project .btw-task-menu{position:relative;top:auto;right:auto;flex:none}
.btw-board-project .btw-task-menu-trigger{width:20px;min-width:20px;height:24px;padding:0}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-task.bp-task{display:block;margin:0;padding:9px 0 0;border-bottom:1px solid #e5e8ee}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-task .btw-row-shell{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;min-height:0;padding:0 0 9px}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-task .btw-board-title{display:flex;align-items:center;gap:3px;padding:0;font:600 11px var(--font-ui)}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-task .bp-task-field{padding:2px 4px;font-size:9px}
.btw-timeline.team .btw-board-member.bp-member-card .btw-board-task.is-delayed{padding:9px 7px 0;border-left:3px solid #dd7f8e;border-bottom:1px solid #f2cbd2;background:#fff0f3}
.btw-timeline.team.grid .btw-board-member.bp-member-card .btw-board-project .btw-board-task.is-delayed,.btw-timeline.team.grid .btw-delayed-person .btw-board-project .btw-board-task.is-delayed{border-left:3px solid #dd7f8e;border-radius:7px;background:#fff0f3;padding:9px 7px 0}
.btw-timeline.team.grid .btw-delayed-person .btw-board-project{padding:10px 12px;border:1px solid #edf0f3;border-radius:9px}
.btw-timeline.team.grid .btw-delayed-person .btw-board-project .btw-row-shell{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px}
.btw-timeline.team.grid .btw-delayed-person .btw-board-project .btw-board-task.bp-task{display:block;width:100%;box-sizing:border-box}
/* Delayed people use the same card footprint as Ongoing members. */
.btw-timeline.team.grid .btw-delayed-people{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0}
.btw-timeline.team.grid .btw-delayed-person{min-width:0;padding:0;border:1px solid #dce0e7;border-radius:14px;overflow:hidden;background:var(--surface)}
.btw-timeline.team.grid .btw-delayed-person>header{min-height:78px;box-sizing:border-box;margin:0;padding:15px 17px;border-bottom:1px solid #dce0e7;background:#f7f8fa}
.btw-timeline.team.grid .btw-delayed-person>header small{margin-left:auto;padding:5px 7px;border-radius:999px;background:var(--surface);white-space:nowrap}
.btw-timeline.team.grid .btw-delayed-person>div{min-width:0}
.btw-timeline.team.grid .btw-delayed-person .btw-board-project{margin:0;padding:11px 17px;border:0;border-bottom:1px solid #edf0f3;border-radius:0}
.btw-timeline.team.grid .btw-delayed-person .bp-project-client{min-width:0}
.btw-timeline.team.grid .btw-delayed-person .bp-project-client strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1150px){.btw-timeline.team.grid .btw-delayed-people{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){.btw-timeline.team.grid .btw-delayed-people{grid-template-columns:minmax(0,1fr)}
}
.bp-history-date .bp-client{margin:0;padding:11px 17px;border-bottom:1px solid #edf0f3}
.bp-history-date .bp-project-client{margin:0 0 8px}
.bp-history-date .bp-project-client strong{flex:1;max-width:none}
.bp-history-date .bp-project-client span{max-width:35%}
.bp-history-date .bp-history-task.bp-task{grid-template-columns:30px minmax(0,1fr);gap:7px;padding:9px 0;border-bottom:1px solid #e5e8ee}
.bp-history-date .bp-history-task-title.bp-task-title{display:flex;align-items:center;gap:3px;min-width:0;overflow:hidden;white-space:nowrap;font-size:11px}
.bp-history-date .bp-history-task-title .bp-task-deliverable{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bp-history-date .bp-history-task-title .bp-task-field{flex:none;padding:2px 4px;border:1px solid #dce0e7;border-radius:4px;background:#f4f6f9;font-size:9px}
.bp-history-date .bp-history-task-title .bp-task-quantity{flex:none}
.bp-history-date .bp-history-task.is-delayed{border-left:3px solid #dd7f8e;border-radius:7px;background:#fff0f3;padding:9px 7px}
.bp-history-date .bp-history-task.is-delayed .bp-priority{border-color:#e9a6a9;background:#fff0f0;color:#b42330}
.main .bp-client-table .shared-client-table,.main .btw-client-table.shared-client-table{min-width:1320px}
.main .shared-client-table :is(th,td):nth-child(1){width:9%}
.main .shared-client-table :is(th,td):nth-child(2){width:10%}
.main .shared-client-table :is(th,td):nth-child(3){width:15%}
.main .shared-client-table :is(th,td):nth-child(4){width:17%}
.main .shared-client-table :is(th,td):nth-child(5){width:9%}
.main .shared-client-table :is(th,td):nth-child(6){width:8%}
.main .shared-client-table :is(th,td):nth-child(7){width:5%}
.main .shared-client-table :is(th,td):nth-child(8){width:10%}
.main .shared-client-table :is(th,td):nth-child(9){width:9%}
.main .shared-client-table :is(th,td):nth-child(10){width:8%}
.op-deliverables-table input[data-op-field="unitRate"]{-moz-appearance:textfield;appearance:textfield}
.op-deliverables-table input[data-op-field="unitRate"]::-webkit-inner-spin-button,.op-deliverables-table input[data-op-field="unitRate"]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.op-date-warning{display:block;margin-top:3px;color:#9a5a00;font:600 10px/1.3 var(--font-ui)}
.pl-included-formats{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:5px}
.pl-included-formats span{padding:3px 7px;border:1px solid #dce0e7;border-radius:999px;background:#f4f6f9;font-size:11px}
.pl-format-add{display:flex;gap:5px;min-width:0}
.pl-format-add input{min-width:0;flex:1}
.pl-fixed-table .pl-format-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:36px;padding:6px 8px;border:1px solid #cfd5df;border-radius:7px;background:var(--surface);color:var(--text);text-align:left;font:12px var(--font-ui);cursor:pointer}
.pl-fixed-table .pl-format-trigger:disabled{cursor:default;opacity:.7}
.pl-format-menu{position:fixed;z-index:10020;width:min(300px,calc(100vw - 16px));max-height:min(380px,calc(100vh - 16px));display:flex;flex-direction:column;background:var(--surface)}
.pl-format-menu>input[type="search"]{flex:none}
.pl-format-options{min-height:42px;max-height:230px;overflow:auto;overscroll-behavior:contain;display:grid;align-content:start;margin:8px 0}
.pl-format-options>button{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:9px 8px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:12px var(--font-ui)}
.pl-format-options>button:hover,.pl-format-options>button[aria-pressed="true"]{background:#f4f6f9}
.pl-format-options>button small{color:#626778;font-size:11px}
.pl-format-options>p{margin:8px;color:#626778;font-size:11px}
.pl-format-footer{border-top:1px solid #dce0e7;padding-top:8px}
.pl-format-footer>button{width:100%;padding:8px;border:0;border-radius:7px;background:var(--surface);color:var(--text);text-align:left;font:700 12px var(--font-ui);cursor:pointer}
.pl-format-footer>button:hover{background:#f4f6f9}
.pl-format-footer [data-format-create-fields]:not([hidden]){display:flex;gap:5px;margin-top:6px}
.pl-format-footer [data-format-create-fields] input{min-width:0;flex:1}
.pl-format-footer [data-format-create-fields] button{border:1px solid #cfd5df;border-radius:7px;background:var(--surface);font-weight:700;cursor:pointer}
.pl-format-footer [data-format-error]{margin:4px 0 0;color:#b42330;font-size:11px}
.bp-member-card .bp-task-deliverable{font-weight:700;min-width:0;overflow-wrap:anywhere}
.bp-member-card .bp-task-field{display:inline-block;border:1px solid #dce0e7;border-radius:5px;background:#f7f8fa;color:#545b6a;padding:2px 5px;font-size:10px;line-height:1.25;white-space:nowrap}
.btw-work-table td button{padding:0;border:0;background:transparent;color:var(--text);text-align:left;font:700 12px var(--font-ui);cursor:pointer}
.btw-work-table td button:hover,.btw-work-table td button:focus-visible{text-decoration:underline}
.btw-work-table td [data-btw-client-assign]{padding:6px 11px;border:1px solid #cbd3df;border-radius:999px;background:var(--surface);white-space:nowrap}
.btw-data-table .btw-empty{padding:20px 15px;color:#626778}
@media(max-width:760px){.btw-work-table{min-width:710px}
.btw-work-table td:first-child,.btw-work-table th:first-child{width:190px}
}
.btw-timeline.mine,.btw-timeline.mine.grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.btw-timeline.mine .btw-my-card{min-width:0;min-height:230px;border:1px solid #dce0e7;border-radius:15px;background:var(--surface);overflow:hidden}
.btw-timeline.mine .btw-my-card:has(.btw-task-menu-panel:not([hidden])){position:relative;z-index:8;overflow:visible}
.btw-timeline.mine .btw-my-card>h2>button{min-height:68px;padding:15px 17px;border:0;border-bottom:1px solid #dce0e7;border-left:3px solid #48d0c2;border-radius:0;background:#f7f8fa;font:700 17px var(--font-ui)}
.btw-timeline.mine .btw-my-card[data-btw-status="delayed"]>h2>button{border-left-color:#ef927b}
.btw-timeline.mine .btw-my-card>h2>button small{margin-left:auto;border-radius:999px;padding:5px 8px;background:var(--surface);color:#626778;font:500 11px var(--font-ui);white-space:nowrap}
.btw-timeline.mine .btw-my-card>h2>button span:last-child{margin-left:0}
.btw-timeline.mine .btw-my-card>.btw-member-date h4{margin:0;padding:10px 17px;border-bottom:1px solid #e5e8ee;background:#f7f8fa;color:var(--text);font-size:12px}
.btw-timeline.mine .btw-my-card>.btw-empty{padding:18px 17px;color:#626778}
.btw-timeline.mine .btw-my-card .btw-board-project{padding:11px 17px;border-bottom:1px solid #edf0f3}
.btw-timeline.team.grid .btw-board-member .btw-row{min-height:44px;padding:7px 0;grid-template-columns:minmax(0,1fr) auto auto;gap:6px}
.btw-timeline.team.grid .btw-board-member .btw-row .btw-primary{grid-column:1;grid-row:1}
.btw-timeline.team.grid .btw-board-member .btw-row .btw-priority{grid-column:2;grid-row:1}
.btw-timeline.team.grid .btw-board-member .btw-row .btw-status{grid-column:3;grid-row:1}
.btw-timeline.team.grid .btw-board-member .btw-row-shell.has-review .btw-row{padding-right:11px;padding-bottom:37px}
@media(max-width:1150px){.btw-timeline.team .btw-board-members,.btw-timeline.team.grid .btw-board-members{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){.btw-timeline.team .btw-board-members,.btw-timeline.team.grid .btw-board-members,.btw-timeline.mine,.btw-timeline.mine.grid{grid-template-columns:1fr}
}
@media(max-width:760px){.btw-list-columns{display:none}
.btw-list-department .btw-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;padding:10px 13px}
.btw-list-department .btw-row .btw-primary{grid-column:1/-1;grid-row:1}
.btw-list-department .btw-row .btw-person{grid-column:1;grid-row:2}
.btw-list-department .btw-row .btw-date{grid-column:2;grid-row:2}
.btw-list-department .btw-row .btw-priority{grid-column:1;grid-row:3}
.btw-list-department .btw-row .btw-status{grid-column:2;grid-row:3}
.btw-list-department .btw-row-shell.has-review .btw-row{padding-bottom:39px}
}
.bp-assign-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bp-assign-form label:first-child,.bp-assign-form .bp-dialog-error{grid-column:1/-1}
.bp-assign-form .bp-assign-note{grid-column:1/-1}
.bp-assign-form .bp-assign-note textarea{display:block;width:100%;min-height:76px;margin-top:6px;padding:9px 10px;resize:vertical;border:1px solid #dce0e7;border-radius:8px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.bp-assign-form input,.bp-assign-form select{width:100%;min-height:39px;padding:8px;border:1px solid #dce0e7;border-radius:8px;background:var(--surface);color:var(--text);font:12px var(--font-ui)}
.bp-unassigned-assign{min-width:100px;min-height:32px;padding:6px 12px;border:1px solid #cbd1dc;border-radius:999px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700;cursor:pointer}
.op-history-card{border:0;padding:0}
.op-history-card h3{margin:0 0 14px;font:700 15px var(--font-ui)}
.op-history-timeline{position:relative;margin-left:15px;padding-left:25px;border-left:2px solid #dce0e7}
.op-history-event{position:relative;padding:0 0 17px}
.op-history-event:last-child{padding-bottom:0}
.op-history-marker{position:absolute;left:-39px;top:6px;display:grid;place-items:center;width:26px;height:26px;border:2px solid var(--surface);border-radius:50%;background:#ffd036;color:var(--text);box-shadow:0 0 0 1px #e0b100;font-size:10px;font-weight:800}
.op-history-content{display:grid;gap:4px;padding:11px 13px;border:1px solid #dce0e7;border-radius:9px;background:var(--surface)}
.op-history-content time{color:#626778;font-size:10px;font-weight:700}
.op-history-content b{color:var(--text);font-size:12px;line-height:1.35}
.op-history-content small{color:#626778;font-size:11px}
@media(max-width:1100px){.btw-filters{grid-template-columns:minmax(160px,1fr) minmax(140px,1fr)}
.btw-filters .btw-view{justify-self:start}
}
@media(max-width:620px){.btw-filters{grid-template-columns:minmax(0,1fr)}
.btw-sidebar .btw-detail-grid,.btw-results:not(.grid) .btw-sidebar .btw-detail-grid{grid-template-columns:minmax(0,1fr)}
.bp-member-card .bp-member-head{grid-template-columns:44px minmax(0,1fr)}
.bp-member-card .bp-count{grid-column:2;justify-self:start}
}

/* Selected Type formats follow the compact, wrapping reference-label treatment. */
.wc-retainer-format-options{display:flex;flex-wrap:wrap;align-content:start;gap:12px;min-height:44px}
.wc-retainer-format-options .wc-retainer-format-chip{position:relative;display:inline-flex!important;align-items:center!important;min-height:38px!important;border:2px solid #dde2ea!important;border-radius:999px!important;background:#fafbfc!important;padding:8px 13px!important;color:#202124!important;font:500 16px/1.1 var(--font-ui)!important}
.wc-retainer-format-options .wc-retainer-format-chip button{position:absolute!important;right:-7px!important;top:-7px!important;transform:none;width:16px!important;height:16px!important;border:1px solid #87a5ca!important;border-radius:50%!important;background:var(--surface)!important;color:#385675!important;padding:0!important;font:700 13px/14px var(--font-ui)!important;cursor:pointer}


/* Bandwidth planning tables */
/* Keep all three Planning workflow tables inside their own panels. */
.main :is(.bandwidth-planning-page,.btw-page) .bp-planning-results,
.main :is(.bandwidth-planning-page,.btw-page) .bp-workflow-panel,
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-projects,
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-project{min-width:0;max-width:100%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-workflow-panel{width:100%;overflow:hidden}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table,
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table{box-sizing:border-box;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table table,
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table table,
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .shared-client-table{width:100%;min-width:0;max-width:100%;table-layout:fixed;border-collapse:collapse}
.main :is(.bandwidth-planning-page,.btw-page) :is(.bp-client-table,.bp-unassigned-table) :is(th,td){box-sizing:border-box;min-width:0;padding:11px 9px!important;overflow-wrap:anywhere;word-break:normal;vertical-align:middle}
.main :is(.bandwidth-planning-page,.btw-page) :is(.bp-client-table,.bp-unassigned-table) th{line-height:1.25;white-space:normal}
.main :is(.bandwidth-planning-page,.btw-page) :is(.bp-client-table,.bp-unassigned-table) td{line-height:1.35}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .bp-client-assignee{min-width:0;width:100%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .bp-client-row-actions{display:flex;align-items:center;gap:6px;min-width:144px}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .bp-client-row-actions>button{flex:1 1 auto;white-space:nowrap}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .shared-client-table{min-width:0;max-width:100%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .shared-client-table :is(th,td):last-child{width:165px}
.bp-client-view-only{color:#687083;font-size:11px;white-space:nowrap}
.main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .bp-client-assignee>button{box-sizing:border-box;width:100%;min-width:0;padding-inline:8px}
.bp-completed-table .bp-completed-state{display:inline-block;color:#626778;font:500 11px/1.3 var(--font-ui);max-width:120px}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table .bp-completed-reopen{box-sizing:border-box;width:100%;min-width:0;padding-inline:7px}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table .bp-unassigned-assign{box-sizing:border-box;width:100%;min-width:0;padding-inline:7px}

/* Sent to client: date, client, project, deliverable, asset, type, qty, SPOC, PM, action. */
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(1){width:9%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(2){width:9%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(3){width:14%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(4){width:19%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(5){width:9%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(6){width:7%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(7){width:4%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(8){width:11%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(9){width:10%}
.main :is(.bandwidth-planning-page,.btw-page) .shared-client-table :is(th,td):nth-child(10){width:8%}

/* Completed: date, client, project, deliverable, type, asset, qty, assignee, priority, action. */
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(1){width:11%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(2){width:9%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(3){width:13%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(4){width:18%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(5){width:7%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(6){width:9%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(7){width:4%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(8){width:10%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(9){width:7%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-completed-table :is(th,td):nth-child(10){width:12%}

/* Unassigned: client, project, deliverable, type, asset, qty, date, SPOC, action. */
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(1){width:10%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(2){width:14%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(3){width:20%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(4){width:7%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(5){width:10%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(6){width:4%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(7){width:12%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(8){width:10%}
.main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table :is(th,td):nth-child(9){width:13%}

@media(max-width:1180px){
  .main :is(.bandwidth-planning-page,.btw-page) .bp-client-table table,
  .main :is(.bandwidth-planning-page,.btw-page) .bp-unassigned-table table,
  .main :is(.bandwidth-planning-page,.btw-page) .bp-client-table .shared-client-table{min-width:980px}
}
.main .btw-page .btw-timeline.grid>.shared-workflow-panel{grid-column:1/-1}


/* Work shared view */
/* Shared presentation for the same work item in Tasks and Bandwidth Planning.
   Controls remain owned by the page that supplied them. */
.main .bp-member-card .bp-task.bp-task-no-complete,
.main .btw-board-project .btw-board-task.bp-task{display:block;min-width:0}
.main .bp-shared-task-line{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:7px;min-width:0;min-height:30px;padding:5px 0}
.main .bp-shared-task-line>.bp-task-title{grid-column:2;min-width:0;display:flex;align-items:center;gap:3px;overflow:hidden;white-space:nowrap;font:600 11px var(--font-ui)}
.main .bp-shared-task-line>.bp-task-title .bp-task-deliverable{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.main .bp-shared-task-line>.bp-task-title .bp-task-field,
.main .bp-shared-task-line>.bp-task-title .bp-task-quantity{flex:none}
.main .bp-shared-task-line>.bp-priority,
.main .bp-shared-task-line>.btw-priority{grid-column:1;display:inline-flex;align-items:center;justify-content:center;min-width:27px;min-height:21px;margin:0;padding:2px 4px;border:1px solid #d7dce5;border-radius:5px;background:#f3f5f8;color:#313747;font:800 10px var(--font-ui)}
.main .bp-task.is-delayed .bp-shared-task-line>.bp-priority,
.main .bp-task.is-delayed .bp-shared-task-line>.btw-priority{border-color:#e9a6a9;background:#fff0f0;color:#b42330}
.main .bp-shared-task-line:has(.btw-quick-check)>.btw-priority{display:none}
.main .bp-shared-task-line:has(.btw-quick-check)>.bp-task-title{grid-column:2}
.main .bp-member-card .bp-task.is-delayed,
.main .btw-board-project .btw-board-task.is-delayed{box-sizing:border-box;border-left:3px solid #dd7f8e;border-radius:7px;background:#fff0f3;padding-left:7px;padding-right:7px}



/* Project type picker */
/* Focused project-type chooser; scoped so other project dialogs keep their styling. */
.wc-dialog.pl-project-type-dialog{width:min(620px,calc(100vw - 28px));border-radius:18px;box-shadow:0 22px 60px rgba(20,25,40,.19)}
.pl-project-type-dialog .wc-dialog-head{align-items:flex-start;padding:22px 24px 18px}
.pl-project-type-dialog .wc-dialog-head h2{font-size:24px;line-height:1.12;letter-spacing:-.025em}
.pl-project-type-dialog .wc-dialog-head p{margin-top:7px;color:#636c7e;font-size:12px;line-height:1.45}
.pl-project-type-dialog .wc-dialog-close{flex:none;width:34px;height:34px;border-radius:9px;font-size:18px}
.pl-project-type-dialog .wc-dialog-body{padding:20px 24px 22px}
.pl-project-type-dialog .pl-project-type-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wc-dialog.pl-project-type-dialog .pl-project-type-picker button{position:relative;display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:150px;gap:0;padding:15px 16px 17px;border:1px solid #d8dee8!important;border-radius:14px!important;background:#fbfcfe!important;color:var(--text)!important;text-align:left;box-shadow:0 1px 2px rgba(20,25,40,.04);transform:none;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s}
.wc-dialog.pl-project-type-dialog .pl-project-type-picker button:hover,.wc-dialog.pl-project-type-dialog .pl-project-type-picker button:focus-visible{border-color:#e0b400!important;background:#fffaf0!important;box-shadow:0 7px 20px rgba(50,40,10,.09);transform:translateY(-2px)}
.pl-project-type-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.pl-project-type-number{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#f1f3f7;color:#626a79!important;font:800 10px var(--font-ui);letter-spacing:.03em}
.pl-project-type-arrow{color:#697284!important;font:700 17px/1 var(--font-ui);transition:transform .16s}
.pl-project-type-dialog .pl-project-type-picker button:hover .pl-project-type-arrow{transform:translate(2px,-2px)}
.pl-project-type-dialog .pl-project-type-picker b{display:block;margin:0 0 5px;color:var(--text);font:700 16px/1.2 var(--font-ui)}
.pl-project-type-dialog .pl-project-type-picker small{display:block;color:#5e6879;font:12px/1.42 var(--font-ui)}
.pl-project-type-dialog .wc-dialog-foot{padding:12px 24px;background:#fafbfc}
.pl-project-type-dialog .wc-dialog-foot .wc-btn{min-height:36px;padding:7px 13px}
@media(max-width:600px){.wc-dialog.pl-project-type-dialog{width:min(440px,calc(100vw - 20px))}
.pl-project-type-dialog .pl-project-type-picker{grid-template-columns:1fr}
.wc-dialog.pl-project-type-dialog .pl-project-type-picker button{min-height:116px}
.pl-project-type-dialog .wc-dialog-head,.pl-project-type-dialog .wc-dialog-body,.pl-project-type-dialog .wc-dialog-foot{padding-inline:18px}
}


/* Shared selection dropdowns */
/* Selection menus share a shell; search and footer remain optional. */
:is(.pl-inline-menu,.pl-pitch-manager-menu,.pl-format-menu,.pl-pitch-department-select>div,.bp-next-menu.bp-assignment-menu,.bp-filter-menu,.bp-unassigned-assignee .bp-client-assignee-menu,.bpt-department-menu,.bpt-assignee-picker [data-bpt-assignee-menu],.op-floating-picker,.pitch-department-menu,.bp-history-picker){
  box-sizing:border-box;
  border:1px solid #dce0e7;
  border-radius:14px;
  background:var(--surface);
  box-shadow:0 12px 32px rgba(26,33,52,.13);
  padding:10px;
  color:var(--text);
}
:is(.pl-inline-menu,.pl-pitch-manager-menu,.pl-format-menu,.bp-next-menu.bp-assignment-menu,.bp-filter-menu,.bp-unassigned-assignee .bp-client-assignee-menu,.bpt-department-menu,.bpt-assignee-picker [data-bpt-assignee-menu],.op-floating-picker,.pitch-department-menu,.bp-history-picker) input[type="search"],
:is(.pl-inline-menu,.op-floating-picker) .pl-search{
  box-sizing:border-box;
  width:100%;
  min-height:38px;
  border:1px solid #d4d7de;
  border-radius:9px;
  background:var(--surface);
  color:var(--text);
  font:12px var(--font-ui);
}
:is(.pl-inline-menu,.pl-pitch-manager-menu,.pl-format-menu,.bp-next-menu.bp-assignment-menu,.bpt-assignee-picker [data-bpt-assignee-menu],.op-floating-picker,.pitch-department-menu,.bp-history-picker) input[type="search"]{
  padding:8px 11px;
}
:is(.pl-inline-menu,.pl-pitch-manager-menu,.pl-format-menu,.bp-next-menu.bp-assignment-menu,.bpt-assignee-picker [data-bpt-assignee-menu],.op-floating-picker,.pitch-department-menu,.bp-history-picker) input[type="search"]:focus-visible{
  outline:2px solid #407cff;
  outline-offset:1px;
}
:is(.pl-inline-options,.pl-pitch-manager-options,.pl-format-options,.bp-next-person-list,.bpt-assignee-picker [data-bpt-assignee-options],.op-picker-options,.bp-history-people){
  min-width:0;
  max-height:min(240px,38vh);
  overflow-y:auto;
  overscroll-behavior:contain;
}
:is(.pl-inline-options,.pl-pitch-manager-options,.pl-format-options,.bp-next-person-list,.bpt-assignee-picker [data-bpt-assignee-options],.op-picker-options,.bp-history-people)>button{
  box-sizing:border-box;
  width:100%;
  min-height:38px;
  border:0;
  border-radius:7px;
  background:transparent;
  color:var(--text);
  padding:8px 10px;
  text-align:left;
  cursor:pointer;
  font:600 12px var(--font-ui);
}
:is(.pl-inline-options,.pl-pitch-manager-options,.pl-format-options,.bp-next-person-list,.bpt-assignee-picker [data-bpt-assignee-options],.op-picker-options,.bp-history-people)>button:is(:hover,:focus-visible){
  background:#f2f5f9!important;
}
:is(.pl-inline-options,.pl-pitch-manager-options,.pl-format-options,.bp-next-person-list,.bpt-assignee-picker [data-bpt-assignee-options],.bp-history-people)>button :is(small,em){
  color:#666d7e;
  font-size:11px;
  font-weight:400;
}
:is(.pl-inline-options,.pl-pitch-manager-options,.pl-format-options,.bp-next-person-list,.bpt-assignee-picker [data-bpt-assignee-options],.bp-history-people)>button b{
  color:var(--text);
  font-weight:700;
}
/* Names and supporting details follow the same left/right row as the reference. */
.pl-inline-options>button:has(div),
.bpt-assignee-picker [data-bpt-assignee-options]>button:has(div){
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  align-items:center;
  gap:9px;
}
.pl-inline-options>button>div,
.bpt-assignee-picker [data-bpt-assignee-options]>button>div{
  display:flex!important;
  align-items:baseline;
  justify-content:space-between;
  min-width:0;
  gap:10px;
}
.pl-inline-options>button>div>b,
.bpt-assignee-picker [data-bpt-assignee-options]>button>div>b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.pl-inline-options>button>div>small,
.bpt-assignee-picker [data-bpt-assignee-options]>button>div>small{
  flex:none;
  margin:0;
  text-align:right;
}
.pl-inline-options>button:has(>b):has(>small),
.pl-pitch-manager-options>button,
.bp-next-person-list>button,
.bp-history-people>button{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.pl-pitch-manager-options>button>span{flex:none}
.pl-pitch-manager-options>button>b{flex:1;min-width:0}
.pl-inline-options>button:has(>em){grid-template-columns:18px minmax(0,1fr) auto}
.pl-inline-options>button:has(>em)>em{white-space:nowrap}
.pl-pitch-manager-options>button>small,
.bp-next-person-list>button>small,
.bp-history-people>button>small{flex:none;text-align:right}
.bp-next-person-list>button>small{font-size:11px;color:#666d7e}
.bp-filter-menu .bp-filter-option{
  display:grid;
  grid-template-columns:18px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  min-height:36px;
  border-radius:7px;
  padding:8px 10px;
}
.bp-filter-menu .bp-filter-option:hover{background:#f2f5f9!important}
.bp-filter-menu .bp-filter-option.all{border-bottom:1px solid #dce0e7;color:var(--text)}
.bpt-department-menu label{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:36px;border-radius:7px;padding:8px 10px;color:var(--text)}
.bpt-department-menu label:hover{background:#f2f5f9!important}
.bpt-department-menu label small{color:#666d7e;text-align:right}
.pitch-department-menu label{min-height:34px;border-radius:7px;padding:7px 10px}
.pitch-department-menu label:hover{background:#f2f5f9!important}
.pl-pitch-department-select label{display:flex;align-items:center;gap:9px;min-height:34px;border-radius:7px;padding:7px 10px;color:var(--text)}
.pl-pitch-department-select label:hover{background:#f2f5f9}
.pl-client-menu .pl-inline-fixed-action{
  display:block;
  width:100%;
  border:0;
  border-top:1px solid #dce0e7;
  border-radius:0;
  background:var(--surface);
  color:var(--text);
  padding:10px 8px!important;
  font:700 12px var(--font-ui);
  text-align:left!important;
  cursor:pointer;
}
.pl-client-menu .pl-inline-fixed-action:hover{background:#f2f5f9}
.pl-project-dialog .pl-inline-menu{position:fixed;z-index:2600;right:auto;bottom:auto;overflow-y:auto;overscroll-behavior:contain}
.pl-project-dialog .pl-inline-menu .pl-inline-options{max-height:none;overflow-y:auto}
.pl-client-menu .pl-inline-options>button{display:block;min-height:38px;white-space:normal;overflow-wrap:anywhere;font-size:12px}
.pl-project-dialog .pl-form-steps[hidden]{display:none}
/* Short native choices retain their platform menu but share control chrome. */
:is(.wc-page,.bpt-page,.btw-page,.bandwidth-planning-page,.bc-page,.finance-page,.os-finance-page,[role="dialog"]) select:not(.ev-member-source){
  border-color:#c7cad5;
  border-radius:8px;
  background-color:var(--surface);
  color:var(--text);
}
:is(.wc-page,.bpt-page,.btw-page,.bandwidth-planning-page,.bc-page,.finance-page,.os-finance-page,[role="dialog"]) select:not(.ev-member-source):focus-visible{
  outline:2px solid #407cff;
  outline-offset:1px;
}
.pl-inline-menu[hidden],
.bpt-assignee-picker [data-bpt-assignee-menu][hidden],
.pitch-department-menu[hidden]{display:none}
:is(.pl-inline-fixed-action,.pl-inline-add,.pl-format-footer,.bp-next-workflow,.op-picker-add){
  border-top:1px solid #dce0e7;
  margin-top:7px;
  padding-top:9px;
}
:is(.pl-inline-menu,.pl-pitch-manager-menu,.pl-format-menu,.pl-pitch-department-select>div,.bp-next-menu.bp-assignment-menu,.bp-filter-menu,.bp-unassigned-assignee .bp-client-assignee-menu,.bpt-department-menu,.bpt-assignee-picker [data-bpt-assignee-menu],.op-floating-picker,.pitch-department-menu,.bp-history-picker) :is(button,label):focus-visible{
  outline:2px solid #407cff;
  outline-offset:1px;
}
@media(max-width:620px){
  :is(.pl-inline-menu,.pl-pitch-manager-menu,.pl-format-menu,.bp-next-menu.bp-assignment-menu,.bpt-assignee-picker [data-bpt-assignee-menu],.op-floating-picker){
    max-width:calc(100vw - 24px);
  }
}


/* Design tokens and responsive behavior */
/* frontend-qc.css */
/* Keep selected-state text readable when the global theme changes card colors. */
.main .op-project-kpis .wc-kpi.selected :is(small, span, b) { color: var(--text) !important; }
.main .btw-overview-tiles button.active :is(strong, span, small) { color: var(--surface) !important; }
.main .roles-person-list button.selected :is(strong, small) { color: var(--surface) !important; }
.main .wc-empty span { color: #58606e !important; }
.overview-demo-notice { margin: 8px 0 0; color: #4f5360; font-size: 12px; line-height: 1.45; }
.ai { position: static !important; flex: none; padding: 10px 14px !important; font-size: 12px !important; }
@media (max-width: 620px) {
  .topbar .actions { flex-wrap: wrap; justify-content: flex-end; }
  .ai { padding: 8px 10px !important; }
}
.topbar .actions #ai { background: var(--text) !important; color: var(--surface) !important; }
.topbar .actions #ai:hover { background: #33333a !important; }
@media (max-width: 620px) {
  .topbar { height: auto; min-height: 72px; padding-block: 10px; }
}
.clock-banner .clock-cta { background: var(--text) !important; color: var(--surface) !important; }
body .main .clock-banner #bannerClock { background: var(--text) !important; color: var(--surface) !important; }

/* mobile.css */
.mobile-menu-toggle,.mobile-nav-close,.mobile-nav-backdrop{display:none}
@media screen and (max-width:760px){
  .main{width:100%!important;margin-left:0!important;padding-inline:16px!important;min-width:0}
  .sidebar{transform:translateX(-100%);width:min(300px,85vw)!important;padding:16px!important;z-index:10002;overflow-y:auto;height:100dvh;transition:transform .18s ease}
  body.mobile-nav-open .sidebar{transform:translateX(0)}
  .sidebar .brand img{display:block!important;width:147px!important}
.sidebar .brand::after{display:none!important}
  .sidebar .nav button{justify-content:flex-start!important;min-height:44px}
  .sidebar .nav button span:not(.nav-icon){display:inline!important}
  .mobile-menu-toggle,.mobile-nav-close{display:block;min-height:44px;padding:8px 12px;border:1px solid #c7cad5;border-radius:10px;background:var(--surface);color:var(--text);font:600 14px var(--font-ui);cursor:pointer}
  .mobile-nav-close{margin-left:auto;margin-bottom:12px}
  body.mobile-nav-open{overflow:hidden}
  body.mobile-nav-open .mobile-nav-backdrop{display:block;position:fixed;inset:0;background:#0006;z-index:10001;border:0}
  .topbar{height:auto!important;min-height:72px;padding:10px 0;gap:8px!important;align-items:flex-start!important}
  .topbar .actions{min-width:0;flex:1;flex-wrap:wrap;justify-content:flex-end;gap:6px!important}
  .topbar .actions button{min-height:40px}
  .hero{flex-wrap:wrap;gap:12px}
.hero>div{min-width:0}
.hero .date{display:block!important;text-align:left;font-size:13px}
  .hero h1{font-size:26px!important}
.clock-banner{flex-direction:column;gap:12px;align-items:flex-start!important}
  .summary,.team-cards,.personal-kpis,.main .wc-kpis,.main .op-project-kpis,.btw-overview-tiles,.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dashboard-grid,.bottom,.monthly-grid,.personal-grid,.two-col,.work-grid,.roles-layout,.roles-groups,.bc-metrics,.bc-cockpit-grid{grid-template-columns:minmax(0,1fr)!important}
  .personal-grid>article:last-child,.attendance-panel{grid-column:auto!important}
  .main :is(.wc-head,.finance-head,.bc-head,.roles-head,.bp-head,.bp-title,.btw-head){flex-wrap:wrap;gap:12px}
  .main :is(.wc-actions,.finance-actions,.bc-head-actions,.bp-tools,.bp-right-controls,.btw-filters){flex-wrap:wrap;min-width:0;max-width:100%}
  .main :is(.wc-page,.finance-page,.bc-page,.roles-page,.bp-page,.bpt-page){min-width:0;max-width:100%}
  .main :is(.wc-table-wrap,.table-wrap,.bc-table-wrap,.fm,.fn,.ii,.pp){max-width:100%;overflow-x:auto}
  .main :is(.btw-tabs,.bp-workflow-tabs,.tabs){max-width:100%;overflow-x:auto;flex-wrap:nowrap}
  .main :is(.btw-tabs,.bp-workflow-tabs,.tabs)>button{flex-shrink:0;min-height:44px}
  .op-project-filter-controls{grid-template-columns:minmax(0,1fr)!important}
  .main input,.main select,.main textarea{max-width:100%;font-size:16px!important}
  .modal,.wc-dialog,.bp-dialog,.bc-dialog,.fin2-dialog{max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow:auto}
  .modal-grid,.wc-grid,.bc-form-grid,.fin2-grid{grid-template-columns:minmax(0,1fr)!important}
  .profile-menu,.action-menu{right:12px!important;max-width:calc(100vw - 24px)!important}
  button:focus-visible{outline:3px solid var(--blue)!important;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}
}

/* ClickUp-inspired application design */
body,button,input,select,textarea { font-family:var(--font-ui) !important; }
.main :is(h1,h2,h3) { font-family:var(--font-ui) !important; color:var(--design-ink); letter-spacing:-.025em; }
.main h1 { font-weight:700 !important; line-height:1.15; }
.main :is(.wc-eyebrow,.bc-eyebrow,.roles-eyebrow,.bpt-eyebrow) { font-family:var(--font-mono) !important; color:var(--muted) !important; letter-spacing:.06em; }
.main :is(.card,.wc-kpi,.finance-kpi,.bc-metric,.roles-editor,.roles-people) { border-radius:12px !important; box-shadow:0 1px 3px #0000000a !important; border-color:var(--design-border) !important; }
.main :is(.summary .metric,.wc-kpi,.finance-kpi,.bc-metric) { background:var(--surface) !important; color:var(--design-ink) !important; }
.main :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border-radius:9px; border-color:var(--design-border); }
.main :is(input,select,textarea):focus-visible { outline:2px solid #6647f0 !important; outline-offset:2px; }
.main :is(.wc-btn,.finance-btn,.bp-btn,.clock-cta,.quick-btn,.bc-btn) { border-radius:9999px !important; }
body :is(.clock-cta,.finance-btn.primary,.wc-btn.primary,.bp-btn.primary,.quick-btn,#ai) { background:var(--design-ink) !important; color:var(--surface) !important; }
@media(max-width:479px) {
 .main :is(.summary,.team-cards,.personal-kpis,.wc-kpis,.op-project-kpis,.btw-overview-tiles,.finance-kpis) { grid-template-columns:minmax(0,1fr) !important; }
 .main :is(button,select,input:not([type=checkbox]):not([type=radio])) { min-height:44px; }
}
/* Shared metric surfaces across dashboards. */
.main .ops-kpis > .ops-kpi:nth-child(n), .main .work-kpis > .work-kpi:nth-child(n), .main .pitch-summary > article:nth-child(n), .main .finance-tracker-dashboard .ft-kpis > div:nth-child(n), .main .finance-tracker .ft-kpis > a:nth-child(n), .main .summary > .metric:nth-child(n), .main .wc-kpis > .wc-kpi:nth-child(n), .main .finance-kpis > .finance-kpi:nth-child(n), .main .bc-metrics > .bc-metric:nth-child(n) { background:var(--surface) !important; border-color:var(--design-border) !important; }
.main .ops-kpis > .ops-kpi:nth-child(1), .main .work-kpis > .work-kpi:nth-child(1), .main .pitch-summary > article:nth-child(1), .main .finance-tracker-dashboard .ft-kpis > div:nth-child(1), .main .finance-tracker .ft-kpis > a:nth-child(1), .main .summary > .metric:nth-child(1), .main .wc-kpis > .wc-kpi:nth-child(1), .main .finance-kpis > .finance-kpi:nth-child(1), .main .bc-metrics > .bc-metric:nth-child(1) { background:var(--design-lilac) !important; border-color:#dcd5ff !important; }

/* Component styles */
/* Overview styles formerly injected by features.js. */
.personal-grid{display:grid;grid-template-columns:.65fr 1.85fr .85fr;gap:20px}
.worked-ring,.mini-donut{width:132px;height:132px;margin:8px auto;display:grid;place-content:center;text-align:center;border-radius:50%;background:radial-gradient(circle at center,#fff 0 56%,transparent 57%),conic-gradient(#6647f0 0 12%,#e8e8e8 12% 100%)}
.worked-ring b,.mini-donut b{font:700 23px var(--font-ui)}
.worked-ring span,.mini-donut span{color:var(--muted);font-size:12px}
.hours-chart{height:115px;margin:9px 0 8px;padding:10px;display:flex;align-items:flex-end;gap:6px;background:repeating-linear-gradient(to bottom,transparent 0 34px,rgba(150,199,230,.12) 35px 36px)}
.hours-chart i{width:100%;background:#6647f0;border-radius:3px 3px 0 0;opacity:.75}
.hours-chart i:nth-child(1){height:35%}
.hours-chart i:nth-child(2){height:54%}
.hours-chart i:nth-child(3){height:76%}
.hours-chart i:nth-child(4){height:62%}
.hours-chart i:nth-child(5){height:90%}
.hours-chart i:nth-child(6){height:45%}
.hours-chart i:nth-child(7){height:70%}
.hours-chart i:nth-child(8){height:80%}
.hours-chart i:nth-child(9){height:50%}
.hours-chart i:nth-child(10){height:67%}
.hours-chart i:nth-child(11){height:56%}
.hours-chart i:nth-child(12){height:85%}
.hours-chart i:nth-child(13){height:40%}
.hours-chart i:nth-child(14){height:61%}
.hours-chart i:nth-child(15){height:75%}
.personal-attendance{display:flex;gap:15px;align-items:center;justify-content:center}
.mini-donut{width:105px;height:105px;background:radial-gradient(circle at center,#fff 0 56%,transparent 57%),conic-gradient(var(--teal) 0 78%,var(--blue) 78% 83%,var(--amber) 83% 94%,var(--red) 94%)}
.personal-attendance p{margin:7px 0;color:var(--text);font-size:13px}
.personal-attendance p i{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:6px}
.personal-attendance p b{float:right;margin-left:15px}
.personal-kpis{display:grid;grid-template-columns:repeat(7,1fr);gap:14px;margin-top:17px}
.amber-text{color:var(--amber)!important}
@media(max-width:1100px){.personal-grid{grid-template-columns:1fr 1fr}
.personal-grid>article:last-child{grid-column:span 2}
.personal-kpis{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:900px){.personal-grid{grid-template-columns:1fr}
.personal-grid>article:last-child{grid-column:auto}
.personal-kpis{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:620px){.personal-kpis{grid-template-columns:1fr 1fr}
}
/* work-section.js */
.work-project-filters{border:1px solid rgba(157,207,240,.18);background:rgba(8,43,70,.72);border-radius:13px;padding:13px 15px;margin:0 0 16px}
.project-filter-fields{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
.project-filter-fields label{display:grid;gap:5px;color:#9db8cf;font-size:11px;font-weight:700}
.project-filter-fields select,.project-filter-fields input{min-width:126px;background:#06243c;color:#f3f8fc;border:1px solid #2b5d7d;border-radius:8px;padding:9px 10px;font:12px var(--font-ui)}
.project-filter-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid rgba(157,207,240,.12);font-size:12px;color:#9db8cf}
.project-filter-actions>span{font-weight:700}
.work-view-toggle{display:flex;border:1px solid #2a5b7c;border-radius:9px;overflow:hidden;margin-left:auto}
.work-view-toggle button{background:#082b46;color:#a9c1d5;border:0;border-right:1px solid #2a5b7c;padding:8px 10px;font:700 12px var(--font-ui);cursor:pointer}
.work-view-toggle button:last-child{border-right:0}
.work-view-toggle button.active{background:#155b7f;color:var(--surface)}
.work-project-cards{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px}
.work-project-card{text-align:left;color:#e9f5fc;border:1px solid rgba(157,207,240,.2);background:#082b46;border-radius:11px;padding:15px;cursor:pointer;display:grid;gap:15px}
.work-project-card:hover{border-color:#37bfae;background:#0b3858}
.work-card-overline{font-size:10px;font-weight:800;letter-spacing:.08em;color:#71dfc8;text-transform:uppercase}
.work-project-card h2{font:700 16px var(--font-ui);margin:5px 0}
.work-project-card p{font-size:12px;color:#9db8cf;margin:0;line-height:1.45}
.work-project-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;font-size:11px;color:#91adc4}
.work-project-card-meta span{display:grid;gap:3px}
.work-project-card-meta b{color:#e8f4fc;font-size:12px}
.work-project-card footer{display:flex;justify-content:space-between;gap:8px;align-items:center}
.work-empty{display:grid;gap:5px;place-items:center;text-align:center;padding:34px;color:#a9c1d3;font-size:13px}
.work-empty b{color:#eaf5fc;font:600 16px var(--font-ui)}
@media(max-width:1050px){.work-project-cards{grid-template-columns:repeat(2,minmax(220px,1fr))}
}
@media(max-width:650px){.project-filter-actions{align-items:flex-start;flex-wrap:wrap}
.work-view-toggle{margin-left:0}
.work-project-cards{grid-template-columns:1fr}
.project-filter-fields label,.project-filter-fields select,.project-filter-fields input{width:100%}
}
.project-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}
.project-summary article{border:1px solid rgba(157,207,240,.18);border-radius:11px;background:rgba(8,43,70,.72);padding:12px 14px;display:grid;gap:4px}
.project-summary small{color:#9db8cf;font-size:11px;font-weight:700}
.project-summary b{font:700 22px var(--font-ui);color:#eaf5fc}
.project-summary .warn b{color:#ffd77a}
.project-summary .risk{border-color:rgba(255,121,144,.42);background:rgba(94,35,49,.34)}
.project-summary .risk b{color:#ff9cab}
.project-summary .risk span{font-size:10px;color:#ffb7c0}
.work-head .work-actions{align-items:center}
.work-head .work-link{padding:8px 2px;white-space:nowrap}
.project-portfolio-table{min-width:1240px}
.project-portfolio-table td{vertical-align:middle}
.project-portfolio-table td:nth-child(1),.project-portfolio-table td:nth-child(4){white-space:nowrap}
@media(max-width:850px){.project-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:560px){.project-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.project-summary{grid-template-columns:repeat(6,minmax(0,1fr))}
.project-request-summary{border-color:rgba(255,193,74,.42)!important;background:rgba(92,66,21,.26)!important}
.project-request-summary b{color:#ffd77a!important}
.project-request-summary span{font-size:10px;color:#ffd77a}
.setup-mode{margin-left:auto;margin-right:10px;background:#082b46;color:#eef8ff;border:1px solid #397293;border-radius:8px;padding:8px 10px;font:700 12px var(--font-ui)}
.field-add{position:relative}
.field-add .inside-field-add{position:absolute;right:5px;top:5px;bottom:5px;padding:0 8px;font-size:11px}
.field-add input{padding-right:54px}
.template-label{display:grid;gap:4px;color:#9db8cf;font-size:11px;font-weight:700}
.template-plus{padding:7px 9px!important}
.vendor-cost-list{display:grid;gap:5px;margin-top:8px;font-size:11px;color:#a9c5d7}
.vendor-cost-row{padding:6px 8px;border:1px solid rgba(139,203,229,.2);border-radius:7px;background:#082b46}
.work-form-head .setup-mode{margin-left:auto;margin-right:7px;padding:4px 24px 4px 8px}
.field-add .inside-field-add{position:absolute!important;top:-21px!important;right:0!important;bottom:auto!important;background:transparent!important;border:0!important;color:#61e1d1!important;padding:0!important;font-size:11px!important}
.vendor-editor{display:grid;gap:7px;margin-top:2px}
.vendor-editor-head{display:flex;justify-content:space-between;font-size:12px;color:#dceefa}
.vendor-editor-head button{border:0;background:transparent;color:#61e1d1;padding:0;font:inherit;cursor:pointer}
.vendor-editor-row{display:grid;grid-template-columns:1fr 130px 28px;gap:7px;align-items:center}
.vendor-editor-row button{border:0;background:transparent;color:#a9c5d7;font-size:18px;cursor:pointer}
.vendor-editor-add{justify-self:start;border:0;background:transparent;color:#61e1d1;padding:1px 0;font-size:12px;cursor:pointer}
.manager-picker{display:grid;gap:7px;margin-top:12px}
.manager-picker>b{font-size:13px}
.manager-trigger{min-height:44px;text-align:left;background:#062b46;color:#eaf5fc;border:1px solid #397293;border-radius:8px;padding:6px 34px 6px 9px;cursor:pointer;position:relative}
.manager-trigger:after{content:'⌄';position:absolute;right:12px;top:12px;color:#a8c8dc}
.manager-chip{display:inline-flex;align-items:center;gap:7px;margin:2px 5px 2px 0;padding:5px 8px;border-radius:7px;background:#123c59;color:#dff5ff;font-size:12px}
.manager-chip.is-primary{border:1px solid #55cbb8}
.manager-chip i{font-style:normal;font-weight:800;background:#236d68;padding:2px 5px;border-radius:4px}
.manager-chip .manager-remove{border:0;background:transparent;color:inherit;padding:0 0 0 2px;font-size:16px;line-height:12px;cursor:pointer}
.manager-dropdown{margin-top:7px!important;padding:10px!important;border:1px solid #397293;border-radius:9px;background:#062b46}
.manager-dropdown>small,.manager-dropdown>b{display:none}
.manager-search{width:100%;box-sizing:border-box;margin-bottom:8px}
.manager-choice{display:grid!important;grid-template-columns:20px 1fr auto;align-items:center;gap:8px;padding:7px 0}
.manager-choice .work-link{padding:2px!important}
.work-form-head>div>p{display:none}
.work-form-head .setup-mode{width:118px;min-height:30px;padding:4px 8px;font-size:11px}
.work-card-head .work-inline{gap:5px;align-items:end}
.work-card-head #setupTemplate{width:175px;min-height:32px}
.work-card-head .template-plus{order:1;height:32px;padding:4px 7px!important}
.work-card-head #setupApplyTemplate{order:2;height:32px;padding:5px 10px}
.team-workspace{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:14px}
.team-entry,.team-summary{border:1px solid rgba(139,203,229,.22);border-radius:9px;padding:12px}
.team-entry-title,.team-summary-title{font-size:12px;font-weight:800;margin-bottom:8px}
.team-entry-labels,.team-entry-row{display:grid;grid-template-columns:1fr 1fr 86px 24px;gap:7px;align-items:center}
.team-entry-labels{font-size:10px;color:#a9c5d7;margin-bottom:5px}
.team-entry-row{margin-bottom:7px}
.team-entry-row input[name=rate]{display:none}
.team-entry-row .remove-setup-row{grid-column:4}
.team-summary table{width:100%;border-collapse:collapse;font-size:11px}
.team-summary th{text-align:left;color:#a9c5d7;padding:0 5px 7px}
.team-summary td{border-top:1px solid rgba(139,203,229,.16);padding:7px 5px}
.team-summary td:last-child{text-align:right}
.setup-select-wrap{position:relative}
.setup-select-wrap>button{width:100%;min-height:38px;text-align:left;background:#062b46;color:#edf8ff;border:1px solid #397293;border-radius:8px;padding:9px 32px 9px 10px;font:12px var(--font-ui);cursor:pointer}
.setup-select-wrap>button:after{content:'⌄';position:absolute;right:11px;color:#a8c8dc}
.setup-select-menu{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 5px);padding:9px;border:1px solid #4d88a9;border-radius:9px;background:#07304e;box-shadow:0 10px 24px rgba(0,0,0,.32)}
.setup-select-menu input{width:100%;box-sizing:border-box;margin-bottom:7px}
.setup-select-menu button{display:block;width:100%;border:0;background:transparent;color:#e9f6ff;text-align:left;padding:8px;border-radius:6px;cursor:pointer}
.setup-select-menu button:hover{background:#15526f}
.field-add .inside-field-add,.field-add button[data-add-spoc],.field-add button[data-add-category]{position:absolute;top:-20px!important;right:0;background:transparent;border:0;color:#61e1d1;padding:0;font-size:11px}
.field-add input[hidden],.field-add select[hidden]{display:none}
.team-entry-row .allocation-search-wrap{position:relative}
.team-entry-row .allocation-search-trigger{width:100%;min-height:40px;text-align:left;background:#062b46;color:#edf8ff;border:1px solid #397293;border-radius:8px;padding:8px 28px 8px 10px;position:relative;cursor:pointer}
.team-entry-row .allocation-search-trigger:after{content:"⌄";position:absolute;right:10px}
.allocation-search-menu{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);background:#07304e;border:1px solid #4d88a9;border-radius:8px;padding:7px;box-shadow:0 10px 24px rgba(0,0,0,.32)}
.allocation-search-menu input{width:100%;box-sizing:border-box;margin-bottom:5px}
.allocation-search-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;color:#eaf5fc;padding:7px;cursor:pointer}
.allocation-search-menu button:hover{background:#15526f}
.vendor-cost-list{display:none!important}
.vendor-editor-row{grid-template-columns:minmax(210px,1fr) 150px 28px!important}
.vendor-editor-row input{min-height:42px}
.vendor-editor-rows:before{content:"Vendor Name                                      Vendor Cost";display:block;font-size:11px;color:#a9c5d7;margin-bottom:5px;white-space:pre}
.vendor-editor-head button{margin-left:auto}
.vendor-editor-head{align-items:center}
.work-form-section:has(.vendor-editor)>.modal-grid{display:block!important}
.work-form-section:has(.vendor-editor)>.modal-grid>label:has([name=revenue]){display:block;width:100%;margin-bottom:12px}
.work-form-section:has(.vendor-editor)>.modal-grid>label:has([name=directCost]){display:none!important}
.vendor-editor{margin:0!important;padding:12px!important;border:1px solid rgba(139,203,229,.22);border-radius:9px;background:#082b46}
.vendor-editor-head{margin-bottom:9px}
.vendor-editor-rows:before{content:none!important}
.vendor-editor-row{display:grid!important;grid-template-columns:minmax(0,1fr) 160px 26px!important;gap:9px!important}
.vendor-editor-row input{min-width:0;height:42px}
.vendor-editor-row:first-child button{visibility:hidden}
.vendor-editor-add{margin-top:4px}
.team-summary{padding:16px!important}
.team-summary th{padding:0 6px 9px!important}
.team-summary td{padding:9px 6px!important}
.team-summary-total{margin-top:8px;padding:10px 6px 0;font-size:12px}
.live-pnl .margin-green b{color:#68e5ca}
.live-pnl .margin-yellow b{color:#ffe092}
.live-pnl .margin-amber b{color:#f2bd62}
.live-pnl .margin-red b{color:#ff9ba0}
.live-pnl .estimated-value b{font-weight:800}
.team-entry-row .dept-picker-button,.team-entry-row .member-picker-button{width:100%;min-height:40px;text-align:left;background:#062b46;color:#edf8ff;border:1px solid #397293;border-radius:8px;padding:8px 28px 8px 10px;position:relative;font:inherit;cursor:pointer}
.team-entry-row .dept-picker-button:after,.team-entry-row .member-picker-button:after{content:"⌄";position:absolute;right:10px;color:#a8c8dc}
.member-choice{display:flex;align-items:center;gap:10px;padding:8px 0;color:#edf8ff;font-size:14px}
.member-choice input{width:18px;height:18px;accent-color:#4dcfc0}
.member-picker-content{max-height:360px;overflow:auto}
.member-picker-content>input{width:100%;box-sizing:border-box;margin-bottom:12px}
.member-picker-content small{display:block;padding:12px 0;color:#a9c5d7}
.team-entry-row{position:relative}
.inline-allocation-menu{position:absolute;z-index:50;padding:8px;border:1px solid #4d88a9;border-radius:9px;background:#07304e;box-shadow:0 10px 24px rgba(0,0,0,.36)}
.inline-allocation-menu input{width:100%;box-sizing:border-box;margin-bottom:6px}
.inline-allocation-menu button{display:block;width:100%;border:0;border-radius:6px;background:transparent;color:#eaf5fc;text-align:left;padding:8px;cursor:pointer}
.inline-allocation-menu button:hover{background:#15526f}
.inline-allocation-menu small{display:block;padding:8px;color:#a9c5d7}
.team-entry-row.manager-allocation .remove-setup-row{opacity:.42;cursor:not-allowed}
.team-entry-row.manager-allocation:before{content:"Project manager";position:absolute;right:33px;top:-11px;font-size:9px;color:#70dcc8;background:#082b46;padding:0 4px}
.team-entry-row.manager-allocation:before{display:none!important}
.team-entry-row.manager-allocation .dept-picker-button,.team-entry-row.manager-allocation .member-picker-button{opacity:.62;cursor:not-allowed;border-style:dashed}
.pm-badge{margin-left:5px;color:#68e5ca;font-size:10px;font-style:normal;font-weight:800}
.work-form-section:has(#livePnl)>.live-pnl{margin:0 0 14px}
.etd-date-field{display:grid;gap:6px;color:#c0d5e8;font-size:12px}
.etd-date-field input{width:100%;box-sizing:border-box}
.modal-grid .manager-picker{align-self:end;margin:0!important}
.modal-grid .manager-picker>b{display:block;margin:0 0 6px;font-size:12px;color:#c0d5e8}
.modal-grid .manager-picker{align-self:stretch!important;display:grid;grid-template-rows:14px 40px;gap:6px}
.modal-grid .manager-picker>b{margin:0!important;line-height:14px}
.modal-grid .manager-picker .manager-trigger{height:40px}
.modal.work-form{width:min(1120px,calc(100vw - 36px));max-height:92vh;overflow:auto;padding:20px;border-radius:18px;background:#082c48;box-shadow:0 28px 70px rgba(0,0,0,.46)}
.work-form-head{position:sticky;top:-20px;z-index:8;margin:-20px -20px 18px;padding:17px 20px 14px;background:#082c48;border-bottom:1px solid rgba(139,203,229,.18)}
.work-form-head h2{font-size:22px;letter-spacing:-.02em}
.work-form-head .setup-mode{border-radius:8px}
.work-form-grid{grid-template-columns:minmax(0,1.12fr) minmax(355px,.88fr);gap:16px;align-items:start}
.work-form-section{padding:16px;border:1px solid rgba(139,203,229,.18);border-radius:13px;background:rgba(5,37,60,.5)}
.work-form-section>h3{margin:0 0 14px;font-size:16px}
.modal-grid{gap:14px 12px}
.modal-grid>label,.etd-date-field{font-size:11px;font-weight:700;color:#b9d0df}
.modal-grid input,.modal-grid select,.etd-date-field input{min-height:40px;border-radius:8px}
.field-add{margin-top:5px}
.modal-grid .manager-picker>b{font-size:11px}
.modal-grid .manager-picker .manager-trigger{min-height:40px;border-radius:8px}
.work-form-section:has(#livePnl)>.live-pnl{padding:13px 14px;border-radius:10px;margin-bottom:14px}
.live-pnl>div{padding:8px 0}
.live-pnl>div:last-child{padding-bottom:0}
.vendor-editor{border-radius:10px!important}
.allocation-section{margin-top:16px}
.allocation-section .work-card-head{margin-bottom:12px}
.team-workspace{gap:14px;margin-top:12px}
.team-entry,.team-summary{border-radius:11px}
.modal-actions{position:sticky;bottom:-20px;z-index:7;margin:18px -20px -20px;padding:14px 20px;background:#082c48;border-top:1px solid rgba(139,203,229,.18)}
@media(max-width:850px){.modal.work-form{width:calc(100vw - 20px);max-height:96vh;padding:14px}
.work-form-head{top:-14px;margin:-14px -14px 14px;padding:14px}
.work-form-grid,.team-workspace{grid-template-columns:1fr}
.modal-actions{bottom:-14px;margin:14px -14px -14px;padding:12px 14px}
}
.project-viewer-label{margin:5px 0 0;color:#9eb8ce;font-size:12px}
.project-viewer-label b{color:#75ddca}
.project-viewer-context{margin:12px 0 15px;padding:10px 12px;border-radius:9px;font-size:12px;line-height:1.4}
.project-viewer-context.full{background:rgba(24,115,105,.19);border:1px solid rgba(65,210,191,.3);color:#b9eee2}
.project-viewer-context.limited{background:rgba(57,87,117,.22);border:1px solid rgba(126,191,230,.22);color:#c1d5e7}
.finance-billing-context{margin:6px 0 0;color:#9fc0d8;font-size:12px;line-height:1.4}
.work-child[hidden]{display:none!important}
/* project-acceptance.js */
.project-acceptance-panel{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 18px;padding:13px 15px;border:1px solid #e8d8a3;border-radius:11px;background:#fff8e5}
.project-acceptance-panel>div:first-child{display:grid;gap:4px}
.project-acceptance-panel small{color:#785900;font-size:10px;font-weight:800;letter-spacing:.08em}
.project-acceptance-panel b{font:700 15px var(--font-ui);color:var(--text)}
.project-acceptance-panel span{color:var(--muted);font-size:12px}
.project-acceptance-actions{display:flex;gap:8px;flex-wrap:wrap}
.project-issue-form{width:min(520px,calc(100vw - 30px));display:grid;gap:14px}
.project-issue-form>label{display:grid;gap:6px;color:var(--text);font-size:12px;font-weight:700}
.project-issue-form select,.project-issue-form textarea{box-sizing:border-box;width:100%;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px;font:13px var(--font-ui)}
.project-issue-form p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
@media(max-width:650px){.project-acceptance-panel{align-items:flex-start;flex-direction:column}
.project-acceptance-actions{width:100%}
.project-acceptance-actions button{flex:1}
}
/* project-form-refinements.js */

    .modal-grid .manager-picker { position: relative !important; align-self: start !important; grid-template-rows: 14px 40px !important; gap: 6px !important; }
    .modal-grid .manager-picker > b { margin: 0 !important; line-height: 14px !important; font-size: 11px !important; }
    .manager-picker .manager-dropdown { position: absolute !important; z-index: 50 !important; top: calc(100% + 6px) !important; left: 0 !important; right: 0 !important; box-sizing: border-box !important; max-height: 210px !important; overflow-y: auto !important; margin: 0 !important; }
    .manager-picker .manager-dropdown .manager-search { position: sticky; top: 0; z-index: 1; background: var(--surface); }
    .manager-required .manager-trigger { border-color: var(--red) !important; }
    .required-mark { color: var(--red); }
    .manager-required-message { display: block; grid-row: 3; color: var(--red); font-size: 10px; line-height: 1; }
    .vendor-field-headings { display: grid; grid-template-columns: minmax(0, 1fr) 160px 26px; gap: 9px; align-items: center; margin: 0 0 7px; color: var(--muted); font-size: 11px; font-weight: 700; }
    .vendor-field-headings > span:first-child { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
    .vendor-field-headings .vendor-new { border: 0; background: transparent; padding: 0; color: var(--purple); font: inherit; cursor: pointer; white-space: nowrap; }
    .unified-select-wrap { position: relative; }
    .unified-select-wrap > button { width: 100%; min-height: 40px; text-align: left; position: relative; background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 8px; padding: 9px 32px 9px 10px; font: 12px var(--font-ui); cursor: pointer; }
    .unified-select-wrap > button:disabled, .setup-select-wrap > button:disabled { opacity: .5; cursor: not-allowed; }
    .unified-select-wrap > button:after { content: '⌄'; position: absolute; right: 11px; color: var(--muted); }
    .unified-select-menu { position: absolute; z-index: 45; top: calc(100% + 5px); left: 0; right: 0; padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface); box-shadow: 0 10px 24px rgba(32,32,32,.14); }
    .unified-select-menu input { width: 100%; box-sizing: border-box; margin: 0 0 7px !important; }
    .unified-select-menu button { display: block; width: 100%; border: 0; border-radius: 6px; background: transparent; color: var(--text); text-align: left; padding: 8px; cursor: pointer; }
    .unified-select-menu button:hover { background: var(--design-lilac); }
    .team-locked-until-manager { position: relative; opacity: .48; }
    .team-locked-until-manager:after { content: 'Select a project manager to unlock team allocation.'; position: absolute; inset: 0; display: grid; place-items: center; padding: 18px; border-radius: 10px; background: rgba(248,249,250,.94); color: var(--muted); font-size: 12px; font-weight: 700; text-align: center; pointer-events: none; }
    .project-without-commercials .work-form-section:has(#livePnl) { display: none !important; }
    .project-pitch .modal-grid .wide { grid-column: 1 / -1; }
    .project-pitch textarea { width: 100%; box-sizing: border-box; resize: vertical; }
    .pitch-department-plan { display:grid; gap:8px; margin:14px 0; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--design-surface); }
    .pitch-plan-heading { display:grid; gap:3px; } .pitch-plan-heading small { color:var(--muted); font-size:11px; }
    .pitch-plan-labels,.pitch-plan-row { display:grid; grid-template-columns:1fr 110px 1.25fr 28px; gap:7px; align-items:center; }
    .pitch-plan-labels { color:var(--muted); font-size:10px; } .pitch-plan-row select,.pitch-plan-row input { min-width:0; min-height:40px; }
    .pitch-plan-row select[multiple] { min-height:64px; padding:5px; }
    .project-on-the-go .team-workspace { grid-template-columns: 1fr !important; }
    .project-on-the-go .allocation-section { margin: 0 !important; }
    .project-on-the-go .allocation-section > .work-card-head h3 { font-size: 16px; }
    .project-on-the-go .team-summary,
    .project-on-the-go .team-entry-labels span:nth-child(3),
    .project-on-the-go .team-entry-row [name="hours"] { display: none !important; }
    .project-on-the-go .team-entry-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 24px !important; }
    .project-on-the-go .team-entry-row .remove-setup-row { grid-column: 3 !important; }
    .project-on-the-go .team-workspace { display: flex !important; flex-direction: column !important; }
    .project-on-the-go .team-summary { display: block !important; order: -1; }
    .project-on-the-go .team-summary-title { font-size: 13px; }
    .project-on-the-go .team-summary-title { font-size: 0; }
    .project-on-the-go .team-summary-title:after { content: 'Selected team'; font-size: 13px; }
    .project-on-the-go .team-summary th:nth-child(n+3),
    .project-on-the-go .team-summary td:nth-child(n+3),
    .project-on-the-go .team-summary-total { display: none !important; }
    .project-on-the-go .team-locked-until-manager:after { content: 'Select a project manager to unlock team selection.'; }
    .department-member-menu { position: absolute; z-index: 55; left: 0; right: 0; top: calc(100% + 4px); padding: 7px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); box-shadow: 0 10px 24px rgba(32,32,32,.14); }
    .team-entry-row { position: relative; }
    .department-member-menu input { width: 100%; box-sizing: border-box; margin: 0 0 6px !important; }
    .department-member-menu button { display: block; width: 100%; border: 0; border-radius: 6px; background: transparent; color: var(--text); text-align: left; padding: 8px; cursor: pointer; }
    .department-member-menu button:hover { background: var(--design-lilac); }
    .department-member-menu small { display: block; padding: 8px; color: var(--muted); }
    .modal-actions .primary:disabled { opacity: .5; cursor: not-allowed; filter: saturate(.45); }
    .modal-grid > label { min-width: 0; }
    @media (max-width: 850px) { .vendor-field-headings { grid-template-columns: minmax(0, 1fr) 140px 26px; } }
    .live-pnl .estimated-value { border-bottom: 1px solid rgba(157, 207, 240, .12) !important; }
    .live-pnl > div:last-child { border-bottom: 0 !important; }
    .work-form-section:has(#livePnl) > .live-pnl { margin-top: 14px !important; }

.vendor-name-form{width:min(380px,calc(100vw - 32px));display:grid;gap:14px}
.vendor-name-form>label{display:grid;gap:6px;color:#c1d5e7;font-size:12px;font-weight:700}
.vendor-name-form input{min-height:40px;padding:9px;background:#062b46;color:#edf8ff;border:1px solid #397293;border-radius:8px}
.vendor-name-form p{margin:0;color:#a9c5d7;font-size:12px;line-height:1.45}
/* pitch-ops.js */
.pitch-form{width:min(860px,calc(100vw - 28px))}
.pitch-form .wide{grid-column:1/-1}
.pitch-form textarea{width:100%;box-sizing:border-box}
.pitch-row{display:grid;grid-template-columns:1fr 130px 1.25fr 28px;gap:8px;align-items:center;margin:8px 0}
.pitch-row.labels{font-size:11px;color:#a9c5d7}
.pitch-row select,.pitch-row input{min-width:0}
.pitch-row select[multiple]{min-height:62px}
.pitch-row button{border:0;background:transparent;color:#b9d0df;font-size:19px;cursor:pointer}

/* ClickUp-inspired shell and interactive states */
.sidebar { background:#fff !important; border-color:#e8e8e8 !important; }
#nav button, #nav .work-child { font-size:14px; font-weight:600; border-radius:9999px !important; }
#nav button.active, #nav .work-child.active, #nav .finance-subnav button.active { background:#f0edff !important; color:#4d32c0 !important; box-shadow:none !important; }
#nav button.active .nav-icon, #nav .work-child.active .nav-icon { color:#6647f0 !important; }
#nav button:hover:not(.active), #nav .work-child:hover:not(.active) { background:#f8f9fa !important; color:#202020 !important; }
.topbar { border-color:#e8e8e8 !important; box-shadow:none !important; }
.profile .avatar, .project .avatar { background:#f0edff !important; color:#5032c5 !important; }
.hero h1 { letter-spacing:-.035em !important; }
.hero p, .date { color:#646464 !important; }
.clock-banner { background:#f8f9fa !important; border-color:#e8e8e8 !important; border-radius:12px !important; }
.metric-icon { background:#f0edff !important; color:#6647f0 !important; border-radius:10px !important; }
.ai i { color:#bdaeff !important; }
body :is(.main a,.main .link,.wc-link,.work-link,.ops-link,.op-link-list a) { color:#006fc4 !important; }
body :is(input,select,textarea,button):focus-visible { outline:2px solid #6647f0 !important; outline-offset:2px; }
.chart .bar { background:linear-gradient(to top,#16c0a4 0 32%,#0091ff 32% 58%,#6647f0 58% 78%,#d14b58 78%) !important; }
.donut { background:conic-gradient(#16c0a4 0 77%,#0091ff 77% 88%,#6647f0 88% 96%,#d14b58 96%) !important; }
#nav button.active span:not(.nav-icon), #nav .work-child.active span:not(.nav-icon) { color:#4d32c0 !important; }
#profileBtn .avatar, .main .project .avatar { background:#f0edff !important; color:#5032c5 !important; border-color:#ddd5ff !important; }

.legend .indicator-amber, .attendance .indicator-amber { background:#6647f0; }
.legend .indicator-red, .attendance .indicator-red { background:#d14b58; }
.main :is(.avatar,.bp-avatar,.bpt-avatar,.btw-avatar,.hr-avatar,.wc-avatar,.roles-avatar,.pv-avatars span,.tiny-avatar,.member-avatar,.avatar-stack i,.performer .small-avatar) { background:#f0edff !important; color:#5032c5 !important; border-color:#ddd5ff !important; }

/* Customer and vendor directory */
.finance-page:has(.fm) { background:#fff !important; }
.fm { gap:18px; }
.fm .finance-head { margin-bottom:4px; align-items:flex-end; }
.fm .finance-head h1 { font-size:30px; letter-spacing:-.035em; }
.fm .finance-head h1::before { content:'FINANCE / DIRECTORY'; display:block; margin-bottom:8px; color:#646464; font:700 10px var(--font-mono); letter-spacing:.08em; }
.fm .finance-head p { font-size:13px; line-height:1.5; }
.fm-tabs { gap:8px; padding:0; border:0; overflow-x:auto; }
.fm-tabs button { flex:none; padding:9px 13px; border:1px solid #e8e8e8 !important; border-radius:9999px; font-size:13px; line-height:1; }
.main .fm-tabs button.active { background:#202020 !important; color:#fff !important; border-color:#202020 !important; }
.fm-tabs b { display:inline-block; min-width:18px; margin-left:8px; padding:3px 5px; background:#f0f0f2; color:#646464; text-align:center; font-size:11px; }
.main .fm-tabs button.active b { background:#eeeaff !important; color:#5032c5 !important; }
.fm-search { background:#f8f9fa; border-color:#e8e8e8; box-shadow:none; }
.fm-search label { font-size:12px; font-weight:600; }
.fm-search input { background:#fff; border-color:#d4d4d8; border-radius:9px; font:400 13px var(--font-ui); }
.fm-table { border-color:#e8e8e8; border-radius:12px; box-shadow:0 1px 2px rgba(9,12,29,.04); }
.fm-table th { font-size:11px; text-transform:uppercase; letter-spacing:.04em; }
.fm-table td { font-size:13px; }
.fm-table tbody tr:last-child td { border-bottom:0; }
.fm-actions .finance-btn { border-radius:9999px; }
.fm-actions [data-fm-delete]:hover { color:#a52e2e; border-color:#e6b8bd; background:#fbeaec !important; }
@media(max-width:650px) { .fm .finance-head { display:block; } .fm-tabs { padding-bottom:2px; } }
.fm-radio label { display:inline-flex; align-items:center; gap:6px; }
.fm-radio input[type=radio] { width:auto !important; margin:0; accent-color:#6647f0 !important; }

/* Unified Finance controls and surfaces */
.finance-page :is(.finance-request-tabs,.fac-tabs,.fm-tabs,.ii-tabs,.fn-tabs,.pp-tabs,.rr-tabs,.fset-term-tabs,.fs-tabs,.sp-tabs,.nn-tabs,.client-po-tabs,.ii-po-tabs) { display:flex; flex-wrap:nowrap; gap:8px; max-width:100%; overflow-x:auto; border:0; padding:0 0 3px; }
.finance-page :is(.finance-request-tabs,.fac-tabs,.fm-tabs,.ii-tabs,.fn-tabs,.pp-tabs,.rr-tabs,.fset-term-tabs,.fs-tabs,.sp-tabs,.nn-tabs,.client-po-tabs,.ii-po-tabs) button { flex:none; min-height:36px; padding:8px 13px; border:1px solid #e8e8e8 !important; border-radius:9999px !important; background:#fff !important; color:#202020 !important; font:600 13px var(--font-ui); white-space:nowrap; box-shadow:none !important; }
.finance-page :is(.finance-request-tabs,.fac-tabs,.fm-tabs,.ii-tabs,.fn-tabs,.pp-tabs,.rr-tabs,.fset-term-tabs,.fs-tabs,.sp-tabs,.nn-tabs,.client-po-tabs,.ii-po-tabs) button.active { background:#202020 !important; border-color:#202020 !important; color:#fff !important; }
.finance-page :is(.finance-request-tabs,.fac-tabs,.fm-tabs,.ii-tabs,.fn-tabs,.pp-tabs,.rr-tabs,.fset-term-tabs,.fs-tabs,.sp-tabs,.nn-tabs,.client-po-tabs,.ii-po-tabs) button:hover:not(.active) { background:#f8f9fa !important; }
.finance-page .fm-tabs button.active b { background:#eeeaff !important; color:#5032c5 !important; }
.finance-page .fst-summary span, .finance-page :is(.fst-list-head p,.fset-static,.pp-hint,.pp-table td small) { color:#646464 !important; }
.finance-page .fst-bar i b { background:#6647f0; }
.finance-page :is(.finance-head h1,.finance-request-inbox h1) { letter-spacing:-.035em; }
.finance-page :is(.finance-btn,.finance-actions button) { border-radius:9999px; }
.finance-page :is(.finance-card,.finance-kpi,.fd-card,.fst-chart,.fst-summary>div,.fset-panel,.ii-kpis,.ii-search,.ii-table,.pp-metrics,.pp-table,.rr-report,.fn-list) { border-color:#e8e8e8; border-radius:12px; }
.finance-page :is(input,select,textarea) { accent-color:#6647f0; }
.finance-page .fset-nav button.active { background:#f0edff !important; color:#4d32c0 !important; }
.finance-page .fset-nav button:not(.active):hover { background:#f8f9fa !important; }

/* Keep Finance editors within the viewport and their fields within each column. */
:is(.ii-backdrop,.pp-backdrop) { padding:14px; box-sizing:border-box; }
:is(.ii-editor,.pp-editor) { box-sizing:border-box; max-width:100%; max-height:calc(100dvh - 28px); min-height:0; margin:auto; }
:is(.ii-top,.ii-bottom,.pp-form) { grid-template-columns:repeat(2,minmax(0,1fr)); }
:is(.ii-top,.ii-bottom,.pp-form) section { min-width:0; box-sizing:border-box; }
:is(.ii-top,.ii-bottom,.pp-form) label { grid-template-columns:minmax(0,122px) minmax(0,1fr); }
:is(.ii-editor,.pp-editor) :is(input,select,textarea) { box-sizing:border-box; min-width:0; max-width:100%; color-scheme:light; }
@media(max-width:900px) {
  :is(.ii-backdrop,.pp-backdrop) { padding:0; }
  :is(.ii-editor,.pp-editor) { width:100%; height:100dvh; max-height:100dvh; border-radius:0; }
  :is(.ii-top,.ii-bottom,.pp-form) { grid-template-columns:minmax(0,1fr); }
  :is(.ii-editor,.pp-editor) footer { flex-wrap:wrap; }
}
@media(max-width:500px) {
  :is(.ii-top,.ii-bottom,.pp-form) label { grid-template-columns:minmax(0,1fr); gap:5px; }
}
.finance-page .fac-page .finance-head p { color:#6647f0; }

/* ClickUp palette, softened for dashboard surfaces. */
:root { --accent-violet-soft:#f0edff; --accent-blue-soft:#edf7ff; --accent-mint-soft:#eafaf4; --accent-pink-soft:#fceef8; }
.main :is(.summary,.team-cards,.personal-kpis,.ops-kpis,.work-kpis,.wc-kpis,.finance-kpis,.bc-metrics,.pitch-summary,.fac-kpis,.fd-kpis,.btw-overview-tiles) > :not(.active):not(.selected):not([aria-pressed="true"]):nth-child(4n+1) { background:var(--accent-violet-soft) !important; border-color:#ddd6ff !important; }
.main :is(.summary,.team-cards,.personal-kpis,.ops-kpis,.work-kpis,.wc-kpis,.finance-kpis,.bc-metrics,.pitch-summary,.fac-kpis,.fd-kpis,.btw-overview-tiles) > :not(.active):not(.selected):not([aria-pressed="true"]):nth-child(4n+2) { background:var(--accent-blue-soft) !important; border-color:#d1eaff !important; }
.main :is(.summary,.team-cards,.personal-kpis,.ops-kpis,.work-kpis,.wc-kpis,.finance-kpis,.bc-metrics,.pitch-summary,.fac-kpis,.fd-kpis,.btw-overview-tiles) > :not(.active):not(.selected):not([aria-pressed="true"]):nth-child(4n+3) { background:var(--accent-mint-soft) !important; border-color:#c9f1e0 !important; }
.main :is(.summary,.team-cards,.personal-kpis,.ops-kpis,.work-kpis,.wc-kpis,.finance-kpis,.bc-metrics,.pitch-summary,.fac-kpis,.fd-kpis,.btw-overview-tiles) > :not(.active):not(.selected):not([aria-pressed="true"]):nth-child(4n) { background:var(--accent-pink-soft) !important; border-color:#f6d5ec !important; }
.summary .metric:nth-child(4n+2) .metric-icon { background:#d8eeff !important; color:#006cb8 !important; }
.summary .metric:nth-child(4n+3) .metric-icon { background:#d1f4e5 !important; color:#087957 !important; }
.summary .metric:nth-child(4n) .metric-icon { background:#f9d9ef !important; color:#a22d80 !important; }
.main :is(.progress i,.progress span,.bar-fill,.ft-progress span) { background-color:#6647f0; }
.main .op-project-kpis .wc-kpi.selected { background:#f0edff !important; border-color:#6647f0 !important; box-shadow:inset 0 0 0 1px #6647f0 !important; }

.sample-data-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:9999px;background:#f0edff;color:#4d32c0;font:700 11px var(--font-ui);white-space:nowrap}
@media(max-width:650px){.sample-data-badge{font-size:10px;padding:5px 7px}}

/* Shared sign-in surface for Evolute OS. */
.connection-login{width:min(420px,calc(100% - 32px));margin:10vh auto;padding:28px;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 45px #6647f00d}
.connection-login>img{width:150px;margin-bottom:24px}.connection-login h1{font-size:28px;letter-spacing:-.04em}.connection-login p{color:var(--muted);line-height:1.5}
.connection-login form,.connection-login label{display:grid;gap:8px}.connection-login form{gap:18px}.connection-login input{min-width:0;width:100%;padding:10px;border:1px solid #d4d4d4;border-radius:9px;background:#fff;color:#202020;font:14px var(--font-ui)}
.connection-login [role=alert]{color:#a02d39;overflow-wrap:anywhere}

/* Authentication and persistence belong to the original Evolute OS shell. */
.native-locked>.shell{display:none!important}
#nativeSaveStatus{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:100000;max-width:calc(100% - 24px);padding:10px 16px;border:1px solid #d4d4d8;border-radius:10px;background:#fff;color:#202020;font:12px var(--font-ui);box-shadow:0 4px 20px #0002}
#nativeSaveStatus.error{background:#fff2f2;border-color:#b33030;color:#8b2020}#nativeSaveStatus button{margin-left:12px;padding:7px;border:1px solid currentColor;background:#fff;border-radius:6px}
.native-save-failed .main{pointer-events:none;opacity:.65}
.native-locked>button,.native-locked>.modal-backdrop,.native-locked>.action-menu,.native-locked>.profile-menu{display:none!important}
.native-chart-column{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:7px;text-align:center}.native-chart-column>i{display:block;width:60%;min-width:12px;background:#6647f0;border-radius:5px 5px 0 0}.native-chart-column>small{font-size:10px;color:#646464;min-height:28px}
.native-capability{display:flex;align-items:center;gap:8px;padding:10px 0}.native-capability input[type=checkbox]{width:18px;height:18px}.roles-page fieldset{border:1px solid var(--line);border-radius:10px;margin:18px 0;padding:14px}
.native-pending .toast,.native-save-failed .toast{display:none!important}

.pl-form-steps button.active { background:var(--design-lilac)!important; border-color:var(--purple)!important; color:var(--text)!important; box-shadow:none; }
.pl-form-steps button.active span { color:#4d32c0!important; }

/* Planning navigation uses the same compact pills as the rest of the app. */
.bandwidth-planning-page :is(.bp-workflow-tabs,.bp-agenda-departments,.bp-view-toggle) { display:flex; gap:8px; max-width:100%; overflow-x:auto; border:0; border-radius:0; background:transparent; padding:0 0 4px; }
.main .bandwidth-planning-page :is(.bp-workflow-tabs,.bp-agenda-departments,.bp-view-toggle) > button { flex:none; min-height:36px; padding:8px 13px; border:1px solid var(--line)!important; border-radius:9999px!important; background:var(--surface)!important; color:var(--text)!important; font:600 13px var(--font-ui); white-space:nowrap; box-shadow:none!important; }
.main .bandwidth-planning-page :is(.bp-workflow-tabs,.bp-agenda-departments,.bp-view-toggle) > button.active { background:#202020!important; border-color:#202020!important; color:#fff!important; }
.main .bandwidth-planning-page :is(.bp-workflow-tabs,.bp-agenda-departments,.bp-view-toggle) > button:hover:not(.active) { background:var(--design-surface)!important; }
.main .bandwidth-planning-page :is(.bp-workflow-tabs,.bp-agenda-departments,.bp-view-toggle) > button:focus-visible { outline:2px solid #6647f0; outline-offset:2px; }

/* Shared header: quiet secondary actions and one primary action. */
.topbar { min-height:68px; height:auto; padding-block:10px; gap:12px; }
.topbar .actions { min-width:0; gap:8px; flex-wrap:nowrap; }
.topbar .actions > span:last-of-type:not(.bell):not(.sample-data-badge) { display:none; }
.topbar .actions :is(#ai,#clockBtn,#quickBtn,.header-signout) {
  position:static; display:inline-flex; align-items:center; justify-content:center;
  min-width:0; min-height:38px; padding:8px 13px!important; border:1px solid #e8e8e8!important;
  border-radius:9999px; background:#fff!important; color:#202020!important;
  font:600 12px/1.2 var(--font-ui)!important; white-space:nowrap;
}
.topbar .actions #quickBtn { background:#202020!important; color:#fff!important; border-color:#202020!important; }
.topbar .actions :is(#ai,#clockBtn,.header-signout):hover:not(:disabled) { background:#f8f9fa!important; }
.topbar .actions #quickBtn:hover { background:#33343a!important; }
.topbar .actions :is(button,.bell,.profile):focus-visible { outline:2px solid #6647f0; outline-offset:3px; }
.topbar .actions #clockBtn:disabled { color:#646464!important; cursor:not-allowed; }
.topbar .actions .sample-data-badge { padding:0 4px; background:transparent; color:#646464; font:600 11px var(--font-ui); }
.topbar .actions .sample-data-badge::before { content:''; display:inline-block; width:6px; height:6px; margin-right:6px; border-radius:50%; background:#00a86b; }
.topbar .actions .bell { display:grid; place-items:center; width:34px; height:38px; flex:none; border-radius:9999px; font-size:18px; cursor:pointer; }
.topbar .actions .bell .badge { top:0; right:0; }
.topbar .actions .profile { gap:8px; min-width:0; padding:2px 4px; font-size:12px; line-height:1.35; }
.topbar .actions .profile .avatar { width:36px; height:36px; font-size:12px; }
.topbar .actions .profile div { max-width:150px; overflow:hidden; text-overflow:ellipsis; }
.topbar .actions .profile small { font-size:11px; }
@media(max-width:1050px) { .topbar .actions .profile div { display:none; } }
@media(max-width:760px) {
  .topbar { align-items:center!important; }
  .topbar .actions { flex-wrap:wrap; justify-content:flex-end; gap:6px!important; }
  .topbar .actions :is(#ai,#clockBtn,#quickBtn,.header-signout) { min-height:36px; padding:7px 10px!important; font-size:11px!important; }
  .topbar .actions .sample-data-badge { font-size:10px; }
  .topbar .actions .bell { width:32px; height:36px; }
}
