:root{--ink:#26302d;--muted:#82908a;--line:#e5ebe5;--paper:#fbfcfa;--white:#fff;--forest:#24443c;--forest-2:#39695a;--cream:#f1f4ef;--critical:#b65b49;--shadow:0 10px 30px rgba(40,64,53,.06)}
*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:13px Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;flex:0 0 248px;min-height:100vh;background:#f0f3ee;border-right:1px solid #e0e7df;padding:22px 14px;display:flex;flex-direction:column;position:sticky;top:0}.brand-lockup{display:flex;align-items:center;gap:10px;padding:0 9px 20px}.brand-lockup>div:last-child{display:flex;flex-direction:column;gap:3px}.brand-lockup strong{font-size:14px;letter-spacing:-.03em}.brand-lockup span{font-size:9px;color:#8b9890;text-transform:uppercase;letter-spacing:.12em}.brand-mark{width:34px;height:34px;display:grid;place-items:center;background:var(--forest);color:#fff;border-radius:11px 11px 11px 4px;font-size:11px;font-weight:700;box-shadow:0 6px 14px rgba(36,68,60,.15)}.workspace{display:flex;align-items:center;gap:8px;margin:0 3px 20px;padding:10px;border:1px solid #dfe7de;border-radius:9px;background:#e8eee7}.workspace i{width:8px;height:8px;border-radius:50%;background:#7da487;box-shadow:0 0 0 3px #d5e6d8}.workspace div{display:flex;flex:1;flex-direction:column;gap:3px}.workspace strong{font-size:10px}.workspace span{color:#95a09a;font-size:9px}.nav-label{color:#98a49d;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;padding:0 10px 7px}.nav-group{margin-bottom:18px}.nav-item{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;margin:2px 0;border:0;border-radius:7px;background:transparent;color:#69776f;text-align:left;font-size:11px}.nav-item:hover{background:#e5ece4;color:var(--forest)}.nav-item.active{background:var(--forest);color:#fff;box-shadow:0 5px 13px rgba(36,68,60,.12)}.nav-icon{width:16px;text-align:center;font-size:14px}.nav-badge{margin-left:auto;min-width:18px;height:18px;display:grid;place-items:center;border-radius:9px;background:#e6a28d;color:#70382e;font-size:9px;font-weight:700}.sidebar-bottom{margin-top:auto}.coverage{margin:0 3px 13px;padding:11px;background:#fff;border:1px solid var(--line);border-radius:9px}.coverage>div{display:flex;justify-content:space-between;color:#5f6e65;font-size:10px;font-weight:700}.coverage>div span{color:#649173}.meter{height:5px;margin:10px 0 7px;background:#eef2ed;border-radius:5px;overflow:hidden}.meter i{display:block;width:92%;height:100%;background:#7ea88b;border-radius:inherit}.coverage small{color:#a2aca5;font-size:9px}.user-chip{display:flex;align-items:center;gap:8px;padding:12px 7px 0;border-top:1px solid #dce5dc}.avatar{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-size:8px;font-weight:700;color:#5c6d63;background:#eee9f4}.avatar.small{width:23px;height:23px}.avatar.peach{background:#fbefdf}.avatar.blue{background:#e5f0f2}.user-chip div{display:flex;flex:1;flex-direction:column;gap:3px;min-width:0}.user-chip strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip span{font-size:9px;color:#9ca7a1}.user-chip a{color:#9ba69f;text-decoration:none;font-size:10px}.main{flex:1;min-width:0}.topbar{height:64px;padding:0 34px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:rgba(251,252,250,.95)}.crumb{display:flex;align-items:center;gap:8px;color:#a1aaa4;font-size:10px}.crumb strong{color:#53645a}.top-actions{display:flex;align-items:center;gap:15px}.search{display:flex;align-items:center;gap:7px;width:220px;height:31px;padding:0 9px;border:1px solid #e6ece6;background:#f4f6f2;border-radius:7px;color:#9ba59f}.search input{width:100%;border:0;outline:0;background:transparent;font-size:10px}.top-actions a{color:#819087;text-decoration:none;font-size:18px}.page{max-width:1450px;margin:0 auto;padding:32px 34px 50px}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow,.kicker{color:#8e9b93;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:700}.heading h1{color:var(--forest);font-size:34px;letter-spacing:-.06em;line-height:1.05;margin:8px 0}.heading p{max-width:650px;color:#7e8b83;line-height:1.6;font-size:11px;margin:0}.actions{display:flex;gap:8px}.button{height:33px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border-radius:7px;border:1px solid var(--line);background:#fff;color:#68766e;font-size:10px;font-weight:700;text-decoration:none}.button-primary{background:var(--forest);border-color:var(--forest);color:#fff;box-shadow:0 5px 12px rgba(36,68,60,.12)}.button-primary:hover{background:#315b4e}.button-wide{width:100%;height:38px}.button-danger{background:#fbefeb;border-color:#f1d8d0;color:#a15849}.banner{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:14px;background:#f9eeea;border:1px solid #f0ded6;border-radius:9px}.banner-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:#cd8068;color:#fff;font-weight:700}.banner div:nth-child(2){display:flex;flex:1;flex-direction:column;gap:3px}.banner strong{color:#7c493d;font-size:10px}.banner span{color:#a56e60;font-size:9px}.banner a{color:#945b4d;font-size:9px;font-weight:700;text-decoration:none}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.stat,.panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.stat{min-height:104px;padding:14px;display:flex;align-items:center;gap:10px}.stat-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;font-size:16px;background:#e7f0e8;color:#638d70}.stat-icon.peach{background:#fbefe2;color:#a77a50}.stat-icon.lilac{background:#eee9f4;color:#776a8b}.stat-icon.blue{background:#e8f0f2;color:#547d83}.stat-copy{display:flex;flex-direction:column;gap:3px}.stat-copy span{color:#7e8c83;font-size:9px}.stat-copy strong{color:var(--forest);font-size:24px;letter-spacing:-.05em;line-height:1}.stat-copy small{color:#a0aaa4;font-size:9px}.stat-trend{align-self:flex-start;margin-left:auto;color:#bd7963;font-size:9px;font-weight:700}.stat-trend.good{color:#649173}.grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,.8fr);gap:15px}.panel{overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 14px}.panel-head h2{color:var(--forest);font-size:15px;letter-spacing:-.04em;margin:5px 0 0}.panel-head p{color:#9ca6a0;font-size:9px;line-height:1.45;margin:6px 0 0}.panel-head a{color:#6b9279;text-decoration:none;font-size:9px;font-weight:700}.table-scroll{overflow-x:auto}.table{width:100%;min-width:650px;border-collapse:collapse}.table th{padding:9px 12px;text-align:left;border-top:1px solid #eff2ee;border-bottom:1px solid #edf0eb;background:#fafbf9;color:#a0aaa4;text-transform:uppercase;letter-spacing:.08em;font-size:8px}.table th:first-child,.table td:first-child{padding-left:18px}.table td{padding:11px 12px;border-bottom:1px solid #f0f2ef;color:#77857c;font-size:9px;vertical-align:middle}.table tr:last-child td{border-bottom:0}.task-cell{display:flex;gap:8px;align-items:flex-start}.task-cell>div{display:flex;flex-direction:column;gap:3px}.task-cell strong{color:#5b6b61;font-size:10px;line-height:1.3}.task-cell span{color:#a2aca5;font-size:8px}.dot{width:7px;height:7px;margin-top:4px;border-radius:50%;background:#bdcbc0}.dot.critical{background:#ca725d;box-shadow:0 0 0 3px #faece8}.dot.urgent{background:#d9a061;box-shadow:0 0 0 3px #fbf0e3}.pill{display:inline-flex;padding:4px 7px;border-radius:20px;white-space:nowrap;font-size:8px;font-weight:700}.pill.sage{background:#e7f0e8;color:#5f896c}.pill.blue{background:#e8f1f2;color:#527b81}.pill.lilac{background:#eeeaf4;color:#786b8c}.pill.coral{background:#faeae5;color:#aa6959}.pill.peach{background:#fbf0e2;color:#a5784f}.status{display:inline-flex;padding:5px 7px;border:0;border-radius:5px;font-size:8px;font-weight:700}.status.in-production{background:#e6f0e8;color:#5f896c}.status.ready-for-quality-check{background:#eeeaf3;color:#776a8a}.status.assigned{background:#edf0ee;color:#6c7971}.status.waiting-for-materials{background:#f9ece6;color:#aa6957}.status.materials-being-prepared{background:#fbf0e3;color:#a5784e}.status.completed{background:#e8f0e9;color:#66856e}.owner{display:flex;align-items:center;gap:6px;white-space:nowrap}.due{color:#6f7e75;font-weight:700;font-size:10px}.due.urgent{color:#aa604f}.due small{display:block;color:#a2aca5;font-size:8px;margin-top:3px;font-weight:400}.area-list{padding:0 18px 15px}.area-row{display:flex;gap:9px;margin:9px 0 16px}.area-symbol{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;font-size:10px;font-weight:700}.area-symbol.sage{background:#e7f0e8;color:#5f896c}.area-symbol.blue{background:#e8f1f2;color:#527b81}.area-symbol.lilac{background:#eeeaf4;color:#786b8c}.area-symbol.coral{background:#faeae5;color:#aa6959}.area-symbol.peach{background:#fbf0e2;color:#a5784f}.area-main{flex:1}.area-main>div:first-child{display:flex;justify-content:space-between;margin-bottom:7px}.area-main strong{color:#5d6d63;font-size:10px}.area-main span{display:block;color:#a3ada6;font-size:8px;margin-top:3px}.bar{height:5px;background:#eef2ed;border-radius:5px;overflow:hidden}.bar i{display:block;height:100%;background:#82a98d;border-radius:inherit}.bar i.blue{background:#84aab0}.bar i.lilac{background:#a798bb}.bar i.coral{background:#d49785}.bar i.peach{background:#d5aa77}.panel-link{display:block;padding:12px 18px;border-top:1px solid #eef1ed;color:#6b9279;text-decoration:none;font-size:9px;font-weight:700}.lower{display:grid;grid-template-columns:1.1fr .9fr;gap:15px;margin-top:15px}.deadline-list,.handover{padding:0 18px 15px}.deadline{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #eff2ee}.deadline:first-child{border-top:0}.deadline-time{width:48px;display:flex;flex-direction:column;gap:3px}.deadline-time strong{color:var(--forest);font-size:11px}.deadline-time span{color:#a2aca5;font-size:8px}.deadline-label{flex:1;display:flex;align-items:center;gap:7px;min-width:0}.deadline-label strong{color:#617067;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deadline-state{color:#6b9279;font-size:8px;font-weight:700}.deadline-state.critical{color:#b26150}.handover{display:flex;flex-direction:column;gap:10px}.handover-people{display:flex;align-items:center;gap:8px;padding-bottom:11px;border-bottom:1px solid #eff2ee}.handover-people>div{display:flex;align-items:center;gap:6px}.handover-people span{display:flex;flex-direction:column;gap:3px}.handover-people small{color:#a4ada7;font-size:8px}.handover-people strong{color:#63736a;font-size:9px}.handover-note{color:#9ba6a0;font-size:9px;line-height:1.5;font-style:italic}.activity{display:flex;align-items:center;gap:18px;margin-top:15px;padding:12px 15px;background:#f1f4ef;border:1px solid #e1e9e1;border-radius:9px}.activity strong{color:#53665a;font-size:10px}.activity p{margin:0;color:#7e8b83;font-size:8px}.activity small{color:#a2aca5;font-size:8px}.activity-list{display:flex;flex:1;gap:22px}.activity-item{display:flex;align-items:center;gap:6px}.activity-item>div{display:flex;flex-direction:column;gap:3px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label,.auth-card label{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;color:#63736a;font-size:10px;font-weight:700}.form-grid input,.form-grid select,.form-grid textarea,.auth-card input{width:100%;padding:9px 10px;border:1px solid #dfe7df;border-radius:6px;background:#fcfdfb;color:#52635a;outline:0;font-size:11px;font-weight:400}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.auth-card input:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:#f0f3ee}.auth-card{width:min(410px,100%);padding:28px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px rgba(36,68,60,.1)}.auth-card .brand-lockup{padding:0 0 28px}.auth-eyebrow{color:#8d9991;font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.auth-card h1{color:var(--forest);font-size:27px;letter-spacing:-.05em;margin:8px 0}.auth-intro{color:#829087;font-size:11px;line-height:1.55;margin:0 0 23px}.auth-footnote{color:#a1aba4;text-align:center;font-size:9px;margin:18px 0 0}.alert{padding:10px;border-radius:7px;margin-bottom:14px;font-size:10px}.alert-error{background:#faece8;color:#a55c4d;border:1px solid #f1d9d1}.alert-success{background:#e8f1e8;color:#60896c;border:1px solid #d8e8da}.notice{padding:12px 14px;margin-bottom:15px;border-radius:8px;background:#eef4ef;color:#698b73;border:1px solid #dce9dd;font-size:10px}.section-gap{margin-top:15px}.role-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:0 18px 18px}.role-card{padding:12px;border:1px solid #e7eee8;border-radius:8px;background:#fbfcfa}.role-card.technical{background:#f7f3ee;border-color:#ece1d4}.role-card>div{display:flex;justify-content:space-between;color:#91a097;font-size:8px}.role-card h3{color:var(--forest);font-size:11px;margin:12px 0 5px}.role-card p{min-height:30px;color:#9ba59e;font-size:8px;line-height:1.45;margin:0}.role-card footer{display:block;border-top:1px solid #edf1ed;margin-top:11px;padding-top:8px;color:#718579;font-size:8px}.lead-table{min-width:700px}.tag{display:inline-flex;align-items:center;gap:5px;color:#6b9279;font-size:8px;font-weight:700}.tag i{width:6px;height:6px;border-radius:50%;background:#83a88c}.tag.temporary{color:#aa7558}.tag.temporary i{background:#d69c7d}.mobile-menu{display:none}
@media(max-width:1100px){.sidebar{width:220px;flex-basis:220px}.topbar,.page{padding-left:22px;padding-right:22px}.grid{grid-template-columns:1fr}.role-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.stats{grid-template-columns:repeat(2,1fr)}.lower{grid-template-columns:1fr}.activity{flex-wrap:wrap;align-items:flex-start}.activity-list{width:100%;order:3}.role-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.sidebar{position:fixed;z-index:10;left:-260px;width:248px;transition:left .2s}.sidebar.open{left:0}.mobile-menu{display:block;border:0;background:transparent;color:var(--forest);font-size:20px}.topbar{padding:0 15px}.crumb span{display:none}.search{width:32px;border:0;background:transparent;padding:0}.search input{display:none}.top-actions{gap:8px}.page{padding:24px 15px 40px}.heading{align-items:flex-start;flex-direction:column}.heading h1{font-size:29px}.actions{width:100%}.actions .button:first-child{display:none}.actions .button-primary{width:100%}.stats{gap:8px}.stat{padding:11px;min-height:94px}.stat-icon{width:27px;height:27px}.stat-copy strong{font-size:21px}.role-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:0}.activity-list{display:grid;grid-template-columns:1fr;gap:9px}}

/* Weekly production roster */
.roster-heading{align-items:center}.roster-heading-actions{flex-wrap:wrap}.roster-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:15px;padding:11px 12px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.week-nav{display:flex;gap:6px}.week-picker{display:flex;align-items:center;gap:7px;padding-left:14px;border-left:1px solid var(--line)}.week-picker label{color:#89958e;font-size:9px;font-weight:700}.week-picker input{height:33px;padding:0 9px;border:1px solid var(--line);border-radius:7px;background:#fbfcfa;color:#5d6d63;font-size:10px}.roster-state{margin-left:auto;display:flex;align-items:center;gap:8px}.roster-state small{color:#9ba59f;font-size:9px}.roster-stats .stat{min-height:92px}.roster-panel{overflow:visible}.roster-panel-head{flex-wrap:wrap}.roster-week-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.inline-form{display:inline-flex;margin:0}.roster-legend{display:flex;align-items:center;gap:16px;padding:0 18px 13px;color:#89958e;font-size:8px}.roster-legend span{display:flex;align-items:center;gap:5px}.legend-dot{width:7px;height:7px;border-radius:3px}.legend-dot.work{background:#7fa189}.legend-dot.training{background:#9b8bad}.legend-dot.leave{background:#d4a177}.legend-dot.empty{background:#e5eae4;border:1px dashed #b8c2ba}.roster-scroll{border-top:1px solid #edf1ed;border-radius:0 0 10px 10px}.roster-table{width:100%;min-width:1220px;border-collapse:separate;border-spacing:0;background:#fff}.roster-table th{height:54px;padding:9px 8px;border-bottom:1px solid #e8ede8;border-right:1px solid #eef1ed;background:#f8faf7;color:#99a49d;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:8px}.roster-table th:first-child{position:sticky;left:0;z-index:3;width:210px;min-width:210px;padding-left:18px;text-align:left;background:#f8faf7;box-shadow:5px 0 12px rgba(47,67,57,.035)}.roster-table th span,.roster-table th strong{display:block}.roster-table th strong{margin-top:4px;color:#617168;font-size:10px;letter-spacing:0}.roster-table th.is-today{background:#eef4ef;color:#5f886a}.roster-table td{padding:0;border-right:1px solid #eff2ef;border-bottom:1px solid #edf1ed;vertical-align:top}.roster-table tr:last-child td{border-bottom:0}.roster-person{position:sticky;left:0;z-index:2;width:210px;min-width:210px;padding:12px 14px 12px 18px!important;background:#fff;box-shadow:5px 0 12px rgba(47,67,57,.035)}.roster-person>.avatar{float:left;margin-right:8px}.roster-person>div{display:flex;flex-direction:column;gap:3px;min-width:0}.roster-person strong{overflow:hidden;color:#53655b;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.roster-person span,.roster-person small{overflow:hidden;color:#8e9b93;font-size:8px;white-space:nowrap;text-overflow:ellipsis}.roster-person small{color:#adb5b0}.roster-day-cell{width:144px;min-width:144px;padding:6px!important;background:#fbfcfa}.roster-cell{min-height:89px;display:flex;flex-direction:column;gap:4px;padding:9px;border:1px solid transparent;border-radius:7px;color:#6b7a71;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}.roster-cell.work{background:#edf4ee;border-color:#dce9de}.roster-cell.training{background:#f0edf5;border-color:#e2dbea}.roster-cell.leave{background:#fbf1e7;border-color:#f0e1d1}.roster-cell.empty{align-items:center;justify-content:center;background:#fff;border:1px dashed #dce3dc}.roster-cell[href]:hover{border-color:#91aa98;box-shadow:0 5px 13px rgba(36,68,60,.08);transform:translateY(-1px)}.roster-shift-name,.roster-leave-label{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.roster-shift-name{color:#5e866a}.roster-cell.training .roster-shift-name{color:#756987}.roster-cell>strong{color:#4e6157;font-size:10px}.roster-cell>small{overflow:hidden;color:#809087;font-size:8px;white-space:nowrap;text-overflow:ellipsis}.roster-cell>em{overflow:hidden;color:#98a39c;font-size:7px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.roster-leave-label{color:#a57551}.roster-empty-label{color:#a8b1ab;font-size:8px;font-weight:700}.roster-empty-state{padding:32px!important;text-align:center}.roster-empty-state strong,.roster-empty-state span{display:block}.roster-empty-state strong{color:#5d6d63;font-size:11px}.roster-empty-state span{margin-top:6px;color:#99a49d;font-size:9px}.roster-editor-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.65fr);gap:15px;align-items:start}.roster-form{padding:0 18px 18px}.roster-form label small{color:#a3ada6;font-size:8px;font-weight:400}.form-span{grid-column:1/-1}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.roster-delete-form{display:flex;justify-content:flex-start;padding:0 18px 18px}.roster-panel-message{margin:0 18px 18px}.roster-policy-list{display:flex;flex-direction:column;padding:0 18px 12px}.roster-policy-list>div{display:flex;gap:9px;padding:11px 0;border-top:1px solid #eef1ed}.roster-policy-list>div:first-child{border-top:0}.policy-icon{width:27px;height:27px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;font-size:9px;font-weight:700}.policy-icon.full{background:#e7f0e8;color:#5e886a}.policy-icon.area{background:#e8f0f2;color:#527c83}.policy-icon.read{background:#eeeaf4;color:#756987}.roster-policy-list p{display:flex;flex-direction:column;gap:4px;margin:0}.roster-policy-list strong{color:#58695f;font-size:9px}.roster-policy-list small{color:#98a39c;font-size:8px;line-height:1.45}.roster-audit-note{display:flex;flex-direction:column;gap:5px;margin:0 18px 18px;padding:11px;border-radius:8px;background:#f1f4ef;border:1px solid #e2e9e1}.roster-audit-note strong{color:#607168;font-size:9px}.roster-audit-note span{color:#929e96;font-size:8px;line-height:1.5}
@media(max-width:1100px){.roster-editor-layout{grid-template-columns:1fr}.roster-policy-panel{order:2}.roster-toolbar{align-items:flex-start;flex-wrap:wrap}.roster-state{margin-left:0}.week-picker{border-left:0;padding-left:0}}
@media(max-width:650px){.roster-heading-actions .button{display:inline-flex!important;flex:1}.roster-toolbar{gap:9px}.week-nav{width:100%}.week-nav .button{flex:1}.week-picker{width:100%;display:grid;grid-template-columns:1fr auto}.week-picker label{grid-column:1/-1}.week-picker input{width:100%}.roster-state{width:100%;justify-content:space-between;padding-top:7px;border-top:1px solid var(--line)}.roster-week-actions{width:100%}.roster-week-actions form,.roster-week-actions button{width:100%}.roster-legend{overflow-x:auto;white-space:nowrap}.roster-stats{grid-template-columns:1fr 1fr}.form-span{grid-column:auto}.form-actions{flex-direction:column}.form-actions .button{width:100%}}

/* Staff registration and directory */
.staff-heading{align-items:center}.staff-stats .stat{min-height:92px}.staff-directory-panel{overflow:visible}.staff-directory-head{flex-wrap:wrap}.staff-filters{display:grid;grid-template-columns:minmax(220px,1.7fr) repeat(3,minmax(130px,.7fr)) auto;gap:9px;align-items:end;padding:0 18px 17px}.staff-filters label{display:flex;flex-direction:column;gap:6px;color:#66766d;font-size:9px;font-weight:700}.staff-filters input,.staff-filters select{height:34px;width:100%;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;outline:0;font-size:10px;font-weight:400}.staff-filters input:focus,.staff-filters select:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.staff-filter-actions{display:flex;gap:6px}.staff-table{min-width:1150px}.staff-table td{vertical-align:top}.staff-table td>strong,.staff-table td>small{display:block}.staff-table td>strong{color:#5d6d63;font-size:9px}.staff-table td>small{margin-top:5px;color:#9ba59f;font-size:8px}.staff-identity{display:flex;align-items:flex-start;gap:8px}.staff-identity .avatar{flex:0 0 auto}.staff-identity>div{display:flex;flex-direction:column;gap:3px;min-width:0}.staff-identity strong{color:#52645a;font-size:10px}.staff-identity span,.staff-identity small{color:#919d95;font-size:8px}.employee-code{font-family:Consolas,monospace;letter-spacing:.04em}.access-note{display:block;margin-top:6px;color:#9ba59f;font-size:8px;white-space:nowrap}.staff-actions{display:flex;align-items:center;gap:6px}.staff-actions form{margin:0}.staff-actions .button{height:29px;padding:0 9px}.staff-empty{padding:30px!important;text-align:center}.staff-empty strong,.staff-empty span{display:block}.staff-empty strong{color:#5d6d63;font-size:11px}.staff-empty span{margin-top:6px;color:#99a49d;font-size:9px}.staff-form-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.55fr);gap:15px;align-items:start}.staff-registration-form{padding:0 18px 18px}.staff-registration-form fieldset{margin:0 0 18px;padding:16px;border:1px solid #e5ebe5;border-radius:9px;background:#fbfcfa}.staff-registration-form legend{padding:0 7px;color:#5a6b61;font-size:10px;font-weight:700}.staff-registration-form .form-grid label{margin-bottom:0}.staff-registration-form input,.staff-registration-form select,.staff-registration-form textarea{width:100%;padding:9px 10px;border:1px solid #dfe7df;border-radius:6px;background:#fff;color:#52635a;outline:0;font-size:11px;font-weight:400}.staff-registration-form input:focus,.staff-registration-form select:focus,.staff-registration-form textarea:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.fieldset-help{margin:-3px 0 12px;color:#929e96;font-size:9px;line-height:1.5}.staff-area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.staff-area-grid>label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid #e1e8e1;border-radius:8px;background:#fff;cursor:pointer}.staff-area-grid input{width:15px;height:15px;accent-color:var(--forest)}.staff-area-grid span{display:flex;flex-direction:column;gap:3px}.staff-area-grid strong{color:#5b6b61;font-size:9px}.staff-area-grid small{color:#9ba59f;font-size:7px}.staff-notes-label{display:flex;flex-direction:column;gap:7px;color:#63736a;font-size:10px;font-weight:700}.staff-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.staff-policy-list{display:flex;flex-direction:column;padding:0 18px 12px}.staff-policy-list>div{display:flex;gap:9px;padding:11px 0;border-top:1px solid #eef1ed}.staff-policy-list>div:first-child{border-top:0}.staff-policy-list>div>span{width:27px;height:27px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;background:#e8f0e9;color:#65856e;font-size:9px;font-weight:700}.staff-policy-list p{display:flex;flex-direction:column;gap:4px;margin:0}.staff-policy-list strong{color:#58695f;font-size:9px}.staff-policy-list small{color:#98a39c;font-size:8px;line-height:1.45}.auth-footnote a{color:#71887a;text-decoration:none;font-weight:700}
@media(max-width:1200px){.staff-filters{grid-template-columns:repeat(2,1fr)}.staff-filter-actions{align-self:end}.staff-form-layout{grid-template-columns:1fr}.staff-area-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.staff-heading .actions .button{display:inline-flex!important;flex:1}.staff-filters{grid-template-columns:1fr}.staff-filter-actions{width:100%}.staff-filter-actions .button{flex:1}.staff-stats{grid-template-columns:1fr 1fr}.staff-area-grid{grid-template-columns:1fr}.staff-registration-form{padding:0 12px 12px}.staff-registration-form fieldset{padding:12px}.staff-form-actions{flex-direction:column}.staff-form-actions .button{width:100%}}

/* Slightly larger typography for improved readability */
body{font-size:14px}.brand-lockup strong{font-size:15px}.brand-lockup span{font-size:10px}.workspace strong{font-size:11px}.workspace span{font-size:10px}.nav-label{font-size:10px}.nav-item{font-size:12px}.coverage>div{font-size:11px}.coverage small,.user-chip strong,.user-chip span,.user-chip a{font-size:10px}.crumb{font-size:11px}.search input{font-size:11px}.eyebrow,.kicker{font-size:10px}.heading h1{font-size:36px}.heading p{font-size:12px}.button{font-size:11px}.banner strong{font-size:11px}.banner span,.banner a{font-size:10px}.stat-copy span,.stat-copy small{font-size:10px}.stat-copy strong{font-size:26px}.panel-head h2{font-size:17px}.panel-head p,.panel-head a{font-size:10px}.table th{font-size:9px}.table td{font-size:10px}.task-cell strong{font-size:11px}.task-cell span{font-size:9px}.pill,.status,.tag{font-size:9px}.owner,.due{font-size:11px}.due small{font-size:9px}.panel-link{font-size:10px}.form-grid label,.auth-card label{font-size:11px}.form-grid input,.form-grid select,.form-grid textarea,.auth-card input{font-size:12px}.auth-intro{font-size:12px}.auth-footnote{font-size:10px}.notice,.alert{font-size:11px}.role-card>div,.role-card p,.role-card footer{font-size:9px}.role-card h3{font-size:12px}.roster-table th{font-size:9px}.roster-table th strong{font-size:11px}.roster-person strong{font-size:11px}.roster-person span,.roster-person small{font-size:9px}.roster-shift-name,.roster-leave-label,.roster-empty-label{font-size:9px}.roster-cell>strong{font-size:11px}.roster-cell>small{font-size:9px}.roster-cell>em{font-size:8px}.roster-policy-list strong,.staff-policy-list strong{font-size:10px}.roster-policy-list small,.staff-policy-list small{font-size:9px}.staff-filters label{font-size:10px}.staff-filters input,.staff-filters select{font-size:11px}.staff-identity strong{font-size:11px}.staff-identity span,.staff-identity small,.access-note{font-size:9px}.staff-table td>strong{font-size:10px}.staff-table td>small{font-size:9px}.staff-registration-form legend{font-size:11px}.fieldset-help{font-size:10px}.staff-area-grid strong{font-size:10px}.staff-area-grid small{font-size:8px}
@media(max-width:650px){.heading h1{font-size:31px}.stat-copy strong{font-size:23px}}

/* Larger typography follow-up */
body{font-size:15px}.brand-lockup strong{font-size:16px}.brand-lockup span,.workspace span,.nav-label{font-size:11px}.workspace strong{font-size:12px}.nav-item{font-size:13px}.coverage>div{font-size:12px}.coverage small,.user-chip strong,.user-chip span,.user-chip a{font-size:11px}.crumb,.search input{font-size:12px}.eyebrow,.kicker{font-size:11px}.heading h1{font-size:38px}.heading p{font-size:13px}.button{min-height:35px;font-size:12px}.banner strong{font-size:12px}.banner span,.banner a{font-size:11px}.stat-copy span,.stat-copy small{font-size:11px}.stat-copy strong{font-size:28px}.panel-head h2{font-size:18px}.panel-head p,.panel-head a{font-size:11px}.table th{font-size:10px}.table td{font-size:12px}.task-cell strong{font-size:12px}.task-cell span{font-size:10px}.pill,.status,.tag{font-size:10px}.owner,.due{font-size:12px}.due small{font-size:10px}.panel-link{font-size:11px}.form-grid label,.auth-card label{font-size:12px}.form-grid input,.form-grid select,.form-grid textarea,.auth-card input{font-size:13px}.auth-intro{font-size:13px}.auth-footnote{font-size:11px}.notice,.alert{font-size:12px}.role-card>div,.role-card p,.role-card footer{font-size:10px}.role-card h3{font-size:13px}.roster-table th{font-size:10px}.roster-table th strong{font-size:12px}.roster-person strong{font-size:12px}.roster-person span,.roster-person small{font-size:10px}.roster-shift-name,.roster-leave-label,.roster-empty-label{font-size:10px}.roster-cell>strong{font-size:12px}.roster-cell>small{font-size:10px}.roster-cell>em{font-size:9px}.roster-policy-list strong,.staff-policy-list strong{font-size:11px}.roster-policy-list small,.staff-policy-list small{font-size:10px}.staff-filters label{font-size:11px}.staff-filters input,.staff-filters select{font-size:12px}.staff-identity strong{font-size:12px}.staff-identity span,.staff-identity small,.access-note{font-size:10px}.staff-table td>strong{font-size:11px}.staff-table td>small{font-size:10px}.staff-registration-form legend{font-size:12px}.fieldset-help{font-size:11px}.staff-area-grid strong{font-size:11px}.staff-area-grid small{font-size:9px}
@media(max-width:650px){.heading h1{font-size:33px}.stat-copy strong{font-size:25px}}

/* Reports */
.report-filter-panel{overflow:visible;margin-bottom:15px}.report-filters{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:11px;padding:0 18px 18px}.report-filters label{display:flex;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.report-filters input,.report-filters select{height:36px;width:100%;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;outline:0;font-size:12px;font-weight:400}.report-filters input:focus,.report-filters select:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.report-filter-actions{display:flex;align-items:end;gap:7px}.report-filter-actions .button{flex:1}.report-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.report-summary-values{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 18px 18px}.report-summary-values>div{padding:11px 10px;border:1px solid #e7eee7;border-radius:8px;background:#fbfcfa}.report-summary-values span{display:block;color:#919d95;font-size:10px}.report-summary-values strong{display:block;margin-top:7px;color:var(--forest);font-size:19px}.report-section{margin-bottom:15px}.report-two-column{display:grid;grid-template-columns:1fr 1fr;gap:15px}.report-two-column .report-section{min-width:0}.report-table{min-width:900px}.report-muted{display:block;margin-top:4px;color:#9ba59f;font-size:10px}.status.passed,.status.overridden{background:#e8f0e9;color:#66856e}.status.failed,.status.revision-required{background:#faeae5;color:#aa6959}.report-analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:0 18px 18px}.report-analytics-grid>div{min-width:0}.report-analytics-grid h3{margin:0 0 9px;color:#5d6d63;font-size:13px}.report-analytics-grid .table{min-width:760px}.report-issue-row td{background:#fff9f6}.report-issue-row td:nth-child(3),.report-issue-row td:nth-child(5),.report-issue-row td:nth-child(6){color:#aa604f;font-weight:700}
@media(max-width:1000px){.report-filters{grid-template-columns:repeat(2,1fr)}.report-summary-grid,.report-two-column,.report-analytics-grid{grid-template-columns:1fr}}
@media(max-width:650px){.report-filters{grid-template-columns:1fr;padding:0 12px 12px}.report-filter-actions{align-items:stretch}.report-summary-values{grid-template-columns:1fr 1fr;padding:0 12px 12px}.report-summary-values strong{font-size:17px}.report-section .panel-head{align-items:flex-start;flex-direction:column}.report-filter-panel .panel-head{padding:14px 12px 12px}.report-analytics-grid{padding:0 12px 12px}}

/* Dedicated Analytics */
.analytics-filter-panel{overflow:visible;margin-bottom:15px}.analytics-filters{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:11px;padding:0 18px 18px}.analytics-filters label{display:flex;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.analytics-filters input,.analytics-filters select{height:36px;width:100%;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;outline:0;font-size:12px;font-weight:400}.analytics-filters input:focus,.analytics-filters select:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.analytics-filter-actions{display:flex;align-items:end;gap:7px}.analytics-filter-actions .button{flex:1}.analytics-tabs{display:flex;gap:4px;margin:0 0 15px;padding:5px;border:1px solid var(--line);border-radius:9px;background:#f0f4ef}.analytics-tabs a{flex:1;padding:10px 14px;border-radius:6px;color:#718078;text-align:center;text-decoration:none;font-size:12px;font-weight:700}.analytics-tabs a:hover{color:var(--forest);background:#e7eee6}.analytics-tabs a.active{background:var(--forest);color:#fff;box-shadow:0 4px 10px rgba(36,68,60,.12)}.analytics-highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.analytics-highlight{display:flex;flex-direction:column;gap:7px;padding:0 18px 18px}.analytics-highlight strong{color:var(--forest);font-size:20px}.analytics-highlight span{color:#65746b;font-size:12px}.analytics-highlight small{color:#9aa59e;font-size:10px}.analytics-definition{margin-bottom:15px}.analytics-table-panel{overflow:hidden}.analytics-table{min-width:950px}.analytics-table td:first-child strong{color:#52645a}.analytics-issue-row td{background:#fff9f6}.analytics-issue-row td:nth-child(3),.analytics-issue-row td:nth-child(6),.analytics-issue-row td:nth-child(7){color:#aa604f;font-weight:700}
@media(max-width:1000px){.analytics-filters{grid-template-columns:repeat(2,1fr)}.analytics-highlight-grid{grid-template-columns:1fr}}
@media(max-width:650px){.analytics-filters{grid-template-columns:1fr;padding:0 12px 12px}.analytics-filter-actions{align-items:stretch}.analytics-tabs{overflow-x:auto}.analytics-tabs a{min-width:130px;white-space:nowrap}.analytics-filter-panel .panel-head{padding:14px 12px 12px}.analytics-highlight{padding:0 12px 12px}}

/* Production Areas */
.area-stats{margin-bottom:15px}.area-page-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:15px;margin-bottom:15px}.area-directory-panel,.area-leads-panel{overflow:hidden}.area-table{min-width:900px}.area-identity{display:flex;align-items:center;gap:9px;min-width:220px}.area-identity.is-subarea{padding-left:18px}.area-identity>div{display:flex;flex-direction:column;gap:4px}.area-identity strong{color:#52645a;font-size:12px}.area-identity small{color:#9aa59e;font-size:10px}.area-table code{padding:4px 6px;border-radius:5px;background:#f1f4ef;color:#718078;font-family:Consolas,monospace;font-size:10px}.area-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}.area-actions form{margin:0}.area-actions .button{min-height:29px;padding:0 9px}.button-danger{background:#fbefeb;border-color:#f1d8d0;color:#a15849}.area-rule-list{display:flex;flex-direction:column;padding:0 18px 15px}.area-rule-list>div{display:flex;gap:9px;padding:12px 0;border-top:1px solid #eef1ed}.area-rule-list>div:first-child{border-top:0}.area-rule-list>div>span{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;background:#e8f0e9;color:#65856e;font-size:9px;font-weight:700}.area-rule-list p{display:flex;flex-direction:column;gap:4px;margin:0}.area-rule-list strong{color:#58695f;font-size:11px}.area-rule-list small{color:#98a39c;font-size:10px;line-height:1.45}.area-empty{padding:30px!important;color:#99a49d!important;text-align:center}.area-lead-table{min-width:950px}.area-lead-table td>strong,.area-lead-table td>small{display:block}.area-lead-table td>strong{color:#5d6d63;font-size:11px}.area-form-panel{overflow:visible;margin-bottom:15px}.area-management-form{padding:0 18px 18px}.area-management-form label{margin-bottom:0}.area-management-form .checkbox-field{display:flex;align-items:center;flex-direction:row;gap:8px;padding-top:25px}.area-management-form .checkbox-field input{width:16px;height:16px;accent-color:var(--forest)}.form-actions{display:flex;align-items:end;justify-content:flex-end;gap:8px}.area-leads-panel{margin-bottom:15px}
@media(max-width:1000px){.area-page-grid{grid-template-columns:1fr}}
@media(max-width:650px){.area-page-grid{gap:12px}.area-management-form{padding:0 12px 12px}.area-management-form .checkbox-field{padding-top:7px}.form-actions{align-items:stretch;flex-direction:column}.form-actions .button{width:100%}.area-actions{align-items:flex-start;flex-direction:column}.area-actions .button{width:100%}.area-stats{grid-template-columns:1fr 1fr}}

/* Personal assigned-task queue */
.stat-icon.terracotta{background:#faeae5;color:#aa6959}.my-tasks-heading{margin-bottom:20px}.my-task-panel{overflow:visible}.my-task-panel-head{flex-wrap:wrap}.task-filters{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.task-filters .button{color:#718078}.task-filters .button.active{border-color:var(--forest);background:var(--forest);color:#fff}.my-task-list{border-top:1px solid #edf1ed}.my-task-row{position:relative;display:grid;grid-template-columns:6px minmax(280px,1.35fr) minmax(360px,1fr) auto;align-items:center;gap:18px;min-height:124px;padding:18px 20px 18px 0;border-bottom:1px solid #edf1ed;background:#fff;color:inherit;text-decoration:none;transition:background .15s,box-shadow .15s,transform .15s}.my-task-row:last-child{border-bottom:0;border-radius:0 0 10px 10px}.my-task-row:hover,.my-task-row:focus-visible{z-index:1;background:#fbfdfb;box-shadow:0 8px 22px rgba(36,68,60,.08);transform:translateY(-1px);outline:0}.my-task-row:focus-visible{box-shadow:inset 0 0 0 2px #87a891,0 8px 22px rgba(36,68,60,.08)}.my-task-priority{align-self:stretch;width:6px;border-radius:0 5px 5px 0;background:#bdcbc0}.my-task-priority.critical{background:#c9715d}.my-task-priority.urgent{background:#d99a5d}.my-task-priority.high{background:#c7a26c}.my-task-priority.low{background:#9aaca0}.my-task-main{display:flex;min-width:0;flex-direction:column;gap:7px}.my-task-title-line{display:flex;align-items:center;gap:9px;min-width:0}.my-task-title-line>strong{overflow:hidden;color:var(--forest);font-size:15px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.my-task-title-line .status{flex:0 0 auto;white-space:nowrap}.status.not-started,.status.paused{background:#edf0ee;color:#6c7971}.status.waiting-for-assistance,.status.revision-required{background:#faeae5;color:#aa6959}.status.ready-for-handover{background:#e8f1f2;color:#527b81}.my-task-reference{overflow:hidden;color:#8f9b94;font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.my-task-progress{width:min(260px,100%);height:5px;overflow:hidden;border-radius:6px;background:#edf1ed}.my-task-progress i{display:block;height:100%;border-radius:inherit;background:#81a58b}.my-task-progress-label{color:#9ba59f;font-size:10px}.my-task-meta{display:grid;grid-template-columns:1.25fr .75fr 1fr;align-items:center;gap:18px}.my-task-meta>span{display:flex;min-width:0;flex-direction:column;gap:6px}.my-task-meta small{color:#9aa59e;font-size:10px;line-height:1.2}.my-task-meta strong:not(.pill){overflow:hidden;color:#617168;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.my-task-meta .urgent small,.my-task-meta .urgent strong{color:#aa604f}.my-task-open{display:flex;align-items:center;gap:7px;color:#65866f;font-size:11px;font-weight:700;white-space:nowrap}.my-task-open b{font-size:15px}.my-task-empty{display:flex;min-height:245px;align-items:center;justify-content:center;flex-direction:column;padding:35px 20px;border-top:1px solid #edf1ed;text-align:center}.my-task-empty-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:13px;border-radius:14px;background:#e8f1e9;color:#65886f;font-size:20px}.my-task-empty strong{color:#586a60;font-size:16px}.my-task-empty p{max-width:460px;margin:7px 0 0;color:#929e96;font-size:12px;line-height:1.55}
@media(max-width:1150px){.my-task-row{grid-template-columns:6px minmax(250px,1.2fr) minmax(300px,1fr);gap:14px}.my-task-open{grid-column:2/-1;justify-self:end;margin-top:-8px}}
@media(max-width:800px){.my-task-panel-head{align-items:flex-start;flex-direction:column}.task-filters{width:100%}.task-filters .button{flex:1}.my-task-row{grid-template-columns:6px 1fr;padding-right:16px}.my-task-meta{grid-column:2;grid-template-columns:repeat(3,1fr);padding-top:5px}.my-task-open{grid-column:2;margin-top:0}.my-task-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.task-filters{display:grid;grid-template-columns:1fr}.my-task-stats{grid-template-columns:1fr 1fr}.my-task-meta{grid-template-columns:1fr 1fr}.my-task-meta>span:last-child{grid-column:1/-1}.my-task-title-line{align-items:flex-start;flex-direction:column}.my-task-title-line>strong{white-space:normal}.my-task-row{gap:10px}.my-task-open{justify-self:start}}

/* Staff task actions and task files */
.my-task-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.my-task-status-form{margin:0}.my-task-status-form label{display:flex;align-items:center;gap:6px;margin:0;color:#9aa59e;font-size:10px;font-weight:700}.my-task-status-form select{max-width:180px;cursor:pointer}.task-file-chip{display:inline-flex;margin-left:5px;padding:3px 5px;border-radius:4px;background:#e8f1e9;color:#65866f;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.task-file-chip.pdf{background:#faeae5;color:#aa6959}.task-photo-upload-form{margin-bottom:15px}.task-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.task-photo-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid #e4ebe4;border-radius:8px;background:#fbfcfa;color:inherit;text-decoration:none}.task-photo-card:hover{border-color:#93aa98;box-shadow:0 5px 13px rgba(36,68,60,.08)}.task-photo-card img{display:block;width:100%;height:125px;object-fit:cover;background:#eef2ed}.task-photo-card span{display:flex;min-width:0;flex-direction:column;gap:4px;padding:8px}.task-photo-card strong{color:#5e7565;font-size:10px;text-transform:capitalize}.task-photo-card small{overflow:hidden;color:#9aa59e;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.task-attachments-content{padding:0 18px 18px}.attachment-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-bottom:15px;padding:12px;border:1px solid #e0e9e0;border-radius:8px;background:#f8fbf7}.attachment-upload-form label{display:flex;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.attachment-upload-form input{width:100%;padding:8px 9px;border:1px solid #dfe7df;border-radius:6px;background:#fff;color:#52635a;font-size:12px;font-weight:400}.attachment-upload-form button{height:36px}.attachment-upload-form small{grid-column:1/-1;color:#9aa59e;font-size:9px}.task-attachment-list{display:flex;flex-direction:column;gap:8px}.task-attachment-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #e4ebe4;border-radius:8px;background:#fbfcfa;color:inherit;text-decoration:none}.task-attachment-row:hover{border-color:#93aa98;background:#f7faf6}.task-file-icon{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:7px;background:#faeae5;color:#aa6959;font-size:9px;font-weight:700}.task-attachment-row>span:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}.task-attachment-row strong{overflow:hidden;color:#5f7066;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.task-attachment-row small{color:#9aa59e;font-size:9px}.task-attachment-row b{color:#65866f;font-size:10px;white-space:nowrap}
@media(max-width:800px){.my-task-controls{grid-column:2/-1;justify-content:flex-start}.task-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attachment-upload-form{grid-template-columns:1fr}.attachment-upload-form button{width:100%}}
@media(max-width:520px){.my-task-status-form label{align-items:flex-start;flex-direction:column}.my-task-status-form select{max-width:none;width:100%}.my-task-controls{align-items:stretch;flex-direction:column}.my-task-status-form,.my-task-status-form label,.my-task-status-form select,.my-task-open{width:100%}.my-task-open{justify-content:center}.task-photo-grid{grid-template-columns:1fr}.task-attachments-content{padding:0 12px 12px}.task-attachment-row{align-items:flex-start}.task-attachment-row b{margin-left:auto}}
.staff-status-panel{overflow:visible}.staff-status-form{display:flex;align-items:end;gap:10px;padding:0 18px 18px}.staff-status-form label{display:flex;min-width:240px;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.staff-status-form select{height:36px;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;font-size:12px}.staff-status-form button{height:36px}
@media(max-width:650px){.staff-status-form{align-items:stretch;flex-direction:column;padding:0 12px 12px}.staff-status-form label{min-width:0}.staff-status-form button{width:100%}}

/* Dashboard task links */
.dashboard-task-link{display:block;color:inherit;text-decoration:none}.dashboard-task-link:hover .task-cell strong,.dashboard-task-link:focus-visible .task-cell strong{color:var(--forest);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.dashboard-task-link:focus-visible{outline:2px solid #88a991;outline-offset:3px;border-radius:4px}.dashboard-deadline-link{overflow:hidden;flex:1;color:#617067;font-size:9px;font-weight:700;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.dashboard-deadline-link:hover,.dashboard-deadline-link:focus-visible{color:var(--forest);text-decoration:underline;text-underline-offset:3px}

/* System settings */
.settings-heading{align-items:center}.settings-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:15px;align-items:start}.settings-panel{overflow:visible;margin-bottom:15px}.settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 18px 18px}.settings-field{display:flex;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.settings-field>span{min-height:27px;color:#9ba59f;font-size:10px;font-weight:400;line-height:1.4}.settings-field select,.settings-field input[type=number]{height:37px;width:100%;padding:0 10px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;outline:0;font-size:12px;font-weight:400}.settings-field select:focus,.settings-field input[type=number]:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.color-input{display:flex;align-items:center;gap:9px;height:37px}.color-input input{width:45px;height:37px;padding:3px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;cursor:pointer}.color-input code{padding:7px 8px;border:1px solid #e7eee7;border-radius:6px;background:#f7faf6;color:#718078;font-family:Consolas,monospace;font-size:11px;font-weight:400}.number-input{display:flex;align-items:center;gap:8px}.number-input input{max-width:130px}.number-input span{color:#8b9890;font-size:10px;font-weight:400}.settings-side{min-width:0}.settings-preview-panel{overflow:hidden;margin-bottom:15px}.settings-preview{display:flex;align-items:center;gap:10px;margin:0 18px;padding:14px;border:1px solid #e6ede6;border-radius:9px;background:#fbfcfa}.settings-preview-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:10px 10px 10px 3px;background:var(--preview-color,var(--forest));color:#fff;font-size:11px;font-weight:700}.settings-preview>div{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px}.settings-preview strong{overflow:hidden;color:#576960;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.settings-preview span{color:#9aa59e;font-size:9px}.settings-preview b{padding:5px 7px;border-radius:5px;background:color-mix(in srgb,var(--preview-accent,var(--forest-2)) 14%,#fff);color:var(--preview-accent,var(--forest-2));font-size:9px;white-space:nowrap}.settings-preview-note{padding:0 18px 16px;color:#9aa59e;font-size:10px;line-height:1.45}.settings-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 15px}.settings-form-actions>span{color:#9aa59e;font-size:10px}.settings-status-list{display:flex;flex-direction:column;padding:0 18px 13px}.settings-status-list>div{display:flex;gap:9px;padding:11px 0;border-top:1px solid #eef1ed}.settings-status-list>div:first-child{border-top:0}.settings-status-list>div>span{width:25px;height:25px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;background:#e8f0e9;color:#65856e;font-size:9px;font-weight:700}.settings-status-list p{display:flex;flex-direction:column;gap:4px;margin:0}.settings-status-list strong{color:#58695f;font-size:10px}.settings-status-list small{color:#98a39c;font-size:9px;line-height:1.4}
body.ui-font-compact .app-shell{font-size:14px}body.ui-font-large .app-shell{font-size:16px}body.ui-font-compact .settings-field,body.ui-font-compact .settings-field select,body.ui-font-compact .settings-field input[type=number]{font-size:10px}body.ui-font-large .settings-field,body.ui-font-large .settings-field select,body.ui-font-large .settings-field input[type=number]{font-size:13px}body.ui-density-compact .page{padding-top:24px;padding-bottom:35px}body.ui-density-compact .panel-head{padding-top:14px;padding-bottom:11px}body.ui-density-compact .stat{min-height:88px;padding:11px}body.ui-density-compact .table td{padding-top:8px;padding-bottom:8px}body.ui-density-compact .settings-fields{gap:10px;padding-bottom:14px}body.ui-density-compact .settings-panel{margin-bottom:11px}
@media(max-width:1000px){.settings-layout{grid-template-columns:1fr}}
@media(max-width:650px){.settings-fields{grid-template-columns:1fr;padding:0 12px 12px}.settings-field>span{min-height:0}.settings-form-actions{align-items:stretch;flex-direction:column}.settings-form-actions .button{width:100%}.settings-preview{margin:0 12px}.settings-preview-note{padding-left:12px;padding-right:12px}.settings-status-list{padding-left:12px;padding-right:12px}}

.pwa-install-link{display:inline-flex;align-items:center;height:28px;padding:0 8px;border:1px solid #dce8dd;border-radius:6px;background:#eef4ef;color:#62866d;font-size:9px;font-weight:700}.pwa-mobile-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px;padding:16px 18px;background:#f4f8f3;border-color:#dfeadf}.pwa-mobile-panel h2{margin:5px 0 0;color:var(--forest);font-size:14px}.pwa-mobile-panel p{max-width:650px;margin:6px 0 0;color:#829087;font-size:10px;line-height:1.5}.pwa-mobile-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.pwa-mobile-actions .button{white-space:nowrap}.pwa-mobile-status{color:#819088;font-size:9px;white-space:nowrap}.camera-upload-help{display:block!important;margin-top:0;color:#9aa59e;font-size:9px;font-weight:400;line-height:1.4}.task-photo-upload-form input[type=file]{min-height:38px}.pwa-mobile-panel[hidden]{display:none}\n+\n+/* In-system production notifications */
.top-actions .notification-link{display:inline-flex;align-items:center;gap:6px;color:#6f8378;font-size:10px;font-weight:700;white-space:nowrap}.top-actions .notification-link .nav-badge{margin-left:0}.notifications-heading{align-items:center}.notifications-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:15px;align-items:start}.notifications-panel,.notification-preferences-panel{overflow:visible}.notifications-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid #edf1ed}.notifications-filter{display:flex;gap:7px}.notifications-filter .button{height:30px}.notification-list{display:flex;flex-direction:column}.notification-item{display:grid;grid-template-columns:7px minmax(0,1fr) auto;gap:12px;padding:15px 18px;border-bottom:1px solid #eef1ed;background:#fff}.notification-item:last-child{border-bottom:0}.notification-item.is-unread{background:#fbfdfb}.notification-item.urgent .notification-marker{background:#d49d65}.notification-item.critical .notification-marker{background:#c56d5b}.notification-marker{width:7px;min-height:44px;border-radius:5px;background:#a9b9ad}.notification-main{min-width:0}.notification-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.notification-type{color:#6c9279;font-size:8px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.notification-item time{color:#a1aaa4;font-size:9px;white-space:nowrap}.notification-main h2{margin:6px 0 5px;color:#53675b;font-size:12px}.notification-main p{margin:0;color:#77867c;font-size:10px;line-height:1.5}.notification-context{display:block;margin-top:7px;color:#a0aaa4;font-size:9px}.notification-actions{display:flex;align-items:center;justify-content:flex-start;gap:6px;flex-direction:column}.notification-actions form{margin:0}.notification-actions .button{height:29px;padding:0 9px;white-space:nowrap}.notification-read-label{padding:7px 9px;color:#a0aaa4;font-size:9px}.notifications-empty{display:flex;min-height:180px;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:28px;text-align:center}.notifications-empty strong{color:#5d6d63;font-size:12px}.notifications-empty span{color:#9ba59f;font-size:10px}.notification-preferences-form{display:flex;flex-direction:column;gap:0;padding:0 18px 18px}.notification-preference{display:flex;align-items:flex-start;gap:9px;padding:12px 0;border-bottom:1px solid #eef1ed;cursor:pointer}.notification-preference input{width:16px;height:16px;flex:0 0 auto;margin:1px 0 0;accent-color:var(--forest)}.notification-preference span{display:flex;min-width:0;flex-direction:column;gap:4px}.notification-preference strong{color:#5d6d63;font-size:10px}.notification-preference small{color:#98a39c;font-size:9px;line-height:1.45}.notification-preferences-form>.button{width:100%;margin-top:14px}.notification-preferences-panel .panel-head{align-items:flex-start}

/* Fixed Dubai production shift */
@media(max-width:1000px){.notifications-layout{grid-template-columns:1fr}}
@media(max-width:650px){.top-actions .notification-link{font-size:0}.top-actions .notification-link .nav-badge{font-size:9px}.notifications-toolbar{align-items:flex-start;flex-direction:column;padding:12px}.notification-item{grid-template-columns:7px minmax(0,1fr);padding:13px 12px}.notification-actions{grid-column:2;align-items:flex-start;justify-content:flex-start;flex-direction:row;flex-wrap:wrap;margin-top:2px}.notification-topline{align-items:flex-start;flex-direction:column;gap:5px}.notification-item time{font-size:8px}.notification-preferences-form{padding:0 12px 12px}}
@media(max-width:650px){.pwa-mobile-panel{align-items:stretch;flex-direction:column;padding:13px 12px}.pwa-mobile-actions{align-items:stretch;justify-content:flex-start;flex-direction:column}.pwa-mobile-actions .button{width:100%}.pwa-mobile-status{white-space:normal}.pwa-install-link{display:none}}
.template-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.template-stat{display:flex;min-height:92px;justify-content:center;flex-direction:column;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}.template-stat span{color:#7e8c83;font-size:10px}.template-stat strong{margin-top:6px;color:var(--forest);font-size:25px;letter-spacing:-.05em}.template-stat small{margin-top:4px;color:#a0aaa4;font-size:9px}.template-layout{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.55fr);gap:15px;align-items:start}.template-library,.template-detail{overflow:visible}.template-list{display:flex;flex-direction:column;gap:8px;padding:0 12px 12px}.template-card{display:flex;min-width:0;flex-direction:column;gap:5px;padding:12px;border:1px solid #e4ebe4;border-radius:8px;background:#fbfcfa;color:inherit;text-decoration:none}.template-card:hover,.template-card.is-selected{border-color:#91ab98;background:#f5faf5}.template-card.is-inactive{opacity:.65}.template-card-top{display:flex;align-items:center;gap:6px;justify-content:space-between}.template-kind,.template-status{display:inline-flex;padding:4px 6px;border-radius:5px;background:#e8f1e9;color:#65886f;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.template-kind.sop{background:#eeeaf4;color:#766a8b}.template-status{background:#faeae5;color:#a56658}.template-card strong{overflow:hidden;color:#5d7064;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.template-card span:not(.template-kind):not(.template-status),.template-card small{overflow:hidden;color:#9aa59e;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.template-empty{display:flex;min-height:180px;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:25px;text-align:center}.template-empty strong{color:#5d6d63;font-size:12px}.template-empty span{max-width:280px;color:#9ba59f;font-size:10px;line-height:1.5}.template-empty-detail{min-height:360px}.template-form{padding:0 18px 18px}.template-form .filter-wide{grid-column:1/-1}.template-form label,.template-checklist-add label,.template-photo-upload label{display:flex;min-width:0;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.template-form input,.template-form select,.template-form textarea,.template-checklist-edit input,.template-checklist-edit select,.template-checklist-add input,.template-checklist-add select,.template-photo-upload input,.template-photo-upload select{width:100%;padding:8px 9px;border:1px solid #dfe7df;border-radius:6px;background:#fcfdfb;color:#52635a;outline:0;font-size:11px;font-weight:400}.template-form textarea{resize:vertical;line-height:1.45}.template-form .template-checkbox,.template-checkbox{align-items:center;justify-content:flex-start;flex-direction:row;gap:8px;padding:9px 11px;border:1px solid #dce9dd;border-radius:7px;background:#f5faf5}.template-checkbox input,.inline-checkbox input{width:16px;flex:0 0 auto;accent-color:var(--forest)}.template-checkbox span{color:#69836f;font-size:10px;font-weight:700;line-height:1.4}.template-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.template-field-help{display:block;margin-top:5px;color:#9aa59e;font-size:9px;font-weight:400;line-height:1.35}.template-preview{padding:0 18px 18px}.template-preview-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:15px}.template-preview-meta span{padding:5px 7px;border-radius:5px;background:#eef4ef;color:#698b73;font-size:9px;font-weight:700}.template-copy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.template-copy-grid section{min-width:0;padding:13px;border:1px solid #e4ebe4;border-radius:8px;background:#fbfcfa}.template-copy{margin-top:9px;color:#6f8076;font-size:10px;line-height:1.6;white-space:normal}.template-source-note{display:inline-flex;margin-top:10px;padding:6px 8px;border-radius:5px;background:#eef4ef;color:#698b73;font-size:9px;font-weight:700}.checklist-group-label{padding:10px 0 4px;color:#8d9b92;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.checklist-row small{margin-left:auto;color:#a0aaa4;font-size:9px}.template-checklist-content,.template-photo-content{padding:0 18px 18px}.template-checklist-list{display:flex;flex-direction:column;gap:8px}.template-checklist-row{display:flex;align-items:center;gap:7px}.template-checklist-edit{display:grid;flex:1;grid-template-columns:minmax(140px,1.7fr) minmax(120px,1fr) 65px auto auto;gap:7px;align-items:center}.template-checklist-edit input,.template-checklist-edit select{height:32px;padding:0 7px}.template-checklist-edit .button,.template-checklist-remove .button{height:32px;padding:0 8px}.template-checklist-remove{margin:0}.template-checklist-add{display:grid;grid-template-columns:minmax(150px,1.8fr) minmax(130px,1fr) 70px auto auto;gap:8px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid #edf1ed}.template-checklist-add input,.template-checklist-add select{height:34px}.inline-checkbox{display:flex!important;align-items:center;justify-content:flex-start;flex-direction:row!important;gap:6px!important;height:34px;white-space:nowrap}.template-photo-upload{display:grid;grid-template-columns:minmax(180px,1fr) 170px auto;gap:8px;align-items:end;margin-bottom:15px;padding:12px;border:1px solid #e0e9e0;border-radius:8px;background:#f8fbf7}.template-photo-upload input,.template-photo-upload select{height:34px}.template-photo-upload button{height:34px}.template-photo-upload small{grid-column:1/-1;color:#9aa59e;font-size:9px}.template-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.template-photo-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid #e4ebe4;border-radius:8px;background:#fbfcfa;color:inherit;text-decoration:none}.template-photo-card:hover{border-color:#93aa98;box-shadow:0 5px 13px rgba(36,68,60,.08)}.template-photo-card img{display:block;width:100%;height:135px;object-fit:cover;background:#eef2ed}.template-photo-card span{display:flex;min-width:0;flex-direction:column;gap:4px;padding:8px}.template-photo-card strong{color:#5e7565;font-size:10px}.template-photo-card small{overflow:hidden;color:#9aa59e;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1050px){.template-stats{grid-template-columns:repeat(2,1fr)}.template-layout{grid-template-columns:1fr}.template-copy-grid{grid-template-columns:1fr 1fr}.template-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.template-checklist-edit{grid-template-columns:1fr 1fr}.template-checklist-edit input:first-of-type{grid-column:1/-1}.template-checklist-edit .inline-checkbox{height:32px}.template-checklist-add{grid-template-columns:1fr 1fr}.template-checklist-add label:first-child{grid-column:1/-1}.template-checklist-add button{width:100%}.template-photo-upload{grid-template-columns:1fr 1fr}.template-photo-upload label:first-child{grid-column:1/-1}.template-photo-upload button{width:100%}.template-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.template-stats{grid-template-columns:1fr 1fr}.template-form,.template-preview,.template-checklist-content,.template-photo-content{padding-left:12px;padding-right:12px}.template-copy-grid{grid-template-columns:1fr}.template-form-actions{align-items:stretch;flex-direction:column}.template-form-actions .button{width:100%}.template-checklist-row{align-items:stretch;flex-direction:column}.template-checklist-edit{grid-template-columns:1fr}.template-checklist-edit input:first-of-type{grid-column:auto}.template-checklist-edit .button,.template-checklist-remove,.template-checklist-remove .button{width:100%}.template-checklist-add{grid-template-columns:1fr}.template-checklist-add label:first-child{grid-column:auto}.template-photo-upload{grid-template-columns:1fr}.template-photo-upload label:first-child{grid-column:auto}.template-photo-grid{grid-template-columns:1fr}}
.daily-shift{display:flex;align-items:center;justify-content:center;gap:18px;padding:12px 18px 8px}.daily-shift>div{display:flex;flex-direction:column;gap:4px}.daily-shift strong{color:var(--forest);font-size:20px}.daily-shift small{color:#98a39c;font-size:9px}.daily-shift>span{color:#9aaba0;font-size:18px}.daily-shift-note{padding:0 18px 16px;color:#98a39c;font-size:10px;line-height:1.45}

/* Task manager */
.task-manager-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.task-manager-stat{display:flex;min-height:96px;flex-direction:column;justify-content:center;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}.task-manager-stat span{color:#7e8c83;font-size:11px}.task-manager-stat strong{margin-top:6px;color:var(--forest);font-size:27px;letter-spacing:-.05em}.task-manager-stat small{margin-top:4px;color:#a0aaa4;font-size:10px}.task-manager-stat.warning strong{color:#aa604f}.task-manager-stat.active strong{color:#668b70}.task-manager-panel,.task-create-panel,.task-assignment-panel{overflow:visible}.task-manager-filters{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:11px;padding:0 18px 18px}.task-manager-filters label{display:flex;min-width:0;flex-direction:column;gap:6px;color:#63736a;font-size:11px;font-weight:700}.task-manager-filters input,.task-manager-filters select{height:36px;width:100%;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;outline:0;font-size:12px;font-weight:400}.task-manager-filters input:focus,.task-manager-filters select:focus{border-color:#8fad97;box-shadow:0 0 0 3px #edf4ee}.task-manager-filters .filter-wide{grid-column:span 2}.filter-check{display:flex!important;align-items:center;justify-content:center;flex-direction:row!important;gap:7px!important;padding-top:23px}.filter-check input{width:16px;height:16px;accent-color:var(--forest)}.filter-actions{display:flex;align-items:end;gap:7px}.filter-actions .button{flex:1}.task-create-form{padding:0 18px 18px}.task-create-form .filter-wide{grid-column:1/-1}.task-form-note{grid-column:1/-1;padding:11px 13px;border:1px solid #dce9dd;border-radius:7px;background:#eef4ef;color:#698b73;font-size:11px;line-height:1.45}.task-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.task-manager-table{min-width:1040px}.table-subtext{display:block;margin-top:5px;color:#9aa59e;font-size:10px}.overdue-label{display:block;margin-top:5px;color:#aa604f;font-size:10px;font-weight:700}.priority-label{display:inline-flex;padding:5px 7px;border-radius:5px;background:#edf1ed;color:#718078;font-size:10px;font-weight:700}.priority-label.critical{background:#fae8e3;color:#a85647}.priority-label.urgent{background:#fbefe2;color:#aa7650}.priority-label.high{background:#f5f0df;color:#92784f}.priority-label.low{background:#eef1ef;color:#76847c}.empty-state{display:flex;min-height:110px;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:#99a49d;text-align:center}.empty-state strong{color:#5d6d63;font-size:12px}.empty-state span{font-size:10px}.muted-note{color:#9ba59f;font-size:11px}.checklist-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #eff2ee;color:#63736a;font-size:11px}.photo-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.photo-record{padding:8px;border:1px solid #e7eee8;border-radius:7px;color:#718078;font-size:10px}.photo-record span{color:#9aa59e;font-size:9px}.task-assignment-panel{margin-bottom:15px}
@media(max-width:1000px){.task-manager-filters{grid-template-columns:repeat(2,1fr)}.task-manager-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.task-manager-filters{grid-template-columns:1fr;padding:0 12px 12px}.task-manager-filters .filter-wide{grid-column:auto}.filter-check{justify-content:flex-start;padding-top:0}.filter-actions{align-items:stretch}.task-manager-stats{grid-template-columns:1fr 1fr}.task-create-form{padding:0 12px 12px}.task-form-note{grid-column:auto}.task-form-actions{align-items:stretch;flex-direction:column}.task-form-actions .button{width:100%}}

/* Weekly arrangement planner */
.weekly-planner-heading{align-items:center}.weekly-planner-toolbar{margin-bottom:15px}.weekly-planner-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.weekly-planner-form-panel{overflow:visible}.weekly-planner-form{padding:0 18px 18px}.weekly-planner-form small{display:block;margin-top:5px;color:#9aa59e;font-size:9px;font-weight:400;line-height:1.35}.weekly-step-heading{padding:12px 13px;border:1px solid #dce9dd;border-radius:8px;background:#eef4ef;color:#698b73}.weekly-step-heading strong{display:block;margin-top:4px;color:#5d8066;font-size:11px}.weekly-add-step{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(0,1.8fr);gap:15px;padding:16px 18px;border-top:1px solid #edf1ed;background:#fbfcfa}.weekly-add-step>div p{margin:6px 0 0;color:#9aa59e;font-size:10px;line-height:1.45}.weekly-add-step-form{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:9px;align-items:end}.weekly-add-step-form label{display:flex;min-width:0;flex-direction:column;gap:5px;color:#63736a;font-size:10px;font-weight:700}.weekly-add-step-form input,.weekly-add-step-form select,.weekly-add-step-form textarea{width:100%;padding:8px 9px;border:1px solid #dfe7df;border-radius:6px;background:#fff;color:#52635a;outline:0;font-size:11px;font-weight:400}.weekly-add-step-form .filter-wide{grid-column:1/-1}.weekly-add-step-form button{grid-column:1/-1;justify-self:end}.weekly-planner-empty,.roster-planner-empty{padding:30px 18px;border-top:1px solid #edf1ed;color:#99a49d;font-size:11px;text-align:center}.weekly-planner-empty strong{color:#5d6d63}.weekly-occurrence-table{min-width:980px}.weekly-occurrence-table td>strong,.weekly-occurrence-table td>small{display:block}.weekly-occurrence-table td>strong{color:#5d6d63;font-size:10px}.weekly-reschedule-form{display:grid;grid-template-columns:115px 78px auto;gap:5px;align-items:center}.weekly-reschedule-form input{width:100%;height:30px;padding:0 6px;border:1px solid #dfe7df;border-radius:5px;background:#fcfdfb;color:#52635a;font-size:10px}.weekly-reschedule-form .button{height:30px;padding:0 8px}.weekly-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 18px}.weekly-plan-card{display:flex;min-width:0;justify-content:space-between;gap:14px;padding:14px;border:1px solid #e4ebe4;border-radius:9px;background:#fbfcfa}.weekly-plan-card.is-paused{opacity:.7}.weekly-plan-card-main{min-width:0;flex:1}.weekly-plan-card-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.weekly-plan-card h3{margin:10px 0 4px;color:var(--forest);font-size:15px}.weekly-plan-card-main>strong{color:#68786e;font-size:11px}.weekly-plan-card-main p{margin:9px 0;color:#929e96;font-size:10px;line-height:1.45}.weekly-plan-meta{display:flex;flex-direction:column;gap:5px;padding-top:9px;border-top:1px solid #e9eee9;color:#7d8c82;font-size:9px;line-height:1.4}.weekly-plan-card-actions{display:flex;align-items:flex-end;flex-direction:column;gap:7px}.weekly-plan-card-actions form{margin:0}.roster-planner-panel{overflow:visible;margin-bottom:15px}.roster-planner-head{align-items:flex-start;flex-wrap:wrap}.roster-planner-table{min-width:1050px}.roster-planner-table td>strong,.roster-planner-table td>small{display:block}.roster-planner-table td>strong{color:#5d6d63;font-size:10px}.roster-arrangement-assignment-form{display:flex;align-items:center;gap:5px}.roster-arrangement-assignment-form select{height:30px;min-width:125px;padding:0 7px;border:1px solid #dfe7df;border-radius:6px;background:#fcfdfb;color:#52635a;font-size:10px}.roster-arrangement-assignment-form .button{height:30px;padding:0 8px}.status.delivery{background:#e8f1f2;color:#527b81}.status.maintenance{background:#fbf0e2;color:#a5784f}.status.production{background:#e6f0e8;color:#5f896c}.status.preparation{background:#eeeaf4;color:#786b8c}
@media(max-width:1050px){.weekly-planner-stats{grid-template-columns:repeat(2,1fr)}.weekly-plan-list{grid-template-columns:1fr}.weekly-add-step{grid-template-columns:1fr}.weekly-add-step-form{grid-template-columns:repeat(2,minmax(100px,1fr))}}
@media(max-width:650px){.weekly-planner-stats{grid-template-columns:1fr 1fr}.weekly-planner-form{padding:0 12px 12px}.weekly-plan-list{padding:0 12px 12px}.weekly-plan-card{align-items:stretch;flex-direction:column}.weekly-plan-card-actions{align-items:stretch;flex-direction:row}.weekly-plan-card-actions .button{flex:1}.weekly-add-step{padding:12px}.weekly-add-step-form{grid-template-columns:1fr}.weekly-add-step-form .filter-wide{grid-column:auto}.weekly-add-step-form button{grid-column:auto;justify-self:stretch}.weekly-add-step-form button{width:100%}.weekly-reschedule-form{grid-template-columns:1fr 1fr}.weekly-reschedule-form .button{grid-column:1/-1}.roster-planner-head .roster-week-actions{width:100%}.roster-planner-head .roster-week-actions .button,.roster-planner-head .roster-week-actions form{flex:1}.roster-planner-head .roster-week-actions form .button{width:100%}.roster-arrangement-assignment-form{align-items:stretch;flex-direction:column}.roster-arrangement-assignment-form select,.roster-arrangement-assignment-form .button{width:100%}}

/* Mobile app shell */
.nav-item{text-decoration:none}
.mobile-menu-icon,.mobile-page-icon,.mobile-notification-icon,.mobile-nav-icon{display:none}
.sidebar-backdrop,.mobile-bottom-nav{display:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.top-action-icon{display:block;width:18px;height:18px;flex:0 0 auto}
.top-action-button{position:relative;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0;border:1px solid #e0e9e0;border-radius:10px;background:#f8faf7;color:#698176;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s}
.top-action-button:hover{background:#eef5ee;border-color:#cfe0d2;color:var(--forest);transform:translateY(-1px)}
.top-action-button:focus-visible,.search:focus-within{outline:0;border-color:#91ab98;box-shadow:0 0 0 3px #e6f0e7}
.top-action-text{display:none}
.top-actions .search{width:222px;height:36px;gap:8px;padding:0 11px;border-radius:10px;background:#f8faf7}
.top-actions .search .top-action-icon{width:17px;height:17px;color:#82958a}
.top-actions .notification-link .nav-badge{position:absolute;top:-5px;right:-5px;margin:0;min-width:16px;height:16px;padding:0 3px;border:2px solid var(--paper);font-size:8px}
.top-actions .pwa-install-link[hidden]{display:none}
@media(max-width:650px){
  html,body{overflow-x:hidden}
  body{font-size:15px}
  .app-shell{min-width:0}
  .sidebar{position:fixed;z-index:30;left:-330px;width:min(320px,calc(100vw - 44px));height:100vh;min-height:100vh;overflow-y:auto;padding:20px 14px 24px;transition:left .2s;box-shadow:18px 0 40px rgba(36,68,60,.18)}
  .sidebar.open{left:0}
  .sidebar-backdrop{display:none;position:fixed;inset:0;z-index:25;background:rgba(23,41,35,.38);backdrop-filter:blur(2px)}
  .sidebar.open + .sidebar-backdrop{display:block}
  .mobile-menu{display:inline-flex;min-width:54px;height:40px;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid #d9e7da;border-radius:10px;background:#eef4ef;color:var(--forest);font-size:12px;font-weight:700}
  .mobile-menu-icon{display:block;width:16px;height:16px;flex:0 0 auto}
  .topbar{position:sticky;top:0;z-index:20;height:58px;padding:0 12px;gap:9px;background:rgba(251,252,250,.97);box-shadow:0 4px 18px rgba(36,68,60,.07)}
  .crumb{min-width:0;flex:1;font-size:14px;gap:0}
  .crumb span{display:none}
  .crumb strong{display:flex;align-items:center;gap:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .mobile-page-icon{display:inline-block;width:15px;height:15px;flex:0 0 auto}
  .top-actions{gap:7px}
  .top-actions .search,.top-actions .pwa-install-link,.top-actions>a:not(.notification-link),.top-actions>.avatar{display:none}
  .top-actions .notification-link{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 9px;border:1px solid #d9e7da;border-radius:9px;background:#f4f8f3;color:#5f806a;font-size:11px;font-weight:700}
  .mobile-notification-icon{display:block;width:16px;height:16px;flex:0 0 auto}
  .top-actions .notification-link .nav-badge{font-size:9px}
  .page{width:100%;padding:20px 12px 92px}
  .heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:18px}
  .heading h1{font-size:32px;line-height:1.05;margin:7px 0}
  .heading p{font-size:13px;line-height:1.6}
  .eyebrow,.kicker{font-size:10px;letter-spacing:.1em}
  .grid,.lower,.area-page-grid,.roster-editor-layout,.report-summary-grid,.report-two-column,.analytics-highlight-grid{grid-template-columns:1fr}
  .panel,.stat{border-radius:14px}
  .panel-head{align-items:flex-start;flex-direction:column;gap:7px;padding:16px 14px 12px}
  .panel-head h2{font-size:18px}
  .panel-head p{font-size:12px;line-height:1.5}
  .panel-head>.tag{align-self:flex-start}
  .panel-head a{font-size:11px}
  .actions{width:100%;gap:8px;flex-wrap:wrap}
  .actions .button{flex:1;min-width:0}
  .actions .button:first-child{display:none}
  .actions .button-primary{width:100%}
  .button{min-height:44px;height:44px;padding:0 14px;border-radius:10px;font-size:12px}
  .form-grid{gap:0}
  .form-grid label,.auth-card label{font-size:12px;gap:7px;margin-bottom:14px}
  .form-grid input,.form-grid select,.form-grid textarea,.auth-card input{min-height:44px;padding:10px 11px;border-radius:9px;font-size:16px}
  .form-grid textarea{min-height:110px}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .stat{min-height:108px;padding:13px;gap:10px}
  .stat-icon{width:34px;height:34px;font-size:17px}
  .stat-copy span,.stat-copy small{font-size:11px}
  .stat-copy strong{font-size:25px}
  .stat-trend{font-size:10px}
  .table-scroll,.roster-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
  .table th{font-size:10px}
  .table td{font-size:12px}
  .task-cell strong{font-size:13px}
  .task-cell span{font-size:10px}
  .pill,.status,.tag{font-size:10px}
  .owner,.due{font-size:12px}
  .due small{font-size:10px}
  .nav-item{min-height:46px;padding:12px 11px;border-radius:10px;font-size:15px}
  .nav-label{font-size:10px;padding-top:5px}
  .nav-group{margin-bottom:21px}
  .workspace{padding:12px;margin-bottom:18px}
  .workspace strong{font-size:12px}
  .workspace span{font-size:10px}
  .sidebar-bottom{padding-top:8px}
  .coverage{padding:13px}
  .coverage>div{font-size:11px}
  .coverage small,.user-chip strong,.user-chip span,.user-chip a{font-size:11px}
  .activity{align-items:stretch;gap:12px;padding:14px;border-radius:14px}
  .activity-list{display:grid;grid-template-columns:1fr;gap:11px}
  .activity-item{align-items:flex-start}
  .activity-item p{font-size:11px}
  .activity-item small{font-size:10px}
  .panel-link{display:flex;min-height:46px;align-items:center;padding:12px 14px;font-size:11px}
  .mobile-bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:stretch;justify-content:space-around;min-height:66px;padding:7px 7px max(7px,env(safe-area-inset-bottom));border-top:1px solid #dfe9df;background:rgba(255,255,255,.97);box-shadow:0 -5px 22px rgba(36,68,60,.12)}
  .mobile-bottom-nav a{display:flex;min-width:0;flex:1;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-height:50px;padding:0 4px;border-radius:10px;color:#7a8c81;text-decoration:none;font-size:11px;font-weight:700;text-align:center}
  .mobile-nav-icon{display:block;width:18px;height:18px;flex:0 0 auto}
  .mobile-bottom-nav a span{line-height:1.1}
  .mobile-bottom-nav a.active{background:#eef4ef;color:var(--forest)}
  .mobile-bottom-nav b{display:inline-flex;min-width:16px;height:16px;align-items:center;justify-content:center;margin-left:3px;border-radius:8px;background:#e6a28d;color:#70382e;font-size:9px}
}

/* Security and recovery */
.settings-tool-links{display:flex;flex-direction:column;gap:8px;padding:0 18px 18px}.settings-tool-links .button{justify-content:space-between}
.security-tabs{display:flex;gap:5px;margin:0 0 15px;padding:5px;border:1px solid var(--line);border-radius:9px;background:#f0f4ef}.security-tabs a{position:relative;flex:1;padding:11px 14px;border-radius:6px;color:#718078;text-align:center;text-decoration:none;font-size:12px;font-weight:700}.security-tabs a:hover{background:#e7eee6;color:var(--forest)}.security-tabs a.active{background:var(--forest);color:#fff;box-shadow:0 4px 10px rgba(36,68,60,.12)}.security-tabs b{display:inline-flex;min-width:17px;height:17px;align-items:center;justify-content:center;margin-left:5px;border-radius:9px;background:#e6a28d;color:#70382e;font-size:9px}
.security-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.security-summary-card{display:flex;min-height:104px;flex-direction:column;justify-content:center;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--shadow)}.security-summary-card span{color:#7e8c83;font-size:10px}.security-summary-card strong{margin-top:7px;color:var(--forest);font-size:19px;line-height:1.15}.security-summary-card small{margin-top:5px;color:#9aa59e;font-size:9px;line-height:1.4}
.security-actions-panel,.security-table-panel,.security-recovery-panel,.security-filter-panel,.security-alerts-panel{overflow:visible;margin-bottom:15px}.security-backup-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 18px 18px}.security-backup-actions form{display:flex;min-width:0;flex-direction:column;gap:7px}.security-backup-actions .button{width:100%}.security-backup-actions small{color:#9aa59e;font-size:9px;line-height:1.4}.security-table-panel .panel-head .tag{max-width:42%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.security-table{min-width:980px}.security-table td>strong,.security-table td>small{display:block}.security-table td>strong{color:#58695f;font-size:11px;line-height:1.35}.security-table td>small{margin-top:4px;color:#9aa59e;font-size:9px;line-height:1.35}.security-table td code{color:#718078;font-family:Consolas,monospace;font-size:9px}.security-status{display:inline-flex;padding:5px 7px;border-radius:5px;background:#edf1ed;color:#718078;font-size:9px;font-weight:700;white-space:nowrap}.security-status.completed{background:#e8f0e9;color:#66856e}.security-status.failed{background:#faeae5;color:#aa6959}.security-status.running{background:#fbf0e2;color:#a5784f}.security-error{color:#aa6959!important}.security-empty{padding:30px 18px!important;color:#99a49d!important;text-align:center}.security-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px 15px}.security-note-grid>div{display:flex;min-width:0;flex-direction:column;gap:6px;padding:12px;border:1px solid #e5ebe5;border-radius:8px;background:#fbfcfa}.security-note-grid strong{color:#607168;font-size:10px}.security-note-grid code{overflow:auto;padding:7px;border-radius:5px;background:#f0f4ef;color:#718078;font-family:Consolas,monospace;font-size:9px;line-height:1.45}.security-footnote{margin:0 18px 18px;padding:11px 12px;border:1px solid #dce9dd;border-radius:7px;background:#eef4ef;color:#698b73;font-size:10px;line-height:1.5}.security-footnote code{font-family:Consolas,monospace}
.security-login-summary .security-summary-card strong{font-size:24px}.security-filter-panel .panel-head{align-items:flex-start}.security-login-filters{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr)) auto;gap:10px;align-items:end;padding:0 18px 18px}.security-login-filters label{display:flex;min-width:0;flex-direction:column;gap:6px;color:#63736a;font-size:10px;font-weight:700}.security-login-filters input,.security-login-filters select{width:100%;height:36px;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#52635a;outline:0;font-size:11px}.security-filter-actions{display:flex;align-items:end;gap:7px}.security-filter-actions .button{flex:1;white-space:nowrap}.login-history-table{min-width:1080px}.user-agent-cell{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.security-alert-list{display:flex;flex-direction:column;padding:0 18px 18px}.security-alert{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:11px;align-items:start;padding:13px 0;border-top:1px solid #edf1ed}.security-alert:first-child{border-top:0}.security-alert-marker{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#d29a66;box-shadow:0 0 0 3px #fbf0e3}.security-alert.critical .security-alert-marker{background:#ca725d;box-shadow:0 0 0 3px #faeae5}.security-alert.is-acknowledged{opacity:.62}.security-alert-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}.security-alert-topline strong{color:#596b60;font-size:11px}.security-alert-topline time{color:#9aa59e;font-size:9px;white-space:nowrap}.security-alert p{margin:6px 0;color:#7d8b82;font-size:10px;line-height:1.5}.security-alert small{color:#9aa59e;font-size:9px}.security-alert form{margin:0}
@media(max-width:1050px){.security-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.security-login-filters{grid-template-columns:repeat(3,minmax(120px,1fr))}.security-filter-actions{grid-column:1/-1}}
@media(max-width:650px){.security-tabs{overflow-x:auto}.security-tabs a{min-width:150px;white-space:nowrap}.security-summary-grid{grid-template-columns:1fr 1fr;gap:10px}.security-summary-card{min-height:104px;padding:12px}.security-summary-card span{font-size:10px}.security-summary-card strong{font-size:16px}.security-login-summary .security-summary-card strong{font-size:22px}.security-backup-actions{grid-template-columns:1fr;padding:0 12px 12px}.security-backup-actions .button{min-height:44px}.security-note-grid{grid-template-columns:1fr;padding:0 12px 12px}.security-footnote{margin:0 12px 12px}.security-login-filters{grid-template-columns:1fr;padding:0 12px 12px}.security-filter-actions{grid-column:auto;align-items:stretch}.security-filter-actions .button{min-height:44px}.security-alert-list{padding:0 12px 12px}.security-alert{grid-template-columns:8px minmax(0,1fr);gap:9px}.security-alert form{grid-column:2}.security-alert form .button{width:100%}.security-alert-topline{align-items:flex-start;flex-direction:column;gap:4px}.security-table-panel .panel-head .tag{max-width:100%}}

/* Personal dashboard layout */
.dashboard-layout{display:flex;min-width:0;flex-direction:column;gap:15px}
.dashboard-layout>.dashboard-widget{order:5;min-width:0}
.dashboard-layout>.dashboard-widget[data-dashboard-widget="stats"]{order:1}
.dashboard-layout>.dashboard-widget[data-dashboard-widget="queue"]{order:2}
.dashboard-layout>.dashboard-widget[data-dashboard-widget="lower"]{order:3}
.dashboard-layout>.dashboard-widget[data-dashboard-widget="capacity"]{order:4}
.dashboard-layout>.dashboard-widget[data-dashboard-widget="activity"]{order:5}
.dashboard-layout>.dashboard-widget>.stats,.dashboard-layout>.dashboard-widget>.lower,.dashboard-layout>.dashboard-widget>.activity,.dashboard-layout>.dashboard-widget>.capacity-panel{margin-top:0;margin-bottom:0}
.dashboard-layout-editor{margin-bottom:15px;padding:17px 18px;border:1px solid #d9e6da;border-radius:11px;background:#f3f7f2;box-shadow:var(--shadow)}
.dashboard-layout-editor[hidden]{display:none}
.dashboard-layout-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}
.dashboard-layout-editor-head h2{margin:5px 0 0;color:var(--forest);font-size:17px;letter-spacing:-.04em}
.dashboard-layout-editor-head p{margin:6px 0 0;color:#819087;font-size:10px;line-height:1.45}
.dashboard-layout-editor-icon{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border-radius:10px;background:#e2efe4;color:#5f896c}
.dashboard-layout-editor-icon svg{width:19px;height:19px}
.dashboard-layout-list{display:flex;flex-direction:column;gap:7px;margin:15px 0 0;padding:0;list-style:none}
.dashboard-layout-item{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 10px;border:1px solid #dce7dd;border-radius:9px;background:#fff;cursor:grab}
.dashboard-layout-item:active{cursor:grabbing}
.dashboard-layout-item.is-dragging{opacity:.45;border-style:dashed}
.dashboard-drag-handle{display:grid;width:24px;height:30px;place-items:center;flex:0 0 auto;color:#9aaba0}
.dashboard-drag-handle svg{width:17px;height:22px}
.dashboard-layout-item-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.dashboard-layout-item-copy strong{color:#506359;font-size:11px}
.dashboard-layout-item-copy small{overflow:hidden;color:#8a9990;font-size:9px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.dashboard-layout-item-actions{display:flex;gap:4px;flex:0 0 auto}
.dashboard-layout-item-actions button{display:grid;width:28px;height:28px;place-items:center;padding:0;border:1px solid #e0e9e1;border-radius:7px;background:#f8faf7;color:#668171}
.dashboard-layout-item-actions button:hover{border-color:#bcd1be;background:#edf5ee;color:var(--forest)}
.dashboard-layout-item-actions svg{width:15px;height:15px}
.dashboard-layout-editor-actions{display:flex;align-items:center;gap:8px;margin-top:12px}
.dashboard-layout-editor-actions .dashboard-layout-feedback{min-width:0;flex:1;color:#829289;font-size:10px}
.dashboard-layout-feedback[data-tone="success"]{color:#5f896c}
.dashboard-layout-feedback[data-tone="error"]{color:#a85f50}
.dashboard-layout-feedback[data-tone="saving"]{color:#a77a50}
.dashboard-edit-button{width:34px;min-width:34px;padding:0}
.dashboard-edit-button svg{width:17px;height:17px}
@media(max-width:650px){.dashboard-layout-editor{padding:14px}.dashboard-layout-editor-head h2{font-size:16px}.dashboard-layout-item{min-height:58px;padding:9px}.dashboard-layout-item-copy small{font-size:10px}.dashboard-layout-editor-actions{align-items:stretch;flex-wrap:wrap}.dashboard-layout-editor-actions .dashboard-layout-feedback{order:3;width:100%;flex-basis:100%;min-height:18px}.dashboard-layout-editor-actions .button{flex:1;min-height:42px}.dashboard-edit-button{display:grid!important;flex:0 0 34px!important}}


@media(max-width:650px){
  .dashboard-task-table{display:block;min-width:0}
  .dashboard-task-table thead{display:none}
  .dashboard-task-table tbody{display:block}
  .dashboard-task-table tr{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;padding:12px;border-bottom:1px solid #eef1ed}
  .dashboard-task-table td{display:flex;align-items:center;gap:6px;padding:4px 0!important;border:0;font-size:11px}
  .dashboard-task-table td:first-child{grid-column:1/-1;align-items:flex-start}
  .dashboard-task-table td:nth-child(2)::before{content:'Area';color:#a0aaa4;font-size:9px;font-weight:700;text-transform:uppercase}
  .dashboard-task-table td:nth-child(3)::before{content:'Due';color:#a0aaa4;font-size:9px;font-weight:700;text-transform:uppercase}
  .dashboard-task-table td:nth-child(4)::before{content:'Owner';color:#a0aaa4;font-size:9px;font-weight:700;text-transform:uppercase}
  .dashboard-task-table td:nth-child(5)::before{content:'Status';color:#a0aaa4;font-size:9px;font-weight:700;text-transform:uppercase}
  .dashboard-task-table td[colspan]{display:block;padding:20px 12px!important}
  .dashboard-task-table .task-cell strong{font-size:13px}
  .dashboard-task-table .task-cell span{font-size:10px}
  .dashboard-task-table .owner{min-width:0;white-space:normal}
  .dashboard-task-table .pill,.dashboard-task-table .status{white-space:nowrap}
}

@media(max-width:650px){
  .task-manager-stat{min-height:105px;border-radius:12px}
  .task-manager-stat span{font-size:11px}
  .task-manager-stat strong{font-size:26px}
  .my-task-row{border-radius:12px}
  .settings-fields,.report-filters,.analytics-filters,.task-manager-filters{width:100%}
}

/* Modern readable visual pass */
:root{
  --font-ui:"Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --text-body:#506159;
  --text-muted:#6f8076;
  --text-subtle:#829087;
}
html{text-rendering:optimizeLegibility}
body{font-family:var(--font-ui);line-height:1.5;letter-spacing:-.003em;color:#2d3c35}
button,input,select,textarea{font-family:var(--font-ui);line-height:1.4}
.brand-lockup strong{font-size:16px;letter-spacing:-.025em}
.brand-lockup span{font-size:10px;letter-spacing:.09em}
.workspace strong{font-size:12px}.workspace span{font-size:11px}
.nav-label{font-size:10px;letter-spacing:.1em}.nav-item{min-height:40px;font-size:13px;line-height:1.35}
.coverage>div{font-size:12px}.coverage small,.user-chip strong,.user-chip span,.user-chip a{font-size:11px}
.crumb{font-size:12px}.search input{font-size:13px}
.eyebrow,.kicker{font-size:10px;letter-spacing:.1em}
.heading h1{font-size:clamp(2rem,2.3vw,2.6rem);letter-spacing:-.045em}
.heading p{font-size:14px;line-height:1.65;color:var(--text-muted)}
.button{min-height:38px;height:38px;padding:0 14px;border-radius:10px;font-size:12px;line-height:1.25}
.panel-head h2{font-size:19px}.panel-head p,.panel-head a{font-size:12px;line-height:1.55}
.table th{padding-top:11px;padding-bottom:11px;font-size:10px;letter-spacing:.09em}
.table td{font-size:12px;line-height:1.45;color:var(--text-body)}
.task-cell strong{font-size:13px;line-height:1.35}.task-cell span{font-size:10px;line-height:1.4}
.pill,.status,.tag{font-size:10px;line-height:1.25}.owner,.due{font-size:12px}.due small{font-size:10px}
.panel-link{font-size:12px}.form-grid label,.auth-card label{font-size:12px}
.form-grid input,.form-grid select,.form-grid textarea,.auth-card input{font-size:14px;line-height:1.45}
.notice,.alert{font-size:12px;line-height:1.55}
.stat-copy span,.stat-copy small,.task-manager-stat span,.task-manager-stat small{font-size:11px;color:var(--text-muted)}
.stat-copy strong{font-size:28px}.area-main strong{font-size:12px}.area-main span{font-size:10px}
.deadline-time strong{font-size:12px}.deadline-time span,.deadline-label strong,.deadline-state{font-size:10px}
.activity strong{font-size:12px}.activity p,.activity small{font-size:10px}
.empty-state strong{font-size:14px}.empty-state span,.muted-note{font-size:12px;color:var(--text-muted)}
.task-manager-filters label,.security-login-filters label{font-size:12px}
.task-manager-filters input,.task-manager-filters select,.security-login-filters input,.security-login-filters select{font-size:13px}
.weekly-plan-card h3{font-size:17px}.weekly-plan-card-main>strong{font-size:12px}.weekly-plan-card-main p{font-size:12px;color:var(--text-muted)}
.notification-main h2{font-size:14px}.notification-main p{font-size:12px}.notification-context,.notification-item time{font-size:10px}
.security-summary-card span{font-size:11px}.security-summary-card strong{font-size:21px}.security-summary-card small{font-size:10px}
.security-note-grid strong{font-size:12px}.security-note-grid code{font-size:10px}.security-footnote{font-size:11px}
.template-card strong{font-size:13px}.template-card span:not(.template-kind):not(.template-status),.template-card small{font-size:10px}
.template-form label,.template-checklist-add label,.template-photo-upload label{font-size:12px}
.template-form input,.template-form select,.template-form textarea{font-size:13px}

@media(min-width:651px){
  .stat,.panel,.task-manager-stat,.security-summary-card{border-radius:14px;box-shadow:0 8px 26px rgba(40,64,53,.07)}
  .panel-head{padding:20px 20px 16px}
}

@media(max-width:650px){
  body{font-size:16px;line-height:1.5}
  .crumb{font-size:15px}.nav-item{font-size:16px}
  .heading h1{font-size:clamp(2rem,8vw,2.35rem)}.heading p{font-size:14px}
  .panel-head h2{font-size:19px}.panel-head p,.panel-head a{font-size:12px}
  .table th{font-size:10px}.table td{font-size:13px}
  .task-cell strong{font-size:14px}.task-cell span{font-size:11px}
  .panel-link{font-size:12px}.empty-state strong{font-size:15px}.empty-state span{font-size:12px}
  .mobile-bottom-nav a{font-size:12px}
}

.stat-icon-svg{display:block;width:20px;height:20px;overflow:visible}
@media(max-width:650px){.stat-icon-svg{width:19px;height:19px}}

/* Recent floor activity */
.activity{display:grid;grid-template-columns:minmax(185px,.7fr) minmax(0,2.4fr) auto;align-items:center;gap:18px;margin-top:15px;padding:14px 17px;background:linear-gradient(135deg,#f4f8f4,#eef4ef);border:1px solid #dce7dd;border-radius:14px;box-shadow:0 8px 22px rgba(40,64,53,.06)}
.activity-heading{display:flex;align-items:center;gap:10px;min-width:0}
.activity-heading-icon{display:grid;width:36px;height:36px;place-items:center;flex:0 0 auto;border:1px solid #d8e6da;border-radius:11px;background:#e5f0e6;color:#5d896a}
.activity-heading-icon svg{width:19px;height:19px}
.activity-heading>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.activity-heading strong{color:#40554a;font-size:13px;line-height:1.25}
.activity-heading small{color:#829289;font-size:10px;line-height:1.35}
.activity-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-width:0}
.activity-item{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:9px 10px;border:1px solid #e0e9e1;border-radius:10px;background:rgba(255,255,255,.72)}
.activity-item-icon{display:grid;width:28px;height:28px;place-items:center;flex:0 0 auto;border-radius:9px}
.activity-item-icon svg{width:16px;height:16px}
.activity-item-icon.success{background:#e4f1e6;color:#5d8a69}.activity-item-icon.warning{background:#fbefdf;color:#a8764d}.activity-item-icon.info{background:#e5f0f2;color:#557f86}
.activity-item>div{display:flex;min-width:0;flex-direction:column;gap:4px}
.activity-item p{display:-webkit-box;overflow:hidden;min-height:30px;margin:0;color:#50645a;font-size:11px;font-weight:600;line-height:1.35;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.activity-item small{color:#829087;font-size:10px;line-height:1.35}
.activity-empty{display:flex;grid-column:1/-1;align-items:center;gap:9px;min-height:48px;padding:9px 10px;border:1px dashed #d9e5db;border-radius:10px;color:#718278}
.activity-empty p{margin:0;font-size:11px;font-weight:600}
.activity-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#5d4d82;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.activity-link svg{width:16px;height:16px}
@media(max-width:1050px){.activity{grid-template-columns:1fr auto}.activity-heading{grid-column:1/-1}.activity-list{grid-column:1/-1}}
@media(max-width:650px){.activity{grid-template-columns:1fr;gap:13px;padding:14px}.activity-heading{grid-column:auto;order:1}.activity-list{grid-column:auto;grid-template-columns:1fr;gap:9px;order:2}.activity-item{padding:10px}.activity-item p{font-size:12px;white-space:normal}.activity-item small{font-size:11px}.activity-empty{grid-column:auto;min-height:52px}.activity-empty p{font-size:12px}.activity-link{width:100%;min-height:42px;padding-top:11px;border-top:1px solid #dce7dd;order:3}}

/* Production capacity warnings */
.capacity-panel{margin-top:15px;overflow:hidden;border-color:#dfe8df;background:linear-gradient(135deg,#fbfcfa,#f2f7f2)}
.capacity-panel.has-warnings{border-color:#eadfce}
.capacity-panel.is-clear{border-color:#d8e6da}
.capacity-panel-head{align-items:flex-start}
.capacity-panel-head>div:first-child{min-width:0}
.capacity-panel-head p{max-width:760px}
.capacity-summary{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.capacity-summary a{font-size:12px;font-weight:700;white-space:nowrap}
.capacity-alert-tag{background:#fff1e5;color:#a6673d;border-color:#f0d9c1}
.capacity-good-tag{background:#e8f3e9;color:#4f7d5d;border-color:#d2e5d5}
.capacity-warning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 20px 20px}
.capacity-warning-card{display:flex;min-width:0;min-height:166px;flex-direction:column;padding:14px;border:1px solid #eadfd2;border-radius:12px;background:rgba(255,255,255,.8);box-shadow:0 5px 16px rgba(80,64,40,.04)}
.capacity-warning-card.warning{border-color:#eadfce}
.capacity-warning-card.critical{border-color:#efd2c8;background:#fffaf8}
.capacity-warning-heading{display:flex;align-items:flex-start;gap:10px;min-width:0}
.capacity-warning-heading>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.capacity-warning-heading small{color:#9a765a;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.capacity-warning-card.critical .capacity-warning-heading small{color:#a96555}
.capacity-warning-heading strong{overflow:hidden;color:#394e43;font-size:14px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.capacity-warning-icon{display:grid;width:32px;height:32px;place-items:center;flex:0 0 auto;border-radius:10px;background:#fbefdf;color:#a8764d}
.capacity-warning-card.critical .capacity-warning-icon{background:#f9e4df;color:#b3614e}
.capacity-warning-icon svg{width:18px;height:18px}
.capacity-warning-card>p{margin:13px 0 5px;color:#495d51;font-size:12px;font-weight:700;line-height:1.45}
.capacity-warning-detail{display:block;min-height:31px;color:#849289;font-size:11px;line-height:1.45}
.capacity-warning-card>a{margin-top:auto;padding-top:11px;color:#536f60;font-size:11px;font-weight:700;text-decoration:none}
.capacity-warning-card>a:hover{text-decoration:underline;text-underline-offset:3px}
.capacity-clear{display:flex;align-items:center;gap:12px;margin:0 20px 20px;padding:15px 16px;border:1px solid #dce9dd;border-radius:12px;background:rgba(255,255,255,.72)}
.capacity-clear-icon{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;border-radius:10px;background:#e4f1e6;color:#5d8a69}
.capacity-clear-icon svg{width:18px;height:18px}
.capacity-clear strong{display:block;color:#40564a;font-size:13px;line-height:1.35}
.capacity-clear p{margin:3px 0 0;color:#75867b;font-size:11px;line-height:1.5}
@media(max-width:950px){.capacity-warning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.capacity-panel-head{gap:10px}.capacity-summary{width:100%;justify-content:space-between}.capacity-warning-grid{grid-template-columns:1fr;padding:0 14px 14px}.capacity-warning-card{min-height:150px;padding:13px}.capacity-clear{align-items:flex-start;margin:0 14px 14px;padding:13px}.capacity-clear strong{font-size:14px}.capacity-clear p{font-size:12px}.capacity-warning-card>p{font-size:13px}.capacity-warning-detail{font-size:12px}}

/* Enforced task dependencies */
.task-dependencies-panel{overflow:hidden;border-color:#dce7df}
.task-dependencies-content{padding:0 18px 18px}
.dependency-blocked{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px;padding:12px 13px;border:1px solid #f0d6c9;border-radius:9px;background:#fff7f3;color:#955c4c}
.dependency-blocked:before{content:'!';display:grid;width:24px;height:24px;place-items:center;flex:0 0 auto;border-radius:8px;background:#f7e3da;color:#aa604c;font-weight:800}
.dependency-blocked strong{display:block;color:#7f4c3f;font-size:11px;line-height:1.35}
.dependency-blocked span{display:block;margin-top:3px;color:#a16f60;font-size:10px;line-height:1.45}
.dependency-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:76px;margin-bottom:14px;border:1px dashed #dce7df;border-radius:9px;background:#fbfdfb;text-align:center}
.dependency-empty strong{color:#597064;font-size:11px}
.dependency-empty span{color:#96a39a;font-size:10px}
.dependency-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.dependency-row{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid #e1eae2;border-radius:9px;background:#fbfdfb}
.dependency-direction{display:grid;width:42px;height:28px;place-items:center;flex:0 0 auto;border-radius:7px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.dependency-direction.before{background:#eef2f4;color:#5d7a81}
.dependency-direction.after{background:#e8f2e9;color:#60866a}
.dependency-body{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}
.dependency-body small{color:#98a49b;font-size:9px;text-transform:uppercase;letter-spacing:.07em}
.dependency-body a{overflow:hidden;color:#526b5b;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
.dependency-body a:hover{text-decoration:underline;text-underline-offset:3px}
.dependency-body>span{overflow:hidden;color:#87958b;font-size:9px;text-overflow:ellipsis;white-space:nowrap}
.dependency-row>.status{flex:0 0 auto}
.dependency-remove-form{margin:0}
.dependency-remove-form .button{height:28px;padding:0 8px;font-size:9px}
.dependency-add-form{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(180px,.8fr) auto;align-items:end;gap:10px;padding:12px;border:1px solid #dce9dd;border-radius:9px;background:#f5faf5}
.dependency-add-form label{display:flex;min-width:0;flex-direction:column;gap:6px;color:#63736a;font-size:10px;font-weight:700}
.dependency-add-form select{height:36px;min-width:0;padding:0 9px;border:1px solid #dfe7df;border-radius:7px;background:#fff;color:#52635a;font-size:11px}
.dependency-add-form .button{height:36px;white-space:nowrap}
.dependency-help{margin:8px 2px 0}
.status.quality-check-approved{background:#e4f1e6;color:#568066}
.status.ready-for-delivery{background:#e7eef4;color:#56748a}
.status.revision-required,.status.quality-check-failed{background:#faeae5;color:#aa6959}
@media(max-width:700px){.dependency-add-form{grid-template-columns:1fr}.dependency-add-form .button{width:100%}}
@media(max-width:520px){.task-dependencies-content{padding:0 12px 12px}.dependency-row{align-items:flex-start;flex-wrap:wrap}.dependency-direction{width:48px}.dependency-row>.status{margin-left:58px}.dependency-remove-form{margin-left:auto}.dependency-body{width:calc(100% - 60px);flex-basis:calc(100% - 60px)}.dependency-blocked{padding:11px}.dependency-empty span{padding:0 10px;line-height:1.45}}

/* WhatsApp OTP sign-in */
.auth-method-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 12px}
.auth-method-heading>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.auth-method-heading strong{color:#506359;font-size:13px}
.auth-method-heading span:not(.auth-method-icon){color:#88968e;font-size:10px}
.auth-method-icon{display:grid;width:32px;height:32px;place-items:center;flex:0 0 auto;border-radius:10px;background:#edf3ee;color:#5e876a}
.auth-method-icon svg{width:18px;height:18px}
.auth-method-icon.whatsapp-icon{background:#e5f2e8;color:#4f9260}
.auth-divider{display:flex;align-items:center;gap:10px;margin:22px 0 0;color:#a4aea7;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.auth-divider::before,.auth-divider::after{content:"";height:1px;flex:1;background:#e8eee8}
.auth-whatsapp{padding-top:1px}
.auth-code-note,.auth-provider-note{margin:8px 0 13px;color:#829188;font-size:10px;line-height:1.5}
.auth-provider-note{padding:9px 10px;border:1px solid #e1ebe2;border-radius:7px;background:#f4f8f3}
.auth-secondary-form{margin-top:8px}
.auth-secondary-form .button{background:#f7faf6}
.security-status.whatsapp{background:#e5f2e8;color:#4f9260}
.whatsapp-config-note{display:flex;flex-direction:column;gap:7px;padding:12px 13px;border:1px solid #dce9dd;border-radius:8px;background:#f3f8f3;color:#6f8176;font-size:11px;line-height:1.5}
.whatsapp-config-note strong{color:#567460;font-size:12px}
.whatsapp-config-note code{padding:2px 4px;border-radius:4px;background:#e8f1e8;color:#567460;font-family:Consolas,monospace;font-size:10px}
.settings-checkbox-field,.staff-checkbox-field{display:flex;min-width:0;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #dce9dd;border-radius:8px;background:#f5faf5;color:#637a6b}
.settings-checkbox-field>input,.staff-checkbox-field>input{width:17px;height:17px;flex:0 0 auto;margin:1px 0;accent-color:var(--forest)}
.settings-checkbox-field>span,.staff-checkbox-field>span{display:flex;min-width:0;flex-direction:column;gap:4px}
.settings-checkbox-field strong,.staff-checkbox-field strong{color:#55705e;font-size:11px;line-height:1.35}
.settings-checkbox-field small,.staff-checkbox-field small{color:#829188;font-size:10px;font-weight:400;line-height:1.4}

/* Readable, collapsible side navigation */
:root{--sidebar-bg:#f0f3ee;--sidebar-text:#53665c;--sidebar-muted:#738279;--sidebar-label:#7c8c82}
.sidebar{--sidebar-bg:#f0f3ee;background:var(--sidebar-bg);border-right-color:#d9e4da}
.sidebar-brand-row{position:relative;display:flex;align-items:flex-start;gap:8px;margin-bottom:21px}
.sidebar-brand-row .brand-lockup{min-width:0;flex:1;padding:0 6px 0 9px}
.sidebar-toggle{display:grid;width:34px;height:34px;place-items:center;flex:0 0 auto;padding:0;border:1px solid #d4e1d5;border-radius:10px;background:#f7faf6;color:#668272;transition:background .15s,border-color .15s,color .15s,transform .15s}
.sidebar-toggle:hover{border-color:#b9d0bc;background:#e8f2e9;color:var(--forest)}
.sidebar-toggle:focus-visible{outline:0;border-color:#91ab98;box-shadow:0 0 0 3px #e1eee2}
.sidebar-toggle-icon{display:block;width:18px;height:18px;transition:transform .2s ease}
.workspace{min-height:58px;margin:0 2px 24px;padding:12px;border-color:#d6e3d7;background:#e7efe6}
.workspace strong{color:#33483d;font-size:13px;line-height:1.3}
.workspace span{color:#7b8b81;font-size:11px;line-height:1.3}
.workspace-chevron{display:block;width:16px;height:16px;flex:0 0 auto;color:#7b8c81}
.nav-group{margin-bottom:20px}
.nav-label{padding:0 11px 8px;color:var(--sidebar-label);font-size:11px;letter-spacing:.11em;line-height:1.25}
.nav-item{position:relative;min-height:44px;margin:3px 0;padding:10px 12px;gap:12px;border:1px solid transparent;border-radius:10px;color:var(--sidebar-text);font-size:14px;font-weight:600;line-height:1.35}
.nav-item:hover{--sidebar-bg:#e5eee5;border-color:#d6e4d7;background:#e5eee5;color:#294d3e}
.nav-item:focus-visible{outline:0;border-color:#90ad97;box-shadow:0 0 0 3px #e0ede1}
.nav-item.active{--sidebar-bg:var(--forest);border-color:var(--forest);background:var(--forest);color:#fff;box-shadow:0 8px 16px rgba(36,68,60,.16)}
.nav-icon{display:grid;width:22px;height:22px;place-items:center;flex:0 0 auto;color:#769082}
.nav-icon-svg{display:block;width:20px;height:20px;overflow:visible}
.nav-item:hover .nav-icon,.nav-item.active .nav-icon{color:inherit}
.nav-item-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-badge{min-width:21px;height:21px;padding:0 5px;font-size:10px}
.coverage{margin:0 2px 15px;padding:13px;border-color:#dce7dd;background:#fbfdfb}
.coverage>div{color:#556a5d;font-size:11px}
.coverage small{color:#77877e;font-size:10px;line-height:1.4}
.user-chip{padding:13px 5px 0;border-top-color:#d6e2d7}
.user-chip strong{color:#465a50;font-size:11px}
.user-chip span{color:#77877e;font-size:10px}
.user-chip a{color:#62796a;font-size:11px;font-weight:600}

@media(min-width:651px){
  .sidebar{width:264px;flex-basis:264px;padding:23px 16px}
  .app-shell.sidebar-collapsed .sidebar{width:82px;flex-basis:82px;padding:23px 10px}
  .app-shell.sidebar-collapsed .sidebar-brand-row{justify-content:center;margin-bottom:21px}
  .app-shell.sidebar-collapsed .sidebar-brand-row .brand-lockup{justify-content:center;padding:0}
  .app-shell.sidebar-collapsed .brand-lockup>div:last-child{display:none}
  .app-shell.sidebar-collapsed .sidebar-toggle{position:absolute;top:-8px;right:-4px;width:26px;height:26px;border-radius:8px}
  .app-shell.sidebar-collapsed .sidebar-toggle-icon{width:15px;height:15px;transform:rotate(180deg)}
  .app-shell.sidebar-collapsed .workspace{justify-content:center;min-height:50px;margin-right:0;margin-left:0;padding:10px}
  .app-shell.sidebar-collapsed .workspace div,.app-shell.sidebar-collapsed .workspace-chevron{display:none}
  .app-shell.sidebar-collapsed .workspace i{margin:0}
  .app-shell.sidebar-collapsed .nav-label{width:22px;height:5px;margin:0 auto 13px;padding:0;overflow:hidden;color:transparent;border-top:2px solid #c6d6c8}
  .app-shell.sidebar-collapsed .nav-group{margin-bottom:18px}
  .app-shell.sidebar-collapsed .nav-item{justify-content:center;min-height:46px;padding:11px 8px;gap:0}
  .app-shell.sidebar-collapsed .nav-item-label{display:none}
  .app-shell.sidebar-collapsed .nav-item .nav-badge{position:absolute;top:3px;right:4px;min-width:16px;height:16px;padding:0;font-size:8px}
  .app-shell.sidebar-collapsed .coverage{display:none}
  .app-shell.sidebar-collapsed .user-chip{justify-content:center;padding-right:0;padding-left:0}
  .app-shell.sidebar-collapsed .user-chip div,.app-shell.sidebar-collapsed .user-chip a{display:none}
}

@media(max-width:650px){
  .sidebar-brand-row{align-items:center;margin-bottom:20px}
  .sidebar-toggle{display:grid}
  .nav-item{min-height:48px;padding:12px 13px;font-size:16px}
  .nav-label{font-size:11px}
  .nav-icon{width:24px;height:24px}
  .nav-icon-svg{width:21px;height:21px}
  .workspace{min-height:60px}
}

/* Application branding */
.brand-mark{width:38px;height:38px;overflow:hidden;padding:3px;border:1px solid #e3dfe6;border-radius:11px;background:#f7f7f7;box-shadow:0 6px 14px rgba(86,32,104,.12)}
.brand-mark img{width:100%;height:100%;display:block;object-fit:contain;border-radius:7px}
.auth-card .brand-mark{width:48px;height:48px;padding:4px;border-radius:14px}
.brand-settings-panel{margin-bottom:15px;overflow:visible}.brand-settings-body{display:grid;grid-template-columns:96px minmax(240px,1fr) minmax(300px,.85fr);align-items:center;gap:18px;padding:0 18px 20px}.brand-current-logo{width:96px;height:96px;display:grid;place-items:center;overflow:hidden;padding:7px;border:1px solid #e3dfe6;border-radius:20px;background:#f7f7f7;box-shadow:0 10px 24px rgba(86,32,104,.08)}.brand-current-logo img{width:100%;height:100%;display:block;object-fit:contain;border-radius:13px}.brand-settings-copy{display:flex;min-width:0;flex-direction:column;gap:6px}.brand-settings-copy strong{color:#53655b;font-size:14px}.brand-settings-copy span{color:#7f8d84;font-size:11px;line-height:1.55}.brand-settings-copy small{color:#9ba59f;font-size:10px;line-height:1.45}.brand-upload-form{display:flex;align-items:flex-end;gap:9px}.brand-file-field{display:flex;min-width:0;flex:1;flex-direction:column;gap:7px;color:#63736a;font-size:11px;font-weight:700}.brand-file-field input{width:100%;min-height:39px;padding:4px;border:1px solid #dfe7df;border-radius:7px;background:#fcfdfb;color:#7d8a82;font-size:10px}.brand-file-field input::file-selector-button{height:29px;margin-right:8px;padding:0 10px;border:0;border-radius:5px;background:#eee8f1;color:#7d388e;font-size:10px;font-weight:700;cursor:pointer}.brand-upload-form .button{flex:0 0 auto}.settings-preview-mark{overflow:hidden;padding:3px;border:1px solid #e3dfe6;background:#f7f7f7}.settings-preview-mark img{width:100%;height:100%;display:block;object-fit:contain;border-radius:7px}
@media(max-width:1050px){.brand-settings-body{grid-template-columns:96px 1fr}.brand-upload-form{grid-column:1/-1}}
@media(max-width:650px){.brand-settings-body{grid-template-columns:72px 1fr;gap:13px;padding:0 14px 16px}.brand-current-logo{width:72px;height:72px;padding:5px;border-radius:16px}.brand-upload-form{align-items:stretch;flex-direction:column}.brand-upload-form .button{width:100%}.brand-settings-copy strong{font-size:13px}.brand-settings-copy span{font-size:10px}.auth-card .brand-mark{width:44px;height:44px}}
