:root{--bg:#0a141f;--bg2:#0f1f33;--gold:#d6b15c;--gold2:#b38b3a;--ink:#f7f3ea;--muted:#d8d3c9;--card:#0c1725;--card2:#0e1b2c;--line:#1b2e44;--shadow:0 10px 30px rgba(0,0,0,.35);--radius:16px}
*{box-sizing:border-box}html,body{font-family:ui-sans-serif,system-ui,-apple-system,"Hiragino Sans","Yu Gothic","Noto Sans JP",sans-serif;background:linear-gradient(180deg,var(--bg),var(--bg2));color:var(--ink);line-height:1.75;-webkit-font-smoothing:antialiased;touch-action:manipulation}
body{font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;background:linear-gradient(180deg,var(--bg),var(--bg2));color:var(--ink);line-height:1.7}
.container{max-width:1040px;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-left)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-right))}
.card{background:linear-gradient(180deg,var(--card),var(--card2));border:1px solid color-mix(in oklab,var(--line) 80%, transparent);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.card::after{content:"";position:absolute;inset:0;border-radius:calc(var(--radius) + 1px);pointer-events:none;background:linear-gradient(145deg,rgba(214,177,92,.15),transparent 35%,rgba(179,139,58,.08) 70%,transparent)}
@supports (backdrop-filter: blur(6px)){.card{backdrop-filter: blur(5px);background:linear-gradient(180deg,rgba(12,23,37,.85),rgba(14,27,44,.85))}}
.title{font-size:clamp(20px,2.6vw,30px);letter-spacing:.02em;margin:0 0 10px;font-weight:700}
.row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 14px}
@media(max-width:1024px){.row{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.row{grid-template-columns:1fr}}
label>small{display:block;color:var(--muted);opacity:.9;margin-top:4px;font-size:.88rem}
select,input,textarea{width:100%;background:#0b1a2b;border:1px solid var(--line);color:var(--ink);border-radius:12px;height:46px;padding:0 14px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
textarea{height:auto;min-height:108px;padding:12px 14px}
select:focus,input:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(214,177,92,.25)}
::placeholder{color:#a8b3c1;opacity:.7}
textarea{height:auto;min-height:96px;padding:10px}
.btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(180deg,var(--gold),var(--gold2));color:#0a1a2a;border:0;border-radius:999px;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 6px 16px rgba(214,177,92,.25);transition:transform .06s ease, box-shadow .2s ease}
.btn:hover{box-shadow:0 10px 22px rgba(214,177,92,.32)}
.btn:active{transform:translateY(1px)}
.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--ink);box-shadow:none}
.btn-ghost:hover{border-color:color-mix(in oklab,var(--gold) 40%, var(--line))}
.q-list{list-style:none;padding:0;margin:14px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;counter-reset:q;}
.q-list li{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;background:#0b1a2b;border:1px solid var(--line);box-shadow:inset 0 -1px 0 rgba(255,255,255,.02)}
.chart{display:grid;gap:8px}
.bar{display:grid;grid-template-columns:120px 1fr 64px;gap:10px;align-items:center}
.fill{height:14px;background:linear-gradient(90deg,rgba(214,177,92,.35),rgba(214,177,92,1));border-radius:10px;width:0%;transition: width .35s cubic-bezier(.2,.8,.2,1);box-shadow:0 1px 0 rgba(0,0,0,.2), inset 0 0 10px rgba(214,177,92,.25)}
.muted{opacity:.85;font-size:.9rem;color:var(--muted)}
details summary{cursor:pointer}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:760px){.two{grid-template-columns:1fr}.title{font-size:clamp(20px,5vw,28px)}}
.q-list li::before{counter-increment:q;content: counter(q) ".";color:#d8d3c9;opacity:.9;margin-right:2px;font-variant-numeric:tabular-nums}
.q-list label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}
.q-list input[type=checkbox]{width:22px;height:22px;flex:0 0 auto;accent-color:var(--gold);margin-top:2px}
@media(max-width:760px){.q-list{grid-template-columns:1fr}}
.q-list li::before{counter-increment:q;content: counter(q) ".";color:#d8d3c9;opacity:.9;margin-right:2px;font-variant-numeric:tabular-nums}
.q-list label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}
.q-list input[type=checkbox]{appearance:none;-webkit-appearance:none; width:22px;height:22px;flex:0 0 auto;border-radius:6px;border:1.5px solid color-mix(in oklab,var(--line) 70%, transparent);background:linear-gradient(180deg,#0c1624,#0e1b2c);box-shadow:inset 0 1px 0 rgba(255,255,255,.03);position:relative;margin-top:2px}
.q-list input[type=checkbox]:checked{border-color:var(--gold);background:linear-gradient(180deg,rgba(214,177,92,.15),rgba(214,177,92,.35))}
.q-list input[type=checkbox]:checked::after{content:"";position:absolute;inset:0;mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="white" d="M20.285 6.708a1 1 0 0 1 0 1.414l-9.9 9.9a1 1 0 0 1-1.414 0l-5.257-5.257a1 1 0 1 1 1.414-1.414l4.55 4.55 9.193-9.193a1 1 0 0 1 1.414 0z"/></svg>') center / 16px 16px no-repeat;background:linear-gradient(180deg,var(--gold),var(--gold2))}
.q-list input[type=checkbox]:focus-visible{outline:2px solid rgba(214,177,92,.55);outline-offset:2px}
.bar .v{display:inline-block;min-width:54px;text-align:right;padding:.2rem .4rem;border-radius:999px;background:rgba(214,177,92,.12);border:1px solid rgba(214,177,92,.35)}
#adv .ad-card{background:#0b1a2b;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:8px 0;box-shadow:inset 0 -1px 0 rgba(255,255,255,.03)}
#adv .ad-card b{color:var(--gold)}
section + section{margin-top:18px}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto} .fill{transition:none} .btn{transition:none}}
