/* Global visual primitives. No domain logic or page-specific palettes. */
body,.app-shell,.workspace,.topbar{background:var(--background-main)!important;color:var(--text-primary)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.topbar{box-shadow:none!important;border-color:var(--border-subtle)!important}
button,input,textarea,select{font-family:inherit}
button{border-radius:var(--control-radius);cursor:pointer}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--focus-color)!important;outline-offset:3px;box-shadow:none!important}
button:disabled,input:disabled,textarea:disabled,select:disabled{opacity:.55;cursor:not-allowed}
/* Shared variants: unclassified feature buttons use secondary styling. Layout-only exceptions below. */
body button:not(#su-assistant-launch):not(#su-assistant-minimize):not(.today-empty-slot){min-height:var(--control-height)}
body :is(.primary-button,.secondary-button,.ghost-button,.danger-button,.icon-button),body :is(#today-operations,.today-dialog,#su-assistant-panel,#ac-panel,#df-panel,#document-foundation) button{border-radius:var(--control-radius);box-shadow:none;background:var(--surface);border-color:var(--border-subtle);color:var(--text-primary)}
body :is(.primary-button,button[type=submit],[data-button=primary],[data-df=upload]){background:var(--accent-primary)!important;border:1px solid var(--accent-primary)!important;color:var(--surface)!important;border-radius:var(--control-radius);box-shadow:none!important}
body :is(.secondary-button,.today-primary,[data-button=secondary]){background:var(--surface)!important;border:1px solid var(--border-strong)!important;color:var(--text-primary)!important}
body :is(.ghost-button,[data-button=ghost]){background:transparent!important;border:1px solid transparent!important;color:var(--text-secondary)!important}
body :is(.danger-button,[data-button=danger]){background:var(--danger-soft)!important;border:1px solid var(--danger)!important;color:var(--danger)!important}
body button:hover:not(:disabled){filter:none;background-color:var(--surface-muted)}
body :is(.primary-button,button[type=submit],[data-button=primary],[data-df=upload]):hover:not(:disabled){background:var(--accent-primary-hover)!important}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=hidden]):not([type=color]),textarea,select){min-height:var(--control-height)!important;padding:10px 12px!important;border:1px solid var(--border-subtle)!important;border-radius:var(--control-radius)!important;background:var(--surface)!important;color:var(--text-primary)!important;box-shadow:none!important;font-size:14px;line-height:1.4}
body :is(input,textarea)::placeholder{color:var(--text-secondary);opacity:1}
body :is(input,textarea,select):focus{outline:0!important;border-color:var(--focus-color)!important;box-shadow:var(--focus-ring)!important}
body :is(input,textarea,select)[aria-invalid=true]{border-color:var(--danger)!important}
input[type=checkbox],input[type=radio]{accent-color:var(--accent-primary)}
body :is(.panel,.table-card,.stat-card,.kanban-column,.large-calendar,.today-card,.df-card,.assistant-card,.assistant-policy,.assistant-record){background:var(--surface)!important;border:1px solid var(--border-subtle)!important;border-radius:var(--panel-radius)!important;box-shadow:none!important}
body :is(.modal,.today-dialog,#su-assistant-panel){background:var(--surface)!important;color:var(--text-primary)!important;border:1px solid var(--border-subtle)!important;border-radius:var(--panel-radius)!important;box-shadow:var(--shadow-soft)!important}
.today-section,.today-list li{border-color:var(--border-subtle)}
.today-section{background:transparent;box-shadow:none}
.today-palette i{background:var(--swatch)}
@media(max-width:760px){body :is(input,textarea,select){font-size:16px!important}}

/* The same selected state and overlay surface across feature panels. */
body :is(#ac-panel,#document-foundation,#su-assistant-panel) [aria-pressed=true]{background:var(--accent-soft);color:var(--accent-primary);border-color:var(--border-subtle)}
body :is(#ac-panel,#df-workspace,.df-version,.df-divergence){border-color:var(--border-subtle);border-radius:var(--panel-radius);background:var(--surface);box-shadow:none}
@media(min-width:761px){.topbar{height:auto!important;min-height:88px;align-items:center;flex-wrap:wrap;gap:16px}.topbar-identity{flex:1 1 300px;min-width:0}.topbar-actions{flex:1 1 480px;min-width:0;justify-content:flex-end}.topbar-actions .search-box{flex:1 1 180px;min-width:100px}.topbar-actions .search-box input{width:100%;min-width:0}}

/* Final journal/date finishing; existing commands and section order remain unchanged. */
body #today-quick-record button[type=submit]{background:var(--surface)!important;color:var(--text-secondary)!important;border:1px solid var(--border-subtle)!important;font-weight:500}
body #today-quick-record button[type=submit]:hover{background:var(--surface-muted)!important}
.today-activity-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.today-activity-heading .today-journal-caption{margin:0!important}
body #today-journal-all{background:transparent!important;border:0!important;box-shadow:none!important;color:var(--text-secondary)!important;font-size:12px;padding:4px 0;min-height:32px}
body .today-date-row{padding:0!important}
body .today-date-row button[data-date-info]{display:block;width:100%;text-align:left;padding:10px 0;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--text-primary)!important}
.today-date-row strong{display:block;font-size:14px;font-weight:500}.today-date-row small{display:block;color:var(--text-secondary);font-size:12px;margin-top:3px}
body .today-date-row button[data-date-info]:hover{background:var(--surface-muted)!important}

/* Independent, lightweight Today modules using the shared surface tokens. */
#today-operations .today-day-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}
#today-operations .today-day-columns>section{min-width:0;margin:0;padding:22px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--panel-radius);box-shadow:none}
#today-operations .today-day-columns .today-section-title{margin-bottom:16px}
#today-quick-record{align-items:flex-end}
body #today-quick-record textarea{flex:1;min-width:0;min-height:80px!important}
body #today-quick-record button[type=submit]{flex:none;min-height:36px;padding:7px 12px;font-size:12px}
#today-operations .today-journal-list{font-size:13px}
#today-operations .today-journal-list li{padding:8px 0}
#today-operations .today-journal-list strong{font-weight:400}
#today-operations .today-journal-list small{max-width:100%;font-size:11px}
#today-operations :is(.today-date-row,.today-relationships li) strong{font-size:14px;font-weight:600}
#today-operations :is(.today-date-row,.today-relationships li) small{font-size:12px;color:var(--text-secondary);line-height:1.5}
#today-operations .today-relationships h3{color:var(--text-primary)}
#today-operations section:has(#today-open-week) .today-list li:not(:has(button)){font-size:13px;color:var(--text-secondary);padding:6px 0}
@media(max-width:760px){#today-operations .today-day-columns{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px}#today-operations .today-day-columns>section{padding:18px}}

.content-back{display:block;margin:8px 0 16px;padding:4px 0;font-size:13px}.content-back[hidden]{display:none}
