/* Original editorial visual system. Existing questionnaire grid rules remain intact. */
:root{--app-bg:#faf9f5;--app-surface:#fff;--app-text:#18332d;--app-primary:#0c6657;--app-primary-hover:#084c42;--app-primary-soft:#e8f2ed;--app-border:#d9dfd9;--app-muted:#596b63;--app-accent:#ed674e;--app-radius:10px}
body{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--app-primary);text-underline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #a84327;outline-offset:4px}
.app-topbar{box-shadow:none;border-bottom:1px solid var(--app-border)}
.app-topbar .container-fluid{max-width:1440px;padding-top:12px;padding-bottom:12px;gap:14px}
.navbar-brand{font-size:1.25rem;font-weight:850;letter-spacing:-.04em;line-height:1.3;margin:0}
.brand-stack .beta-brand-label{font-size:.65rem;letter-spacing:0;color:var(--app-muted);margin-top:4px}
.brand-wordmark{display:flex;gap:9px;align-items:center}
.brand-symbol{display:inline-block;position:relative;width:23px;height:23px;background:var(--app-primary);flex:none}
.brand-symbol:after{position:absolute;content:"";height:12px;width:12px;border-radius:100%;background:var(--app-accent);right:-5px;bottom:-4px}
.app-navigation{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.app-navigation .nav-link{font-size:.8rem;font-weight:700;padding:6px 0;color:var(--app-text)}
.app-navigation form{margin:0}
.verification-banner{max-width:1140px;margin:16px auto 0;padding:12px 18px;border-left:4px solid #c35537;background:#fff0e6;display:flex;gap:8px 20px;justify-content:space-between;align-items:center;flex-wrap:wrap;font-size:.86rem}
.verification-banner p{margin:0}
.verification-banner a{font-weight:700;color:#853a22}
.app-main{padding-top:36px;max-width:1240px}
.app-footer{max-width:1240px;font-size:.76rem;padding-top:25px;border-top:1px solid var(--app-border);line-height:1.8}
.page-title{font-weight:800;letter-spacing:-.03em;font-size:clamp(1.8rem,4vw,2.4rem);line-height:1.45}
.panel{box-shadow:none}
.panel-header{padding:20px 22px}.panel-body{padding:22px}
.panel-title{font-size:1.1rem;line-height:1.55}
.btn{min-height:44px;border-radius:4px;padding:10px 16px;line-height:1.45;white-space:normal;font-weight:700}
.btn-sm{min-height:36px;padding:7px 11px}.btn-lg{min-height:54px;padding:15px 22px}
.btn-outline-primary{border-color:var(--app-primary)}
.metric-card{box-shadow:none}.metric-value{font-size:2.5rem;letter-spacing:-.04em}
.editorial-hero{display:grid;grid-template-columns:1.25fr 1fr;border-bottom:1px solid var(--app-text);gap:30px;padding:36px 0 44px;align-items:center}
.editorial-hero-copy{padding:14px 0}.editorial-kicker{font-size:.75rem;font-weight:800;letter-spacing:.08em;display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:28px}
.editorial-kicker span{letter-spacing:0;font-weight:600;color:var(--app-muted)}
.editorial-hero h1{font-size:clamp(2.5rem,4.3vw,4.4rem);font-weight:900;line-height:1.45;letter-spacing:-.065em;margin:0 0 22px;color:var(--app-text);white-space:nowrap}
.editorial-hero h1 span{color:var(--app-primary)}
.editorial-lead{font-size:1.05rem;line-height:1.95;color:var(--app-muted)}
.editorial-actions{display:flex;gap:16px 22px;flex-wrap:wrap;align-items:center;margin-top:28px}.editorial-actions .btn{gap:30px}
.editorial-link{font-size:.85rem;font-weight:700;white-space:nowrap}.hero-footnote{font-size:.76rem;color:var(--app-muted);margin-top:14px;margin-bottom:0}
.editorial-art{position:relative;max-width:430px;margin-left:auto;width:100%;padding:12px 15px;background:#f0efe7}
.editorial-art svg{width:100%;height:auto;display:block}.art-label{display:block;position:absolute;top:22px;right:10px;writing-mode:vertical-rl;font-size:.78rem;font-weight:700;letter-spacing:.13em}
.art-bottom{display:flex;justify-content:space-between;gap:12px;font-size:.65rem;font-weight:800;letter-spacing:.1em;padding:0 15px 6px}
.audience-line{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px 0;border-bottom:1px solid var(--app-border)}
.audience-line p{margin:0;font-size:.9rem;font-weight:750}.audience-tags{display:flex;flex-wrap:wrap;gap:6px}.audience-tags span{padding:3px 10px;border:1px solid #cbd5ce;font-size:.73rem;color:#475c52}
.entry-section,.editorial-steps{margin-top:64px}.editorial-section-heading{margin:0 0 28px}.editorial-index{font-size:.68rem;font-weight:800;letter-spacing:.12em;color:var(--app-primary)}
.editorial-section-heading h2{font-size:clamp(1.8rem,3.3vw,2.4rem);font-weight:800;letter-spacing:-.045em;margin:12px 0;line-height:1.5}
.editorial-section-heading p{margin:0;color:var(--app-muted);font-size:.88rem}.mobile-break{display:none}
.entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entry-card{display:flex;flex-direction:column;min-width:0;background:#fff;padding:24px;border:1px solid var(--app-border);border-top:4px solid var(--app-primary)}
.entry-personal{border-top-color:var(--app-accent)}.entry-team{border-top-color:var(--app-text)}
.entry-topline{display:flex;justify-content:space-between;font-size:.64rem;font-weight:800;letter-spacing:.1em;color:var(--app-muted)}
.entry-figure{font-size:3.75rem;line-height:1.15;font-weight:850;letter-spacing:-.06em;margin:26px 0 14px;color:var(--app-primary)}
.entry-personal .entry-figure{color:#bc482f}.entry-figure span{font-size:.9rem;letter-spacing:0;margin-left:8px;font-weight:700;white-space:nowrap}.entry-range{font-size:clamp(2.4rem,3.5vw,3rem);padding-top:12px}
.entry-card h3{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;margin:0 0 12px}.entry-card p{font-size:.87rem;line-height:1.85;color:var(--app-muted);margin:0}
.entry-features{list-style:none;padding:18px 0 24px;margin:0;font-size:.78rem;line-height:1.8;flex:1}.entry-features li{padding:7px 0;border-bottom:1px solid #edf0eb}.entry-features li::before{content:"＋";margin-right:6px;color:var(--app-primary);font-weight:800}
.entry-card .btn{width:100%;justify-content:space-between;gap:8px;font-size:.86rem}.entry-sub-link,.entry-card .entry-sub-note{font-size:.72rem;margin-top:12px;text-align:center;display:block;line-height:1.7;min-height:2.4em}
.step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--app-text);border-bottom:1px solid var(--app-border)}
.step-grid article{padding:26px 30px 28px 0}.step-grid article+article{padding-left:30px;border-left:1px solid var(--app-border)}
.large-step-number{font-size:2.5rem;font-weight:850;letter-spacing:-.04em;color:var(--app-primary);line-height:1.2}.step-grid h3{font-size:1.05rem;font-weight:800;margin:15px 0 8px}.step-grid p{font-size:.86rem;line-height:1.9;color:var(--app-muted);margin:0}
.editorial-notice{margin-top:42px;padding:24px;background:#eeeee6;display:grid;grid-template-columns:150px 1fr;gap:12px 24px}.editorial-notice strong{font-size:.9rem}.editorial-notice p{font-size:.8rem;color:#4d6056;line-height:1.85;margin:0}.editorial-notice a{grid-column:2;font-size:.8rem;font-weight:700}
.history-filters{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 22px}.history-filter{padding:8px 14px;font-size:.8rem;min-height:40px;border:1px solid var(--app-border);text-decoration:none;color:var(--app-primary);background:#fff;border-radius:4px;font-weight:700}
.history-filter[aria-current="true"]{color:white;background:var(--app-primary);border-color:var(--app-primary)}
.history-chart{display:grid;grid-template-columns:30px minmax(0,1fr);gap:4px}.chart-scale{height:250px;display:flex;flex-direction:column;justify-content:space-between;padding:30px 0;color:var(--app-muted);font-size:.68rem;text-align:right}.chart-scale span:first-child{position:relative}.chart-scale span:first-child:after{content:"%";margin-left:2px}
.history-chart .trend-chart-wrap{min-height:250px;height:250px;padding:0;overflow:visible}.history-chart .trend-chart{height:250px;min-height:250px;width:100%;display:block;overflow:visible}
.trend-chart .chart-line{fill:none;stroke-width:2;opacity:.8}.trend-chart .chart-line.reaction{stroke-dasharray:6 4}.trend-chart .chart-line.support{stroke-dasharray:2 4;stroke:#465a71}.trend-chart .chart-dot.support{stroke:#465a71;fill:#465a71}
.trend-chart .chart-grid line{stroke:#c9d3cc;stroke-width:1;stroke-dasharray:3 4}.chart-point{cursor:pointer}.chart-point:focus{outline:none}.chart-point:focus .chart-dot{stroke:#fff;stroke-width:3;filter:drop-shadow(0 0 2px #17312b)}.chart-point:hover .chart-dot{stroke:#fff;stroke-width:2}
.chart-legend{font-size:.77rem;gap:9px 20px}.chart-legend .legend-shape{width:auto;height:auto;background:none;border-radius:0;font-style:normal;line-height:1;font-size:1rem}.chart-legend .workload{color:#176b5b}.chart-legend .reaction{color:#bb4c2b}.chart-legend .support{color:#465a71}
.chart-dates{display:flex;justify-content:space-between;gap:12px;font-size:.68rem;color:var(--app-muted);padding:0 5%}.chart-selected{border-left:3px solid var(--app-primary);padding:9px 12px;font-size:.8rem;background:#f1f5ef;margin:18px 0 0;min-height:3.1em;line-height:1.8}
.chart-explanation{font-size:.8rem;color:var(--app-muted);margin:16px 0 0!important;line-height:1.8}.chart-sampling-note{font-size:.75rem;color:var(--app-muted);margin-top:10px}.comparison-card{border-radius:4px;background:var(--app-bg)}.comparison-card p{font-size:.82rem}.comparison-card .change-badge{border-radius:4px;margin-top:4px}.comparison-card strong{font-size:.9rem}
.history-number-table{margin-top:22px;border-top:1px solid var(--app-border);padding-top:16px}.history-number-table summary{font-size:.85rem;font-weight:700;cursor:pointer;margin-bottom:12px}.history-data-table{width:100%;font-size:.8rem;border-collapse:collapse;table-layout:fixed}.history-data-table caption{caption-side:top;font-size:.75rem;color:var(--app-muted)}.history-data-table th,.history-data-table td{padding:12px 8px;border-bottom:1px solid var(--app-border);vertical-align:middle;text-align:right}.history-data-table th:first-child,.history-data-table td:first-child{text-align:left;width:35%}.history-data-table thead th{font-size:.72rem;background:#f2f5ee}.history-data-table a{font-weight:650;display:inline-block}.history-data-table time span{display:block;color:var(--app-muted);font-size:.65rem}.history-pagination{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;padding:18px;border-top:1px solid var(--app-border);font-size:.8rem}.history-privacy-note{font-size:.8rem;line-height:1.8;color:var(--app-muted)}
@media(min-width:1400px){.editorial-hero h1{font-size:4.4rem}}
@media(max-width:1000px){.editorial-hero{grid-template-columns:1.1fr .85fr;gap:14px}.editorial-hero h1{font-size:clamp(2.5rem,4.8vw,3.5rem)}.entry-card{padding:20px}.entry-range{font-size:2.5rem}.entry-figure span{font-size:.72rem}.app-navigation{gap:10px}.account-label{display:none}}
@media(max-width:760px){.app-main{padding:22px 18px 40px}.app-topbar .container-fluid{padding-top:10px;padding-bottom:10px}.navbar-brand{font-size:1.08rem}.brand-stack .beta-brand-label{font-size:.57rem}.brand-symbol{width:17px;height:17px}.brand-symbol:after{height:9px;width:9px;right:-3px;bottom:-3px}.app-navigation{gap:9px}.app-navigation .nav-link{font-size:.73rem}.app-navigation .btn-sm{font-size:.7rem;padding:6px 8px}.app-navigation .secondary-nav{display:none}.verification-banner{margin:12px 18px 0}.editorial-hero{grid-template-columns:1fr;padding:18px 0 28px;gap:26px}.editorial-hero-copy{padding:0}.editorial-kicker{font-size:.64rem;gap:7px 14px;margin-bottom:20px}.editorial-kicker span{font-size:.68rem}.editorial-hero h1{font-size:clamp(2.45rem,8.8vw,3.8rem);letter-spacing:-.055em;line-height:1.4;margin-bottom:20px}.editorial-lead{font-size:.92rem;line-height:1.9}.editorial-actions{margin-top:24px;gap:16px}.editorial-actions .btn-lg{font-size:.87rem;min-height:50px;padding:13px 19px}.editorial-link{font-size:.76rem}.hero-footnote{font-size:.7rem}.editorial-art{max-width:none;width:100%;padding:4px 12px 8px;overflow:hidden;height:220px}.editorial-art svg{height:235px;width:260px;position:absolute;right:38px;top:-10px}.art-label{left:16px;right:auto;top:20px;font-size:.8rem}.art-bottom{position:absolute;left:12px;right:12px;bottom:6px;font-size:.55rem}.audience-line{align-items:flex-start;flex-direction:column;gap:10px;padding:18px 0}.audience-line p{font-size:.85rem}.audience-tags{gap:5px}.audience-tags span{font-size:.65rem;padding:3px 7px}.entry-section,.editorial-steps{margin-top:42px}.editorial-section-heading h2{font-size:1.9rem;line-height:1.4}.editorial-section-heading p{font-size:.82rem}.entry-grid{grid-template-columns:1fr;gap:16px}.entry-card{padding:22px}.entry-topline{font-size:.66rem}.entry-figure{font-size:3.5rem;margin:20px 0 12px}.entry-range{font-size:3rem;padding-top:0}.entry-figure span{font-size:.84rem}.entry-card p{font-size:.87rem}.entry-card h3{font-size:1.35rem}.entry-features{padding:10px 0 20px}.entry-card .btn{font-size:.87rem}.entry-sub-link,.entry-card .entry-sub-note{min-height:0}.step-grid{grid-template-columns:1fr}.step-grid article,.step-grid article+article{padding:24px 0;display:grid;grid-template-columns:48px 1fr;gap:3px 16px;border-left:0;border-bottom:1px solid var(--app-border)}.step-grid article:last-child{border-bottom:0}.large-step-number{grid-row:1/3}.step-grid h3{margin:0}.step-grid p{grid-column:2;font-size:.84rem}.editorial-notice{grid-template-columns:1fr;padding:20px;gap:10px;margin-top:30px}.editorial-notice a{grid-column:1}.page-actions .btn{font-size:.8rem}.panel-header{padding:18px}.panel-body{padding:18px}.history-filter{padding:7px 10px;font-size:.75rem}.history-chart .trend-chart,.history-chart .trend-chart-wrap,.chart-scale{height:210px;min-height:210px}.chart-scale{padding:24px 0}.chart-legend{font-size:.72rem;gap:8px 14px}.chart-dates{font-size:.61rem}.chart-selected{font-size:.75rem}.history-data-table{font-size:.72rem}.history-data-table th,.history-data-table td{padding:10px 4px}.history-data-table thead th{font-size:.62rem}.history-data-table th:first-child,.history-data-table td:first-child{width:31%}.history-summary{line-height:1.65}.app-footer{padding-left:18px;padding-right:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* 2026-09-26: official questionnaire, calm result badges, support links, provider pages */
.tendency-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:3px 11px;font-size:.8rem;font-weight:700;border:1px solid transparent;line-height:1.6}
.tendency-badge:before{content:"";width:8px;height:8px;border-radius:2px;background:currentColor;flex:none}
.tendency-high{background:#f7eee4;color:#7a4a1c;border-color:#e3cdb4}
.tendency-high:before{border-radius:0;transform:rotate(45deg)}
.tendency-mid{background:#f4f2e6;color:#5f5a24;border-color:#dedab8}
.tendency-mid:before{border-radius:100%}
.tendency-low{background:#e8f2ed;color:#185e50;border-color:#c9e0d6}
.question-lead{margin:18px 0 8px;font-weight:700;color:var(--app-muted);font-size:.92rem}
@media (min-width:769px){.question-options.has-not-applicable>div,.question-options.has-not-applicable ul{grid-template-columns:repeat(5,minmax(110px,1fr))}}
.notice-warning{border-color:#e3cdb4;background:#fbf6ef;color:#5b3a17}
.support-resources{border:1px solid var(--app-border);background:var(--app-surface);border-radius:var(--app-radius);padding:20px 22px;margin-bottom:24px}
.support-resources-emphasis{border-color:#c9b08f;background:#fcf8f2}
.support-list{list-style:none;padding:0;margin:0 0 10px;display:grid;gap:8px}
.support-list li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.support-list a{font-weight:700}
.support-list span{color:var(--app-muted);font-size:.88rem}
.score-chip.legacy{background:#f1f1ee;color:#5e5e57}
.consent-panel{border-left:4px solid var(--app-primary)}
.provider-table td,.provider-table th{vertical-align:middle}
.status-dot{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700}
.status-dot:before{content:"";width:9px;height:9px;border-radius:100%;background:currentColor}
.status-active{color:#185e50}.status-ended{color:#6b6b63}.status-pending{color:#7a4a1c}
.code-display{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.1rem;letter-spacing:.08em;background:#f0efe7;padding:6px 12px;border-radius:4px;display:inline-block}
.status-dot{white-space:nowrap}
@media (max-width:768px){
  .provider-table thead{display:none}
  .provider-table,.provider-table tbody,.provider-table tr,.provider-table td{display:block;width:100%}
  .provider-table tr{border-bottom:1px solid var(--app-border);padding:14px 16px}
  .provider-table tr:last-child{border-bottom:0}
  .provider-table td{border:0;padding:3px 0}
  .provider-table td[data-label]:before{content:attr(data-label);display:block;font-size:.72rem;font-weight:700;color:var(--app-muted);letter-spacing:.02em}
  .provider-table td[data-label="操作"]{padding-top:10px}
  .provider-table td[data-label="操作"]:before{display:none}
}
