/* Graphite is a semantic layer, not a global dark theme. Documents stay light. */
body.ed [data-graphite-surface]{--gs-ink:#edf5ef;--gs-muted:#bccac1;--gs-em:#79dcb0;--gs-line:#35483f;--ink:var(--gs-ink);--ink-soft:var(--gs-muted);--ink-muted:var(--gs-muted);--em-text:var(--gs-em);--em:var(--gs-em);--line:var(--gs-line);color:var(--gs-ink);background:#14251d;border:1px solid #35483f;border-radius:var(--r-band);padding:clamp(24px,4vw,48px);box-shadow:0 24px 48px -40px #14251d80;position:relative;isolation:isolate}
body.ed [data-graphite-surface]:before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;z-index:-1;background:radial-gradient(ellipse at 95% 0%,#314b3b60,transparent 58%)}
body.ed [data-graphite-surface] :is(h2,h3,h4,strong,b,dt){color:var(--gs-ink)}
body.ed [data-graphite-surface] :is(.enrich-intro p,.enrich-caption,.enrich-note,.enrich-scroll-hint,.pp-example,.pp-boundary,.pp-actions p,.io-intro){color:var(--gs-muted)}
body.ed [data-graphite-surface] a:not(.btn){color:var(--gs-em);text-decoration-color:#79dcb080}
body.ed [data-graphite-surface] .btn-dark{background:#edf5ef;color:#14251d;border-color:#edf5ef}
body.ed [data-graphite-surface] .enrich-example{background:#20372c;color:var(--gs-muted);border:1px solid var(--gs-line)}
body.ed [data-graphite-surface] .enrich-flow{gap:16px}
body.ed [data-graphite-surface] .enrich-flow li{background:#20372c;border-color:var(--gs-line);color:var(--gs-muted)}
body.ed [data-graphite-surface] .enrich-flow li:before{color:var(--gs-em)}
body.ed [data-graphite-surface] .enrich-flow li span{color:var(--gs-muted)}
body.ed [data-graphite-surface] .enrich-links{border-color:var(--gs-line)}
body.ed [data-graphite-surface] :is(.enrich-table,.pp-screen){--ink:#1a1a1a;--ink-soft:#5a5a60;--ink-muted:#6a6a72;--em-text:#0a7a50;background:#fff;color:#1a1a1a;border-color:#dce6df;border-radius:var(--r-sm)}
body.ed [data-graphite-surface] :is(.enrich-table,.pp-screen) :is(h3,h4,b,strong,th,td,caption){color:#1a1a1a}
body.ed [data-graphite-surface] .enrich-table :is(th,td){background:#fff;border-color:#e2e8e4}
body.ed [data-graphite-surface] .enrich-table thead th{background:#eff4f0}
body.ed [data-graphite-surface] :is(.pp-route,.pp-step-no){color:var(--gs-em)}
body.ed [data-graphite-surface] :is(.pp-route,.pp-actions>li){border-color:var(--gs-line)}
body.ed [data-graphite-surface] .pp-work-cta .btn{color:#14251d}
body.ed [data-graphite-surface] .gs-output{border-color:var(--gs-line)}
body.ed [data-graphite-surface] .gs-output span{color:var(--gs-em)}
body.ed [data-graphite-surface] :is(.gs-output,.im-output){background:#20372c;border-color:var(--gs-line)}
/* Existing product/theme rules use important on these captions. */
body.ed [data-graphite-surface] .pp-screen figcaption{color:#58635e!important}
body.ed [data-graphite-surface] .enrich-figure figcaption{color:#58635e}
body.ed [data-graphite-surface] .im-output span{color:var(--gs-em)}
body.ed [data-graphite-surface].io-process-map figcaption{color:var(--gs-muted)}
body.ed #custom-architecture[data-graphite-surface],body.ed #pilot-passport[data-graphite-surface]{background:#14251d;box-shadow:0 24px 48px -40px #14251d80}
body.ed #custom-architecture[data-graphite-surface] .enrich-flow li{background:#20372c;border-color:var(--gs-line)}
body.ed #custom-architecture[data-graphite-surface] .enrich-flow span{color:var(--gs-muted)}
body.ed [data-graphite-surface] .sf-choices button[aria-pressed=true]{background:#79dcb0;color:#14251d;border-color:#79dcb0}
/* Diagnosis: a process on a drawing table, not another four-card catalogue. */
body.ed [data-graphite-surface].io-process-map .io-map-stages li{background:#20372c;border-color:#486352;color:var(--gs-ink)}
body.ed [data-graphite-surface].io-process-map .io-map-stages :is(p,span){color:var(--gs-muted)}
body.ed [data-graphite-surface].io-process-map .io-map-insight{background:#fff;color:#14251d;border:0}
body.ed [data-graphite-surface].io-process-map .io-map-insight :is(h3,p){color:#14251d}
body.ed [data-graphite-surface] .io-controls button{background:#20372c;border-color:#486352;color:var(--gs-ink)}
body.ed [data-graphite-surface] .io-controls button[aria-pressed=true]{background:#79dcb0;color:#14251d}
body.ed [data-graphite-surface].ca-crm-map .ca-crm-branches article{background:#20372c;border-color:#486352}
body.ed [data-graphite-surface].ca-crm-map .ca-crm-branches p{color:var(--gs-muted)}
body.ed [data-graphite-surface].ca-crm-map .ca-crm-core{color:#14251d}
body.ed [data-graphite-surface].ca-crm-map .ca-crm-core :is(b,span){color:#14251d}
body.ed [data-graphite-surface] :is(button,a,input):focus-visible{outline:3px solid #79dcb0;outline-offset:4px}
body.ed [data-graphite-surface].steps{gap:0}
body.ed [data-graphite-surface].steps .step{background:none;border-radius:0;padding:24px;border-right:1px solid var(--gs-line)}
body.ed [data-graphite-surface].steps .step:last-child{border-right:0}
body.ed [data-graphite-surface].steps .step p{color:var(--gs-muted)}
body.ed [data-graphite-surface].steps .step-num{color:var(--gs-em)}
body.ed [data-graphite-surface].steps :is(.step-art,.step-icon){background:#fff;border-radius:var(--r-xs);padding:8px;box-sizing:border-box;color:#14251d}
body.ed [data-graphite-surface].nz-rcpt :is(p,dd){color:var(--gs-muted)}
body.ed [data-graphite-surface].nz-rcpt :is(.nz-rcpt-row,.nz-rcpt-total,.nz-rcpt-h){border-color:var(--gs-line)}
body.ed [data-graphite-surface].xp-flow :is(figcaption,li,span){color:var(--gs-muted)}
body.ed [data-graphite-surface].xp-flow li{background:#20372c;border-color:var(--gs-line)}
@media(max-width:767px){body.ed [data-graphite-surface].steps .step{border-right:0;border-bottom:1px solid var(--gs-line);padding:24px 0}body.ed [data-graphite-surface].steps .step:last-child{border-bottom:0}}
body.ed [data-graphite-surface].db-trust-documents .hm-trust__i{background:none;border:0;border-radius:0;color:var(--gs-ink)}
body.ed [data-graphite-surface].db-trust-documents .hm-trust__i p{color:var(--gs-muted)}
body.ed #trust [data-graphite-surface] .hm-trust__i h3{color:var(--gs-ink)!important}
body.ed [data-graphite-surface].db-trust-documents .db-trust-art{background:#fff;border-radius:var(--r-sm);width:112px;height:112px}
@media(max-width:767px){body.ed [data-graphite-surface]{padding:24px 16px;border-radius:var(--r-sm);min-width:0;max-width:100%}body.ed [data-graphite-surface] .enrich-flow{grid-template-columns:1fr}body.ed [data-graphite-surface].pp-workspace{gap:24px}}
@media(prefers-reduced-motion:reduce){body.ed [data-graphite-surface] *{scroll-behavior:auto}}
