/* Light appearance palettes; layout and business data are shared. */
:root[data-appearance="marble"]{--p-bg:#f6f6f5;--p-sidebar:#fbfbfa;--p-header:#fcfcfb;--p-panel:#ffffff;--p-soft:#f1f2f1;--p-line:#e2e4e2;--p-ink:#282c2e;--p-muted:#6a6f70;--p-faint:#a0a5a3;--p-accent:#596269;--p-key:#444d53;--p-accent-soft:#edf0f1;--p-detail:#b2aaa0;--p-chart:#929b9f;--p-chart2:#c1bbb2;--p-key-muted:#c7ced0;--p-story:#f0f0ec;--p-key-hover:#353e45}
:root[data-appearance="oat"]{--p-bg:#f6f2ec;--p-sidebar:#fbf8f2;--p-header:#fcfaf5;--p-panel:#fffdf9;--p-soft:#f2ece2;--p-line:#e5dccd;--p-ink:#352f29;--p-muted:#75695d;--p-faint:#ada18f;--p-accent:#806147;--p-key:#68523f;--p-accent-soft:#f0e5d5;--p-detail:#c3a87f;--p-chart:#b39a78;--p-chart2:#d2bba0;--p-key-muted:#d6c9b8;--p-story:#f0e9dc;--p-key-hover:#584432}
:root[data-appearance="jade"]{--p-bg:#f2f6f2;--p-sidebar:#f8fbf7;--p-header:#fafdf9;--p-panel:#fcfffc;--p-soft:#edf3ec;--p-line:#dce7dc;--p-ink:#293c32;--p-muted:#627266;--p-faint:#9ead9e;--p-accent:#50745d;--p-key:#3e6350;--p-accent-soft:#e7f0e5;--p-detail:#a6b794;--p-chart:#8cac95;--p-chart2:#bfd0b3;--p-key-muted:#c8d7c7;--p-story:#ebf2e7;--p-key-hover:#31523e}
:root[data-appearance="mauve"]{--p-bg:#f6f3f7;--p-sidebar:#fbf8fc;--p-header:#fdfaff;--p-panel:#fffdfd;--p-soft:#f2edf4;--p-line:#e6dce9;--p-ink:#3b3340;--p-muted:#73697b;--p-faint:#b0a2b8;--p-accent:#776081;--p-key:#66516f;--p-accent-soft:#eee5f1;--p-detail:#baa0bd;--p-chart:#aa96b4;--p-chart2:#d4bac9;--p-key-muted:#d7cadf;--p-story:#f0e9f2;--p-key-hover:#55415e}
:root[data-appearance="clay"]{--p-bg:#f7f2ee;--p-sidebar:#fcf8f4;--p-header:#fdfaf7;--p-panel:#fffdfa;--p-soft:#f3ebe4;--p-line:#e8dcd1;--p-ink:#3d322b;--p-muted:#78685e;--p-faint:#b49f8f;--p-accent:#855f4b;--p-key:#805b48;--p-accent-soft:#f2e4d9;--p-detail:#c59e83;--p-chart:#c49c82;--p-chart2:#dec1a6;--p-key-muted:#e9ded6;--p-story:#f2e9df;--p-key-hover:#704b39}
:root[data-appearance="pearl"]{--p-bg:#f5f4ef;--p-sidebar:#f9f8f2;--p-header:#fcfbf6;--p-panel:#fffef9;--p-soft:#f1f0e7;--p-line:#e4e2d6;--p-ink:#30372e;--p-muted:#6b6f62;--p-faint:#a4aa94;--p-accent:#686e53;--p-key:#48513d;--p-accent-soft:#eceee2;--p-detail:#b9a478;--p-chart:#9ca58a;--p-chart2:#c8b899;--p-key-muted:#c7ceb8;--p-story:#f0eee3;--p-key-hover:#3b442f}
:root,:root[data-appearance="techblue"]{--p-bg:#f8fafd;--p-sidebar:#f3f6fc;--p-header:#ffffff;--p-panel:#ffffff;--p-soft:#f0f4f9;--p-line:#dfe5ee;--p-ink:#202124;--p-muted:#5f6368;--p-faint:#929ba8;--p-accent:#185abc;--p-key:#0b57d0;--p-accent-soft:#e8f0fe;--p-detail:#1a73e8;--p-chart:#4285f4;--p-chart2:#a8c7fa;--p-key-muted:#e8f0fe;--p-story:#edf3fe;--p-key-hover:#0842a0}
:root[data-appearance="reportred"]{--p-bg:#faf7f5;--p-sidebar:#faf5f2;--p-header:#fffdfc;--p-panel:#ffffff;--p-soft:#f6efec;--p-line:#e9ddd8;--p-ink:#332a2a;--p-muted:#746563;--p-faint:#b19b96;--p-accent:#9d3446;--p-key:#9c263b;--p-accent-soft:#f9e9e9;--p-detail:#ba5362;--p-chart:#b24c5d;--p-chart2:#dbb0ad;--p-key-muted:#f8e1df;--p-story:#f6ebe7;--p-key-hover:#822034}
:root{--bg:var(--p-bg);--panel:var(--p-panel);--ink:var(--p-ink);--muted:var(--p-muted);--soft:var(--p-soft);--line:var(--p-line);--accent:var(--p-accent);--green:var(--p-accent);--green-soft:var(--p-accent-soft);--champagne:var(--p-detail);--graphite:var(--p-key);--shadow:0 3px 14px color-mix(in srgb,var(--p-key) 3%,transparent);--appearance-panel:var(--p-panel);--appearance-soft:var(--p-soft)}
html,body,.shell,.main{background:var(--p-bg);color:var(--p-ink)}
.topbar{background:color-mix(in srgb,var(--p-header) 95%,transparent);border-color:var(--p-line)}.sidebar{background:var(--p-sidebar);border-color:var(--p-line)}.sidebar-brand{border-color:var(--p-line)}.brand strong{color:var(--p-ink)}.brand small,.side-caption{color:var(--p-faint)}.brand svg>rect{fill:var(--p-key)}.brand svg>circle{fill:var(--p-detail)}.top-links .module-link.selected{color:var(--p-ink)}.top-links .module-link:not(.selected){color:var(--p-muted)}.module-link:hover{color:var(--p-accent)}.module-link:after,.nav-item.active:before{background:var(--p-detail)}.nav-item{color:var(--p-muted)}.nav-item:hover{background:var(--p-soft);color:var(--p-ink)}.nav-item.active,.nav-item.active:hover{background:var(--p-accent-soft);color:var(--p-accent)}.side-divider{background:var(--p-line)}.workspace-card{border-color:var(--p-line)}.workspace-card strong{color:var(--p-muted)}.workspace-card small{color:var(--p-faint)}.search{background:var(--p-soft);border-color:var(--p-line)}.search .icon{color:var(--p-faint)}.search input{background:none;color:var(--p-ink)}.search input::placeholder{color:var(--p-muted)}.top-actions>.btn{background:var(--p-panel);border-color:var(--p-line);color:var(--p-muted)}.account-identity{border-color:var(--p-line)}.account-name{color:var(--p-muted)}.user{background:var(--p-accent-soft);border-color:var(--p-line);color:var(--p-accent)}.logout-button{color:var(--p-muted)}.logout-button:hover{background:var(--p-soft);color:var(--p-accent)}.snapshot-label{background:var(--p-soft);border-color:var(--p-line);color:var(--p-muted)}
.company-title h1,h1,h2,h3,.panel-head h2,.section-intro h2,.dm-page-head h1,.modal-head h2{color:var(--p-ink)}.company-mark{background:var(--p-panel);border-color:var(--p-line);color:var(--p-accent)}.company-sub,.company-asof{color:var(--p-muted)}.company-title .tag{background:var(--p-accent-soft);color:var(--p-accent)}.btn{background:var(--p-panel);border-color:var(--p-line);color:var(--p-ink)}.btn:hover{background:var(--p-soft)}.btn.primary,.btn.green{background:var(--p-key);border-color:var(--p-key);color:#fff}.btn.primary:hover,.btn.green:hover{background:var(--p-key-hover);border-color:var(--p-key-hover)}.btn.text,.text-link,a,.dm-inline-button{color:var(--p-accent)}.btn.text:hover,a:hover{color:var(--p-key)}.tag{background:var(--p-soft);color:var(--p-muted)}.tag.blue,.tag.purple{background:var(--p-accent-soft);color:var(--p-accent)}.tag.green{background:#edf3ed;color:#577657}.tag.amber{background:#f7f1e4;color:#886938}.tag.red{background:#faede8;color:#995e4e}.btn.danger,.dm-danger,.dm-row-actions .dm-danger{color:#a45d51!important}
.kpi,.panel,.project-card,.opp-card{background:var(--p-panel);border-color:var(--p-line);box-shadow:var(--shadow)}.kpi-label,.kpi-note,.kpi-value em{color:var(--p-muted)}.kpi-value,.goal-figures strong,.pipeline-summary strong,.project-card .numbers strong{color:var(--p-ink)}.kpi-note b{color:var(--p-accent)}.kpi:first-child{background:var(--p-key);border-color:var(--p-key);box-shadow:var(--shadow)}.kpi:first-child .kpi-label,.kpi:first-child .kpi-note,.kpi:first-child .kpi-value em{color:var(--p-key-muted)}.kpi:first-child .kpi-value{color:#fff}.progress{background:var(--p-soft)}.progress i{background:var(--p-chart)}.progress.blue i{background:var(--p-chart2)}.goal-figures .muted,.goal-figures small,.goal-meta{color:var(--p-muted)}.goal-months .active i{background:var(--p-chart)}.goal-months i{background:var(--p-accent-soft)}.goal-months b,.goal-months>div{color:var(--p-muted)}.insight,.action-item,.timeline-item,.milestone{border-color:var(--p-line)}.insight h3,.action-item h3,.timeline-item h3,.milestone h3,.milestone strong{color:var(--p-ink)}.insight p,.action-item small,.timeline-item p,.timeline-item small,.section-intro p,.project-card p,.opp-card p{color:var(--p-muted)}.insight a{color:var(--p-accent)}.insight-icon,.insight-icon.blue{background:var(--p-accent-soft);color:var(--p-accent)}.insight-icon.red{background:#f8eee6;color:#ad7d64}.stage-tile{background:var(--p-panel);border-color:var(--p-line)}.stage-tile:hover{background:var(--p-soft);border-color:var(--p-chart)}.stage-tile strong{color:var(--p-ink)}.stage-tile span,.stage-tile small{color:var(--p-muted)}.stage-tile i{background:var(--p-accent-soft)}.check-button{border-color:var(--p-line)}.check-button:hover{border-color:var(--p-accent)}.check-button.active{background:var(--p-accent-soft);color:var(--p-accent)}.timeline-dot{background:var(--p-chart)}.mile-number{background:var(--p-accent-soft);color:var(--p-accent)}
.table-wrap th{background:var(--p-soft);color:var(--p-muted);border-color:var(--p-line)}.table-wrap td{border-color:var(--p-line);color:var(--p-ink)}.table-wrap tbody tr:hover{background:var(--p-soft)}.table-title{color:var(--p-ink)}.table-sub,.table-foot{color:var(--p-muted)}.table-foot{border-color:var(--p-line)}.description,.definition-list dd{color:var(--p-ink)}.definition-list dt{color:var(--p-muted)}.notice{background:var(--p-accent-soft);border-color:var(--p-line);color:var(--p-accent)}.notice.amber{background:#f8f3e6;border-color:#ebe2c8;color:#836c3e}.finance-legend{color:var(--p-muted)}.finance-legend i{background:var(--p-chart)}.finance-legend i.blue{background:var(--p-chart2)}.finance-chart text{fill:var(--p-muted)}.finance-chart line{stroke:var(--p-line)}.finance-chart .finance-revenue-bar{fill:var(--p-chart)}.finance-chart .finance-profit-bar{fill:var(--p-chart2)}.insight-card{background:var(--p-soft);border-color:var(--p-chart)}.insight-card h3{color:var(--p-ink)}.insight-card p{color:var(--p-muted)}.funnel-stage{background:var(--p-accent-soft);color:var(--p-accent)}.funnel-stage.active{background:var(--p-accent);color:#fff}.pipeline-summary>div{background:var(--p-soft);border-color:var(--p-line)}.board-col{background:var(--p-soft)}.board-col h3{color:var(--p-muted)}.board-col.drag-over{background:var(--p-accent-soft);outline-color:var(--p-chart)}.opp-card h3,.opp-card strong,.project-card h3{color:var(--p-ink)}.health{background:#8ba67b}.health.amber{background:#bea46c}.health.red{background:#b48370}
.org-viewport{background-color:var(--p-soft);background-image:radial-gradient(var(--p-line) .65px,transparent .65px)}.org-node{background:var(--p-panel);border-color:var(--p-line);box-shadow:var(--shadow)}.org-role{background:var(--p-accent-soft);color:var(--p-accent);border-color:var(--p-line)}.org-role.risk{background:#f8f0df;color:#806b44}.org-person strong{color:var(--p-ink)}.org-person small{color:var(--p-muted)}.org-node.highlight{border-color:var(--p-accent);box-shadow:0 0 0 3px var(--p-accent-soft)}.org-lines path{stroke:var(--p-chart)}.org-toolbar,.org-footer{background:var(--p-panel);border-color:var(--p-line)}.org-note{background:var(--p-accent-soft);border-color:var(--p-line);color:var(--p-accent)}.org-footer,.org-toolbar .legend{color:var(--p-muted)}.seg{background:var(--p-soft);border-color:var(--p-line)}.seg button{color:var(--p-muted)}.seg button.active{background:var(--p-panel);color:var(--p-ink)}input,select,textarea{background:var(--p-panel);border-color:var(--p-line);color:var(--p-ink)}input:focus,select:focus,textarea:focus{border-color:var(--p-chart);box-shadow:0 0 0 3px var(--p-accent-soft)}.field label,.field-help{color:var(--p-muted)}.review-bar{background:var(--p-accent-soft);border-color:var(--p-line);color:var(--p-accent)}.data-card>.icon{color:var(--p-accent)}.data-card h3,.source-row h3{color:var(--p-ink)}.data-card p,.source-row small{color:var(--p-muted)}.source-row{border-color:var(--p-line)}.source-row .source-icon{background:var(--p-soft);color:var(--p-accent)}.footer{color:var(--p-faint)}.modal-overlay{background:#23252244}.modal{background:var(--p-panel);border-color:var(--p-panel)}.modal-head,.modal-foot{background:var(--p-header);border-color:var(--p-line)}.modal-close{color:var(--p-muted)}.toast{background:var(--p-key);color:#fff}.empty{color:var(--p-muted)}.error{color:#a45d51}.stage-guide>div,.import-diff{background:var(--p-soft);border-color:var(--p-line);color:var(--p-muted)}.audit-detail summary{color:var(--p-accent)}.audit-detail p{color:var(--p-muted)}
.dm-workflow{border-color:var(--p-line)}.dm-workflow button{color:var(--p-muted)}.dm-workflow .dm-active{color:var(--p-ink);border-color:var(--p-detail)}.dm-page-head p{color:var(--p-muted)}.dm-status{background:none;border-color:var(--p-line);color:var(--p-muted)}.dm-guidance{background:var(--p-soft);border-color:var(--p-line)}.dm-guidance strong,.dm-guidance span{color:var(--p-muted)}.dm-settings{background:var(--p-panel);border-color:var(--p-line)}.dm-settings strong,.dm-settings span{color:var(--p-ink)}.dm-settings small{color:var(--p-muted)}.dm-workbench{background:var(--p-panel);border-color:var(--p-line);box-shadow:var(--shadow)}.dm-tools,.dm-table-heading,.dm-pagination{border-color:var(--p-line)}.dm-dataset>span,.dm-search>span{color:var(--p-muted)}.dm-dataset select,.dm-search input,.dm-pagination select{background:var(--p-panel);border-color:var(--p-line);color:var(--p-ink)}.dm-search input::placeholder{color:var(--p-faint)}.dm-table-heading strong{color:var(--p-ink)}.dm-table-heading span,.dm-table-heading small{color:var(--p-muted)}.dm-table th,.dm-table th.dm-sticky-action{background:var(--p-soft);border-color:var(--p-line);color:var(--p-muted)}.dm-table td{color:var(--p-ink);border-color:var(--p-line)}.dm-table .dm-sticky-action{background:var(--p-panel);border-color:var(--p-line)}.dm-table tbody tr:hover td{background:var(--p-soft)}.dm-cell-sub,.dm-empty-value{color:var(--p-muted)}.dm-table .dm-cell-main{color:var(--p-ink)}.dm-row-actions button{color:var(--p-accent)}.dm-pagination{color:var(--p-muted)}.dm-button{border-color:var(--p-line);background:var(--p-panel);color:var(--p-ink)}.dm-button:hover{background:var(--p-soft)}.dm-button.dm-primary{background:var(--p-key);border-color:var(--p-key);color:#fff}.dm-button.dm-primary:hover{background:var(--p-key-hover);border-color:var(--p-key-hover)}.dm-field>label{color:var(--p-muted)}.dm-field input,.dm-field select,.dm-field textarea{background:var(--p-panel);border-color:var(--p-line);color:var(--p-ink)}.dm-field input[readonly],.dm-field textarea[readonly],.dm-field select:disabled{background:var(--p-soft);color:var(--p-muted)}.dm-field small,.dm-help,.dm-attachment-tools small{color:var(--p-muted)}.dm-callout,.dm-totals{background:var(--p-soft);border-color:var(--p-line);color:var(--p-muted)}.dm-plan-card,.dm-review{border-color:var(--p-line);background:var(--p-panel)}.dm-review strong{color:var(--p-ink)}.dm-section-title{color:var(--p-ink)}.dm-empty{color:var(--p-muted)}.dm-pagination .dm-button{color:var(--p-muted)}
body.login-screen{background:var(--p-story);color:var(--p-ink)}.login-page{--login-ink:var(--p-ink);--login-muted:var(--p-muted);--login-line:var(--p-line);--login-accent:var(--p-detail);background:var(--p-panel)}.login-story{background:var(--p-story);border-color:var(--p-line)}.login-story:after{background:linear-gradient(0deg,var(--p-story) 0%,transparent 100%)}.login-entry{background:var(--p-panel)}.login-brand,.login-brand strong{color:var(--p-ink)}.login-brand small,.login-story-footer{color:var(--p-faint)}.login-brand svg>rect{fill:var(--p-key)}.login-brand svg>circle{fill:var(--p-detail)}.login-eyebrow{color:var(--p-muted)}.login-eyebrow span{background:var(--p-detail)}.login-story h1,.login-form-wrap h2{color:var(--p-ink)}.login-story-copy p,.login-story-tags,.login-entry-top,.login-form-intro{color:var(--p-muted)}.login-story-tags i{background:var(--p-chart)}.login-status-dot{background:var(--p-accent);box-shadow:0 0 0 3px var(--p-accent-soft)}.login-welcome-kicker{color:var(--p-detail)}.login-field label{color:var(--p-muted)}.login-field input{background:var(--p-panel);border-color:var(--p-line);color:var(--p-ink)}.login-field input::placeholder{color:var(--p-faint)}.login-field input:hover{border-color:var(--p-chart)}.login-field input:focus{border-color:var(--p-chart);box-shadow:0 0 0 3px var(--p-accent-soft)}.login-password-toggle{color:var(--p-muted)}.login-password-toggle:hover,.login-password-toggle.is-visible{background:var(--p-soft);color:var(--p-accent)}.login-error{color:#a45d51}.login-submit{background:var(--p-key);border-color:var(--p-key);color:#fff;box-shadow:var(--shadow)}.login-submit:hover{background:var(--p-key-hover);border-color:var(--p-key-hover)}.login-submit svg{stroke:var(--p-key-muted)}.login-demo-row{border-color:var(--p-line);color:var(--p-muted)}.login-demo-row button{color:var(--p-accent)}.login-demo-row button:hover{color:var(--p-key)}.login-demo-credentials,.login-demo-credentials b,.login-local-note{color:var(--p-muted)}.login-local-note svg{stroke:var(--p-chart)}.login-orbit stop{stop-color:var(--p-detail)}.login-orbit>svg>path:not(:first-of-type){stroke:var(--p-chart)}.login-orbit circle[fill]{fill:var(--p-detail)}.login-orbit circle[stroke]{stroke:var(--p-chart)}.login-orbit g>rect{fill:var(--p-panel);stroke:var(--p-line)}.login-orbit g>path{stroke:var(--p-faint)}
button:focus-visible,a:focus-visible,.login-page button:focus-visible,.login-page a:focus-visible{outline-color:color-mix(in srgb,var(--p-accent) 55%,white)}.shell,.main,.sidebar,.sidebar-brand,.topbar,.panel,.kpi,.login-story,.login-entry,.login-field input{transition:background-color .18s,border-color .18s,color .18s}
@media(prefers-reduced-motion:reduce){.shell,.main,.sidebar,.sidebar-brand,.topbar,.panel,.kpi,.login-story,.login-entry,.login-field input{transition:none}}
@media print{.kpi:first-child{background:#fff;border-color:#ddd}.kpi:first-child .kpi-value{color:#222}.kpi:first-child .kpi-label,.kpi:first-child .kpi-note,.kpi:first-child .kpi-value em{color:#666}}
/* One header and one continuous shadow across the logo and navigation. */
.topbar,.sidebar-brand{background:var(--p-header)}
.topbar{border-bottom:0}
.sidebar-brand{border-bottom:0}
.sidebar{background:var(--p-bg);border-right:0;box-shadow:none}
.shell::before{content:"";position:fixed;top:var(--shell-header);left:0;right:0;height:20px;z-index:30;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--p-key) 3.5%,transparent),transparent)}
.sidebar::after{content:"";position:absolute;top:calc(var(--shell-header) + 20px);bottom:0;left:100%;width:14px;background:linear-gradient(90deg,color-mix(in srgb,var(--p-key) 3.5%,transparent),transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 24px);mask-image:linear-gradient(to bottom,transparent,#000 24px);pointer-events:none}
@media print{.shell::before,.sidebar::after{display:none}}
