/* Working controls stay consistent across all ten visual themes. */
.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}
button,input,select{font:inherit}
button,a,input,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent,#527447);outline-offset:3px}
button{cursor:pointer}
.application-bar{height:auto;min-height:66px;gap:18px;background:var(--panel);color:var(--ink);border-color:var(--line);padding:12px 25px}
.application-bar .toolbar-brand{font-size:20px;font-weight:750;letter-spacing:-1px;color:var(--ink)}
.view-switch{display:flex;gap:3px;padding:4px;background:var(--bg);border:1px solid var(--line);border-radius:9px}
.view-switch button{font-size:12px;padding:8px 12px;white-space:nowrap;border-radius:6px;color:var(--muted)}
.view-switch button.active{background:var(--ink);color:var(--panel)}
.mode-label{font-size:10px;color:var(--muted);margin-left:auto}
.appearance-button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);padding:10px 13px;border-radius:9px;font-size:12px;background:var(--panel);color:var(--ink)}
.appearance-button>span:first-child{font-size:18px;line-height:1}
.current-theme{font-size:10px;color:var(--muted);border-left:1px solid var(--line);padding-left:9px}
.side-theme{padding:8px 0;color:inherit;font-size:11px}
.data-filters{display:flex;gap:9px;flex-wrap:wrap}
.data-filters select,.manager-controls input,.manager-controls select,.person-selector select,.compact-navigation select{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-height:40px;font-size:12px;max-width:100%}
.manager-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.manager-controls input{min-width:170px;flex:1;max-width:290px}
.manager-controls input::placeholder{color:var(--muted);opacity:1}
.manager-controls>span{margin-left:auto;color:var(--muted);font-size:11px}
.person-selector{display:flex;align-items:center;gap:12px;margin:0 0 18px;font-size:12px}
.person-selector label{color:var(--muted)}
.person-selector select{min-width:210px}
.compact-navigation{display:none}
.theme-app.theme-wall .page-title,.theme-app.theme-people .page-title{display:flex}
.theme-wall .page-title>div:first-child,.theme-people .page-title>div:first-child{display:none}
.theme-wall .page-title,.theme-people .page-title{justify-content:flex-end;margin:16px 0 24px}
.theme-wall .compact-navigation{display:block}
.theme-app .table-person{color:var(--ink);text-align:left;width:100%;padding:0}
.theme-app .table-person small{display:block;font-size:10px;color:var(--muted);margin-top:5px}
.theme-app .table-box{max-width:100%;overflow:auto}
.theme-app tfoot td{font-weight:650;border-top:1px solid var(--line)}
.theme-app .metric{min-width:0}
.theme-app .summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.theme-app .summary-grid .metric strong{font-size:25px;white-space:normal}
.theme-app .metric strong{overflow-wrap:anywhere}
.theme-app .personal-finance,.theme-app .personal-contacts,.theme-app .task-summary{margin-top:20px}
.theme-app .design-footer{margin-top:35px}
.empty-state{padding:60px 20px;text-align:center;color:var(--muted)}
.empty-state h2{font-size:22px;color:var(--ink);margin-bottom:20px}
.return-period{background:var(--ink);color:var(--panel);border-radius:8px;padding:11px 18px;font-size:12px}
.theme-app .person-card .progress[aria-valuenow="0"]{opacity:.4}

/* Management focus: comparable leaders, gaps and next actions. */
.management-overview{margin:0 0 30px}
.management-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:0 0 17px}
.management-heading .overline{color:var(--muted);font-size:9px}
.management-heading h2{font-size:22px;letter-spacing:-.6px;line-height:1.2;margin:6px 0 0}
.management-heading>span{font-size:10px;color:var(--muted);white-space:nowrap}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.insight-card{min-width:0;text-align:left;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:22px;transition:transform .15s,box-shadow .15s}
.insight-card:hover{transform:translateY(-2px);box-shadow:0 7px 20px #172c1912}
.insight-label{display:block;font-size:9px;letter-spacing:1.2px;color:var(--muted);margin:0 0 18px}
.insight-person{display:flex;align-items:center;gap:10px;min-width:0;margin:0 0 16px}
.insight-person .portrait{width:42px;height:42px;flex-shrink:0}
.insight-person h3{margin:0;font-size:15px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.insight-person>span{margin-left:auto;opacity:.6;font-size:16px}
.insight-result{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.insight-result strong{font-size:35px;letter-spacing:-1.3px;line-height:1.2;font-weight:650}
.insight-result>span{font-size:11px;line-height:1.5}
.insight-card>p{font-size:10px;margin:11px 0 0;opacity:.75;line-height:1.5}
.insight-leader{background:var(--hero);color:var(--hero-ink);border-color:var(--hero)}
.insight-leader .insight-label{color:var(--hero-ink);opacity:.65}
.insight-leader .portrait{background:#ffffff22;color:var(--hero-ink)}
.insight-lagging{border-top:3px solid var(--warn);padding-top:20px}
.insight-lagging .insight-label,.insight-lagging .insight-result strong{color:var(--warn)}
.insight-action{background:var(--soft)}
.insight-action h3{font-size:17px;margin:21px 0 18px;font-weight:600}
.operational-leaders{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:13px 0 0}
.operational-leaders button{display:flex;align-items:center;gap:10px;text-align:left;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:calc(var(--radius)*.65);padding:13px 17px;min-width:0}
.operational-leaders span{font-size:10px;color:var(--muted)}
.operational-leaders b{font-size:11px;font-weight:600}
.operational-leaders strong{font-size:17px;margin-left:auto;white-space:nowrap;color:var(--accent)}
.person-rank{font-size:9px;color:var(--muted);margin-bottom:10px}
.person-rank.first{color:var(--accent);font-weight:650}
.table-person .person-rank{font-size:8px;margin:4px 0 0}
.personal-direction{margin:0 0 26px}
.position-strip{display:flex;align-items:center;gap:28px;padding:19px 22px;background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:15px}
.position-strip>span{font-size:9px;letter-spacing:1px;color:var(--muted);margin-right:auto}
.position-strip>div{display:flex;align-items:baseline;gap:12px}
.position-strip b{font-size:11px;font-weight:400;color:var(--muted)}
.position-strip strong{font-size:18px;white-space:nowrap}
.direction-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:15px;align-items:start}
.direction-grid>section{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:19px 22px;min-width:0}
.direction-grid h3{margin:0 0 9px;font-size:15px;font-weight:600}
.direction-strengths h3{color:var(--accent)}
.direction-attention h3{color:var(--warn)}
.direction-row{display:flex;align-items:start;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px;line-height:1.45}
.direction-row:last-child{border-bottom:0;padding-bottom:1px}
.direction-row strong{white-space:nowrap;font-size:13px;font-weight:650}
.direction-row p{font-size:10px;color:var(--muted);margin:4px 0 0}
.direction-clear{font-size:12px;color:var(--muted);padding:9px 0 0}
@media(min-width:1600px){.insight-person h3{font-size:19px}.insight-card{padding:27px}.insight-result strong{font-size:44px}.insight-result>span{font-size:12px}}
@media(max-width:1100px){.insight-card{padding:17px}.insight-person h3{font-size:13px}.insight-person .portrait{width:34px;height:34px}.insight-result strong{font-size:29px}.insight-result>span{font-size:10px}.insight-label{font-size:8px}.operational-leaders button{flex-wrap:wrap}.operational-leaders span{width:100%}.position-strip{gap:17px}.position-strip>div{flex-direction:column;gap:5px}.direction-grid{grid-template-columns:1fr 1.3fr}.theme-app .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-app .summary-grid .metric:first-child{grid-column:1/-1}.theme-app .bento-top{grid-template-columns:1fr}.theme-app .bento-top>.stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .management-overview{margin-bottom:25px}.management-heading{align-items:start}.management-heading h2{font-size:22px;max-width:270px}.management-heading>span{display:none}
 .insight-grid{grid-template-columns:1fr;gap:11px}.insight-card{padding:19px}.insight-person h3{font-size:16px}.insight-person .portrait{width:39px;height:39px}.insight-label{font-size:9px;margin-bottom:14px}
 .insight-result strong{font-size:35px}.insight-result>span{font-size:12px}.insight-card>p{font-size:11px}.insight-action h3{margin:7px 0 15px}
 .operational-leaders{grid-template-columns:1fr;gap:9px}.operational-leaders button{padding:12px 16px}.operational-leaders span{font-size:11px}.operational-leaders b{font-size:12px}
 .position-strip{flex-wrap:wrap;padding:17px;gap:16px 21px}.position-strip>span{width:100%;font-size:9px}.position-strip>div{gap:5px}.position-strip strong{font-size:16px}.position-strip b{font-size:10px}
 .direction-grid{grid-template-columns:1fr;gap:12px}.direction-grid>section{padding:18px}.direction-row{font-size:12px}.direction-row p{font-size:11px}.direction-row strong{font-size:12px}.person-rank{font-size:10px}
 .theme-app .bento-top>.stack{grid-template-columns:1fr}
}

/* Appearance is one app-level dialog, not part of any themed layout. */
body:has(#appearance-dialog[open]){overflow:hidden}
#appearance-dialog{--dialog-ink:#27392f;box-sizing:border-box;width:min(950px,calc(100vw - 48px));max-height:calc(100dvh - 48px);margin:auto;padding:30px 32px 22px;border:1px solid #e3e7df;border-radius:22px;background:#f8f9f4;color:var(--dialog-ink);box-shadow:0 30px 110px #071a1655;overflow:auto}
#appearance-dialog::backdrop{background:#101f2266;backdrop-filter:blur(5px)}
#appearance-dialog button:focus-visible,#appearance-dialog input:focus-visible,#appearance-dialog a:focus-visible{outline-color:#527447}
.appearance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:22px}
.appearance-head p{font-size:9px;letter-spacing:2px;color:#7d8d7d;margin:0 0 7px}
.appearance-head h2{font-size:29px;letter-spacing:-.8px;margin:0;font-weight:650}
.appearance-close{width:34px;height:34px;border:1px solid #dce2d7;border-radius:50%;font-size:25px;line-height:1;color:#64765f;background:#fff}
.appearance-target{display:flex;gap:3px;padding:4px;background:#e9eee3;border-radius:10px;width:fit-content}
.appearance-target button{padding:10px 18px;border-radius:7px;font-size:12px;color:#6b7963;white-space:nowrap}
.appearance-target button[aria-selected="true"]{background:#fff;color:#263d2b;box-shadow:0 2px 6px #203b2410}
.link-themes{display:flex;align-items:center;gap:9px;font-size:12px;margin:18px 0 23px;color:#596e54;cursor:pointer;width:fit-content}
.link-themes input{width:16px;height:16px;accent-color:#3f6243;cursor:pointer}
.theme-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px 13px}
.theme-option{text-align:left;min-width:0;padding:5px;border:1px solid #e1e5db;border-radius:11px;background:#fff;color:#344330;transition:border-color .15s,box-shadow .15s}
.theme-option:hover{border-color:#8fa67c;box-shadow:0 3px 14px #25392010}
.theme-option.selected{border:2px solid #527447;padding:4px;box-shadow:0 0 0 3px #dce8cf}
.theme-thumbnail{height:96px;position:relative;overflow:hidden;border-radius:6px;background:var(--thumb-bg);isolation:isolate}
.theme-thumbnail span{position:absolute;display:block;border-radius:3px}
.thumb-side{inset:0 auto 0 0;width:16%;background:var(--thumb-dark)}
.thumb-top{left:23%;top:12%;width:36%;height:4%;background:var(--thumb-dark);opacity:.45}
.thumb-hero{left:23%;top:27%;width:69%;height:31%;background:var(--thumb-dark)}
.thumb-hero::after{content:'';position:absolute;left:11%;top:24%;width:25%;height:5px;background:var(--thumb-bg);opacity:.75;box-shadow:0 9px 0 -1px var(--thumb-accent)}
.thumb-card{width:20%;height:22%;background:var(--thumb-accent);bottom:12%;left:23%}
.thumb-card.b{left:47%}.thumb-card.c{left:72%}.thumb-card.d{display:none}
.thumb-editorial .thumb-side,.thumb-people .thumb-side{width:100%;height:15%;border-radius:0}
.thumb-editorial .thumb-top,.thumb-people .thumb-top{left:8%;top:22%}
.thumb-editorial .thumb-hero{left:8%;top:34%;width:84%;height:18%}
.thumb-editorial .thumb-card{left:8%;width:84%;height:6%;bottom:34%}
.thumb-editorial .thumb-card.b{bottom:23%}.thumb-editorial .thumb-card.c{bottom:12%}
.thumb-bento .thumb-hero{width:40%;height:42%}
.thumb-bento .thumb-card{width:25%;height:20%;left:68%;top:27%}
.thumb-bento .thumb-card.b{top:51%}.thumb-bento .thumb-card.c{left:23%;top:74%;width:40%;height:15%}
.thumb-portrait .thumb-card,.thumb-people .thumb-card{height:44%;border-radius:12px 12px 3px 3px}
.thumb-portrait .thumb-hero{height:16%}.thumb-portrait .thumb-hero::after{top:15%;height:3px;box-shadow:none}
.thumb-people .thumb-hero{left:8%;top:28%;height:15%;width:84%}
.thumb-people .thumb-card{left:8%;width:25%;bottom:8%}.thumb-people .thumb-card.b{left:37%}.thumb-people .thumb-card.c{left:67%}
.thumb-leaderboard .thumb-hero,.thumb-ledger .thumb-hero{height:21%}
.thumb-leaderboard .thumb-card,.thumb-ledger .thumb-card{left:23%;width:69%;height:7%;bottom:33%}
.thumb-leaderboard .thumb-card.b,.thumb-ledger .thumb-card.b{bottom:22%}.thumb-leaderboard .thumb-card.c,.thumb-ledger .thumb-card.c{bottom:11%}
.thumb-workspace .thumb-hero{width:40%;height:28%}.thumb-workspace .thumb-card.d{display:block;top:27%;left:68%;width:24%;height:28%}
.thumb-wallboard{background:var(--thumb-dark)}.thumb-wallboard .thumb-side{display:none}.thumb-wallboard .thumb-top{background:var(--thumb-accent);left:8%;top:12%}
.thumb-wallboard .thumb-hero{background:var(--thumb-bg);left:8%;top:23%;width:84%;height:18%}
.thumb-wallboard .thumb-card{left:8%;width:25%;height:35%}.thumb-wallboard .thumb-card.b{left:37%}.thumb-wallboard .thumb-card.c{left:67%}
.thumb-journey .thumb-hero{height:24%;background:var(--thumb-accent);clip-path:polygon(0 0,100% 0,83% 100%,17% 100%)}
.theme-name{display:grid;grid-template-columns:18px 1fr 12px;gap:3px;align-items:start;padding:10px 3px 5px;min-height:40px}
.theme-name>span{color:#95a18c;font-size:9px;padding-top:2px}
.theme-name b{font-size:11px;line-height:1.35;font-weight:600}
.theme-name i{font-size:12px;font-style:normal;color:#527447}
.appearance-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding-top:18px;border-top:1px solid #e1e6d9}
.appearance-bottom a{font-size:12px;color:#6e7c64;text-decoration:none}
.appearance-bottom>button{padding:11px 27px;border-radius:8px;background:#314e37;color:#f3f6ec;font-size:12px}
#notification{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);max-width:calc(100vw - 35px);background:#283e2e;color:#fff;padding:13px 20px;border-radius:10px;font-size:13px;box-shadow:0 4px 20px #0003;opacity:0;pointer-events:none;z-index:1000;transition:.2s}
#notification.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1500px){.theme-thumbnail{height:110px}}
@media(max-width:1050px){.current-theme{display:none}.application-bar{gap:12px}.mode-label{font-size:9px}.data-filters{gap:7px}.data-filters select{font-size:11px;padding:9px}}
@media(max-width:760px){
 .application-bar{padding:10px 15px;gap:10px;display:grid;grid-template-columns:1fr auto}.application-bar .toolbar-brand{font-size:19px}
 .view-switch{grid-column:1/-1;grid-row:2;width:100%}.view-switch button{flex:1;font-size:11px;padding:8px 10px}
 .mode-label{grid-column:1/-1;grid-row:3;margin:0;text-align:center;font-size:9px}.appearance-button{grid-column:2;grid-row:1;font-size:11px;padding:8px 12px}
 .compact-navigation{display:block;margin:0 0 14px}.compact-navigation select{width:100%}
 .theme-app .page-title{width:100%;align-items:stretch}.data-filters{width:100%;display:grid;grid-template-columns:1fr 1fr}.data-filters select{min-width:0;width:100%}
 .theme-wall .page-title,.theme-people .page-title{margin:0 0 20px}
 .manager-controls{gap:8px;margin-bottom:14px}.manager-controls input{width:100%;max-width:none}.manager-controls select{width:calc(100% - 53px);font-size:11px}.manager-controls>span{font-size:9px}
 .person-selector{align-items:flex-start;flex-direction:column;gap:6px}.person-selector select{width:100%}
 .theme-app .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.theme-app .summary-grid .metric:first-child{grid-column:1/-1}
 .theme-app .personal-tabs button{min-height:40px}.theme-app .table-person{min-width:150px}
 .theme-app .personal-tabs button{font-size:11px;padding-inline:11px}.theme-app .metric>span{font-size:11px;line-height:1.45}
 .theme-app .content-top,.theme-app .person-stats span,.theme-app .person-foot,.theme-app .plan-line{font-size:10px}
 .theme-app .people-person-copy>p{font-size:11px}.theme-app .overline{font-size:9px;line-height:1.5}
 #appearance-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:22px 17px 18px;border-radius:16px}
 .appearance-head{margin-bottom:18px}.appearance-head h2{font-size:26px}.appearance-head p{font-size:8px}
 .appearance-target{width:100%}.appearance-target button{flex:1;padding:10px 8px;font-size:11px}
 .link-themes{font-size:11px;margin:15px 0 19px}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .theme-thumbnail{height:85px}.theme-name b{font-size:10px}.theme-name{min-height:34px;padding-top:8px}
 .appearance-bottom{position:sticky;bottom:-18px;background:#f8f9f4;margin-top:17px;padding:15px 0}.appearance-bottom a{font-size:11px}
 .empty-state{padding:35px 10px}.empty-state h2{font-size:19px}
}
@media(min-width:761px) and (max-width:1000px){.theme-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.theme-name b{font-size:10px}.theme-thumbnail{height:78px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
