/* Shared finishing touches; component layouts for agenda, review and guides stay scoped. */
.workspace,main,.twocol>*,.grid>*,.pagehead>div{min-width:0}main{width:100%}
button,.button,input,select,textarea{font-size:14px}button,.button{line-height:1.35}
button:focus-visible,.button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #409c8d;outline-offset:3px}
.pagehead h1{line-height:1.2}.pagehead>.actions{justify-content:flex-end}.pagehead .muted{line-height:1.6}
.panel h2,.panel h3{line-height:1.4}.panel>.row h2{margin-bottom:0}.panel>.row{margin-bottom:16px}
.panel>.row p{margin:6px 0 0}.fieldhelp{margin:8px 0 16px;color:#536d77;line-height:1.6}
.actions+.fieldhelp,.row+.fieldhelp{margin-top:14px}.panel p{overflow-wrap:anywhere}
.cardline{gap:16px}.cardline .fieldhelp{margin:6px 0 12px}.cardline strong{line-height:1.5}
.pill,.badge{line-height:1.4}.tablewrap th{color:#526c78}.tablewrap td{line-height:1.6}
.tablewrap td .actions{min-width:180px}.tablewrap td.wrap{overflow-wrap:anywhere}
label:has(>input[type=checkbox]){display:flex;align-items:flex-start;gap:10px;line-height:1.5}
input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;padding:0;margin:1px 0 0;accent-color:#077768}
.dayrow{padding:10px 12px;border:1px solid #e2eaea;border-radius:10px;background:#f9fbfb;margin-bottom:8px}
.dayrow label{margin:0;align-items:center}.dayrow:has(input[type=checkbox]:not(:checked)){background:#fff}
.checks{gap:10px 12px}.checks label{padding:8px 10px;border:1px solid #dee9e7;border-radius:9px;background:#fafcfc}
.checks label:has(input:checked){background:#eaf7f2;border-color:#a1d5c8}
dialog.resource-editor .checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
dialog.resource-editor .exam-choice{display:contents}dialog.resource-editor .checks label{margin:0}
dialog header{gap:20px}dialog header h2{overflow-wrap:anywhere;line-height:1.4}dialog header>button{flex-shrink:0}
dialog .footer{padding-top:18px;border-top:1px solid #e2eaea;margin-top:24px}
dialog form>h3{margin-top:24px}dialog .notice label{margin-top:12px;margin-bottom:0}
button.danger{color:#a8374b;background:#fff;border-color:#e7d4d8}button.danger:hover{background:#fff2f4;border-color:#c18a95}
details>summary{cursor:pointer;font-weight:650;line-height:1.6}details p,details li{line-height:1.7}
.operator-feedback{overflow-wrap:anywhere}.flow-action .fieldhelp{margin-bottom:0}
.messages,.history{scrollbar-width:thin;scrollbar-color:#bfd5d1 transparent}
#flow-panel>.actions{align-items:flex-start;gap:12px}#flow-panel>p:has([data-flow=pending]){padding-top:12px;border-top:1px solid #e6eeee}
.flow-toggle-section{margin-bottom:28px}.flow-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#flow-settings .flow-toggle{margin:0;padding:18px;border:1px solid #dce7e5;border-radius:14px;background:#fafcfc;align-items:flex-start}
#flow-settings .flow-toggle:has(input:checked){border-color:#9acfc1;background:#eff9f5}
.flow-toggle-copy{display:block;line-height:1.6}.flow-toggle-copy .fieldhelp{font-size:12px;font-weight:400;margin:9px 0 0}
.flow-approved-section h2{margin-bottom:18px}.flow-approved-section textarea{min-height:120px}
.registry-filters{align-items:start}.registry-grid{gap:18px;margin-top:22px}
.registry-card{margin:0;display:flex;flex-direction:column;border-top:3px solid #afa2dd}
.registry-card--partner{border-top-color:#62b6a2}.registry-card h3{font-size:18px;margin:16px 0 4px;overflow-wrap:anywhere}
.registry-card p{margin:8px 0;color:#536d77}.registry-card p:empty{display:none}
.registry-card .actions{margin-top:auto;padding-top:18px;border-top:1px solid #edf1f1;align-items:flex-start}
.registry-role{align-self:flex-start;display:inline-block;border-radius:7px;padding:5px 9px;font-size:12px;font-weight:650;background:#f1edf9;color:#5d488a}
.registry-card--partner .registry-role{background:#eaf7f0;color:#226a55}
.team-section{margin-bottom:24px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}
.section-heading h2{margin:0}.section-heading>span{font-size:12px;color:#536d77}
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:18px}
.team-card{padding:22px;background:#fff;border:1px solid #dce7e5;border-radius:18px;display:flex;flex-direction:column}
.team-card--inactive{background:#f8faf9}.team-card header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.team-avatar{width:44px;height:44px;display:grid;place-items:center;background:#eee9fc;color:#60498e;border-radius:14px;font-size:19px;font-weight:700}
.team-card h3{font-size:18px;margin:0;overflow-wrap:anywhere}.team-login{margin:6px 0 18px;color:#536d77;font-size:13px}
.team-card dl{margin:0;display:grid;gap:14px}.team-card dt{font-size:12px;color:#536d77;margin-bottom:4px}.team-card dd{margin:0;line-height:1.6;overflow-wrap:anywhere}
.team-card footer{margin-top:auto;padding-top:20px}.team-units .row{align-items:flex-start}
.unit-chips{display:flex;gap:12px;flex-wrap:wrap}.unit-chips>span{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid #dce7e5;border-radius:12px;padding:14px 16px;line-height:1.5}
.unit-chips small{padding:3px 8px;background:#eaf7f0;color:#226a55;border-radius:6px}.unit-chips .icon{width:20px;height:20px}
.team-backup{display:flex;gap:24px;align-items:center;justify-content:space-between}.team-backup p{margin:8px 0 0;max-width:760px}.team-backup h2{margin:0}.team-backup>.button{flex-shrink:0}
@media(max-width:800px){.flow-toggle-grid{grid-template-columns:1fr}.team-backup{align-items:flex-start;flex-direction:column}.registry-grid{grid-template-columns:1fr}.pagehead>.actions{justify-content:flex-start}}
@media(max-width:680px){.pagehead{gap:16px}.pagehead h1{font-size:25px}.pagehead>.actions{width:100%;gap:8px}.topbar>.actions{width:100%;flex-wrap:nowrap}.topbar #unit{min-width:0;max-width:none;width:100%}.topbar .user{flex-wrap:wrap}.dayrow{padding:9px 8px;grid-template-columns:82px minmax(0,1fr) minmax(0,1fr)}.dayrow input[type=time]{min-width:0}.team-card{padding:20px}.panel>.row{align-items:flex-start}.registry-card .actions>button{flex:1 1 auto}.flow-toggle-grid{gap:12px}dialog.resource-editor .checks{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
