*{box-sizing:border-box} :root{--brown:#36231b;--cream:#fff8ec;--orange:#a63e15;--line:#dac5ab;--muted:#6b5545}body{margin:0;background:#f0e3d1;color:var(--brown);font-family:system-ui,-apple-system,"Yu Gothic",sans-serif;line-height:1.7}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #005f82;outline-offset:4px}header{max-width:920px;margin:auto;padding:24px;display:flex;gap:16px;justify-content:space-between;align-items:center}header a{font:900 28px/1 Georgia,serif;letter-spacing:.07em;text-decoration:none;color:var(--brown)}header a span{display:block;font:8px/1.4 system-ui;letter-spacing:.1em;margin-top:8px}.badge,.tag{font-size:12px;font-weight:700;border:1px solid var(--line);border-radius:99px;padding:5px 10px}.badge{max-width:150px}main{max-width:760px;margin:10px auto;padding:0 20px}footer{max-width:760px;margin:32px auto;padding:0 24px 40px;color:var(--muted);font-size:12px}.panel{background:var(--cream);border:1px solid var(--line);border-radius:24px;padding:clamp(22px,5vw,44px);box-shadow:0 12px 40px #36231b0a}.kicker{color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.13em}h1{font-size:clamp(29px,6vw,46px);line-height:1.35;letter-spacing:-.03em;margin:18px 0}h2{font-size:21px;line-height:1.5;margin:20px 0 12px}h3{font-size:17px}p{margin:10px 0}.intro{color:var(--muted);font-size:15px}.art{height:112px;display:flex;align-items:center;gap:18px;margin:24px 0}.glass{border:3px solid var(--brown);height:86px;width:64px;border-radius:8px 8px 22px 22px;transform:rotate(-9deg);background:linear-gradient(to top,#cf7336 0 65%,#f7dfb5 65% 82%,transparent 82%);box-shadow:7px 7px 0 #e6d3b9}.art p{font:italic 22px Georgia,serif}.primary,.secondary{border-radius:12px;min-height:48px;padding:13px 20px;font-weight:700}.primary{background:var(--orange);color:#fff;border:2px solid var(--orange)}.secondary{background:transparent;color:var(--brown);border:1px solid #9b8066}.wide{width:100%}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.actions>*{flex:1}.note{padding:12px 14px;border-left:3px solid #b85b24;background:#f5e9d8;font-size:13px;color:#5c4030}.progress-line{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}progress{width:100%;height:8px;accent-color:var(--orange);display:block;margin:10px 0 24px}.question-title{font-size:clamp(23px,5vw,31px)}fieldset{border:0;padding:0;margin:24px 0}legend{font-size:13px;color:var(--muted);margin-bottom:12px}.option{display:flex;align-items:center;gap:12px;border:1px solid #bba387;border-radius:12px;padding:16px;margin:12px 0;min-height:60px;cursor:pointer;background:#fffdf8}.option:has(input:checked){border:2px solid var(--orange);padding:15px;background:#fbe7d3}.option input{width:20px;height:20px;accent-color:var(--orange);flex-shrink:0}.result-top{border-bottom:1px solid var(--line);padding-bottom:22px}.result-top h1{color:var(--orange)}.switch{display:flex;gap:10px;align-items:center;padding:14px 0;cursor:pointer;font-size:14px}.switch input{width:22px;height:22px;accent-color:var(--orange)}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.stat-number{display:flex;flex-direction:column;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7ecda}.stat-number:last-child{grid-column:1/-1}.stat-number span{font-size:14px;font-weight:700}.stat-number strong{font-size:42px;line-height:1.25;letter-spacing:-.03em;color:var(--orange);font-variant-numeric:tabular-nums}.stat-number small{font-size:18px;margin-left:4px}.project-name{font-size:17px;font-weight:800;color:var(--orange);margin-top:20px}.drink-card{padding:16px;border-radius:14px;background:#f5e9d8}.drink-card h2{margin-top:0;font-size:18px}.food{list-style:none;padding:0}.food li{padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}.food li:first-child{font-weight:800}.evidence{font-size:14px;padding-left:22px}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.preview-grid button{min-height:44px;border:1px solid #9b8066;background:var(--cream);border-radius:8px;font-size:12px;color:var(--brown)}summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:bold}.tag{display:inline-block;background:#ead7ba}.fine{font-size:12px;color:var(--muted)}h1:focus,h2:focus{outline:none}.review-list{display:grid;gap:12px}.review-item{padding:14px;background:#f5e9d8;border-radius:10px}.review-item button{margin-top:8px;min-height:44px} @media(max-width:380px){header{padding:18px;gap:10px}.badge{font-size:10px}main{padding:0 12px}.panel{padding:22px 18px}.actions{flex-direction:column}.preview-grid{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:no-preference){.panel{animation:arrive .2s ease-out}@keyframes arrive{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}}
.stat-number details{font-size:12px;font-weight:400;min-width:0}.stat-number summary{font-size:12px}.stat-number strong{white-space:nowrap}.axis-detail{overflow-wrap:anywhere}.axis-detail ul{padding-left:18px}.audit-list{padding-left:22px}.audit-list li{margin-bottom:18px}.math-table{width:100%;border-collapse:collapse;font-size:13px}.math-table th,.math-table td{border-bottom:1px solid var(--line);padding:8px;text-align:left}.reason-section{margin:24px 0}.stat-number{min-width:0}

.type-design,.personal-compare,.rationale{margin:24px 0}.rationale-axes{padding-left:22px}.rationale-axes>li{margin:18px 0}.rationale-axes ul,.type-design ul,.tie-modes{padding-left:20px}.rationale{overflow-wrap:anywhere}.delta,.gap-text{font-size:14px}.tie-modes li{margin:12px 0;font-weight:700}

.food-reason{font-size:14px;font-weight:400}.food-name,.drink-name{font-weight:700;overflow-wrap:anywhere}.menu-note,.low-meat-note{font-size:13px;padding:12px;background:#f5e9d8;border-left:3px solid var(--orange)}

/* v6: Japanese mobile typography; colors and content unchanged */
body{line-break:strict;word-break:normal;overflow-wrap:break-word}
h1,h2,h3,.food-name,.drink-name,.result-mode{line-break:strict;word-break:normal;overflow-wrap:break-word;text-wrap:balance}
p,.option span,.food-reason,.axis-detail{line-break:strict;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
.result-top h1{line-height:1.45;letter-spacing:0;margin:16px 0 10px}
.result-mode{font-size:20px;line-height:1.65;font-weight:700;margin:0 0 18px}
.result-kind{display:block;font-size:13px;font-weight:500;margin-top:6px}
.food li{padding:22px 0}
.food-name{display:block;font-size:17px;line-height:1.75}
.food-finish{display:block;font-size:15px;font-weight:500;line-height:1.8;margin-top:4px}
.food-reason{font-size:15px;line-height:1.9;margin-top:10px}
.drink-reason{line-height:1.9}
.axis-explanations{margin:12px 0 26px}
.axis-explanations>details{border-bottom:1px solid var(--line);padding:6px 0}
.axis-explanations summary{font-size:15px;line-height:1.7;padding:14px 0}
.axis-detail{font-size:15px;line-height:1.9;padding:0 2px 14px}
.axis-detail p{margin:12px 0}
.axis-detail li{margin:10px 0}
.option span{line-height:1.8}
.primary,.secondary{line-height:1.6;text-wrap:balance}
.tie-type,.tie-mode{display:block}
.tie-mode{font-weight:500;margin-top:4px;line-height:1.8}
@media(max-width:480px){
 main{padding:0 12px}
 .panel{padding:26px 20px}
 .intro br,main>section>p br{display:none}
 p{line-height:1.85}
 .actions{flex-direction:column;gap:12px}
 .actions button{width:100%;min-height:52px}
 .stats{gap:10px}
 .stat-number{padding:16px 14px}
 .question-title{line-height:1.6;letter-spacing:0}
 .option{padding:16px 14px}
 .option:has(input:checked){padding:15px 13px}
 .fine{line-height:1.85}
}
