/* MarcosTV: palette and typography observed at marcostv.com, 2026-10-26. */
:root {
  --paper: #f7f7f7;
  --ink: #191919;
  --muted: #686868;
  --line: #e5e5e5;
  --green: #191919;
  --lightgreen: #faf5e6;
  --gold: #d19e14;
  --gold-text: #806009;
  --gold-wash: #faf5e6;
  --radius: 16px;
  --chart-fixed: #d19e14;
  --chart-variable: #999999;
  --chart-available: #222222;
  --chart-empty: #ededed;
}
::selection { background: #f2d991; color: #111; }
.sidebar { background: #111; border-color: #292929; color: #fff; }
.platform-brand, .module-brand { color: #fff; }
.platform-brand .marcostv-wordmark, .module-brand .marcostv-wordmark { font-size: 25px; font-weight: 750; letter-spacing: -1px; white-space: nowrap; }
.marcostv-wordmark > span { display: inline; font: inherit; letter-spacing: inherit; color: var(--gold); margin: 0; }
.platform-brand small, .module-brand > span { color: #aaa; letter-spacing: 1.5px; }
.workspace { border-color: #303030; }
.workspace small { color: #a7a7a7; }
.workspace-icon { background: #30281a; color: #f2c861; border: 1px solid #584722; }
.nav-label { color: #999; }
.nav-item { color: #b9b9b9; border: 1px solid transparent; }
.nav-item:hover { background: #242424; color: #fff; }
.nav-item.active { background: #302819; color: #f5ce6c; border-color: #5c491f; }
.nav-count { background: #383326; color: #e3c57f; }
.next-module { background: radial-gradient(ellipse at 100% 0, #463517 0, transparent 70%), #1b1b1b; border-color: #3e3524; }
.next-module h3 { color: #f4f4f4; }
.next-module > span, .next-module button { color: #e6ba50; }
.next-module p, .local-status { color: #bbb; }
.local-status small { color: #999; }
.status-dot { background: #e1b342; }
.back-platform { color: #d9bd77; }
.advisor { background: radial-gradient(ellipse at 100% 100%, #665024, #24211b 80%); border: 1px solid #453b26; color: #fff; }
.advisor span { color: #e8c264; }
.advisor p { font-family: Newsreader, Georgia, serif; font-style: italic; font-size: 20px; }
.topbar { background: #ffffffdd; backdrop-filter: blur(12px); }
.breadcrumb, .breadcrumb strong { color: #626262; }
.breadcrumb a:hover { color: var(--gold-text); }
.prototype { color: #666; border-color: #ddd; background: #fff; }
.avatar { background: #191919; color: #e8c264; }
.eyebrow, .portal .eyebrow { color: var(--gold-text); font-family: 'Geist Mono', monospace; font-weight: 500; letter-spacing: 1.3px; }
h1 { font-weight: 500; }
main { animation: none; }
.button { border-radius: 10px; transition: box-shadow .2s, transform .2s, background .2s; }
.button-green, .portal .featured-button {
  background: linear-gradient(135deg, #f2ba2d, #d19e14 60%, #bb8c10);
  border: 1px solid #c8981a;
  color: #211904;
  box-shadow: 0 3px 12px #bd8c141a, inset 0 1px 0 #ffffff40;
}
.button-green:hover, .portal .featured-button:hover { box-shadow: 0 5px 20px #b9851433; }
.button-white { border-color: #ddd; box-shadow: 0 1px 2px #00000008; }
.text-button { color: var(--gold-text); }
button:focus-visible, a:focus-visible, summary:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, .file-drop:focus-within { outline-color: #b58509; }
.portal-stats article { border-radius: 14px; box-shadow: 0 2px 8px #00000003; }
.portal-stats article > span:first-child, .portal-stats strong small { color: #666; }
.stat-icon { color: #a27a16; }
.featured-tool {
  background: radial-gradient(ellipse at 100% 100%, #725019 0, #352614 28%, transparent 65%), #101010;
  border: 1px solid #2d261a;
  color: #fff;
  box-shadow: 0 12px 30px #0000000a;
}
.featured-tool::before { content: ''; position: absolute; inset: 0; background-image: radial-gradient(#e4b34755 .7px, transparent .7px); background-size: 23px 23px; mask-image: linear-gradient(115deg, transparent 35%, #000); pointer-events: none; }
.featured-tool h2 { font-weight: 500; }
.featured-tool h2 em { font-family: Newsreader, Georgia, serif; font-weight: 400; font-size: 1.14em; color: #faf5e6; }
.featured-tool > .eyebrow { color: #e9c66d; }
.featured-tool > p:not(.eyebrow) { color: #d3d0c9; }
.tool-icon { color: #e2b64e; background: #ffffff0d; border-color: #ffffff24; }
.available { color: #f1d58e; }
.available i { background: #e0b23e; }
.featured-features span { color: #ded5c1; background: #ffffff08; border-color: #ffffff26; }
.sheet-art { background: #fcfaf3; color: #383125; border-color: #e7d9b5; box-shadow: -15px 15px 0 #d19e1412, 0 20px 50px #00000033; }
.sheet-art > div:first-child { border-color: #e2d9c2; }
.sheet-art > div:first-child span, .sheet-art > i { background: #ddd3b9; }
.sheet-art > em, .sheet-bars > span:nth-child(5) { background: #d19e14; }
.sheet-bars > span { background: #e4d09b; }
.workflow li > b { background: var(--gold-wash); color: var(--gold-text); border-color: #eadbad; border-radius: 9px; }
.workflow li p, .panel-heading p:not(.eyebrow) { color: #707070; }
.recent-empty, .module-card-footer, .panel-total { background: #fcfcfc; border-color: var(--line); }
.recent-empty p, .file-info p, .catalog-count, .module-card p, .module-source, .module-card-footer > span, .module-next p, .file-help, .storage-explanation, .files-empty p, .scope-panel > p:last-child { color: #707070; }
.empty-file-icon, .file-type, .module-card .tool-icon, .upload-icon { color: var(--gold-text); background: var(--gold-wash); border-color: #e9ddbc; }
.file-row, .files-toolbar, .module-card, .module-tags span, .scope-panel dl > div { border-color: var(--line); }
.file-status { color: #806009; border-color: #e6d7ac; background: #fbf5e5; }
.file-status.archived { color: #666; background: #f5f5f5; border-color: #ddd; }
.search-field { color: #777; border-color: #ddd; }
.search-field input, .settings-panel input, .settings-panel select, .amount-input input { color: var(--ink); }
.search-field input::placeholder, .amount-input input::placeholder { color: #858585; }
.module-card .available, .scope-panel dd.scope-ready { color: #806009; }
.module-card .available i { background: #b78c1c; }
.module-tags span { color: #666; }
.module-next { background: #faf8f1; border-color: #dbc990; }
.large-plus { background: #fff; border-color: #e5d8b3; color: #9a7415; }
.catalog-empty { color: #666; border-color: #d6d6d6; }
.file-filters button { color: #707070; }
.file-filters button span { background: #f4f0e4; color: #75602a; }
.file-filters button.active { color: #806009; }
.file-filters button.active::after { background: var(--gold); }
.file-drop { background: #fcfaf4; border-color: #c5a957; }
.file-drop > span:not(.upload-icon) { color: #6f6a5e; }
.settings-panel label, .scope-panel dt, .scope-panel dd, .detail-label, #detail-goal { color: #606060; }
.settings-panel input, .settings-panel select, dialog input, dialog select, .portal dialog textarea, .amount-input input { border-color: #ddd; background: #fdfdfd; }
.period-label, .month-tabs button, .section-caption > span, .metric-top, .metric-bottom, .amount-label, .amount-input, .field-hint, .panel-total, .legend > div, .distribution-note, .chart-summary > span, .chart-summary small, .bar-column small, .table-note, .no-data { color: #717171; }
.metric-icon, .category-symbol { background: #f7f3e8; color: #9b7723; }
.metric-bottom, .expense-group, .transaction, .distribution-note, .bar-column .bar-space, td { border-color: var(--line); }
.fixed-dot { background: var(--chart-fixed); }
.variable-dot { background: var(--chart-variable); }
.month-tabs button.active { background: #1c1c1c; color: #f4cf6f; box-shadow: 0 2px 5px #00000010; }
.month-tabs button.has-data:not(.active)::after { background: #b28716; }
.expense-tabs button { color: #717171; }
.expense-tabs button[aria-selected=true] { color: #806009; }
.expense-tabs button[aria-selected=true]::after { background: var(--gold); }
.expense-tabs button > span { background: #f7f2e5; }
.category-name small, .chevron, .subtle-icon, .variable-actions, .transaction p, .icon-button { color: #777; }
.panel-total strong, .legend b, .empty-state strong { color: #292929; }
.savings-card { background: radial-gradient(ellipse at 100% 0, #5d441b, transparent 75%), #121212; color: #fff; border: 1px solid #42371f; }
.savings-head, .savings-head svg, .spark { color: #efc664; }
.savings-amount span { color: #c5ad76; }
.savings-card > p, .savings-rate { color: #d8d1c1; }
.savings-rate b { color: #f3d58e; }
.progress-track > div { background: linear-gradient(90deg, #b68711, #f2c65a); }
.savings-equation { color: #bcb39e; }
.savings-card.deficit { background: #582b22; border-color: #804335; }
.donut { background: var(--chart-empty); }
.donut small, .empty-state { color: #777; }
.bar { background: #e5d6ab; }
.bar-column.active .bar { background: var(--gold); }
.bar-column.negative .bar { background: #b76b56; }
.bar-column.empty .bar { background: #e5e5e5; }
th, tfoot td { background: #f8f6f0; color: #655a41; }
td { color: #626262; }
td button { color: #806009; text-decoration-color: #d9c68f; }
td.balance-positive { color: #292929; }
footer, footer a { color: #6b6b6b; }
footer a:hover { color: #806009; }
dialog { border-color: #dedede; box-shadow: 0 30px 100px #00000033; }
dialog::backdrop { background: #00000070; }
dialog label, dialog p { color: #666; }
.toast { background: #202020; box-shadow: 0 5px 30px #00000020; }
@media (max-width: 980px) {
  .platform-brand .marcostv-wordmark, .module-brand .marcostv-wordmark { font-size: 21px; }
}
@media (max-width: 720px) {
  .portal-sidebar nav { border-color: #333; }
  .platform-brand .marcostv-wordmark, .module-brand .marcostv-wordmark { font-size: 23px; }
  .module-brand { max-width: 165px; }
  .portal .nav-item { padding-inline: 5px; }
  .featured-tool > p:not(.eyebrow) { max-width: 78%; }
}
