/* Operate surface: original questionnaire, inherited Editorial en papel world. */
.journey{--paper:#FAF7EF;--ink:#103077;--accent:#FFAD66;--blue:#124BD2;background:var(--blue);color:var(--paper);min-block-size:100svh;font-size:1.2rem}
.journey [hidden]{display:none!important}.journey button,.journey input,.journey textarea,.journey select{font:inherit}.journey button{cursor:pointer;touch-action:manipulation}.journey button:disabled{cursor:wait;opacity:.65}.journey-header{max-inline-size:1300px;margin:auto;padding:28px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.journey-header img{inline-size:min(48vw,280px);block-size:auto}.journey-header a:last-child{min-block-size:48px;display:flex;align-items:center}.journey-header a:focus-visible,.journey-footer :focus-visible{outline-color:var(--paper)}.demo-notice{text-align:center;background:var(--ink);padding:12px 24px;font-size:1rem;max-inline-size:none}.journey-layout{max-inline-size:1240px;margin:48px auto;display:grid;grid-template-columns:1fr minmax(0,680px);gap:64px;padding:0 36px;align-items:start}.journey-aside{padding-block:32px;position:sticky;top:32px}.journey-aside h2{font-size:clamp(2.8rem,4.2vw,4.5rem);line-height:1.06}.journey-aside>p{margin-block-start:24px}.chapter-map{padding:0;list-style:none;counter-reset:chapter;margin-block:40px;display:grid;gap:0}.chapter-map li{counter-increment:chapter;display:flex;gap:18px;align-items:center;padding-block:12px}.chapter-map li::before{content:counter(chapter);display:grid;place-items:center;inline-size:40px;block-size:40px;border:1px solid currentColor;border-radius:50%;font-variant-numeric:tabular-nums;flex-shrink:0}.chapter-map [aria-current=step]::before{background:var(--accent);color:var(--ink);border-color:var(--accent)}.chapter-map [aria-current=step]{font-weight:700}.aside-note{font-size:1rem}.journey-paper{color:var(--ink);background:var(--paper);padding:40px;box-shadow:0 18px 48px rgb(8 30 82 / .25);min-inline-size:0;position:relative}.journey-paper::before{content:"";position:absolute;inline-size:76px;block-size:16px;inset-block-start:-16px;inset-inline-end:32px;background:var(--accent)}.journey h1{font-size:clamp(2rem,3vw,3.2rem);line-height:1.15;overflow-wrap:anywhere;margin-block:16px 24px}.journey h2{overflow-wrap:anywhere}.journey #screen>p{margin-block:16px}.journey .intro-title{font-size:clamp(2.8rem,4vw,4rem)}.journey .intro-title em{color:var(--blue)}.intro-paths{padding:0;border:0;margin:28px 0;min-inline-size:0}.intro-paths legend{font-weight:700;padding:0;margin-block-end:8px}.intro-paths strong{font-weight:700}.journey .button{border-radius:999px;min-block-size:56px;font-size:1.15rem;line-height:1.3}.journey .quiet{border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:5px;padding:12px;min-block-size:48px}.journey .quiet:hover{text-decoration-thickness:3px}#journey-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;border-block-start:1px solid var(--ink);padding-block-start:22px;margin-block-start:28px}#next{margin-inline-start:auto}.memory-note{font-size:.95rem;margin-block-start:24px}.journey-footer{max-inline-size:1240px;padding:0 36px 32px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:1rem}.journey progress{inline-size:100%;block-size:8px;appearance:none;border:0;background:#D7DFEE;color:var(--blue)}.journey progress::-webkit-progress-bar{background:#D7DFEE}.journey progress::-webkit-progress-value{background:var(--blue)}.journey progress::-moz-progress-bar{background:var(--blue)}#progress-label{font-size:1rem;font-variant-numeric:tabular-nums;margin-block-end:12px}.question-form fieldset{border:0;margin:0;padding:0;min-inline-size:0}.question-help{font-size:1rem;margin-block-end:18px!important}.option{display:flex;align-items:flex-start;gap:14px;border:1px solid #7183A8;padding:16px;margin-block:12px;min-block-size:64px;border-radius:12px;cursor:pointer;line-height:1.45;background:#FFFDF7}.option:hover{border-color:var(--blue)}.option:has(input:checked){background:#FFF0DC;border:2px solid var(--ink);padding:15px}.option input{flex-shrink:0;inline-size:24px;block-size:24px;margin:2px 0;accent-color:var(--blue)}.option:focus-within{outline:3px solid var(--blue);outline-offset:3px}.journey textarea,.journey input[type=text],.journey input[type=tel],.journey input[type=password],.journey input[type=date],.journey select{display:block;width:100%;min-block-size:56px;padding:14px;border:1px solid var(--ink);border-radius:8px;color:var(--ink);background:#FFFDF7;font-size:1.15rem;margin-block:10px 20px;caret-color:var(--blue)}.journey textarea{resize:vertical;min-block-size:144px}.journey textarea::placeholder{color:#52658A}.journey label{overflow-wrap:anywhere}#feedback{color:#8B220C;font-weight:600;margin-block:16px}.chapter-card{padding-block:32px}.chapter-card h1{font-size:clamp(2.7rem,4vw,4rem)}.chapter-card .chapter-mark{overflow-wrap:anywhere;line-height:1.15;font-family:var(--display);font-size:4rem;color:var(--blue);border-block-end:1px solid var(--ink);padding-block-end:12px;display:block}.review-item{padding-block:20px;border-block-start:1px solid #7183A8}.review-item h2{font-family:var(--body);font-size:1.2rem;font-weight:700;line-height:1.4}.review-item p{white-space:pre-wrap;overflow-wrap:anywhere;margin-block:10px}.review-item button{font-size:1rem}.journey .privacy-note{background:#FFF0DC;padding:20px;margin-block:24px}.journey .screen-enter{animation:paper-in 220ms cubic-bezier(.16,1,.3,1)}@keyframes paper-in{from{transform:translateY(10px)}to{transform:translateY(0)}}.journey.no-motion .screen-enter{animation:none}.survey-cta{padding-block:48px;border-block-end:1px solid var(--ink)}.survey-cta p{margin-block:20px}.admin-layout{max-inline-size:1000px;display:block}.admin-layout .journey-paper{min-block-size:400px}.admin-filters{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-tools{display:flex;gap:20px;flex-wrap:wrap}.admin-record{padding-block:24px;border-block-start:1px solid var(--ink)}.admin-record h2{font-size:1.8rem}.admin-record pre{font-family:var(--body);white-space:pre-wrap;overflow-wrap:anywhere;font-size:1.1rem}.admin-record p{font-size:1rem;margin-block:12px}
@media(max-width:800px){.journey-header{padding:18px 24px}.journey-layout{display:block;padding:0 20px;margin-block:30px}.journey-aside{display:none}.journey-paper{padding:28px 22px}.journey h1{font-size:2rem}.journey .intro-title{font-size:2.8rem}.journey-footer{padding:0 24px 24px;flex-wrap:wrap}.option{padding:16px 12px}.option:has(input:checked){padding:15px 11px}.admin-filters{grid-template-columns:1fr}.demo-notice{font-size:.95rem}.journey-layout{max-inline-size:680px}}
@media(max-width:360px){.chapter-card .chapter-mark{font-size:clamp(2rem,10vw,2.25rem)}.journey-layout{padding-inline:12px}.journey-paper{padding-inline:18px}#journey-controls{gap:4px}.journey .quiet{padding-inline:8px}}
@media(prefers-reduced-motion:reduce){.journey .screen-enter{animation:none}.journey *{scroll-behavior:auto!important}}
@media(forced-colors:active){.journey,.journey-paper,.demo-notice{background:Canvas;color:CanvasText}.journey-paper{box-shadow:none;border:1px solid CanvasText}.journey-paper::before{display:none}.option:has(input:checked){outline:2px solid Highlight}.journey .button,.option{border:1px solid ButtonText}.journey .chapter-mark{color:CanvasText}.journey-header img{forced-color-adjust:none;background:#124BD2}.journey :focus-visible{outline-color:Highlight}.journey progress{forced-color-adjust:auto}}


/* Progressive chapter arrivals; ordinary question transitions remain still. */
.chapter-route{display:block;inline-size:100%;max-inline-size:440px;block-size:auto;margin-block:20px 8px;color:var(--blue);overflow:visible}
.chapter-route-ahead{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-dasharray:3 6}
.chapter-route-travel{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.chapter-route-start{fill:currentColor}
.chapter-route-future{fill:var(--paper);stroke:var(--ink);stroke-width:1.5}
.chapter-route-destination{fill:var(--accent);stroke:var(--ink);stroke-width:2;transform-box:fill-box;transform-origin:center}
@media(prefers-reduced-motion:no-preference){
  .chapter-route-arrival .chapter-route-travel{animation:chapter-route-draw 1.2s cubic-bezier(.16,1,.3,1) both}
  .chapter-route-arrival .chapter-route-destination{animation:chapter-route-arrive .4s .8s cubic-bezier(.16,1,.3,1) both}
}
@keyframes chapter-route-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes chapter-route-arrive{from{transform:scale(.55)}to{transform:scale(1)}}
@media(forced-colors:active){.chapter-route{color:CanvasText}.chapter-route-ahead,.chapter-route-future,.chapter-route-destination{stroke:CanvasText}.chapter-route-future{fill:Canvas}.chapter-route-destination{fill:Highlight}}

.chapter-route-completed{fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round}

/* Private analysis extends the existing Operate surface; no public-site rules. */
.admin-layout{max-inline-size:1240px}
.admin-layout .admin-filters{grid-template-columns:2fr 1fr 1fr}
.admin-layout .admin-hint{font-size:1rem;margin-block:12px 20px}
.admin-layout h2{font-size:1.65rem;line-height:1.25;margin-block:0 20px}
.admin-layout #count{margin-block:24px;font-size:1rem}
.admin-summary,.admin-analysis,.admin-reading{border-block-start:1px solid var(--ink);padding-block:28px}
.admin-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0}
.admin-facts dt{font-size:1rem}.admin-facts dd{margin:8px 0 0;font-size:1.45rem;font-variant-numeric:tabular-nums}
.admin-analysis{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.admin-path{margin-block:20px}.admin-path p{display:flex;justify-content:space-between;gap:16px;font-size:1rem}
.admin-path meter{display:block;inline-size:100%;block-size:20px;accent-color:var(--blue)}
.admin-path meter::-webkit-meter-optimum-value{background:var(--blue)}
.admin-path meter::-moz-meter-bar{background:var(--blue)}
.admin-layout table{border-collapse:collapse;inline-size:100%;font-size:1rem;font-variant-numeric:tabular-nums}
.admin-layout caption{text-align:start;margin-block-end:12px}
.admin-layout th,.admin-layout td{text-align:start;padding:12px 4px;border-block-end:1px solid #7183A8}
.admin-layout th:last-child,.admin-layout td:last-child{text-align:end}
.admin-reading p{font-size:1rem;margin-block:12px;max-inline-size:72ch}
.admin-record summary{cursor:pointer;min-block-size:48px;font-weight:600;overflow-wrap:anywhere}
.admin-record strong,.admin-record p{overflow-wrap:anywhere;white-space:pre-wrap}
.admin-record summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.admin-layout [aria-busy=true]{cursor:progress}
@media(max-width:800px){.admin-layout .admin-filters,.admin-facts,.admin-analysis{grid-template-columns:1fr}.admin-analysis{gap:32px}.admin-facts{gap:16px}.admin-layout .admin-tools{gap:8px}}
@media(forced-colors:active){.admin-path meter{forced-color-adjust:auto}.admin-record summary:focus-visible{outline-color:Highlight}}

/* Local answer analytics: inherited cobalt/paper, no production layout changes. */
.local-analytics #answer-analysis{margin-block:48px}
.local-analytics .analytics-coverage{margin-block:24px;padding:16px 20px;background:var(--soft);font-weight:600}
.local-analytics .analytics-nav{display:flex;flex-wrap:wrap;gap:8px 24px;border-block:1px solid var(--ink);padding-block:12px}
.local-analytics .analytics-nav a{display:flex;align-items:center;min-block-size:44px;font-size:1rem;text-underline-offset:.25em}
.local-analytics .analytics-group{margin-block-start:40px;scroll-margin-block-start:24px}
.local-analytics .analytics-group h3{font-family:var(--display);font-size:2rem;margin-block-end:24px}
.local-analytics .analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 40px}
.local-analytics .analytics-chart{min-inline-size:0;border-block-start:1px solid var(--ink);padding-block-start:20px}
.local-analytics .analytics-chart h4{font-family:var(--body);font-weight:600;font-size:1.15rem;line-height:1.45;margin:0 0 12px}
.local-analytics .analytics-chart .admin-hint{margin-block:12px 20px}
.local-analytics .analytics-bar{margin-block:16px}
.local-analytics .analytics-bar p{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:1rem;line-height:1.45;margin:0 0 6px}
.local-analytics .analytics-bar span{overflow-wrap:anywhere}
.local-analytics .analytics-bar strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.95rem}
.local-analytics .analytics-bar meter{display:block;inline-size:100%;block-size:12px;accent-color:var(--hero)}
.local-analytics .analytics-bar meter::-webkit-meter-bar{background:var(--soft);border:0;border-radius:0}
.local-analytics .analytics-bar meter::-webkit-meter-optimum-value{background:var(--hero)}
.local-analytics .analytics-bar meter::-moz-meter-bar{background:var(--hero)}
.local-analytics .analytics-text ul{list-style:none;padding:0 20px;margin:0;max-block-size:480px;overflow:auto;overscroll-behavior:contain}
.local-analytics .analytics-text li{padding-block:16px;border-block-start:1px solid var(--ink);overflow-wrap:anywhere}
.local-analytics .analytics-text small{font-size:.85rem;font-variant-numeric:tabular-nums}
.local-analytics .analytics-text li p{padding:0;margin-block-start:8px;font-size:1.05rem;white-space:pre-wrap}
@media(max-width:760px){.local-analytics .analytics-grid{grid-template-columns:minmax(0,1fr);gap:28px}.local-analytics .analytics-nav{gap:4px 16px}.local-analytics .analytics-group h3{font-size:1.7rem}}
@media(forced-colors:active){.local-analytics .analytics-bar meter{appearance:auto}.local-analytics .analytics-bar meter::-webkit-meter-optimum-value{background:Highlight}.local-analytics .analytics-bar meter::-webkit-meter-bar{background:Canvas;border:1px solid CanvasText}.local-analytics .analytics-bar meter::-moz-meter-bar{background:Highlight}}

/* Keep the approved logo intact; wrap the local admin link on narrow phones. */
@media(max-width:360px){.local-analytics .journey-header{flex-wrap:wrap;row-gap:4px}}
.start-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.5;cursor:pointer}
.start-consent input{flex-shrink:0;inline-size:24px;block-size:24px;margin:0;accent-color:var(--blue)}
.start-consent input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
