/* Final control palette: opaque surfaces avoid contrast loss through glass. */
:is(#auth-panel,#recovery-panel,#admin-tools) .primary{background:#286548;color:#fff;border:1px solid #286548}
:is(#auth-panel,#recovery-panel,#admin-tools) .primary:hover:not(:disabled){background:#1d5138;color:#fff}
:is(#auth-panel,#recovery-panel,#admin-tools) :is(.secondary,.request-row button,.tabs button){background:#eaf3ec;color:#244d37;border:1px solid #789682}
#auth-panel .tabs button[aria-pressed=true]{background:#cce5d5;color:#194b33;border-color:#608a70}
:is(#auth-panel,#recovery-panel,#admin-tools) :is(input,select,textarea){background:#f0f6f1;color:#203e30;border-color:#789682;color-scheme:light}
#admin-tools :is(label,.fine,.eyebrow,.admin-area-label){color:#365746}
#auth-panel .link-button{color:#24593e;text-decoration:underline;text-underline-offset:3px;min-height:40px}
:is(#auth-panel,#recovery-panel,#admin-tools) :is(input,textarea)::placeholder{color:#456052;opacity:1}
#profile-panel>.panel-heading #member-email{color:#203e30}
#dashboardOverview :is(.chart-switch button,.kybera-chart-controls button,.chart-drawing-tools button,.chart-drawing-tools select,.chart-drawing-tools input:not([type=color])){background:#eaf3ec;color:#244d37;border:1px solid #789682}
#dashboardOverview :is(.chart-switch button,.kybera-chart-controls button,.chart-tool-group button)[aria-pressed=true]{background:#286548;color:#fff;border-color:#286548}
#dashboardOverview :is(.chart-switch button,.kybera-chart-controls button,.chart-drawing-tools button):hover:not(:disabled){background:#d2e6d8;color:#244d37;border-color:#608a70}
#dashboardOverview :is(.chart-switch button,.kybera-chart-controls button,.chart-tool-group button)[aria-pressed=true]:hover{background:#1d5138;color:#fff}
#dashboardOverview .chart-drawing-row button{color:#24593e;text-decoration:underline;text-underline-offset:3px;min-height:32px}
#dashboardOverview .uid-card input{background:#edf5ef;color:#203e30;border-color:#789682}
#dashboardOverview :is(.access-state,.access-remaining){background:#d9efdf;color:#1b603d;border-color:#91c5a2}
#dashboardOverview .access-expired .access-state{background:#f0e5dc;color:#714627;border-color:#c3aa95}
#dashboardOverview .access-upcoming .access-state{background:#e8edd4;color:#4b5728;border-color:#a9b88c}
#dashboardOverview :is(.dashboardDisclosure>summary,.mobileDrawingFold>summary,.chart-scale-settings summary){color:#244d37}
#dashboardOverview .mobileDashboardNav button{color:#244d37}
#dashboardOverview .mobileDashboardNav button[aria-pressed=true]{background:#cce5d5;color:#194b33;box-shadow:inset 0 0 0 1px #608a70}
#journalWorkspace .secondary{background:#eaf3ec;color:#244d37;border-color:#789682}
#journalWorkspace .secondary:hover:not(:disabled){background:#d2e6d8;color:#244d37}
#journalWorkspace dialog .secondary{background:#294239;color:#f1fff5;border-color:#96b8a4}
#journalWorkspace dialog .secondary:hover:not(:disabled){background:#36564a;color:#f1fff5}
#journalWorkspace dialog .primary{background:#b9dfc7;color:#173c29;border-color:#b9dfc7}
#journalWorkspace dialog .primary:hover:not(:disabled){background:#d0edd9;color:#173c29}
#journalWorkspace dialog input::file-selector-button{background:#b9dfc7;color:#173c29;border:1px solid #96b8a4;border-radius:8px;padding:9px 12px;margin-right:8px;font:inherit;cursor:pointer}
#courseWorkspace :is(.courseStages button,.courseTopTools button:not([aria-pressed=true]),.courseControls button:not(.coursePagerFinish),.courseSearchResults button){background:#edf4e9;color:#294b37;border-color:#819676}
#courseWorkspace :is(.courseStages button,.courseTopTools button,.courseSearchResults button):hover:not(:disabled){background:#dbe9d5;color:#294b37}
#courseWorkspace .courseTopTools button[aria-pressed=true]:hover{background:#284d39;color:#f6faed}
#courseWorkspace .courseMenu button[aria-current=step]:hover{background:#284d39;color:#f6faed}
#courseWorkspace .courseStages button[aria-pressed=true]{background:#d5e5cc;color:#294b37;border-color:#6b865e}
#courseWorkspace :is(.coursePagerInfo small,.courseSyncStatus){color:#3e5d37;font-size:12px}
#courseWorkspace .learningRank .courseSyncStatus{color:#e3f2d7}
#courseWorkspace .coursePagerDock button:last-child:not(.coursePagerFinish){color:#294b37;border-color:#819676}
.courseRankPromotion :is(.rankSoundToggle,.rankScreenClose){background:#294239;color:#f1fff5;border-color:#96b8a4;font-size:12px}
.courseRankPromotion :is(.rankSoundToggle,.rankScreenClose):hover{background:#36564a;color:#f1fff5}
/* Disabled controls remain legible while a muted palette signals inactivity. */
:is(#auth-panel,#recovery-panel,#admin-tools,#dashboardOverview,#courseWorkspace,#journalWorkspace) button:disabled{opacity:1;background:#e0e7e1;color:#536358;border-color:#a3b1a7;box-shadow:none;cursor:not-allowed;transform:none}
#journalWorkspace dialog button:disabled{background:#33463d;color:#b9c8be;border-color:#718579}
:is(#auth-panel,#recovery-panel,#admin-tools,#dashboardOverview,#courseWorkspace,#journalWorkspace) :is(button,a,input,select,textarea,summary,[role=button]):focus-visible{outline:3px solid #286548;outline-offset:3px}
#journalWorkspace dialog :focus-visible,.courseRankPromotion :focus-visible{outline:3px solid #c9efda;outline-offset:3px}
@media(pointer:coarse){:is(#auth-panel,#recovery-panel,#admin-tools,#dashboardOverview,#courseWorkspace,#journalWorkspace) button,#dashboardOverview .chart-scale-settings summary,.courseRankPromotion button{min-height:44px}#dashboardOverview .chart-drawing-row button{padding-inline:10px}}
/* Administration is a separate workspace below the member view. */
#admin-tools{margin-top:52px;padding:28px;border:2px solid #7e8caa;border-top:6px solid #566787;border-radius:24px;background:linear-gradient(135deg,#e8edf6,#dce6ed);box-shadow:0 12px 34px #34455f18;color:#24374d;scroll-margin-top:24px}
#admin-tools .admin-tools-heading{align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #9aa9bc;padding-bottom:20px;margin-bottom:20px}
#admin-tools .admin-tools-heading h2{font-size:clamp(24px,3vw,32px);color:#263b58;margin:6px 0}
#admin-tools .admin-tools-heading :is(.eyebrow,.fine){color:#40536b}
#admin-tools .admin-area-label{display:inline-flex;padding:9px 13px;background:#d3deed;color:#344b6c;border:1px solid #93a6bf;border-radius:10px;font-size:12px;font-weight:700;line-height:1.5}
#admin-tools :is(.admin-tool-card,#admin-panel){background:#f2f5fa;border:1px solid #a1b2c5;border-radius:18px;box-shadow:0 4px 16px #34455f0b}
#admin-tools :is(h3,.admin-optional summary,.admin-records summary){color:#263b58}
#admin-tools :is(.admin-optional,.admin-records){background:#e5edf5;border-color:#a1b2c5}
#admin-tools :is(.admin-optional summary span,.request-row code){color:#40536b}
#admin-tools>p>a{color:#2c506e;text-decoration:underline;text-underline-offset:3px}
#courseWorkspace .coursePagerDock .coursePagerFinish:disabled{background:#e0e7e1!important;color:#536358;border-color:#a3b1a7}
#courseWorkspace .courseSyncStatus:disabled{background:transparent;color:#3e5d37;cursor:default}
#courseWorkspace .learningRank .courseSyncStatus:disabled{background:transparent;color:#e3f2d7}
@media(max-width:640px){#admin-tools{margin-top:36px;padding:16px;border-radius:18px}#admin-tools .admin-tools-heading{display:flex;flex-direction:column;align-items:flex-start;padding-bottom:16px}#admin-tools .admin-area-label{max-width:100%;overflow-wrap:anywhere}}
