:root{
  --red:#e60012;
  --black:#080808;
  --paper:#f5f1eb;
  --white:#fff;
  --line:#d8d1c8;
  --pad:clamp(18px,4vw,56px);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:"Arial Black","PingFang SC","Microsoft YaHei",system-ui,sans-serif;background:var(--black);color:var(--black)}
body{overflow-x:hidden}
button{font:inherit}
.screen[hidden]{display:none!important}
.screen{min-height:100dvh}
.app{min-height:100dvh;position:relative}
.brand{position:fixed;z-index:40;top:16px;left:18px;background:var(--black);color:#fff;padding:7px 12px;font-size:13px;font-weight:900;letter-spacing:.06em;transform:rotate(-2deg);box-shadow:5px 5px 0 var(--red)}

/* HOME */
.home-screen{background:var(--red);position:relative;overflow:hidden}
.home-screen:before{content:"";position:absolute;inset:-20%;background-image:radial-gradient(#000 0 1.1px,transparent 1.4px);background-size:12px 12px;opacity:.10;transform:rotate(-7deg)}
.home-grid{position:relative;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr)}
.home-copy{padding:clamp(108px,13vh,160px) var(--pad) 76px;background:var(--paper);clip-path:polygon(0 0,100% 0,87% 100%,0 100%);display:flex;flex-direction:column;justify-content:center;min-width:0}
.home-copy h1{margin:0;font-size:clamp(52px,7vw,108px);line-height:.92;letter-spacing:-.07em;font-weight:1000;max-width:900px}
.home-copy h1 span{display:inline-block;background:var(--black);color:#fff;padding:7px 14px 11px;margin-top:8px;transform:rotate(-1deg)}
.main-btn{margin-top:42px;width:min(100%,340px);min-height:66px;border:0;background:var(--red);color:#fff;font-size:20px;font-weight:1000;padding:0 22px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transform:skew(-8deg);box-shadow:9px 9px 0 var(--black)}
.main-btn>*{transform:skew(8deg)}
.main-btn span{font-size:30px}
.home-mark{position:relative;display:grid;place-items:center;color:#fff;overflow:hidden}
.home-mark:before{content:"";position:absolute;width:125%;height:42%;background:#000;transform:rotate(-17deg)}
.burst{position:relative;z-index:2;width:clamp(170px,24vw,340px);aspect-ratio:1;display:grid;place-items:center;background:#fff;color:#000;border-radius:50%;font-size:clamp(120px,18vw,250px);font-weight:1000;line-height:1;box-shadow:18px 18px 0 #000;transform:rotate(7deg)}
.burst:after{content:"";position:absolute;inset:-26px;border:14px solid #000;clip-path:polygon(50% 0,58% 30%,78% 7%,73% 37%,100% 28%,78% 49%,100% 65%,70% 62%,82% 93%,58% 72%,50% 100%,42% 72%,18% 93%,30% 62%,0 65%,22% 49%,0 28%,27% 37%,22% 7%,42% 30%)}

/* QUIZ: content lives in a safe left field; decorative slash never crosses text */
.quiz-screen{background:var(--paper);position:relative;overflow:hidden}
.quiz-screen:before{content:"";position:absolute;z-index:0;top:-10vh;right:-9vw;width:30vw;height:125vh;background:var(--red);transform:skewX(-13deg);transform-origin:top;box-shadow:-18px 0 0 var(--black)}
.quiz-layout{position:relative;z-index:2;min-height:100dvh;padding:74px max(26vw,var(--pad)) 52px var(--pad);display:flex;flex-direction:column}
.quiz-head{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;gap:18px;align-items:center;max-width:880px;width:100%;margin:0 auto}
.quiz-head>span{font-size:48px;line-height:1;font-weight:1000;letter-spacing:-.08em}
.quiz-head>b{font-size:13px;letter-spacing:.08em;background:#000;color:#fff;padding:7px 10px;transform:rotate(1deg);white-space:nowrap}
.progress{height:9px;background:#d8d2ca;transform:skew(-18deg);overflow:hidden}
.progress i{display:block;height:100%;background:var(--red);width:0;transition:width .25s ease}
.question-card{max-width:880px;width:100%;margin:auto;padding:46px 0 24px}
.question-card h2{font-size:clamp(38px,4.8vw,66px);line-height:1.08;letter-spacing:-.045em;margin:0 auto 38px;max-width:860px;text-wrap:balance}
.answers{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;max-width:860px;margin:0 auto}
.answer{appearance:none;border:3px solid #000;background:#fff;min-height:78px;padding:13px 16px;display:flex;align-items:center;gap:14px;text-align:left;font-weight:900;font-size:16px;cursor:pointer;box-shadow:6px 6px 0 #000;transition:transform .12s ease,background .12s ease,color .12s ease;min-width:0}
.answer span:last-child{min-width:0;overflow-wrap:anywhere}
.answer:nth-child(even){transform:rotate(.35deg)}
.answer:nth-child(odd){transform:rotate(-.35deg)}
.answer:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 7px);justify-self:center}
.answer:hover,.answer.selected{background:#000;color:#fff;transform:translate(-2px,-2px) rotate(0)}
.answer-key{flex:0 0 31px;width:31px;height:31px;background:var(--red);color:#fff;display:grid;place-items:center;font-size:12px;clip-path:polygon(50% 0,100% 25%,92% 78%,50% 100%,8% 78%,0 25%)}

/* RESULT */
.result-screen{background:var(--red);position:relative;overflow:hidden;color:#fff}
.result-screen:before{content:"";position:absolute;inset:-20%;background-image:radial-gradient(#000 0 1.1px,transparent 1.5px);background-size:13px 13px;opacity:.12;transform:rotate(8deg)}
.result-layout{position:relative;z-index:2;max-width:1120px;margin:0 auto;padding:90px var(--pad) 58px}
.result-hero{position:relative;background:#fff;color:#000;padding:34px clamp(22px,4vw,48px) 40px;max-width:960px;clip-path:polygon(0 0,100% 0,96% 100%,2% 96%);box-shadow:14px 14px 0 #000}
.result-hero:after{content:"";position:absolute;right:-34px;top:-28px;width:112px;height:28px;background:#000;transform:rotate(10deg)}
.result-kicker{margin:0 0 9px;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:15px;font-weight:900}
.result-hero h2{font-size:clamp(48px,7.4vw,96px);line-height:1.02;letter-spacing:-.055em;margin:0;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}
.result-subtitle{margin:12px 0 0;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:clamp(15px,1.8vw,22px);font-weight:800;line-height:1.45;color:#333;letter-spacing:.02em}
.taste-line{margin:22px 0 0;max-width:780px;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:clamp(17px,2vw,22px);font-weight:800;line-height:1.62}
.result-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:20px;margin-top:38px}
.result-panel{min-width:0;padding:28px 30px;border:3px solid #000}
.result-panel h3{margin:0 0 18px;font-size:18px;letter-spacing:-.02em}
.reason-panel{background:#000;color:#fff;box-shadow:8px 8px 0 #fff}
.reason-panel h3{color:#fff}
.reason-panel ul{list-style:none;margin:0;padding:0}
.reason-panel li{position:relative;padding:14px 0 14px 28px;border-bottom:1px solid #333;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-weight:750;line-height:1.58}
.reason-panel li:before{content:"";position:absolute;left:0;top:22px;width:12px;height:12px;background:var(--red);transform:rotate(45deg)}
.reason-panel li:last-child{border-bottom:0}
.caution-panel{background:#fff;color:#000;box-shadow:8px 8px 0 #000;transform:rotate(.35deg)}
.caution-panel p{margin:0;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:16px;font-weight:750;line-height:1.7}
.more-picks{margin-top:34px}
.section-title{display:inline-block;background:#000;color:#fff;padding:8px 12px;margin-bottom:14px;font-size:14px;font-weight:900;transform:rotate(-1deg)}
.alt-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.alt{background:#fff;color:#000;border:3px solid #000;min-height:92px;padding:18px 20px;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;align-items:start;box-shadow:6px 6px 0 #000}
.alt span{grid-row:1/3;background:var(--red);color:#fff;width:34px;height:34px;display:grid;place-items:center;font-size:13px;font-weight:1000;clip-path:polygon(50% 0,100% 25%,92% 78%,50% 100%,8% 78%,0 25%)}
.alt strong{font-size:20px;line-height:1.2;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}
.alt em{grid-column:2/3;display:block;margin-top:-1px;font-style:normal;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo","PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:#555;font-size:12px;font-weight:800;line-height:1.45}
.alt small{grid-column:2/3}
.alt small{font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:#555;font-weight:700;line-height:1.5}
.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}
.result-actions button,.source-row button{border:3px solid #000;background:#fff;color:#000;min-height:50px;padding:0 18px;font-weight:1000;cursor:pointer;box-shadow:5px 5px 0 #000}
.result-actions .black-btn{background:#000;color:#fff;box-shadow:5px 5px 0 #fff}
.source-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:18px;border-top:3px solid #000;color:#000;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:12px;font-weight:900}
.source-row button{min-height:38px;padding:0 12px;box-shadow:none}

.modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.86);display:none;place-items:center;padding:18px}
.modal.open{display:grid}
.modal-card{width:min(92vw,520px);max-height:94vh;background:#111;padding:12px}
.modal-card img{width:100%;max-height:80vh;object-fit:contain;display:block}
.modal-actions{display:flex;gap:8px;margin-top:10px}
.modal-actions button{flex:1;min-height:46px;border:0;font-weight:900;cursor:pointer}
.toast{position:fixed;z-index:200;left:50%;bottom:28px;transform:translate(-50%,18px);opacity:0;background:#000;color:#fff;padding:11px 16px;font-size:13px;transition:.2s}
.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:1050px){
  .quiz-layout{padding-right:22vw}
  .quiz-screen:before{right:-14vw;width:34vw}
  .question-card h2{font-size:clamp(36px,5.4vw,58px)}
}
@media(max-width:820px){
  .brand{top:12px;left:13px}
  .home-grid{grid-template-columns:1fr;min-height:100dvh}
  .home-copy{clip-path:polygon(0 0,100% 0,100% 88%,0 100%);padding:90px 20px 82px;min-height:67dvh}
  .home-copy h1{font-size:clamp(48px,13.7vw,76px)}
  .main-btn{margin-top:32px}
  .home-mark{min-height:33dvh}
  .burst{width:150px;font-size:110px;box-shadow:10px 10px 0 #000}
  .burst:after{inset:-18px;border-width:9px}

  .quiz-screen:before{right:-82vw;top:-10vh;width:92vw;height:130vh;opacity:.98;box-shadow:-12px 0 0 var(--black)}
  .quiz-layout{padding:72px 18px calc(32px + env(safe-area-inset-bottom))}
  .quiz-head{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;max-width:none}
  .quiz-head>span{font-size:38px}
  .question-card{max-width:none;padding:38px 0 18px}
  .question-card h2{font-size:clamp(31px,8.3vw,46px);margin-bottom:28px;max-width:92%}
  .answers{grid-template-columns:1fr;gap:11px;max-width:none}
  .answer,.answer:last-child:nth-child(odd){grid-column:auto;width:100%;justify-self:stretch}
  .answer{min-height:68px;font-size:15px;box-shadow:5px 5px 0 #000}

  .result-layout{padding:76px 18px calc(44px + env(safe-area-inset-bottom))}
  .result-hero{padding:25px 20px 30px;box-shadow:9px 9px 0 #000}
  .result-hero h2{font-size:clamp(42px,12vw,64px)}
  .taste-line{font-size:16px;margin-top:18px}
  .result-grid{grid-template-columns:1fr;gap:17px;margin-top:28px}
  .result-panel{padding:22px 20px}
  .alt-list{grid-template-columns:1fr}
  .result-actions button{flex:1 1 46%}
  .source-row{align-items:flex-start}
  .source-row span{max-width:70%}
}
@media(max-width:390px){
  .home-copy{padding-left:17px;padding-right:17px}
  .home-copy h1{font-size:46px}
  .main-btn{width:100%}
  .quiz-layout{padding-left:14px;padding-right:14px}
  .question-card h2{font-size:30px}
  .answer{padding:12px 13px}
  .result-layout{padding-left:14px;padding-right:14px}
  .result-hero h2{font-size:40px}
  .result-actions button{flex-basis:100%}
}

/* V4 mobile hardening: no decorative layer may cross the reading column. */
@media(max-width:820px){
  html,body,.app,.screen{width:100%;max-width:100%;overflow-x:hidden}
  .brand{position:absolute;top:10px;left:12px;padding:6px 10px;font-size:12px;box-shadow:4px 4px 0 var(--red)}

  .home-screen{min-height:100svh}
  .home-grid{display:flex;flex-direction:column;min-height:100svh}
  .home-copy{flex:1;min-height:0;clip-path:none;padding:86px 18px 48px;justify-content:center;position:relative;z-index:2}
  .home-copy:after{content:"";position:absolute;right:-24px;bottom:-22px;width:145px;height:72px;background:var(--red);transform:rotate(-13deg);border-top:10px solid var(--black);pointer-events:none}
  .home-copy h1{font-size:clamp(43px,13vw,70px);line-height:.95;letter-spacing:-.065em;max-width:100%}
  .home-copy h1 span{padding:6px 10px 9px;margin-top:7px}
  .main-btn{margin-top:30px;width:min(100%,310px);min-height:60px;box-shadow:7px 7px 0 var(--black)}
  .home-mark{flex:0 0 25svh;min-height:150px;max-height:230px}
  .home-mark:before{height:38%;width:135%}
  .burst{width:min(38vw,150px);font-size:min(28vw,106px);box-shadow:8px 8px 0 #000}
  .burst:after{inset:-16px;border-width:8px}

  .quiz-screen{min-height:100svh;overflow-x:hidden;overflow-y:auto;background:var(--paper)}
  .quiz-screen:before{
    top:0;right:0;width:34vw;height:82px;opacity:1;box-shadow:none;transform:none;
    clip-path:polygon(34% 0,100% 0,100% 100%,0 100%);background:var(--red);z-index:0;
  }
  .quiz-screen:after{content:"";position:absolute;z-index:0;top:0;right:27vw;width:18px;height:92px;background:var(--black);transform:skewX(-16deg);transform-origin:top}
  .quiz-layout{
    width:100%;min-height:100svh;padding:64px 16px calc(28px + env(safe-area-inset-bottom));
    display:block;position:relative;z-index:2;
  }
  .quiz-head{width:100%;max-width:none;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:0}
  .quiz-head>span{font-size:34px;letter-spacing:-.07em}
  .quiz-head>b{font-size:11px;padding:6px 8px;transform:none}
  .progress{height:7px;min-width:0}
  .question-card{width:100%;max-width:none;margin:0;padding:34px 0 0}
  .question-card h2{
    width:100%;max-width:none;margin:0 0 24px;font-size:clamp(27px,7.6vw,40px);line-height:1.16;
    letter-spacing:-.035em;text-wrap:pretty;overflow-wrap:anywhere;word-break:normal;
  }
  .answers{width:100%;max-width:none;display:grid;grid-template-columns:1fr;gap:10px;margin:0}
  .answer,.answer:last-child:nth-child(odd){
    width:100%;max-width:100%;grid-column:auto;justify-self:stretch;min-width:0;min-height:62px;
    padding:11px 13px;gap:11px;border-width:2.5px;box-shadow:4px 4px 0 #000;font-size:14px;line-height:1.35;
    transform:none!important;
  }
  .answer:hover,.answer.selected{transform:translate(-1px,-1px)!important}
  .answer-key{flex:0 0 28px;width:28px;height:28px;font-size:11px}
  .answer span:last-child{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}

  .result-screen{min-height:100svh;overflow-x:hidden;overflow-y:auto}
  .result-layout{width:100%;max-width:680px;padding:64px 16px calc(34px + env(safe-area-inset-bottom));margin:0 auto}
  .result-hero{width:100%;max-width:none;padding:22px 18px 24px;clip-path:none;box-shadow:7px 7px 0 #000}
  .result-hero:after{display:none}
  .result-kicker{font-size:13px;margin-bottom:7px}
  .result-hero h2{font-size:clamp(34px,10vw,52px);line-height:1.08;letter-spacing:-.045em;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}
  .result-subtitle{font-size:13px;line-height:1.5;margin-top:9px}
  .taste-line{font-size:15px;line-height:1.65;margin-top:16px}
  .result-grid{grid-template-columns:1fr;gap:14px;margin-top:24px}
  .result-panel{width:100%;min-width:0;padding:19px 17px;border-width:2.5px}
  .result-panel h3{font-size:16px;margin-bottom:13px}
  .reason-panel{box-shadow:5px 5px 0 #fff}
  .reason-panel li{padding:11px 0 11px 24px;font-size:14px;line-height:1.55}
  .reason-panel li:before{top:18px;width:10px;height:10px}
  .caution-panel{box-shadow:5px 5px 0 #000;transform:none}
  .caution-panel p{font-size:14px;line-height:1.65}
  .more-picks{margin-top:25px}
  .section-title{font-size:13px;margin-bottom:11px;transform:none}
  .alt-list{grid-template-columns:1fr;gap:10px}
  .alt{width:100%;min-width:0;min-height:78px;padding:14px 15px;border-width:2.5px;box-shadow:4px 4px 0 #000;gap:4px 10px}
  .alt span{width:30px;height:30px;font-size:11px}
  .alt strong{font-size:17px;line-height:1.26;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}
  .alt em{font-size:11px;line-height:1.42}
  .alt small{font-size:12px;line-height:1.45;overflow-wrap:anywhere}
  .result-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:26px}
  .result-actions button{width:100%;min-width:0;min-height:48px;padding:0 12px;box-shadow:4px 4px 0 #000;font-size:13px}
  .result-actions .black-btn{grid-column:1/-1;box-shadow:4px 4px 0 #fff}
  .source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:20px;padding-top:15px;font-size:11px}
  .source-row span{max-width:none;min-width:0;overflow-wrap:anywhere}
  .source-row button{min-height:36px;padding:0 10px}

  .modal{padding:10px}
  .modal-card{width:min(96vw,500px);max-height:96svh;padding:8px}
  .modal-card img{max-height:80svh}
}

@media(max-width:430px){
  .quiz-layout,.result-layout{padding-left:14px;padding-right:14px}
  .home-copy{padding-left:16px;padding-right:16px}
  .question-card h2{font-size:clamp(26px,8vw,34px);margin-bottom:21px}
  .answer{font-size:13.5px;min-height:59px;padding:10px 11px}
  .result-actions{grid-template-columns:1fr}
  .result-actions .black-btn{grid-column:auto}
  .source-row{grid-template-columns:1fr auto}
}

@media(max-width:360px){
  .brand{left:10px}
  .home-copy{padding:78px 13px 40px}
  .home-copy h1{font-size:42px}
  .main-btn{min-height:56px}
  .quiz-layout{padding:58px 11px calc(24px + env(safe-area-inset-bottom))}
  .quiz-head{gap:7px}
  .quiz-head>span{font-size:30px}
  .quiz-head>b{font-size:10px;padding:5px 7px}
  .question-card{padding-top:28px}
  .question-card h2{font-size:25px;line-height:1.18}
  .answer{font-size:13px;gap:9px;min-height:56px;padding:9px 10px;box-shadow:3px 3px 0 #000}
  .answer-key{flex-basis:26px;width:26px;height:26px}
  .result-layout{padding:58px 11px calc(28px + env(safe-area-inset-bottom))}
  .result-hero{padding:19px 15px 21px;box-shadow:5px 5px 0 #000}
  .result-hero h2{font-size:34px}
  .result-panel{padding:17px 14px}
  .source-row{grid-template-columns:1fr;align-items:start}
  .source-row button{justify-self:start}
}

/* V10 — navigation + screenshot-first result layout */
.back-btn{
  appearance:none;border:3px solid #000;background:#fff;color:#000;min-height:42px;padding:0 12px;
  display:inline-flex;align-items:center;gap:7px;font-weight:1000;cursor:pointer;box-shadow:4px 4px 0 #000;
  transform:rotate(-1deg);white-space:nowrap;
}
.back-btn span{font-size:21px;line-height:1}
.back-btn em{font-style:normal;font-size:12px}
.back-btn:hover{background:#000;color:#fff}
.back-btn.is-hidden{visibility:hidden;pointer-events:none}

.result-top{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:28px;align-items:stretch}
.result-top>*{min-width:0}
.result-top .result-hero{max-width:none;display:flex;flex-direction:column;justify-content:center}
.work-card{
  position:relative;isolation:isolate;width:100%;aspect-ratio:3/4;background:#fff;color:#000;border:7px solid #000;
  overflow:hidden;box-shadow:12px 12px 0 #000;min-width:0;
}
.work-card:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#000 0 1.1px,transparent 1.5px);background-size:11px 11px;opacity:.11;z-index:-3}
.work-card-no{position:absolute;z-index:7;left:18px;top:12px;font-size:74px;line-height:.9;font-weight:1000;letter-spacing:-.09em}
.work-card-art{position:absolute;inset:0;overflow:hidden;z-index:-1}
.work-card-art:before,.work-card-art:after,.work-card-art i,.work-card-art b,.work-card-art span{content:"";position:absolute;display:block}
.work-card-art:before{width:115%;height:33%;left:-8%;top:22%;background:var(--red);transform:rotate(-15deg)}
.work-card-art:after{width:82%;height:16%;right:-20%;top:4%;background:#000;transform:rotate(24deg)}
.work-card-art i{width:56%;aspect-ratio:1;border:18px solid #000;border-radius:50%;right:-9%;top:29%;background:#fff}
.work-card-art b{width:55%;height:11%;left:-7%;top:57%;background:#000;transform:rotate(8deg)}
.work-card-art span{width:26%;aspect-ratio:1;background:var(--red);right:8%;top:49%;transform:rotate(45deg);border:8px solid #000}
.work-card-copy{position:absolute;z-index:6;left:18px;right:18px;bottom:17px;background:#fff;border:5px solid #000;padding:13px 14px 14px;box-shadow:6px 6px 0 var(--red);min-width:0}
.work-card-copy small{display:block;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:11px;font-weight:900;margin-bottom:5px}
.work-card-copy strong{display:block;font-size:clamp(23px,3.1vw,39px);line-height:1.08;letter-spacing:-.045em;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}
.work-card-subtitle{display:block;margin-top:7px;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo","PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:11px;font-weight:800;line-height:1.45;color:#444}
.work-card-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.work-card-tags span{background:#000;color:#fff;padding:4px 7px;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:10px;font-weight:900}

.card-title-long{font-size:clamp(21px,2.8vw,32px)!important}
.card-title-xlong{font-size:clamp(18px,2.55vw,28px)!important;line-height:1.12!important}
.result-title-long{font-size:clamp(42px,6.2vw,76px)!important}
.result-title-xlong{font-size:clamp(36px,5.5vw,64px)!important;line-height:1.06!important}
.alt-title-long{font-size:18px!important}
.alt-title-xlong{font-size:16px!important;line-height:1.26!important}

/* Six simple cover compositions. The language stays consistent; the geometry changes per title. */
.work-card.motif-1 .work-card-art:before{top:12%;height:46%;transform:rotate(17deg)}
.work-card.motif-1 .work-card-art i{left:-14%;right:auto;top:32%;border-radius:0;transform:rotate(18deg)}
.work-card.motif-1 .work-card-art span{right:4%;top:20%;transform:rotate(12deg)}
.work-card.motif-2 .work-card-art:before{left:44%;top:-8%;width:34%;height:82%;transform:rotate(12deg)}
.work-card.motif-2 .work-card-art:after{left:-22%;top:34%;width:90%;height:14%;transform:rotate(-31deg)}
.work-card.motif-2 .work-card-art i{right:-18%;top:20%;width:72%}
.work-card.motif-3 .work-card-art:before{top:35%;height:22%;transform:rotate(-3deg)}
.work-card.motif-3 .work-card-art i{left:14%;right:auto;top:17%;width:68%;border-width:24px}
.work-card.motif-3 .work-card-art b{top:47%;left:-8%;width:118%;height:10%;transform:rotate(-14deg)}
.work-card.motif-4 .work-card-art:before{left:-16%;top:2%;width:58%;height:76%;transform:rotate(-20deg)}
.work-card.motif-4 .work-card-art:after{right:-4%;top:17%;width:58%;height:43%;transform:rotate(9deg)}
.work-card.motif-4 .work-card-art i{right:5%;top:38%;width:48%;border-radius:0;transform:rotate(45deg)}
.work-card.motif-5 .work-card-art:before{left:-2%;top:28%;width:104%;height:30%;transform:rotate(22deg)}
.work-card.motif-5 .work-card-art:after{right:12%;top:-5%;width:25%;height:76%;transform:rotate(-8deg)}
.work-card.motif-5 .work-card-art i{left:-20%;right:auto;top:25%;width:72%}

.obsession-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}
.obsession-card{min-width:0;border:4px solid #000;padding:21px 22px 22px;box-shadow:7px 7px 0 #000}
.obsession-card span{display:block;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:12px;font-weight:900;margin-bottom:9px}
.obsession-card strong{display:block;font-size:clamp(25px,3vw,38px);line-height:1.12;letter-spacing:-.035em;overflow-wrap:anywhere;word-break:break-word}
.obsession-card p{margin:11px 0 0;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;font-size:14px;font-weight:750;line-height:1.65}
.role-card{background:#000;color:#fff;box-shadow:7px 7px 0 #fff}
.relation-card{background:#fff;color:#000}
.result-grid{margin-top:28px}

@media(max-width:820px){
  .quiz-head{grid-template-columns:auto minmax(0,1fr) auto;gap:9px}
  .back-btn{min-height:36px;padding:0 9px;border-width:2.5px;box-shadow:3px 3px 0 #000;transform:none}
  .back-btn span{font-size:18px}.back-btn em{font-size:11px}

  .result-top{grid-template-columns:1fr;gap:22px}
  .work-card{width:min(76vw,300px);justify-self:center;border-width:6px;box-shadow:8px 8px 0 #000}
  .work-card-no{font-size:62px;left:15px;top:10px}
  .work-card-copy{left:14px;right:14px;bottom:14px;border-width:4px;padding:11px 12px 12px;box-shadow:5px 5px 0 var(--red)}
  .work-card-copy strong{font-size:clamp(24px,8vw,34px)}
  .result-top .result-hero{display:block}
  .obsession-grid{grid-template-columns:1fr;gap:12px;margin-top:24px}
  .obsession-card{padding:17px 16px 18px;border-width:3px;box-shadow:5px 5px 0 #000}
  .role-card{box-shadow:5px 5px 0 #fff}
  .obsession-card strong{font-size:clamp(23px,7vw,31px)}
  .obsession-card p{font-size:13.5px;line-height:1.6}
}

@media(max-width:430px){
  .quiz-head{gap:7px}
  .back-btn{padding:0 8px;min-width:38px}
  .back-btn em{display:none}
  .work-card{width:min(82vw,286px)}
  .work-card-no{font-size:56px}
  .obsession-card{padding:15px 14px 16px}
}

@media(max-width:360px){
  .back-btn{min-height:33px;min-width:34px;padding:0 7px;box-shadow:2px 2px 0 #000}
  .work-card{width:min(86vw,270px);border-width:5px;box-shadow:6px 6px 0 #000}
  .work-card-copy strong{font-size:23px}
  .work-card-tags{gap:4px}.work-card-tags span{font-size:9px;padding:3px 6px}
}
