@import url('/assets/brand/tokens.css');
:root{font-family:var(--yg-font-body);color:var(--yg-graphite);background:var(--yg-paper);--blue:#17201f;--navy:#17201f;--muted:#58645f;--line:#d7ddd5;--soft:#e8ede4;--radius:12px}
h1,h2,h3{font-family:var(--yg-font-display);font-weight:650;letter-spacing:-.025em}button,input,textarea,select{font-family:var(--yg-font-body)}
.brand{padding:8px 0}.brand img.brand-logo{width:176px;height:auto;display:block}.brand:hover{opacity:.8}
.btn{border-radius:8px;transition:background 200ms,transform 200ms}.btn.primary{background:var(--yg-graphite);color:var(--yg-lime);box-shadow:none}.btn.primary:hover{background:#303c35}.btn.secondary,.btn.ghost{color:var(--yg-graphite);border-color:var(--yg-border)}
.btn.ghost:hover,.btn.secondary:hover,.plain:hover{background:var(--yg-surfaceSubtle)}.panel{border-radius:12px;box-shadow:0 2px 4px #17201f03}.intro h1 span{color:var(--yg-textSecondary)}
.stage-nav button.active{background:var(--yg-lime);color:var(--yg-graphite)}.active .stage-number{background:var(--yg-graphite);color:var(--yg-lime);border-color:var(--yg-graphite)}.stage-nav button.completed{color:var(--yg-textSecondary)}
.avatar,.question-number,.mini-count{background:var(--yg-surfaceSubtle);color:var(--yg-graphite)}.side-label,.stage-nav button,.crumb,.hint,.side-note,.top-actions,.footer,.subtle-link,.plain,.side-note strong{color:var(--yg-textSecondary)}
.cta{background:var(--yg-lime);border-color:var(--yg-lime);border-radius:16px}.cta p{color:#354533}.badge{background:var(--yg-surfaceSubtle);color:var(--yg-textSecondary);border-color:var(--yg-border)}
.graph-scroll{background-color:var(--yg-paper);background-image:radial-gradient(#c5cec3 .7px,transparent .7px);border-color:var(--yg-border)}
.step-dossier,.history-item,.lead-report,.side-note,.step-detail{background:var(--yg-paper);border-color:var(--yg-border)}.opportunity p,.op-detail strong,.unknown-panel ul,.legal p,.map-boundaries span,.step-detail p,.step-detail blockquote,.graph-conditions{color:var(--yg-textSecondary)}
.step-facts>div,.step-facts section,.graph-conditions span{background:var(--yg-paper)}.process-node rect{stroke:var(--yg-border)}.process-node.selected rect,.process-node:hover rect{stroke:var(--yg-graphite)}
.process-node .node-role,.node-context,.route-label,.map-legend,.step-evidence,.step-facts dt,.step-facts dd{color:var(--yg-textSecondary);fill:var(--yg-textSecondary)}
.node-title,.process-node text{fill:var(--yg-graphite)}.node-number-bg{fill:var(--yg-lime)}.node-number-text{fill:var(--yg-graphite)}.correction-panel{background:var(--yg-paper);border-color:var(--yg-border)}
.voice-button{background:var(--yg-surfaceSubtle);color:var(--yg-graphite);border-color:var(--yg-border)}.voice-notice,.voice-state{color:var(--yg-textSecondary)}
input:focus,textarea:focus,select:focus{border-color:var(--yg-graphite);box-shadow:0 0 0 3px #d9f36a66;outline:none}button:focus-visible,a:focus-visible{outline-color:#58645f}input[type=checkbox]{accent-color:var(--yg-graphite)}
.interview-progress{display:flex;justify-content:space-between;gap:16px;font-size:13px;color:var(--yg-textSecondary);margin-bottom:8px}progress{display:block;appearance:none;width:100%;height:6px;border:0;border-radius:8px;background:var(--yg-border);margin:0 0 24px}progress::-webkit-progress-bar{background:var(--yg-border);border-radius:8px}progress::-webkit-progress-value{background:var(--yg-graphite);border-radius:8px}progress::-moz-progress-bar{background:var(--yg-graphite);border-radius:8px}.question-header h2{font-size:24px;line-height:1.35}.question-header p{margin-top:12px}.question-number{width:40px;height:40px;background:var(--yg-lime)}.question textarea{min-height:168px}.interview-navigation{display:flex;justify-content:space-between;gap:16px;align-items:center}.interview-save{margin-top:16px;max-width:580px}.interview-navigation button{min-height:44px}.questions-layout .intro{margin-bottom:32px}
@media(max-width:600px){.question-header h2{font-size:20px}.question{padding:20px}.question-header{gap:10px}.question-number{width:30px;height:30px}.question-actions{flex-wrap:wrap}.question-actions .primary{flex:1}.interview-progress{font-size:12px}.brand img.brand-logo{width:160px}.interview-navigation{align-items:flex-start}.interview-navigation .subtle-link{text-align:right;max-width:200px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.report-observations{margin:8px 0 28px}.report-observations>.eyebrow{margin-bottom:16px;font-size:11px;color:var(--yg-textSecondary)}.report-observations>div:last-child{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.report-observations article{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--yg-surfaceSubtle);border-radius:8px;font-size:13px}.report-observations article>span{font-size:11px;flex-shrink:0;padding-top:3px;color:var(--yg-textSecondary)}
/* Evidence and consultation keep the report readable on narrow screens. */
.answer-coverage, .quality-warning, .ai-consult { margin: 22px 0; padding: 26px; }
.answer-coverage summary { cursor: pointer; font-weight: 600; }
.answer-coverage article { padding: 18px 0; border-bottom: 1px solid #D7DDD5; }
.answer-coverage article:last-child { border-bottom: 0; }
.answer-coverage article p { margin: 8px 0; }
.answer-coverage article div { display:flex; flex-wrap:wrap; gap:12px; }
.step-clarifications { margin-top:18px; border-top:1px solid #D7DDD5; padding-top:16px; }
.step-clarifications summary { cursor:pointer; font-size:14px; font-weight:600; }
.step-clarifications>div { margin-top:16px; font-size:13px; }
.quality-warning { background:#fff8e8; border-color:#dac79c; }
.quality-warning ul { padding-left:22px; }
.ai-consult { display:flex; align-items:center; justify-content:space-between; gap:24px; background:#edf1df; }
.ai-consult h2 { margin:12px 0; }
.ai-consult p { max-width:660px; }
.ai-consult .btn { flex-shrink:0; }
@media(max-width:760px) { .ai-consult { flex-direction:column; align-items:stretch; } }

.quota-note { padding:16px 18px; margin-bottom:24px; background:#f0f3e8; border:1px solid #d7ddd5; border-radius:12px; font-size:14px; line-height:1.55; }
.quota-note p { margin:6px 0 0; color:#5d6663; font-size:13px; }
.quota-note .plain { margin-top:10px; }
