*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}body{font-family:Hiragino Mincho ProN,Yu Mincho,"Noto Serif JP",serif;background:#17110c;color:#f4e8d0;overflow-x:hidden}button{font-family:inherit}#first-load{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 42%,#2a1e12 0,#1d140c 55%,#140e08 100%);opacity:1;transition:opacity .4s ease}html.uk-revisit #first-load{display:none}#first-load.uk-fl-hide{opacity:0;pointer-events:none}#first-load.uk-fl-gone{display:none}.uk-fl-inner{text-align:center}.uk-fl-book{position:relative;width:128px;height:88px;margin:0 auto 26px;perspective:480px}.uk-fl-page{position:absolute;top:6px;width:62px;height:78px;background:linear-gradient(160deg,#f7ecd4,#eeddb8 60%,#d9c290);border:1.5px solid #b8923f;box-shadow:0 4px 14px rgba(0,0,0,.45)}.uk-fl-page-left{left:1px;border-radius:8px 2px 2px 8px;transform:rotateY(9deg);transform-origin:right center}.uk-fl-page-right{right:1px;transform:rotateY(-9deg)}.uk-fl-page-flip,.uk-fl-page-right{border-radius:2px 8px 8px 2px;transform-origin:left center}.uk-fl-page-flip{left:50%;margin-left:-1px;width:62px;animation:uk-fl-flip 1.8s ease-in-out infinite;background:linear-gradient(160deg,#fff6e0,#f2e3c0 60%,#e0ca9c)}@keyframes uk-fl-flip{0%{transform:rotateY(-6deg)}55%,70%{transform:rotateY(-174deg)}to{transform:rotateY(-174deg)}}.uk-fl-text{color:#e8d5a8;font-size:15px;letter-spacing:.18em}.uk-fl-dots{margin-top:14px}.uk-fl-dots span{display:inline-block;width:7px;height:7px;margin:0 5px;border-radius:50%;background:#b8923f;animation:uk-fl-dot 1.4s ease-in-out infinite}.uk-fl-dots span:nth-child(2){animation-delay:.2s}.uk-fl-dots span:nth-child(3){animation-delay:.4s}@keyframes uk-fl-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.uk-fl-page-flip{animation:none;transform:rotateY(-90deg)}.uk-fl-dots span{animation:none}}.book-section{background:#17110c;color:#f4e8d0;padding:96px 20px 120px}.book-section-inner{max-width:1080px;margin:0 auto}.book-section-eyebrow{font-size:12px;letter-spacing:.42em;color:#b8923f;text-align:center;margin-bottom:14px}.book-section-title{font-size:clamp(26px,4.4vw,40px);letter-spacing:.18em;text-align:center;font-weight:600;margin-bottom:10px}.book-section-lede{max-width:560px;margin:0 auto 56px;text-align:center;line-height:2.1;font-size:14px;color:#d8c8a4}.zukan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:18px;gap:18px}@media (max-width:480px){.zukan-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.zukan-card{--ward-color:#b8923f;position:relative;display:block;padding:0;overflow:hidden;background:radial-gradient(circle at 50% 36%,#fff6e0 0,#e5d0a4 100%);border:2.5px solid var(--ward-color);border-radius:12px;color:#f4e8d0;cursor:pointer;text-align:center;box-shadow:0 4px 14px rgba(0,0,0,.45)}.zukan-card:focus-visible{outline:3px solid var(--ward-color);outline-offset:3px}.zukan-card-no{position:absolute;top:8px;left:8px;z-index:2;padding:4px 10px;border-radius:999px;border:1.5px solid rgba(232,197,107,.85);background:radial-gradient(circle at 50% 28%,#4a3418 0,#17110c 100%);color:#f0d693;font-size:10px;letter-spacing:.14em;box-shadow:0 2px 6px rgba(0,0,0,.4)}.zukan-card-img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;display:block}html.uk-js .zukan-card-img.is-loaded{animation:zukan-img-fade .3s ease}@keyframes zukan-img-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){html.uk-js .zukan-card-img.is-loaded{animation:none}}.zukan-card-placeholder{display:block}.zukan-card-shine{position:absolute;top:-20%;bottom:-20%;left:0;width:45%;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(255,244,214,0),rgba(255,244,214,.45) 50%,rgba(255,244,214,0));transform:translateX(-140%) skewX(-18deg)}@keyframes zukanShine{0%{transform:translateX(-140%) skewX(-18deg)}to{transform:translateX(240%) skewX(-18deg)}}.zukan-card.is-shine .zukan-card-shine{animation:zukanShine .9s ease .15s both}.zukan-card-plate{position:absolute;inset:auto 0 0 0;z-index:1;display:flex;flex-direction:column;gap:4px;align-items:center;padding:36px 10px 12px;background:linear-gradient(180deg,rgba(23,17,12,0),rgba(23,17,12,.62) 45%,rgba(23,17,12,.88));pointer-events:none}.zukan-card-name{font-size:15px;letter-spacing:.14em;font-weight:600;color:#f4e0a8;text-shadow:0 1px 4px rgba(0,0,0,.6)}.zukan-card-catch{display:none;font-size:11px;line-height:1.6;color:#f4e8d0}@media (hover:hover){.zukan-card{transition:transform .25s ease,box-shadow .25s ease}.zukan-card:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.55),0 0 20px -2px var(--ward-color)}.zukan-card:hover .zukan-card-shine{animation:zukanShine .9s ease}.zukan-card-catch{display:block;max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease}.zukan-card:focus-visible .zukan-card-catch,.zukan-card:hover .zukan-card-catch{max-height:4.8em;opacity:1}}.ward-detail{--ward-color:#b8923f;display:grid;grid-template-columns:minmax(200px,300px) 1fr;grid-gap:28px;gap:28px;background:linear-gradient(180deg,#f7ecd4,#eeddb8);border:3px solid #b8923f;border-radius:14px;padding:28px;color:#4a3418;text-align:left}.ward-detail-portrait .zukan-card-placeholder,.ward-detail-portrait img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:10px;border:2px solid var(--ward-color);box-shadow:0 8px 22px rgba(0,0,0,.28);background:radial-gradient(circle at 50% 36%,#fff6e0 0,#e5d0a4 100%)}.ward-detail-group{display:inline-block;font-size:11px;letter-spacing:.2em;padding:3px 12px;border:1px solid var(--ward-color);border-radius:999px;color:#7a5c2e;margin-bottom:10px}.ward-detail-name{font-size:clamp(24px,3.6vw,34px);letter-spacing:.16em;margin-bottom:8px}.ward-detail-catch{line-height:1.9;font-size:14px;color:#6a4f26;margin-bottom:12px}.ward-detail-radar{display:flex;justify-content:center;margin:4px 0 8px}.ward-detail-evidence-title{font-size:13px;letter-spacing:.24em;color:#7a5c2e;border-bottom:1px solid rgba(184,146,63,.5);padding-bottom:6px;margin-bottom:8px}.ward-detail-evidence{width:100%;border-collapse:collapse;font-size:13px}.ward-detail-evidence td,.ward-detail-evidence th{padding:7px 8px;border-bottom:1px dashed rgba(184,146,63,.4);vertical-align:top}.ward-detail-evidence th{text-align:left;white-space:nowrap;font-weight:600;letter-spacing:.08em}.evidence-metric{color:#6a4f26}.evidence-score,.evidence-value{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.evidence-score{text-align:right;color:#7a5c2e}.ward-detail-sources{margin-top:12px;font-size:11px;line-height:1.8;color:#8a6c3c}.stat-bar{padding:12px 0;border-bottom:1px dashed rgba(184,146,63,.4)}.stat-bar-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-bottom:8px}.stat-bar-label{font-weight:600;letter-spacing:.08em;font-size:14px;white-space:nowrap}.stat-bar-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:14px;color:#6a4f26}.stat-bar-rank{margin-left:auto;font-size:12px;color:#7a5c2e;white-space:nowrap}.stat-bar-track{position:relative;height:8px;border-radius:999px;background:rgba(184,146,63,.18);overflow:hidden}.stat-bar-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,var(--ward-color,#b8923f),#e8c56b)}.stat-bar-mean{position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;background:rgba(74,52,24,.55)}.stat-bar-note{margin-top:6px;font-size:11px;color:#8a6c3c}.stat-section-caption{font-size:11px;color:#8a6c3c;margin:6px 0 0}.fellow-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:12px;gap:12px;margin-top:12px}.fellow-card{display:block;text-decoration:none;text-align:center;padding:8px;background:linear-gradient(180deg,#f7ecd4,#eeddb8);border:2px solid #b8923f;border-radius:8px;color:#4a3418;font-size:13px;letter-spacing:.1em}.fellow-card img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:4px;margin-bottom:6px}.ward-page-back{display:inline-block;color:#b8923f;text-decoration:none;letter-spacing:.14em;font-size:13px;margin-bottom:20px}.diagnosis{max-width:560px;margin:0 auto;text-align:center}.diagnosis-progress{margin-bottom:30px}.diagnosis-progress-count{display:block;font-size:13px;letter-spacing:.3em;color:#b8923f;margin-bottom:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.diagnosis-progress-track{display:block;height:4px;border-radius:999px;background:rgba(184,146,63,.25);overflow:hidden}.diagnosis-progress-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#b8923f,#e8c56b);transition:width .35s ease}.diagnosis-question{font-size:clamp(20px,3.4vw,28px);letter-spacing:.12em;line-height:1.7;margin-bottom:34px;min-height:2.4em}.diagnosis-options{display:flex;flex-direction:column;gap:14px}.diagnosis-option{background:linear-gradient(180deg,#f7ecd4,#eeddb8);border:2px solid #b8923f;border-radius:12px;color:#4a3418;font-size:16px;letter-spacing:.08em;line-height:1.6;padding:16px 22px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 12px rgba(0,0,0,.4)}.diagnosis-option:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(0,0,0,.5)}.diagnosis-option:focus-visible{outline:3px solid #e8c56b;outline-offset:3px}.result{max-width:760px;margin:0 auto}.result-lede{font-size:clamp(18px,3vw,24px);letter-spacing:.2em;margin-bottom:26px}.result-hero,.result-lede{text-align:center;color:#f4e8d0}.result-hero{--ward-color:#b8923f;width:min(820px,100%);margin:30px auto 0}.result-og-image{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;border:3px solid var(--ward-color);border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.42)}.result-character-line{margin-top:15px;font-size:clamp(14px,2.4vw,18px);line-height:1.8;letter-spacing:.1em}.result-card{--ward-color:#b8923f;width:min(420px,100%);margin:26px auto 0;padding:clamp(18px,5vw,26px);border:3px solid var(--ward-color);border-radius:18px;background:linear-gradient(180deg,#f7ecd4,#eeddb8);color:#4a3418;text-align:center;box-shadow:0 18px 50px rgba(0,0,0,.42)}.result-card-image{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;border:2px solid var(--ward-color);border-radius:12px;box-shadow:0 10px 24px rgba(0,0,0,.25)}.result-card-name{margin-top:10px;font-size:clamp(22px,6vw,28px);font-weight:700;letter-spacing:.08em}.result-card-percent{margin-top:4px;line-height:1.1}.result-card-percent span{display:block;font-size:12px;letter-spacing:.24em;color:#8a6c3c}.result-card-percent strong{font-size:clamp(44px,13vw,60px);font-weight:800;color:var(--ward-color)}.result-card-type{margin-top:8px;font-size:clamp(15px,4vw,18px);font-weight:700;letter-spacing:.06em}.result-card-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;padding:0;list-style:none}.result-card-badges li{padding:5px 12px;border:1.5px solid var(--ward-color);border-radius:999px;font-size:12px;font-weight:700;color:#4a3418;background:rgba(255,255,255,.55)}.result-primary-action{display:flex;flex-direction:column;align-items:center;gap:10px;margin:24px auto 0;text-align:center}.result-primary-action p{color:#d8c8a4;font-size:13px;letter-spacing:.1em}.result-x-share{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:min(340px,100%);padding:15px 24px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:#050505;color:#fff;font-size:16px;font-weight:700;letter-spacing:.08em;text-decoration:none;box-shadow:0 10px 28px rgba(0,0,0,.38);transition:transform .2s ease,box-shadow .2s ease}.result-x-share:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.5)}.result-x-share:focus-visible{outline:3px solid #e8c56b;outline-offset:3px}.result-card-share{margin-top:16px;min-width:0;width:100%}.result-share-bar{position:fixed;inset:auto 0 0 0;display:flex;justify-content:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(5,5,5,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:40}.result-share-bar-button{min-width:min(340px,100%);padding:12px 24px;box-shadow:none;border-color:rgba(255,255,255,.35)}.has-share-bar{padding-bottom:110px}.result-section{width:min(760px,100%);margin:52px auto 0;padding:clamp(22px,4vw,36px);border:2px solid rgba(184,146,63,.8);border-radius:14px;background:linear-gradient(180deg,#f7ecd4,#eeddb8);color:#4a3418;text-align:left;box-shadow:0 14px 34px rgba(0,0,0,.22)}.result-section-kicker{margin-bottom:7px;color:#8a6c3c;font-size:10px;letter-spacing:.28em}.result-section h2{font-size:clamp(20px,3.2vw,28px);line-height:1.5;letter-spacing:.1em}.result-ai-badge{display:inline-block;margin-top:10px;padding:3px 10px;border:1px solid rgba(122,92,46,.45);border-radius:999px;color:#7a5c2e;font-size:10px;letter-spacing:.08em}.result-rationale{margin-top:18px;font-size:15px;line-height:2.1}.result-status .ward-detail-radar{margin:18px 0 12px}.result-type-description{margin-top:12px;font-size:15px;line-height:2}.result-type-section .ward-detail-radar{margin:18px 0 6px;display:flex;justify-content:center}.result-radar-legend{display:flex;justify-content:center;gap:22px;font-size:12px;color:#7a5c2e}.result-legend-ward:before,.result-legend-you:before{content:"";display:inline-block;width:22px;height:0;margin-right:6px;vertical-align:middle;border-top:3px solid var(--ward-color,#b8923f)}.result-legend-you:before{border-top:3px dashed #4a3418}.result-axis-compare-list{list-style:none;margin:20px 0 4px;padding:0;display:grid;grid-gap:16px;gap:16px}.result-axis-compare{padding:10px 12px 8px;border-radius:10px}.result-axis-compare.is-matched{background:rgba(184,146,63,.14);outline:1px solid rgba(184,146,63,.5)}.result-axis-name{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.1em}.result-axis-match-badge{padding:2px 10px;border-radius:999px;background:#b8923f;color:#fffbf0;font-size:10px;letter-spacing:.1em}.result-axis-track{position:relative;height:8px;margin:10px 4px 4px;border-radius:999px;background:rgba(122,92,46,.18)}.result-axis-marker{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%)}.result-axis-marker.is-ward{background:var(--ward-color,#b8923f);border:2px solid #fffbf0;box-shadow:0 1px 4px rgba(0,0,0,.3)}.result-axis-marker.is-you{background:#fffbf0;border:2.5px dashed #4a3418}.result-axis-ends{display:flex;justify-content:space-between;margin-top:2px;font-size:10px;color:#8a6c3c}.result-town-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:14px;gap:14px;margin-top:18px}.result-town-card{display:grid;grid-gap:4px;gap:4px;padding:16px 18px;border:1.5px solid rgba(184,146,63,.6);border-radius:12px;background:rgba(255,251,240,.65)}.result-town-card-label{font-size:12px;color:#7a5c2e;letter-spacing:.08em}.result-town-card-value{font-size:24px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.result-town-card-rank{justify-self:start;padding:2px 10px;border-radius:999px;background:var(--ward-color,#b8923f);color:#fffbf0;font-size:11px;letter-spacing:.1em}.result-town-card-note{font-size:11px;color:#8a6c3c}.result-town-policy{margin-top:22px;padding:16px 18px;border-left:4px solid var(--ward-color,#b8923f);background:rgba(255,251,240,.5);border-radius:0 10px 10px 0}.result-town-policy-kicker{font-size:11px;color:#8a6c3c;letter-spacing:.12em}.result-town-policy-title{margin-top:6px;font-size:16px;font-weight:700;line-height:1.6}.result-town-policy-summary{margin-top:6px;font-size:13px;line-height:1.9}.result-town-policy-source{display:inline-block;margin-top:8px;color:#7a5c2e;font-size:12px}.result-town-more{display:flex;justify-content:flex-end;margin-top:18px}.result-town-more .result-town-more-link{position:static}.result-stat-list{margin-top:8px}.result-ranking-title{text-align:center;font-size:13px;letter-spacing:.32em;color:#b8923f;margin:52px 0 20px}.result-ranking{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px;max-width:960px;margin:0 auto}.result-ranking li{overflow:hidden;border:2px solid var(--ward-color,#b8923f);border-radius:12px;background:#f7ecd4;color:#4a3418;box-shadow:0 10px 24px rgba(0,0,0,.24)}.result-ranking img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover}.result-rank-link{display:block;color:inherit;text-decoration:none}.result-rank-link:focus-visible img,.result-rank-link:hover img{opacity:.88}.result-rank-copy{display:grid;grid-template-columns:1fr auto;grid-gap:5px 8px;gap:5px 8px;align-items:baseline;padding:13px 14px 15px}.result-rank{color:#b8923f;font-size:13px;letter-spacing:.12em;white-space:nowrap}.result-rank-name{grid-column:1/-1;font-size:17px;letter-spacing:.12em;font-weight:600}.result-rank-group{font-size:12px;color:#a08a5c}.result-rank-score{grid-column:2;grid-row:1;font-size:13px;color:#7a5c2e;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.result-status{position:relative}.result-status-detail-link{position:absolute;top:clamp(18px,3.4vw,30px);right:clamp(18px,3.4vw,30px);padding:7px 16px;border:1px solid rgba(122,92,46,.55);border-radius:999px;color:#7a5c2e;font-size:12px;letter-spacing:.12em;text-decoration:none;white-space:nowrap;background:rgba(255,251,240,.6);transition:background .2s ease,color .2s ease}.result-status-detail-link:focus-visible,.result-status-detail-link:hover{background:#7a5c2e;color:#f7ecd4}.diagnosis-start{display:flex;justify-content:center}.diagnosis-start-button{min-width:260px;font-size:17px;letter-spacing:.2em}.result-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin-top:30px}.result-share-link{display:inline-block;text-decoration:none;min-width:240px;text-align:center}.result-retry{background:none;border:none;color:#b8923f;font-size:13px;letter-spacing:.16em;cursor:pointer;text-decoration:underline;text-underline-offset:4px;padding:8px}.result-retry:focus-visible{outline:3px solid #e8c56b;outline-offset:2px}.result-share-card{display:flex;justify-content:center;margin-top:34px}.share-card{--ward-color:#b8923f;width:min(520px,100%);background:linear-gradient(180deg,#f7ecd4,#eeddb8);border:3px solid var(--ward-color);border-radius:14px;padding:20px 24px;color:#4a3418;text-align:center}.share-card-eyebrow{font-size:11px;letter-spacing:.34em;color:#7a5c2e;margin-bottom:12px}.share-card-main{display:flex;align-items:center;justify-content:center;gap:18px}.share-card-main img{width:130px;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:8px;border:2px solid var(--ward-color)}.share-card-name{font-size:22px;letter-spacing:.14em;margin-bottom:4px}.share-card-group{font-size:12px;color:#7a5c2e;margin-bottom:4px}.share-card-tag{margin-top:10px;font-size:12px;color:#8a6c3c;letter-spacing:.08em}.ward-modal{position:fixed;inset:0;z-index:50;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,rgba(23,17,12,.5) 0,rgba(12,8,3,.82) 100%);display:flex;align-items:center;justify-content:center;padding:20px;animation:wardModalBackdropIn .35s ease both}@keyframes wardModalBackdropIn{0%{opacity:0}to{opacity:1}}.ward-modal-closing{animation:wardModalBackdropOut .4s ease .55s both}@keyframes wardModalBackdropOut{0%{opacity:1}to{opacity:0}}.ward-modal-particles{position:absolute;inset:0;pointer-events:none}.ward-modal-particle{position:absolute;bottom:-20px;border-radius:50%;background:radial-gradient(circle,#fff4d6 0,#e8c56b 55%,rgba(232,197,107,0) 100%);animation:wardModalFloat 8s linear infinite;opacity:0}@keyframes wardModalFloat{0%{transform:translateY(20px);opacity:0}15%{opacity:.8}85%{opacity:.5}to{transform:translateY(-105vh);opacity:0}}.ward-modal-book{position:relative;width:min(1180px,94vw);max-height:92vh;display:flex;perspective:2400px;transform-style:preserve-3d;animation:wardModalBookIn .3s ease-out both}@keyframes wardModalBookIn{0%{opacity:0;transform:scale(.92) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.ward-modal-closing .ward-modal-book{animation:wardModalBookOut .35s ease-in .55s both}@keyframes wardModalBookOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(14px)}}.ward-modal-card{position:relative;width:100%;max-height:92vh;display:flex;flex-direction:column;background:linear-gradient(180deg,#f7ecd4,#eeddb8);border:3px solid #b8923f;border-radius:20px;box-shadow:0 30px 70px rgba(0,0,0,.55),0 0 0 1px rgba(184,146,63,.25);animation:wardModalReveal .6s ease-out .5s both}@keyframes wardModalReveal{0%{filter:brightness(.68) saturate(.85)}to{filter:brightness(1) saturate(1)}}.ward-modal-cover{position:absolute;inset:0;z-index:6;transform-origin:left center;transform-style:preserve-3d;pointer-events:none;animation:wardModalCoverOpen .7s cubic-bezier(.65,0,.35,1) .35s both}@keyframes wardModalCoverOpen{0%{transform:rotateY(0deg);opacity:1}80%{opacity:1}to{transform:rotateY(-108deg);opacity:0}}.ward-modal-closing .ward-modal-cover{animation:wardModalCoverClose .55s cubic-bezier(.55,0,.55,.2) both}@keyframes wardModalCoverClose{0%{transform:rotateY(-108deg);opacity:0}25%{opacity:1}to{transform:rotateY(0deg);opacity:1}}.ward-modal-cover-back,.ward-modal-cover-front{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:20px;border:3px solid #b8923f;overflow:hidden}.ward-modal-cover-front{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background-image:url(/book-cover.webp),radial-gradient(ellipse at 50% 30%,#7a5a2e 0,#4a3418 55%,#33230e 100%);background-size:cover;background-position:50%;box-shadow:inset 0 0 0 1px rgba(232,197,107,.35),inset 0 0 70px rgba(0,0,0,.55),0 24px 60px rgba(0,0,0,.5)}.ward-modal-cover-front:before{content:"";position:absolute;inset:16px;border:2px solid rgba(212,176,96,.6);border-radius:12px;pointer-events:none}.ward-modal-cover-eyebrow{margin:0 0 8px;color:rgba(232,197,107,.8);font-size:13px;letter-spacing:.5em}.ward-modal-cover-title{margin:0;color:#e8c56b;font-size:clamp(22px,3vw,34px);letter-spacing:.3em;text-shadow:0 2px 10px rgba(0,0,0,.6)}.ward-modal-cover-rule{width:130px;height:2px;margin:20px 0;background:linear-gradient(90deg,transparent,#d4b060,transparent)}.ward-modal-cover-ward{margin:0;color:#f4e0a8;font-size:clamp(34px,5vw,56px);font-weight:600;letter-spacing:.12em;text-shadow:0 3px 14px rgba(0,0,0,.65)}.ward-modal-cover-no{margin:12px 0 0;color:rgba(232,197,107,.75);font-size:15px;letter-spacing:.4em}.ward-modal-cover-back{transform:rotateY(180deg);background:linear-gradient(180deg,#f3e6c8,#e6d2a6);box-shadow:inset 0 0 40px rgba(122,90,46,.25)}.ward-modal-flash{position:absolute;inset:-8%;z-index:5;pointer-events:none;border-radius:24px;background:radial-gradient(ellipse at 42% 50%,rgba(255,236,180,.9) 0,rgba(255,220,130,.35) 40%,rgba(255,220,130,0) 72%);opacity:0;animation:wardModalFlash .7s ease-out .8s both}@keyframes wardModalFlash{0%{opacity:0;transform:scale(.7)}35%{opacity:.95}to{opacity:0;transform:scale(1.15)}}.ward-modal-closing .ward-modal-flash{animation:none;opacity:0}.ward-modal-card:before{content:"";position:absolute;inset:7px;border:1px solid rgba(184,146,63,.5);border-radius:14px;pointer-events:none}.ward-modal-corner{position:absolute;width:32px;height:32px;pointer-events:none}.ward-modal-corner-tl{top:-3px;left:-3px;border-top:3px solid #b8923f;border-left:3px solid #b8923f;border-top-left-radius:20px}.ward-modal-corner-tr{top:-3px;right:-3px;border-top:3px solid #b8923f;border-right:3px solid #b8923f;border-top-right-radius:20px}.ward-modal-corner-bl{bottom:-3px;left:-3px;border-bottom:3px solid #b8923f;border-left:3px solid #b8923f;border-bottom-left-radius:20px}.ward-modal-corner-br{bottom:-3px;right:-3px;border-bottom:3px solid #b8923f;border-right:3px solid #b8923f;border-bottom-right-radius:20px}.ward-modal-close{position:absolute;top:14px;right:14px;z-index:5;width:44px;height:44px;border-radius:50%;border:2px solid #b8923f;background:rgba(255,248,230,.9);color:#6a4f26;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.ward-modal-close:hover{background:#b8923f;color:#f7ecd4;box-shadow:0 0 16px rgba(184,146,63,.5);transform:rotate(90deg)}.ward-modal-close:focus-visible{outline:3px solid #b8923f;outline-offset:2px}.ward-modal-scroll{min-width:0;overflow-x:hidden;overflow-y:auto;padding:34px 38px 30px}.ward-modal-grid{min-width:0;display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);grid-gap:36px;gap:36px;align-items:stretch}.ward-modal-portrait{position:relative}.ward-modal-portrait-frame{position:relative;border:3px solid #b8923f;border-radius:16px;overflow:hidden;box-shadow:0 0 22px rgba(184,146,63,.25),0 14px 30px rgba(0,0,0,.35);background:radial-gradient(circle at 50% 36%,#fff6e0 0,#e5d0a4 100%);transition:transform .25s ease,box-shadow .25s ease}.ward-modal-portrait:hover .ward-modal-portrait-frame{transform:translateY(-4px);box-shadow:0 0 30px rgba(184,146,63,.35),0 22px 44px rgba(0,0,0,.4)}.ward-modal-portrait-frame img{display:block;width:100%;height:auto}.ward-modal-portrait-frame .zukan-card-placeholder{display:block;width:100%;aspect-ratio:2/3}.ward-modal-shine{position:absolute;top:-20%;bottom:-20%;width:45%;pointer-events:none;background:linear-gradient(90deg,rgba(255,244,214,0),rgba(255,244,214,.3) 50%,rgba(255,244,214,0));animation:wardModalShine 4.6s ease-in-out 1s infinite}@keyframes wardModalShine{0%{transform:translateX(-140%) skewX(-18deg)}55%{transform:translateX(240%) skewX(-18deg)}to{transform:translateX(240%) skewX(-18deg)}}.ward-modal-no{position:absolute;bottom:10px;right:10px;padding:5px 14px;border-radius:8px;border:1px solid rgba(232,197,107,.7);background:rgba(23,17,12,.78);color:#f4e8d0;font-size:14px;letter-spacing:.2em}.ward-modal-header{margin-bottom:22px}.ward-modal-eyebrow{margin:4px 0 6px;color:#b8923f;font-size:14px;letter-spacing:.42em}.ward-modal-name{margin:0 0 10px;color:#4a3418;font-size:clamp(34px,5vw,52px);font-weight:600;letter-spacing:.06em;text-shadow:0 1px 0 rgba(255,255,255,.45)}.ward-modal-catch{margin:0;color:#6a4f26;font-size:19px;letter-spacing:.04em;line-height:1.7}.ward-modal-radar{position:relative;display:flex;justify-content:center;align-items:center;padding:26px 20px;border-radius:14px;border:1px solid rgba(184,146,63,.5);background:radial-gradient(ellipse at 50% 42%,#f6ead0 0,#e6d3a8 78%);box-shadow:inset 0 0 30px rgba(184,146,63,.12);overflow:hidden;animation:wardModalPanel .7s cubic-bezier(.22,1.2,.36,1) .85s both}@keyframes wardModalPanel{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ward-modal-radar-stage{position:relative;width:330px;height:330px;display:flex;align-items:center;justify-content:center}.ward-modal-radar-stage .radar{position:relative;z-index:1}.ward-modal-radar-ring{position:absolute;left:50%;top:50%;width:306px;height:306px;margin:-153px 0 0 -153px;border-radius:50%;border:1px dashed rgba(184,146,63,.3)}.ward-modal-stat-head{margin:30px 0 4px;display:flex;align-items:center;gap:14px;color:#7a5c2e;font-size:17px;font-weight:600;letter-spacing:.3em}.ward-modal-stat-rule{flex:1 1;height:1px;background:linear-gradient(90deg,rgba(184,146,63,.7),rgba(184,146,63,0))}.ward-modal-stat-sub{flex:0 0 auto;font-size:13px;letter-spacing:.18em;color:#b8923f}.ward-modal-stats{display:flex;flex-direction:column;color:#4a3418}.ward-modal-sources{margin:14px 0 24px;color:#8a6c3c;font-size:12.5px;line-height:1.7}.ward-modal-cta-wrap{display:flex;justify-content:center;padding-bottom:6px}.ward-modal-cta{display:inline-flex;align-items:center;gap:12px;padding:15px 38px;border-radius:999px;border:2px solid #b8923f;background:linear-gradient(180deg,#f0d693,#cfa64e);color:#3a2a10;font-size:19px;font-weight:700;letter-spacing:.1em;text-decoration:none;white-space:nowrap;box-shadow:0 4px 14px rgba(184,146,63,.4),0 6px 16px rgba(0,0,0,.2);transition:all .15s ease}.ward-modal-cta:hover{box-shadow:0 8px 26px rgba(184,146,63,.6),0 6px 16px rgba(0,0,0,.2);transform:translateY(-2px)}.ward-modal-cta:focus-visible{outline:3px solid #4a3418;outline-offset:2px}@media (max-width:980px){.ward-modal-grid{grid-template-columns:1fr}.ward-modal-portrait{max-width:360px;margin:0 auto}}@media (max-width:640px){.ward-modal{padding:10px}.ward-modal-book,.ward-modal-card{width:100%;max-height:calc(100dvh - 20px)}.ward-modal-scroll{padding:26px 16px 24px}.ward-modal-grid{gap:24px}.ward-modal-radar{min-width:0;padding:16px 8px}.ward-modal-radar-stage{width:min(330px,100%);height:auto;aspect-ratio:1}.ward-modal-radar-stage .radar{width:min(300px,100%);height:auto}.ward-modal-radar-ring{left:50%;top:50%;width:min(306px,calc(100% - 8px));height:auto;margin:0;aspect-ratio:1;transform:translate(-50%,-50%)}.ward-modal-cta-wrap{width:100%}.ward-modal-cta{width:100%;max-width:360px;justify-content:center;padding:14px 16px;font-size:16px;white-space:normal;text-align:center}}@media (prefers-reduced-motion:reduce){.ward-modal,.ward-modal-book,.ward-modal-card,.ward-modal-cover,.ward-modal-flash,.ward-modal-radar,.ward-modal-shine{animation:none!important}.ward-modal-particle{display:none}.ward-modal-flash{opacity:0}}.ward-modal-static,.ward-modal-static .ward-modal-book,.ward-modal-static .ward-modal-card,.ward-modal-static .ward-modal-radar,.ward-modal-static .ward-modal-shine{animation:none!important}@media (prefers-reduced-motion:reduce){.diagnosis-option,.diagnosis-option:hover,.diagnosis-progress-fill{transition:none;transform:none}}@media (max-width:640px){.ward-detail{grid-template-columns:1fr;padding:20px}.ward-detail-portrait{max-width:240px;margin:0 auto}.result-ranking{grid-template-columns:1fr;max-width:420px}.result-section{padding:22px 18px}.result-status .radar{width:min(240px,100%);height:auto}}@media (prefers-reduced-motion:reduce){.zukan-card,.zukan-card:hover{transition:none;transform:none}.zukan-card-shine{display:none}.zukan-card-catch{transition:none}}@keyframes radarDraw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes radarFade{0%{opacity:0}}@keyframes radarPop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.4)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.radar *{animation:none!important}}.ward-map-frame{position:relative;width:100%;aspect-ratio:4/3;margin:8px 0 20px;border:1px solid rgba(184,146,63,.55);border-radius:8px;background:radial-gradient(ellipse at 50% 40%,rgba(184,146,63,.1),transparent 70%),linear-gradient(180deg,#f7ecd4,#eeddb8);box-shadow:inset 0 0 34px rgba(74,52,24,.14);overflow:hidden}.ward-map-frame canvas,.ward-map2d{display:block}.ward-map2d{width:100%;height:100%}.ward-map-compass{position:absolute;top:10px;right:10px;width:40px;height:40px;overflow:visible;pointer-events:none}.ward-policy-list{list-style:none;margin:8px 0 0;padding:0;counter-reset:policy}.ward-policy-item{counter-increment:policy;padding:12px 14px 12px 44px;position:relative;border-bottom:1px dashed rgba(184,146,63,.4)}.ward-policy-item:before{content:counter(policy,cjk-ideographic);position:absolute;left:10px;top:12px;color:#b8923f;font-weight:700}.ward-policy-item h3{margin:0 0 4px;font-size:15px;color:#4a3418;letter-spacing:.06em}.ward-policy-item p{margin:0 0 6px;font-size:13px;line-height:1.7;color:#6a4f26}.ward-policy-item a{font-size:11px;color:#7a5c2e}.ward-profile-card{display:flex;gap:18px;align-items:center;padding:14px 16px;border:1px solid rgba(184,146,63,.55);border-radius:8px;background:rgba(247,236,212,.6)}.ward-profile-emblem{width:72px;height:72px;filter:sepia(.35) saturate(.8)}.ward-profile-card dl{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0}.ward-profile-card dt{font-size:11px;color:#7a5c2e}.ward-profile-card dd{margin:0;font-size:14px;font-weight:600;color:#4a3418}.ward-page{--ward-color:#b8923f;display:grid;grid-template-columns:minmax(240px,340px) 1fr;grid-gap:28px;gap:28px;align-items:start;background:linear-gradient(180deg,#f7ecd4,#eeddb8);border:3px solid #b8923f;border-radius:14px;padding:28px;color:#4a3418;text-align:left}.ward-page-side{position:-webkit-sticky;position:sticky;top:24px}.ward-page-portrait img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:10px;border:2px solid var(--ward-color);box-shadow:0 8px 22px rgba(0,0,0,.28);background:radial-gradient(circle at 50% 36%,#fff6e0 0,#e5d0a4 100%)}.ward-page-ident{margin-top:14px;text-align:center}.ward-page-ident .ward-detail-name{margin-bottom:6px}.ward-page-ident .ward-detail-catch{margin-bottom:0}.ward-page-main{display:flex;flex-direction:column;gap:18px;min-width:0}.ward-section{background:rgba(255,250,236,.55);border:1px solid rgba(184,146,63,.45);border-radius:10px;padding:16px 18px;box-shadow:0 2px 8px rgba(74,52,24,.06)}.ward-section-title{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.18em;color:#7a5c2e;border-bottom:1px solid rgba(184,146,63,.5);padding-bottom:8px;margin:0 0 12px}.ward-section-icon{flex:0 0 auto;color:var(--ward-color,#b8923f)}.ward-section-badge{margin-left:auto;flex:0 0 auto;font-size:10px;letter-spacing:.08em;padding:2px 10px;border:1px solid rgba(184,146,63,.6);border-radius:999px;color:#8a6c3c;background:rgba(255,250,236,.8);white-space:nowrap}.ward-rationale{margin:0;font-size:14px;line-height:2;color:#5c4522}.ward-section .ward-map-frame{margin-bottom:0}.ward-section .ward-detail-radar{margin-top:0}@media (max-width:900px){.ward-page{grid-template-columns:1fr;padding:20px;gap:20px}.ward-page-side{position:static}.ward-page-portrait{max-width:300px;margin:0 auto}.ward-section{padding:14px}.ward-section-title{flex-wrap:wrap;letter-spacing:.12em}.ward-section-badge{margin-left:0}}