/* Work starts with an action, followed by the evidence needed to decide. */
:root{--work-blue:#1558e8;--work-green:#13845b;--work-muted:#60718c}
.main,.content,#view-content,.panel,.metric,.goal-card{min-width:0}
.content{max-width:1580px;margin:0 auto}
.page-heading h1{font-size:clamp(25px,2.7vw,36px);line-height:1.18;letter-spacing:-1px;max-width:850px}
.goal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}
.goal-card{background:#fff;border:1px solid #dce5f1;border-radius:15px;padding:23px;box-shadow:0 3px 12px #112c4f03}
.goal-card .eyebrow{font-size:11px;line-height:1.5;display:block;min-height:33px;color:#51617c;letter-spacing:.6px}
.goal-values{display:flex;align-items:baseline;gap:9px;margin:14px 0 19px;flex-wrap:wrap}
.goal-values strong{font-size:clamp(27px,2.6vw,39px);letter-spacing:-1.2px;color:#142945;line-height:1.1}
.goal-values>span{font-size:18px;color:#75819a}
.goal-progress{height:9px;border-radius:9px;background:#e8edf5;overflow:hidden;flex:1}
.goal-progress>span{display:block;height:100%;background:var(--work-blue);border-radius:inherit;transition:width .2s}
.goal-met{border-color:#b4dfcd;background:linear-gradient(145deg,#fff,#f3fbf8)}
.goal-met .goal-progress>span{background:var(--work-green)}
.goal-action{font-weight:750;margin:14px 0 6px;color:#183a6d}
.goal-card small{color:var(--work-muted);font-size:11px;line-height:1.6;display:block}
.work-selector{display:flex;align-items:center;gap:24px;padding:20px 24px}
.work-selector .form-group{margin:0;min-width:160px}
.work-selector .form-group>span{font-size:11px}
.work-status{display:flex;align-items:flex-start;gap:8px;flex-direction:column;margin-left:auto}
.work-status small{color:var(--work-muted);font-size:11px}
.duty-list{padding:0 23px}
.duty-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #edf0f5;flex-wrap:wrap}
.duty-row:last-child{border-bottom:0}
.duty-row>div{flex:1;min-width:180px}
.duty-row strong{font-size:12px}
.duty-row p{font-size:11px;color:var(--work-muted);line-height:1.65;margin:5px 0 0}
.duty-row .pill{font-size:10px}
.data-note{display:flex;align-items:center;gap:14px;border:1px solid #dce7f8;background:#f2f7ff;border-radius:11px;padding:15px 19px;margin:16px 0 22px}
.data-note>.icon{flex:none;color:var(--work-blue)}
.data-note p{flex:1;margin:0;color:#4c6082;font-size:12px;line-height:1.7}
.data-note .text-btn{flex:none}
.management-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0 24px}
.decision-metric{padding:21px!important;min-width:0}
.decision-metric .metric-label{font-size:11px;line-height:1.6;min-height:20px}
.decision-metric .metric-value{font-size:31px;line-height:1.3;margin:13px 0}
.decision-metric .metric-value small{font-size:17px;color:#74809a;letter-spacing:0}
.decision-metric .metric-context{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:10px}
.metric-gap{font-size:12px;font-weight:700;line-height:1.6;margin:13px 0 7px;color:#2c4364}
.decision-metric>small{display:block;font-size:10px;color:var(--work-muted);line-height:1.6}
.decision-metric>.text-btn{margin-top:10px;font-size:11px}
.metrics-grid.compact{margin:0;padding:20px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.metrics-grid.compact .metric{box-shadow:none;border:1px solid #e3e8f1;border-radius:10px}
.metrics-grid.compact .metric-value{font-size:25px}
.quality-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr));gap:18px;padding:22px}
.quality-club{min-width:0;border:1px solid #e3e8f1;border-radius:12px;padding:18px}
.quality-club h3{font-size:13px;margin:0 0 8px}
.quality-row{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #edf0f5;font-size:11px;flex-wrap:wrap}
.quality-row:last-child{border:0}
.quality-row>div{flex:1;min-width:150px}
.quality-row small{display:block;color:#75839a;font-size:10px;line-height:1.7;margin-top:3px}
.quality-row>strong{font-size:15px}
.quality-row .pill{font-size:9px}
.deviation-chart{padding:8px 24px 24px}
.deviation-row{padding-top:19px}
.deviation-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;margin-bottom:9px}
.deviation-row>small{display:block;margin:6px 0;color:#657591;font-size:10px}
.deviation-track{height:11px;background:#e9eff6;border-radius:6px;overflow:hidden}
.deviation-track>span{display:block;height:100%;background:#3977ef;border-radius:inherit;min-width:0}
.deviation-track>span.met{background:#13845b}
.admin-links{padding:23px;display:flex;align-items:stretch;flex-direction:column;gap:12px}
.admin-links .btn{justify-content:space-between;text-align:left}
.expiry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,450px),1fr));gap:20px;margin:20px 0}
.expiry-card{margin:0!important}
.expiry-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:24px}
.expiry-stats span{display:block;color:#6c7c94;font-size:11px;line-height:1.6}
.expiry-stats strong{display:block;font-size:26px;margin-top:4px;letter-spacing:-.5px}
.expiry-milestones{list-style:none;padding:0;margin:22px 0}
.expiry-milestones li{display:flex;align-items:center;gap:12px;font-size:12px;padding:12px;background:#f6f8fc;border:1px solid #e1e7f0;border-radius:8px;margin-bottom:10px;flex-wrap:wrap}
.expiry-milestones li>strong{flex:1}
.expiry-milestones li.met{background:#f0fbf6;border-color:#c3e6d7}
.expiry-card .panel-body>p{font-size:12px;line-height:1.8}
.legacy-register{margin-top:25px}
.legacy-register>summary{padding:19px 24px;cursor:pointer;font-size:12px;font-weight:700}
.messages-list{display:flex;flex-direction:column;gap:15px}
.message-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px!important;margin:0!important}
.message-card h2{font-size:17px;margin:10px 0}
.message-card p{font-size:11px;color:#6a7b93;line-height:1.7;margin:7px 0}
.message-card>div:first-child{min-width:0;flex:1}
.message-excerpt{overflow-wrap:anywhere}
.message-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:15px;flex:none}
.message-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:14px;border:1px solid #e4e9f1;background:#fafbfd;border-radius:10px;padding:23px;margin:20px 0}
.message-recipient-list{border:1px solid #e1e7ef;padding:14px;border-radius:10px;max-height:290px;overflow:auto}
.message-recipient-list legend{font-weight:600;font-size:12px;padding:0 8px}
.message-recipient-list .permission-option{padding:10px;align-items:center;gap:12px}
.message-recipient-list small{display:block;font-size:10px;line-height:1.7;color:#71829a;margin-top:3px}
.reply-list{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.reply-item{padding:14px;border-left:3px solid #d3e2ff;background:#f6f9fe;border-radius:5px;white-space:pre-wrap;overflow-wrap:anywhere}
.reply-item small{color:#6a7b93;display:block;margin-bottom:5px}
.modal .heading-actions{flex-wrap:wrap}
.panel-head .text-btn{white-space:normal;text-align:right}
.phase-label{font-size:10px}
[hidden]{display:none!important}
@media(min-width:1500px){.management-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1180px){.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.work-selector{gap:16px}.work-selector .form-group{min-width:130px}.two-col.equal{grid-template-columns:1fr}}
@media(max-width:800px){.management-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:flex-start;gap:16px}.page-heading .heading-actions{flex-wrap:wrap}.work-selector{align-items:flex-start;flex-wrap:wrap}.work-status{margin-left:0}.data-note{flex-wrap:wrap}.data-note p{min-width:180px}.top-actions{flex-wrap:wrap}.club-filter{max-width:200px}.quality-grid{padding:15px}.message-card{padding:18px!important}.phase-label span{display:none}}
@media(max-width:520px){html,body{max-width:100%;overflow-x:hidden}.content{padding:18px 14px!important}.topbar{padding:12px 14px!important;flex-wrap:wrap;gap:12px}.breadcrumb{font-size:10px}.top-actions{gap:8px!important;flex:1;justify-content:flex-end}.club-filter{max-width:155px;width:100%;min-width:0}.month-filter{max-width:135px;min-width:0}.page-heading{flex-direction:column;margin-bottom:20px}.page-heading h1{font-size:27px}.page-heading p{font-size:11px;line-height:1.7}.goal-grid{gap:11px;margin-top:15px}.goal-card{padding:15px}.goal-card .eyebrow{font-size:9px;min-height:28px}.goal-values{gap:6px;margin:12px 0}.goal-values strong{font-size:27px}.goal-values>span{font-size:13px}.goal-action{font-size:12px}.goal-card small{font-size:10px}.work-selector{padding:16px;gap:14px}.work-selector .form-group{min-width:0;flex:1}.work-status{flex-basis:100%}.management-metrics{gap:11px}.decision-metric{padding:16px!important}.decision-metric .metric-value{font-size:25px}.decision-metric .metric-label{font-size:10px;min-height:31px}.metric-gap{font-size:10px}.decision-metric .metric-context{font-size:9px}.metrics-grid.compact{padding:13px;gap:10px}.panel-head{padding:17px!important;gap:12px;flex-wrap:wrap}.panel-head h2{font-size:15px}.panel-head p{font-size:10px}.panel-body{padding:17px!important}.panel-head .text-btn{text-align:left;font-size:10px}.duty-list{padding:0 17px}.duty-row>div{min-width:100%;flex-basis:100%}.duty-row .text-btn{margin-left:auto}.data-note{padding:13px;margin:15px 0}.data-note p{font-size:10px}.quality-club{padding:14px}.quality-row>div{min-width:125px}.quality-row .pill{font-size:8px}.message-card{flex-direction:column;align-items:stretch;gap:10px}.message-card-actions{flex-direction:row;align-items:center;justify-content:space-between}.expiry-stats{gap:13px}.expiry-stats span{font-size:10px}.expiry-milestones li{font-size:11px}.modal{max-width:calc(100vw - 20px)!important;width:calc(100vw - 20px)!important}.modal-body{padding:17px!important}.modal .form-grid{grid-template-columns:1fr!important}.expiry-card .heading-actions{display:flex;gap:8px;flex-wrap:wrap}.table-wrap{max-width:100%;overflow-x:auto}.table-wrap table{min-width:620px}.phase-label{padding:10px 15px!important}.attention-item{flex-wrap:wrap}.attention-item>.btn{margin-left:44px}.goal-progress{height:8px}}
