:root{color-scheme:light;--admin-gold:#a67d16;--admin-bg:#f5f7f9;--admin-panel:#fff;--admin-border:#d7dce2;--admin-text:#20252b;--admin-muted:#4f5660}
*{box-sizing:border-box}
html,body{min-width:0}
body{margin:0;background:var(--admin-bg);color:var(--admin-text);font:16px/1.5 Arial,Helvetica,sans-serif}
a{color:inherit}
button,input{font:inherit}
.admin-shell{width:min(calc(100% - 32px),1080px);margin:0 auto;padding:22px 0 64px}
.eyebrow{display:block;color:var(--admin-gold);font-size:.76rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.dashboard-welcome{padding:32px 0 25px;border-bottom:1px solid var(--admin-border)}
.dashboard-welcome h1,.login-heading h1{margin:7px 0 8px;font-size:clamp(2rem,4.4vw,3.15rem);line-height:1.08;letter-spacing:-.025em}
.dashboard-welcome h1 .keep-brand{white-space:nowrap}
.dashboard-welcome p{max-width:700px;margin:0;color:var(--admin-muted);font-size:1rem}
.next-meeting{display:grid;grid-template-columns:minmax(150px,185px) minmax(0,1fr) auto;align-items:center;gap:22px;min-width:0;margin-top:25px;padding:18px 22px;background:#fff;border:1px solid var(--admin-border);border-left:3px solid var(--admin-gold);border-radius:7px}
.next-meeting>*{min-width:0}
.next-meeting h2{margin:3px 0 0;font-size:1.16rem;line-height:1.2}
.next-meeting-data{display:grid;gap:1px;min-width:0;color:var(--admin-muted);font-size:.93rem}
.next-meeting-data time{color:var(--admin-gold);font-size:1.5rem;font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums}
.next-meeting-data strong{color:var(--admin-text);font-size:1rem;line-height:1.25;overflow-wrap:anywhere}
.next-meeting a{display:inline-flex;align-items:center;gap:7px;min-height:44px;max-width:100%;font-size:.9rem;font-weight:800;text-decoration:none;overflow-wrap:anywhere}
.next-meeting a:hover,.next-meeting a:focus-visible{color:var(--admin-gold)}
.next-meeting a svg{flex:none;color:var(--admin-gold)}
.dashboard-toolkit{padding-top:31px}
.toolkit-heading{margin:0 0 14px}
.toolkit-heading h2{margin:4px 0 0;font-size:clamp(1.45rem,2.5vw,1.85rem);line-height:1.15}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--admin-border)}
.dashboard-tool{display:grid;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:12px;min-width:0;min-height:78px;padding:13px 15px;border:0;border-bottom:1px solid var(--admin-border);background:transparent;color:var(--admin-text);text-decoration:none;transition:background-color .18s ease,color .18s ease}
.dashboard-tool:nth-child(odd):not(:first-child){border-left:1px solid var(--admin-border)}
a.dashboard-tool:hover,a.dashboard-tool:focus-visible{background:#fff8e8;color:#6b5014}
.dashboard-tool-icon{width:22px;height:22px;fill:none;stroke:var(--admin-gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tool-copy{display:grid;gap:1px;min-width:0}
.tool-copy strong{font-size:.96rem;line-height:1.25}
.tool-copy>span,.tool-copy small{color:var(--admin-muted);font-size:.8rem;line-height:1.35}
.tool-copy small{color:#755710;font-weight:800}
.tool-arrow{width:18px;height:18px;fill:none;stroke:var(--admin-gold);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;justify-self:end}
.dashboard-tool-featured{grid-column:1/-1;grid-template-columns:24px minmax(0,1fr) 18px;min-height:88px;border-left:0!important;background:#fff9eb}
.dashboard-tool-featured .tool-copy strong{font-size:1.05rem}
.dashboard-tool-pending{opacity:.68;cursor:default}
.dashboard-tool-pending .tool-copy small{color:var(--admin-muted)}
.login-heading{margin:35px 0 22px}
.login-card{width:min(100%,520px);padding:25px;border:1px solid var(--admin-border);border-top:3px solid var(--admin-gold);background:var(--admin-panel)}
.login-card h2{margin:0 0 8px;font-size:1.45rem}
.login-card p{margin:0 0 16px;color:var(--admin-muted)}
.login-card label{display:block;font-weight:800}
.login-card input{width:100%;min-height:48px;margin:8px 0 16px;padding:10px 12px;border:1px solid #777;border-radius:4px;background:#fff;color:#111}
.admin-button{min-height:48px;padding:0 20px;border:1px solid var(--admin-gold);border-radius:4px;background:var(--admin-gold);color:#111;font-weight:900;cursor:pointer}
.admin-button:hover{background:#d8b452}
.login-card .login-error{padding:12px;border-left:3px solid #b6312b;background:#fff1ef;color:#812d26}
@media(max-width:800px){.next-meeting{grid-template-columns:minmax(0,1fr) auto;gap:8px 18px}.next-meeting-label{grid-column:1/-1}.next-meeting-data{grid-column:1}.next-meeting a{grid-column:2;grid-row:2}}
@media(max-width:620px){.dashboard-welcome{padding:27px 0 22px}.next-meeting{grid-template-columns:minmax(0,1fr);padding:16px;gap:8px;margin-top:20px}.next-meeting-label,.next-meeting-data,.next-meeting a{grid-column:1;grid-row:auto}.next-meeting-data time{font-size:1.35rem}.next-meeting a{margin-top:1px;white-space:normal}.dashboard-toolkit{padding-top:25px}.tool-grid{grid-template-columns:1fr}.dashboard-tool,.dashboard-tool-featured{grid-column:auto;min-height:74px;padding:12px 7px}.dashboard-tool:nth-child(odd):not(:first-child){border-left:0}.login-card{padding:21px}}
@media(max-width:360px){.admin-shell{width:min(calc(100% - 24px),1080px)}.dashboard-tool{gap:10px}.tool-copy strong{font-size:.92rem}}
@media(prefers-reduced-motion:reduce){.dashboard-tool{transition:none}}
