:root{color:#261f1c;background:#f2f0eb;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(90deg,rgb(156 49 49 / 8%) 0 1px,transparent 1px),linear-gradient(rgb(53 88 68 / 8%) 0 1px,transparent 1px),#f2f0eb;background-size:48px 48px}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}h1,h2,h3,p{margin-top:0}.app-shell{width:min(1440px,calc(100% - 48px));margin:0 auto;padding:40px 0 32px}.app-shell-sort{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100dvh;padding:14px 0;row-gap:14px;width:min(1440px,calc(100% - 32px))}.app-header,.progress-header,.dialog-heading,.stage-actions,.dual-actions{display:flex;align-items:center;justify-content:space-between;gap:20px}.app-header{min-height:94px;border-top:3px solid #261f1c;border-bottom:1px solid #b9afa2;padding:20px 0 18px}.app-header h1{margin-bottom:0;font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(2rem,3.3vw,3.65rem);font-weight:700;line-height:1.08}.app-shell-sort .app-header{min-height:64px;padding:10px 0}.app-shell-sort .app-header h1{font-size:clamp(1.55rem,2.2vw,2.35rem)}.app-shell-sort .eyebrow{margin-bottom:4px}.app-shell-sort .quiet-button{flex:0 0 auto;min-height:40px;padding:8px 14px;white-space:nowrap}.eyebrow{color:#9c3131;font-size:.86rem;font-weight:800;letter-spacing:0;margin-bottom:8px}.primary-button,.quiet-button,.rank-controls button{min-height:48px;border-radius:6px;border:1px solid #261f1c;padding:12px 18px}.primary-button{color:#fffaf1;background:#261f1c;box-shadow:5px 5px #9c3131;font-weight:800}.quiet-button,.rank-controls button{color:#261f1c;background:#fffdf8c2;font-weight:700}.intro-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,480px);gap:clamp(28px,5vw,96px);align-items:center;min-height:calc(100vh - 250px);padding:clamp(36px,7vw,112px) 0 54px}.intro-copy{max-width:720px}.intro-copy h2,.stage-heading h2{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(2rem,4.1vw,4.5rem);line-height:1.2;margin-bottom:24px}.intro-copy p,.stage-heading>p:last-child{color:#403732;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.85;max-width:760px}.intro-copy .primary-button{margin-top:18px}.intro-stack{position:relative;min-height:520px}.sample-card{align-items:center;background:#fffdf8;border:1px solid #261f1c;box-shadow:12px 14px #261f1c24;display:flex;font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(2rem,4vw,4rem);font-weight:700;height:390px;justify-content:center;left:50%;max-width:340px;position:absolute;top:50%;width:min(76vw,340px)}.sample-card-1{border-top:10px solid #9c3131;transform:translate(-78%,-60%) rotate(-9deg)}.sample-card-2{border-top:10px solid #355844;transform:translate(-48%,-52%) rotate(1deg)}.sample-card-3{border-top:10px solid #3f6872;transform:translate(-18%,-42%) rotate(9deg)}.stage{padding:clamp(28px,4vw,60px) 0}.app-shell-sort .stage{padding:0}.sort-stage{display:grid;gap:28px;grid-template-columns:minmax(300px,660px) minmax(280px,1fr);grid-template-areas:"progress progress" "card actions";align-items:center;min-height:calc(100vh - 240px)}.app-shell-sort .sort-stage{align-content:center;align-items:stretch;gap:16px 22px;grid-template-columns:minmax(300px,min(50vw,560px)) minmax(260px,1fr);grid-template-rows:auto auto;height:100%;min-height:0}.progress-header{align-items:end;border-bottom:1px solid #b9afa2;display:grid;grid-area:progress;grid-template-columns:1fr auto;padding-bottom:24px}.app-shell-sort .progress-header{align-items:end;grid-template-columns:minmax(0,1fr) auto;padding-bottom:12px}.progress-header h2{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(2rem,4vw,3.8rem);line-height:1;margin-bottom:0}.app-shell-sort .progress-header h2{font-size:clamp(1.55rem,2.4vw,2.35rem)}.progress-metrics{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.progress-metrics span,.rank-number{background:#fffdf8;border:1px solid #b9afa2;border-radius:6px;display:inline-flex;font-weight:800;justify-content:center;padding:10px 13px}.app-shell-sort .progress-metrics span{padding:7px 10px}.progress-track{background:#d9d1c6;grid-column:1 / -1;height:8px;margin-top:18px;overflow:hidden}.app-shell-sort .progress-track{margin-top:10px}.progress-track span{background:#355844;display:block;height:100%;min-width:4px}.value-card{aspect-ratio:1 / 1.12;background:linear-gradient(135deg,#ffffffdb,#fffdf89e),#fffdf8;border:1px solid #261f1c;border-top:10px solid #9c3131;box-shadow:16px 18px #261f1c24;display:grid;grid-area:card;grid-template-rows:auto 1fr auto;max-height:720px;min-height:420px;padding:clamp(28px,4vw,58px)}.app-shell-sort .value-card{aspect-ratio:auto;box-shadow:10px 12px #261f1c1f;height:min(58dvh,560px);min-height:360px;max-height:none;padding:clamp(22px,3vw,38px)}.value-card p{color:#625b52;font-weight:700;margin-bottom:18px}.value-card h2{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(2.8rem,5.8vw,6.6rem);line-height:1.14;margin-bottom:24px;overflow-wrap:anywhere}.app-shell-sort .value-card h2{font-size:clamp(2.2rem,4.2vw,4.7rem);margin-bottom:16px}.value-card div{align-self:stretch;border-top:1px solid #c9bdaf}.value-card strong{align-self:end;font-size:clamp(1.18rem,2.15vw,2.05rem);font-weight:600;line-height:1.72;max-width:13em}.app-shell-sort .value-card strong{font-size:clamp(1.05rem,1.45vw,1.35rem);line-height:1.62;max-width:20em}.value-card-compact{aspect-ratio:auto;box-shadow:7px 8px #261f1c1a;min-height:240px;padding:26px}.value-card-compact h2{font-size:clamp(2rem,3vw,3rem)}.value-card-compact strong{font-size:1.15rem;max-width:none}.category-actions{display:grid;gap:14px;grid-area:actions;grid-template-columns:1fr}.app-shell-sort .category-actions{align-self:stretch;gap:10px;grid-template-rows:repeat(5,minmax(0,1fr))}.category-button{align-items:center;background:#fffdf8;border:1px solid #261f1c;border-left-width:9px;border-radius:6px;display:flex;font-size:clamp(1rem,1.6vw,1.42rem);font-weight:800;justify-content:flex-start;line-height:1.45;min-height:88px;padding:20px;text-align:left}.app-shell-sort .category-button{font-size:clamp(1rem,1.2vw,1.18rem);min-height:0;padding:12px 16px}.category-not-at-all{border-color:#736a61}.category-not-very{border-color:#3f6872}.category-neutral{border-color:#654866}.category-somewhat{border-color:#b4832f}.category-very{border-color:#9c3131}.dialog-backdrop{background:#261f1c9e;display:grid;top:0;right:0;bottom:0;left:0;overflow-y:auto;padding:clamp(16px,4vw,48px);place-items:center;position:fixed;z-index:5}.replacement-dialog{background:#f7f3ea;border:1px solid #261f1c;box-shadow:18px 20px #261f1c2e;max-width:1280px;padding:clamp(20px,4vw,44px);width:min(100%,1280px)}.dialog-heading{border-bottom:1px solid #b9afa2;margin-bottom:28px;padding-bottom:22px}.dialog-heading h2,.classification-summary h2{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(1.7rem,3vw,3rem);margin-bottom:0}.incoming-card>p{color:#625b52;font-weight:800}.replacement-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));margin-top:28px}.replacement-option{background:#fffdf8;border:1px solid #9c3131;border-radius:6px;display:grid;gap:12px;min-height:208px;padding:20px;text-align:left}.replacement-option strong,.review-card strong{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:1.65rem}.replacement-option span,.review-card p,.ranking-row p,.sheet-row p{color:#403732;line-height:1.75;margin-bottom:0}.replacement-option em{align-self:end;color:#9c3131;font-style:normal;font-weight:800}.stage-heading{border-bottom:1px solid #b9afa2;margin-bottom:28px;padding-bottom:26px}.stage-heading h2{margin-bottom:14px}.notice,.empty-state{background:#fff3dc;border-left:6px solid #b4832f;color:#403732;line-height:1.7;padding:16px 18px}.review-board,.summary-grid{display:grid;gap:16px;grid-template-columns:repeat(5,minmax(0,1fr))}.review-column,.summary-column{border-top:8px solid;min-width:0}.review-column h3,.summary-column h3{align-items:center;border-bottom:1px solid #b9afa2;display:flex;font-size:1.08rem;justify-content:space-between;line-height:1.4;margin-bottom:14px;min-height:66px;padding:10px 0}.review-column h3 span{background:#261f1c;border-radius:999px;color:#fffaf1;display:inline-grid;flex:0 0 auto;font-size:.95rem;height:32px;place-items:center;width:32px}.review-list{display:grid;gap:12px}.review-card{background:#fffdf8e0;border:1px solid #d0c5b8;border-radius:6px;display:grid;gap:12px;min-width:0;padding:16px}.review-card label{display:grid;gap:6px}.review-card label span{color:#625b52;font-size:.84rem;font-weight:800}.review-card select{background:#fffdf8;border:1px solid #736a61;border-radius:4px;color:#261f1c;min-height:42px;padding:8px;width:100%}.stage-actions{border-top:1px solid #b9afa2;justify-content:flex-end;margin-top:30px;padding-top:26px}.ranking-list{display:grid;gap:14px;max-width:1080px}.ranking-row,.sheet-row{align-items:center;background:#fffdf8e5;border:1px solid #d0c5b8;border-left:8px solid #355844;border-radius:6px;display:grid;gap:20px;grid-template-columns:76px minmax(0,1fr) auto;min-height:154px;padding:22px}.ranking-row:first-child,.sheet-row:first-child{border-left-color:#9c3131}.ranking-row h3,.sheet-row h3{font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:clamp(1.6rem,2.4vw,2.5rem);margin-bottom:8px}.rank-number{align-self:start;border-color:#355844;font-size:1.35rem;min-height:60px;place-items:center}.rank-controls{display:grid;gap:10px;width:90px}.dual-actions{justify-content:space-between}.result-stage{max-width:1240px}.ranking-sheet{background:#fffdf8;border-top:4px solid #261f1c;box-shadow:12px 14px #261f1c1a;display:grid;gap:16px;padding:clamp(18px,3vw,38px)}.sheet-row{grid-template-columns:96px minmax(0,1fr)}.sheet-row>span{align-self:start;background:#9c3131;border-radius:6px;color:#fffaf1;display:inline-flex;font-weight:800;justify-content:center;padding:14px 10px}.classification-summary{margin-top:56px}.classification-summary h2{border-bottom:1px solid #b9afa2;margin-bottom:20px;padding-bottom:18px}.summary-column{background:#fffdf8b3;min-height:240px;padding:14px}.summary-column h3{margin-bottom:0}.summary-column>p{color:#625b52;font-weight:800}.summary-column ul{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:0;padding:0}.summary-column li{background:#fffdf8;border:1px solid #d0c5b8;border-radius:4px;line-height:1.45;padding:5px 8px}.source-note{border-top:1px solid #b9afa2;color:#625b52;font-size:.92rem;line-height:1.6;margin-top:48px;overflow-wrap:anywhere;padding-top:18px}@media(max-width:1120px){.review-board,.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.app-shell{width:min(100% - 28px,720px);padding-top:22px}.app-shell-sort{min-height:100dvh;padding:10px 0;row-gap:10px;width:min(100% - 20px,720px)}.app-header,.dialog-heading,.dual-actions{align-items:stretch;flex-direction:column}.app-header{align-items:flex-start}.app-shell-sort .app-header{align-items:center;flex-direction:row;min-height:50px;padding:7px 0}.app-shell-sort .app-header .eyebrow{display:none}.app-shell-sort .app-header>div{min-width:0}.app-shell-sort .app-header h1{font-size:clamp(1.05rem,5vw,1.35rem)}.app-shell-sort .quiet-button{font-size:.88rem;min-height:34px;padding:6px 9px}.intro-layout,.sort-stage{display:grid;grid-template-columns:1fr}.intro-layout{min-height:auto;padding-top:42px}.intro-stack{overflow:hidden;min-height:360px}.sample-card{height:252px;max-width:190px}.sample-card-1{transform:translate(-65%,-58%) rotate(-9deg)}.sample-card-2{transform:translate(-47%,-49%) rotate(1deg)}.sample-card-3{transform:translate(-25%,-39%) rotate(9deg)}.sort-stage{grid-template-areas:"progress" "card" "actions";min-height:auto}.app-shell-sort .sort-stage{align-content:stretch;gap:10px;grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);height:100%;min-height:0}.progress-header{grid-template-columns:1fr}.app-shell-sort .progress-header{grid-template-columns:1fr;padding-bottom:8px}.app-shell-sort .progress-header h2{font-size:clamp(1.35rem,7vw,1.75rem)}.progress-metrics{justify-content:flex-start}.app-shell-sort .progress-metrics{gap:6px}.app-shell-sort .progress-metrics span{font-size:.86rem;padding:5px 8px}.app-shell-sort .progress-track{margin-top:8px}.value-card{aspect-ratio:auto;min-height:min(132vw,620px)}.app-shell-sort .value-card{height:min(30dvh,300px);min-height:210px;padding:18px}.app-shell-sort .value-card h2{font-size:clamp(2rem,11vw,3rem);margin-bottom:10px}.app-shell-sort .value-card strong{font-size:clamp(.95rem,4.2vw,1.1rem);line-height:1.48}.category-actions{grid-template-columns:1fr}.app-shell-sort .category-actions{gap:8px}.app-shell-sort .category-button{min-height:48px;padding:9px 12px}.ranking-row{grid-template-columns:60px minmax(0,1fr)}.rank-controls{display:flex;grid-column:2;width:auto}.sheet-row{align-items:start;grid-template-columns:1fr}}@media(max-width:620px){.review-board,.summary-grid{grid-template-columns:1fr}.category-button{min-height:78px}.replacement-dialog{padding:18px}.ranking-row{grid-template-columns:1fr}.rank-controls{grid-column:auto}}
