@import url('/base.css');
:root{--paper:#f3ede3;--white:#fffdf7;--ink:#332d38;--accent:#51336c;--muted:#726b72;--line:#d7cdbf;--orange:#ffb873;font-family:'Noto Sans SC',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.45;cursor:default}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #995714;outline-offset:4px}a{color:var(--accent);text-underline-offset:4px}h1,h2,h3,p{margin-top:0}p{line-height:1.9}h1{font-size:clamp(38px,6vw,64px);line-height:1.3;letter-spacing:-.04em}h2{font-size:27px;line-height:1.5}h3{font-size:18px}small{line-height:1.7}
.masthead{max-width:1050px;margin:auto;padding:24px 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--accent);font-size:28px;font-weight:700}.brand-symbol{background:var(--accent);color:var(--orange);width:45px;height:45px;display:grid;place-items:center;border-radius:50%;font-family:serif}.brand small{display:block;font-size:9px;letter-spacing:2px}.quiet{background:none;color:var(--muted);padding:10px 0;font-size:13px;text-decoration:underline;text-underline-offset:4px}#app{max-width:940px;margin:auto;padding:34px 26px 64px}.eyebrow{font-size:11px;letter-spacing:1.5px;color:var(--accent);font-weight:600;margin-bottom:20px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center;padding:25px 0 60px}.hero h1{font-size:clamp(42px,6vw,65px)}h1 span{display:inline;color:var(--accent);background:linear-gradient(transparent 65%,#ffcf9e 65%)}.intro{font-size:16px;color:var(--muted);line-height:1.9}.specs{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;margin-top:26px}.specs span{padding:7px 10px;border:1px solid #cbbcad;border-radius:20px}
.receipt-art{position:relative;transform:rotate(3deg);background:var(--white);padding:32px 28px 40px;box-shadow:8px 12px 0 #ded4c6;border-top:7px solid var(--accent)}.receipt-art:after,.welcome:after{content:'';position:absolute;height:12px;left:0;right:0;bottom:-11px;background:linear-gradient(135deg,var(--white) 25%,transparent 25%) -10px 0,linear-gradient(225deg,var(--white) 25%,transparent 25%) -10px 0;background-size:20px 20px}.receipt-pin{font-size:10px;letter-spacing:2px;text-align:center;border-bottom:1px dashed var(--line);padding-bottom:17px}.receipt-title{font-size:29px;line-height:1.5;font-weight:600;margin:25px 0;color:var(--accent)}.receipt-art dl{margin:0}.receipt-art dl div{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0;border-bottom:1px dashed var(--line);gap:12px}.receipt-art dt{font-size:16px;font-weight:600}.receipt-art dd{font-size:12px;color:var(--muted);margin:0}.receipt-total{margin-top:20px;display:flex;flex-direction:column;gap:7px}.receipt-total span{font-size:11px}.receipt-total b{font-size:19px}.barcode{height:28px;max-width:180px;margin:22px auto 14px;background:repeating-linear-gradient(90deg,var(--accent) 0 2px,transparent 2px 4px,var(--accent) 4px 5px,transparent 5px 9px,var(--accent) 9px 13px,transparent 13px 15px)}.receipt-art small{display:block;font-size:10px;text-align:center;color:var(--muted)}
.entry{padding:34px;background:var(--white);border:1px solid var(--line);border-radius:4px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 22px;border-radius:8px;font-weight:600;font-size:16px;line-height:1.5;text-decoration:none}.primary{color:white;background:var(--accent);border:1px solid var(--accent);box-shadow:0 4px 0 #30203d}.secondary{background:var(--white);border:1px solid #bda8cd;color:var(--accent)}.wide{width:100%}.fine{font-size:12px;line-height:1.9;color:var(--muted)}.error{color:#ac302b}.error:empty{display:none}.field-section{padding-top:48px}.feature-lines{counter-reset:feature}.feature-lines p{position:relative;border-top:1px dashed var(--line);padding:22px 0 22px 47px;font-size:14px;color:var(--muted);margin:0}.feature-lines p:before{counter-increment:feature;content:'0' counter(feature);position:absolute;left:0;top:24px;font-family:monospace;font-size:20px;color:var(--accent)}.feature-lines b{display:block;color:var(--ink);margin-bottom:6px}
.welcome{position:relative;border:0;border-top:8px solid var(--accent);max-width:620px;margin:auto;box-shadow:6px 8px 0 #e0d6c8}.welcome h1{font-size:42px}.quota{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);padding:12px 0;font-size:12px;margin:20px 0;display:flex;justify-content:space-between;align-items:center;gap:10px}.quota b{font-size:26px;color:var(--accent)}.agreement{display:flex;gap:10px;font-size:12px;line-height:1.7;margin:18px 0}.agreement input{accent-color:var(--accent);width:20px;height:20px;flex:0 0 20px}.welcome .fine{margin:20px 0 0}.folio-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.history-list{padding:0;list-style:none}.history-list button{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-top:1px dashed var(--line);background:none;text-align:left;color:var(--ink)}.history-list small{display:block;color:var(--muted);margin-top:8px}
.quiz-head,.result-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px}.progress{background:#e0d5e6;height:5px;margin:16px 0 28px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent)}.question-card{padding:32px;background:var(--white);border:1px solid var(--line);border-top:6px solid var(--orange);box-shadow:4px 5px 0 #e4dacd}.page-number,.context-label{font-size:11px;padding:5px 10px;background:#ffe3bf;display:inline-block;margin-bottom:18px}.question{font-size:26px;line-height:1.7;letter-spacing:0}.options{display:grid;gap:10px;margin:25px 0}.option{min-height:55px;display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:5px;text-align:left;background:white;color:var(--ink)}.dot{flex:none;width:17px;height:17px;border:1px solid #b3a1be;border-radius:50%}.option[aria-pressed=true]{background:#f0e7f5;border:2px solid var(--accent);padding:14px;color:var(--accent)}.option[aria-pressed=true] .dot{border:5px solid var(--accent)}.option.na{font-size:13px;color:var(--muted)}.quiz-nav{display:flex;justify-content:space-between;gap:14px;align-items:center}.save-state{text-align:center}.save-state button{font-size:11px}.index-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.index-grid button{border:1px solid var(--line);padding:12px;border-radius:5px;background:var(--white)}.index-grid .answered{background:var(--accent);color:white}.index-grid .current{outline:2px solid #ae591b;outline-offset:2px}
.report{background:var(--white);border:1px solid var(--line);margin:24px 0;overflow:visible}.report-cover{padding:40px;border-top:8px solid var(--accent);border-bottom:2px dashed var(--line);position:relative}.receipt-label{display:inline-block;border:1px solid var(--accent);color:var(--accent);padding:6px 9px;font-size:11px;transform:rotate(-2deg);margin:0 0 24px}.report-cover h1{font-size:44px;color:var(--accent)}.report-summary{font-size:17px}.report-cover blockquote{font-size:22px;line-height:1.8;margin:24px 0 18px;padding:15px 0 0;border-top:1px dashed var(--line)}.chapter{padding:32px 40px;border-bottom:1px dashed var(--line)}.chapter h2{font-size:25px}.chapter p{font-size:15px}.dimension-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dimension{padding:18px;border:1px solid var(--line);border-top:4px solid var(--accent)}.dimension:nth-child(2){border-top-color:#a05c25}.dimension:nth-child(3){border-top-color:#b16a7b}.dimension:nth-child(4){border-top-color:#65785e}.dimension h3{margin:0 0 8px}.dimension span{display:block;font-size:10px;color:var(--muted)}.preference{display:block;margin:15px 0 8px;font-size:14px;color:var(--accent)}.dimension p{font-size:13px;margin-bottom:8px}.dimension small{font-size:10px;color:var(--muted)}.clue{margin:22px 0;padding:20px;background:#f5efe5;border-left:3px solid #bd8b60}.clue small{color:var(--muted)}.clue .reading{padding-top:14px;border-top:1px dashed var(--line);margin:14px 0 0;font-size:14px}.report-foot{padding:30px 40px;font-size:12px;color:var(--muted)}.report-foot a{overflow-wrap:anywhere}.source-list{font-size:10px;padding-top:12px;border-top:1px dashed var(--line)}.end-mark{text-align:center;font-size:10px}.share-paper{text-align:center}.share-paper .report-cover{padding:40px}.share-emblem{font-family:serif;font-size:65px;line-height:105px;width:105px;height:105px;border-radius:50%;background:#ffdab1;color:var(--accent);margin:25px auto}.share-paper blockquote{border:0;padding:0;font-size:23px}.card-export{position:fixed;left:-10000px;top:0;width:600px;padding:20px;background:var(--white)}.card-export .report{margin:0}.toolbar{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.toolbar>.primary{grid-column:1/-1}.result-extras{display:flex;justify-content:space-between;gap:12px}
.site-footer{max-width:920px;padding:28px;margin:auto;border-top:1px dashed var(--line);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;color:var(--muted);font-size:12px}.site-footer small{width:100%;font-size:10px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:max-content;max-width:90vw;padding:14px 20px;background:var(--ink);color:white;border-radius:9px;font-size:14px;line-height:1.6;z-index:100}dialog{width:min(680px,94vw);max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:30px;background:var(--white);color:var(--ink)}dialog::backdrop{background:#30253e99}.close-x{position:absolute;right:12px;top:8px;background:none;color:var(--ink);font-size:27px}.modal-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.modal-actions>*{flex:1}.image-scroll{max-height:50dvh;overflow:auto;border:1px solid var(--line)}.image-preview{width:100%;height:auto;display:block}#share-link{width:100%;padding:15px;border:1px solid var(--line)}.loading{text-align:center;padding:80px 0;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:600px){.masthead{padding:17px 19px}.brand{font-size:24px}.brand-symbol{width:37px;height:37px}#app{padding:22px 18px 45px}.hero{display:block;padding:8px 0 36px}.hero h1{font-size:42px}.intro{font-size:14px}.receipt-art{transform:none;margin:32px 6px 15px;padding:25px 25px 32px}.receipt-title{font-size:27px}.specs{font-size:10px;margin-top:20px}.entry{padding:24px 21px}.entry h2{font-size:23px}.welcome h1{font-size:35px}.welcome .intro{margin-bottom:12px}.welcome .quota{margin:12px 0}.field-section h2{font-size:24px}.question-card{padding:24px 18px}.question{font-size:21px;line-height:1.7}.quiz-nav .primary{padding:12px 15px;font-size:14px}.quiz-head{font-size:11px}.report-cover{padding:28px 21px}.report-cover h1{font-size:32px}.report-cover blockquote{font-size:18px}.report-summary{font-size:15px}.chapter{padding:27px 21px}.chapter h2{font-size:22px}.chapter p{font-size:14px}.dimension-list{grid-template-columns:1fr}.dimension>div{display:flex;justify-content:space-between;align-items:center;gap:10px}.dimension h3{margin:0;font-size:17px}.clue{padding:16px}.report-foot{padding:26px 21px}.toolbar{grid-template-columns:1fr}.toolbar .primary,.toolbar .secondary{font-size:14px}.share-paper .report-cover{padding:30px 22px}.share-paper blockquote{font-size:21px}.card-export .share-paper h1{font-size:45px}.modal-actions{flex-direction:column}dialog{padding:28px 20px}.result-top{font-size:11px}}
