/* Presentation skin only. All charts, forms, and research data keep their contracts. */
:root {
  --ink: #163c32;
  --text: #304f44;
  --muted: #637d70;
  --green: #176d54;
  --line: rgba(46, 101, 76, .13);
  --glass-border: rgba(255, 255, 255, .86);
  --glass-shadow: 0 12px 36px rgba(36, 92, 69, .065), inset 0 1px 0 rgba(255, 255, 255, .85);
  background: #e5f0e9;
}
body { position: relative; isolation: isolate; background: transparent; min-height: 100vh; }
.glass-ambient {
  position: fixed; inset: 0; z-index: -1; pointer-events: none; overflow: hidden;
  background:
    radial-gradient(ellipse at 7% 18%, rgba(172, 224, 201, .8), transparent 42%),
    radial-gradient(ellipse at 96% 58%, rgba(210, 230, 157, .58), transparent 40%),
    radial-gradient(ellipse at 40% 102%, rgba(181, 221, 229, .6), transparent 52%),
    linear-gradient(125deg, #e9f3ed, #eff6e9 42%, #d9eee5);
}
.glass-orb { position: absolute; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .64); }
.orb-mint {
  width: 630px; height: 630px; right: -115px; top: -235px;
  background: radial-gradient(circle at 24% 27%, rgba(255,255,255,.94), rgba(188,237,211,.45) 45%, rgba(94,188,160,.26) 82%);
  box-shadow: inset 14px 14px 55px rgba(255,255,255,.74), inset -20px -22px 64px rgba(49,137,103,.1), 0 22px 60px rgba(89,151,116,.07);
}
.orb-sage {
  width: 370px; height: 370px; left: -185px; top: 58%;
  background: radial-gradient(circle at 28% 28%, rgba(255,255,255,.9), rgba(203,228,157,.36) 65%, rgba(89,158,120,.15));
  box-shadow: inset -10px -10px 40px rgba(80,136,97,.08), 0 10px 65px rgba(116,156,103,.07);
}
.orb-blue {
  width: 220px; height: 220px; right: 14%; bottom: -104px;
  background: radial-gradient(circle at 25% 20%, rgba(255,255,255,.86), rgba(162,212,218,.5));
  box-shadow: inset -12px -16px 40px rgba(59,137,144,.08);
}
/* Floating navigation */
.workspace-header {
  position: sticky; top: 14px; z-index: 30; width: calc(100% - 56px); max-width: 1460px;
  margin: 18px auto 0; padding: 14px 23px; min-height: 78px; border-radius: 24px;
  border: 1px solid var(--glass-border);
  background: linear-gradient(115deg, rgba(255,255,255,.74), rgba(246,255,249,.44));
  -webkit-backdrop-filter: blur(26px) saturate(145%); backdrop-filter: blur(26px) saturate(145%);
  box-shadow: 0 10px 35px rgba(37,93,66,.065), inset 0 1px 0 white;
}
.workspace-mark {
  background: linear-gradient(145deg, #5fa186, #24654d 65%, #1a4d3d); color: #eaffd8;
  border: 1px solid rgba(255,255,255,.75); border-radius: 14px;
  box-shadow: inset 0 2px 3px rgba(255,255,255,.3), 0 5px 12px rgba(39,104,76,.16);
}
.workspace-tabs { gap: 4px; padding: 4px; border: 1px solid rgba(255,255,255,.55); border-radius: 15px; background: rgba(211,228,216,.23); }
.workspace-tabs a { padding: 10px 18px; border: 1px solid transparent; border-radius: 11px; color: #526e60; transition: background .2s, box-shadow .2s; }
.workspace-tabs a:hover { background: rgba(255,255,255,.55); text-decoration: none; }
.workspace-tabs a[aria-current=page] {
  color: #235b43; background: linear-gradient(140deg, rgba(255,255,255,.95), rgba(228,244,223,.8));
  border-color: rgba(255,255,255,.95); box-shadow: 0 3px 10px rgba(43,91,57,.08), inset 0 1px 0 white;
}
.review-entry { background: rgba(255,255,255,.4); border-color: rgba(255,255,255,.85); border-radius: 12px; color: #466657; }
.review-entry:hover { background: rgba(255,255,255,.8); text-decoration: none; }
.topbar { background: transparent; border: 0; min-height: 58px; }
.local-chip { padding: 7px 11px; border: 1px solid rgba(255,255,255,.75); border-radius: 20px; background: rgba(255,255,255,.37); color: #507562; }
.breadcrumb { color: #668375; }
.page-footer { background: transparent; border-color: rgba(255,255,255,.64); color: #5d7a6b; }
/* Frosted surfaces */
.panel, .overview-card, .chart-panel, .research-table-wrap, .knowledge-card,
.suggestion-grid>button, .research-timeline article, .about-grid article {
  border: 1px solid var(--glass-border);
  background: linear-gradient(125deg, rgba(255,255,255,.75), rgba(255,255,255,.46));
  box-shadow: var(--glass-shadow);
  -webkit-backdrop-filter: blur(18px) saturate(130%); backdrop-filter: blur(18px) saturate(130%);
  border-radius: 20px;
}
.overview-card { padding: 24px; border-radius: 22px; position: relative; overflow: hidden; transition: transform .22s, background .22s, box-shadow .22s; }
.overview-card::after { content: ''; position: absolute; right: -22px; top: -36px; width: 115px; height: 115px; border-radius: 50%; border: 1px solid rgba(255,255,255,.64); background: linear-gradient(140deg, rgba(255,255,255,.35), transparent); pointer-events: none; }
.overview-card:nth-child(2) { background: linear-gradient(125deg, rgba(244,255,225,.74), rgba(215,240,209,.38)); border-color: rgba(255,255,255,.87); }
.overview-card:nth-child(3) { background: linear-gradient(125deg, rgba(255,253,237,.76), rgba(247,239,210,.41)); border-color: rgba(255,255,255,.9); }
.overview-label { display: flex; align-items: center; gap: 10px; color: #5b7666; }
.overview-label::before { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: rgba(255,255,255,.56); border: 1px solid rgba(255,255,255,.9); color: #3b785b; font-size: 11px; font-weight: 750; }
.overview-card:nth-child(1) .overview-label::before { content: '01'; }
.overview-card:nth-child(2) .overview-label::before { content: '02'; }
.overview-card:nth-child(3) .overview-label::before { content: '03'; }
.overview-card strong { color: #204d39; position: relative; z-index: 1; }
.overview-context { color: #58735f; }
.overview-action { color: #2b684a; }
.simple-research-hero h1, .about-hero h1 { color: #1d4b39; }
.simple-research-hero .eyebrow, .about-hero .eyebrow, .hero-copy .eyebrow { width: fit-content; border: 1px solid rgba(255,255,255,.8); background: rgba(255,255,255,.38); padding: 6px 11px; border-radius: 20px; color: #3a7155; }
.simple-research-hero p { color: #57735f; }
.mint-dot { color: #459c70; }
.simple-research-hero>.button, .about-hero>.button {
  display: inline-flex; align-items: center; border-radius: 14px; padding: 13px 19px;
  background: linear-gradient(130deg, rgba(255,255,255,.86), rgba(224,244,211,.52));
  border: 1px solid rgba(255,255,255,.96); box-shadow: var(--glass-shadow); color: #2a6648;
}
.page-research .research-categories button {
  background: rgba(255,255,255,.45); border-color: rgba(255,255,255,.8); border-radius: 15px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 3px 9px rgba(40,99,69,.03);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
  color: #466951; transition: background .18s, transform .18s, box-shadow .18s;
}
.page-research .research-categories button span { color: #5a8169; }
.page-research .research-categories button[aria-current=true] {
  background: linear-gradient(120deg, rgba(40,115,83,.92), rgba(62,125,86,.86));
  border-color: rgba(237,255,232,.7); color: #fff;
  box-shadow: 0 6px 15px rgba(35,102,72,.13), inset 0 1px 0 rgba(255,255,255,.27);
}
.page-research .research-categories button[aria-current=true] span { color: #d5efbd; }
.simple-result { background: linear-gradient(115deg, rgba(240,255,227,.76), rgba(241,255,239,.38)); border: 1px solid rgba(255,255,255,.9); border-left: 4px solid #83b087; border-radius: 17px; box-shadow: inset 0 1px 0 white; }
.simple-result h3 { color: #225539; }
.simple-result p { color: #46694e; }
/* Charts and long passages retain a brighter reading surface. */
.chart-panel { background: linear-gradient(125deg, rgba(255,255,255,.9), rgba(255,255,255,.74)); border-radius: 22px; }
.chart-direction { background: rgba(211,235,199,.46); border: 1px solid rgba(235,255,222,.9); color: #3b693d; }
.chart-help { border-color: rgba(38,92,63,.1); }
.simple-caution { border: 1px solid rgba(255,255,255,.75); background: rgba(255,248,224,.7); color: #756133; }
.research-table-wrap { background: rgba(255,255,255,.73); }
.research-table-wrap th { background: rgba(224,238,218,.65); color: #46674c; }
.research-table-wrap td { border-color: rgba(39,93,56,.09); }
.research-table-wrap summary { border-radius: 19px; }
.research-table-wrap summary:hover { background: rgba(255,255,255,.35); }
.pill { border: 1px solid rgba(255,255,255,.8); background: rgba(249,255,242,.58); color: #4d704c; }
/* Chat and evaluator controls */
.composer { padding: 23px 26px 16px; background: linear-gradient(120deg, rgba(255,255,255,.85), rgba(255,255,255,.62)); border-radius: 24px; box-shadow: 0 17px 38px rgba(35,91,57,.08), inset 0 1px 0 white; }
.composer:focus-within { border-color: rgba(111,170,125,.72); box-shadow: 0 0 0 4px rgba(130,182,132,.12), 0 15px 38px rgba(35,91,57,.08); }
.composer>textarea { background: transparent; }
.composer>textarea::placeholder { color: #718875; }
.composer-footnote { color: #627e63; border-color: rgba(47,108,61,.13); }
.composer-heading>.small-caps { color: #65826b; }
.research-filters select, .composer-controls select, .input-with-icon input, .assessment-card textarea, .validation-fields select {
  background: rgba(255,255,255,.64); border-color: rgba(111,151,119,.26); border-radius: 11px; color: #3c5e44; box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
select option, select optgroup { background: #f5faf4; color: #264a35; }
.button-primary { background: linear-gradient(130deg, #459772, #216349); border: 1px solid rgba(250,255,236,.75); color: white; border-radius: 12px; box-shadow: 0 5px 13px rgba(37,109,75,.17), inset 0 1px 0 rgba(255,255,255,.3); }
.button-primary:hover { background: linear-gradient(130deg, #368563, #19543d); box-shadow: 0 7px 17px rgba(37,109,75,.22); }
.knowledge-card { background: linear-gradient(145deg, rgba(255,255,255,.58), rgba(220,243,200,.5)); border-radius: 24px; }
.knowledge-card>.small-caps { color: #53794d; }
.knowledge-art>.icon { width: 53px; height: 53px; padding: 11px; color: #f0ffd9; background: linear-gradient(140deg, #75a887, #35704d); border: 1px solid rgba(255,255,255,.88); border-radius: 16px; box-shadow: 0 5px 17px rgba(49,105,61,.19), inset 0 1px 0 rgba(255,255,255,.45); }
.art-ring { border-color: rgba(255,255,255,.95); box-shadow: 0 0 0 1px rgba(62,116,73,.06); }
.art-dot { background: #88b974; }
.knowledge-numbers span, .health-indicator { color: #557747; }
.health-indicator { border-color: rgba(100,145,88,.16); }
.hero-copy>p:not(.eyebrow), .hero-tags>span { color: #5c785f; }
.suggestion-grid>button { background: linear-gradient(135deg, rgba(255,255,255,.68), rgba(255,255,255,.42)); border-radius: 18px; }
.suggestion-grid>button>span:not(.suggestion-icon) { color: #617a5d; }
.suggestion-grid strong { color: #355d3e; }
.suggestion-icon, .icon-box { border: 1px solid rgba(255,255,255,.85); background: rgba(227,243,209,.65); border-radius: 10px; color: #4c7f4a; }
.chat-status-line, .data-note { color: #607d62; }
.chat-answer, .answer-panel, .assessment-card { background: rgba(255,255,255,.83); }
.document-card { border-color: rgba(71,119,73,.14); }
.document-card pre { background: rgba(237,245,230,.72); }
.feedback button { background: rgba(240,248,232,.76); color: #59754a; border-color: rgba(135,167,106,.25); }
.feedback button[aria-pressed=true] { background: #deedcc; color: #345d2d; border-color: #a9c98d; }
/* Dark tinted glass provides a distinct closing section. */
.candidate-progress, .system-panel {
  background: linear-gradient(120deg, rgba(35,92,66,.94), rgba(57,112,76,.9));
  border: 1px solid rgba(255,255,255,.7); border-radius: 25px;
  box-shadow: 0 15px 37px rgba(25,81,48,.12), inset 0 1px 0 rgba(255,255,255,.35);
  -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
}
.candidate-progress h2, .system-panel h2, .system-panel h3 { color: #f5fff1; }
.candidate-progress p, .system-flow p, .system-note { color: #d1e3ce; }
.page-research .candidate-progress .progress-updated { color: #d7e9d0; }
.progress-cell strong { color: #e0f5b9; }
.progress-cell span { color: #d3e3ca; }
.about-grid article { padding: 23px; }
.about-number { display: inline-block; background: rgba(241,255,226,.7); border: 1px solid rgba(255,255,255,.9); border-radius: 8px; padding: 5px 9px; margin-bottom: 9px; color: #4a7540; }
.research-insights article { background: rgba(247,255,239,.66); border: 1px solid rgba(255,255,255,.82); border-radius: 20px; box-shadow: var(--glass-shadow); }
.research-insights article+article { background: rgba(255,252,235,.67); }
@media(hover:hover) {
  .overview-card:hover { transform: translateY(-4px); box-shadow: 0 17px 35px rgba(37,95,62,.11), inset 0 1px 0 white; }
  .page-research .research-categories button:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(37,95,62,.08); }
  .suggestion-grid>button:hover { border-color: rgba(255,255,255,.96); background: rgba(255,255,255,.79); }
}
:where(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid #438d60; outline-offset: 3px; }
@media(max-width:1100px) {
  .workspace-header { width: calc(100% - 32px); padding: 12px 17px; gap: 13px; }
  .workspace-tabs a { padding: 10px 12px; }
  .overview-card { padding: 20px; }
}
@media(max-width:720px) {
  .workspace-header { position: relative; top: 0; margin-top: 12px; width: calc(100% - 24px); border-radius: 21px; padding: 13px 14px 10px; gap: 12px; }
  .workspace-tabs { padding: 3px; border-radius: 13px; }
  .workspace-tabs a { padding: 10px 8px; font-size: 12px; }
  .workspace-brand { gap: 8px; }
  .workspace-sub { letter-spacing: 1.1px; }
  .review-entry { padding: 8px 9px; font-size: 10px; }
  .review-entry span { margin-left: 4px; }
  .local-chip { font-size: 8px; padding: 5px 8px; }
  .orb-mint { width: 440px; height: 440px; right: -205px; top: -105px; }
  .orb-sage { width: 250px; height: 250px; left: -170px; top: 66%; }
  .orb-blue { right: -90px; }
  .panel, .overview-card, .chart-panel, .research-table-wrap, .knowledge-card, .suggestion-grid>button, .research-timeline article, .about-grid article { -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
  .overview-card { padding: 18px 20px; border-radius: 19px; }
  .overview-label::before { width: 26px; height: 26px; border-radius: 8px; }
  .simple-research-hero>.button { display: none; }
  .chart-panel { border-radius: 20px; }
  .composer { padding: 18px 16px 13px; border-radius: 21px; }
  .composer-controls select { font-size: 10px; }
  .candidate-progress, .system-panel { border-radius: 22px; }
  .about-grid article { padding: 20px; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .workspace-header, .panel, .overview-card, .chart-panel, .research-table-wrap, .knowledge-card, .suggestion-grid>button, .research-timeline article, .about-grid article { background: #f5faf4; }
}
@media(prefers-reduced-motion:reduce) {
  .workspace-tabs a, .overview-card, .page-research .research-categories button, .suggestion-grid>button { transition: none; transform: none; }
}
@media(prefers-reduced-transparency:reduce) {
  .workspace-header, .panel, .overview-card, .chart-panel, .research-table-wrap, .knowledge-card, .suggestion-grid>button, .research-timeline article, .about-grid article { background: #f5faf4; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .glass-ambient { opacity: .25; }
}
@media print {
  .glass-ambient { display: none; }
  body, .workspace-header, .panel, .overview-card, .chart-panel, .research-table-wrap { background: white; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .workspace-header { position: static; margin: 0; width: 100%; }
}

.research-workbench, [id]:target { scroll-margin-top: 126px; }
@media(max-width:720px) { .research-workbench, [id]:target { scroll-margin-top: 18px; } }
@media(prefers-reduced-motion:reduce) {
  .overview-card:hover, .page-research .research-categories button:hover, .suggestion-grid>button:hover { transform: none; }
}
@media(prefers-reduced-transparency:reduce) {
  .overview-card:nth-child(n), .composer, .chat-answer, .answer-panel, .assessment-card, .simple-result, .research-insights article { background: #f5faf4; }
}

.answer-next-step{margin-top:20px;padding:17px 19px;border:1px solid #d5e4ca;border-radius:13px;background:rgba(239,249,230,.82);color:#395f3b}
.answer-next-step strong{font-size:14px}.answer-next-step p{font-size:13px;line-height:1.9;margin-top:8px}
.clarification-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.clarification-button{border:1px solid #b9d1aa;background:rgba(255,255,255,.86);border-radius:9px;color:#345f35;padding:9px 12px;font-size:12px}
.clarification-button:hover{background:#e0efcf}.source-note{font-size:12px;color:#6d775b;line-height:1.9;margin:5px 0 16px}
