:root{--paper:#f5f0e9;--ink:#27242b;--muted:#716c70;--line:#d8d0c7;--rust:#9d6252;--panel:#eee7df}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:Inter,Pretendard,"Noto Sans KR",system-ui,-apple-system,sans-serif;background:radial-gradient(circle at 80% 18%,#eee5df 0,transparent 32%),var(--paper);min-height:100svh}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--rust);outline-offset:3px}.page{max-width:1440px;padding:0 clamp(22px,5vw,80px);margin:auto;min-height:100svh;display:flex;flex-direction:column}.topbar{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{font-size:13px;letter-spacing:.21em;font-weight:800;white-space:nowrap}.brand-icon{font-size:23px;color:var(--rust);vertical-align:-2px;margin-right:4px}.mode-badge{font-size:10px;font-weight:750;letter-spacing:.11em;border:1px solid var(--line);padding:9px 13px;border-radius:99px;text-align:center}.mode-badge.demo{background:#e3d2c2;border-color:#e3d2c2}.screen{display:none;min-height:calc(100svh - 151px);animation:enter .3s ease-out}.screen.active{display:block}@keyframes enter{from{opacity:.1;transform:translateY(8px)}to{opacity:1;transform:none}}main{flex:1}.overline{font-size:11px;font-weight:800;letter-spacing:.19em;margin:0 0 22px;color:var(--rust)}.small-rule{display:inline-block;width:28px;height:1px;background:var(--rust);vertical-align:middle;margin-right:8px}.intro{display:none;grid-template-columns:1.07fr .93fr;gap:clamp(38px,7vw,110px);align-items:center}.intro.active{display:grid}.intro-copy{padding:55px 0 66px}h1,h2,p{overflow-wrap:break-word}h1{font-family:Georgia,"Noto Serif KR",serif;letter-spacing:-.065em;font-weight:500;font-size:clamp(58px,6.4vw,104px);line-height:1.13;margin:0 0 30px}h1 em{font-weight:400;font-style:normal;color:var(--rust)}.intro-lead{color:#514d50;font-size:18px;line-height:1.85;max-width:470px;margin:0 0 32px}.intro-facts{display:flex;gap:16px;align-items:center;color:var(--muted);font-size:13px;white-space:nowrap;margin-bottom:40px}.intro-facts strong{color:var(--ink);font-size:19px;font-weight:650;margin-right:4px}.intro-facts i{height:14px;width:1px;background:var(--line)}.note{color:var(--muted);font-size:12px;line-height:1.8;margin:15px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;text-align:center;text-decoration:none;border-radius:3px;padding:16px 24px;min-height:55px;font-weight:700;border:1px solid var(--ink);transition:background .18s,transform .18s,color .18s}.button:hover:not(:disabled){transform:translateY(-2px)}.button:disabled{opacity:.38;cursor:not-allowed}.primary{background:var(--ink);color:var(--paper)}.primary:hover:not(:disabled){background:#503b43}.ghost{background:transparent;color:var(--ink)}.ghost:hover:not(:disabled){background:#eee5dd}.text-only{border:0;background:none;color:var(--muted);padding:12px 0;justify-content:flex-start;font-size:13px;min-height:0}.intro-start{min-width:225px;justify-content:space-between}.intro-visual{align-self:center;background:#ebe3da;padding:18px 18px 8px;box-shadow:18px 19px 0 #d9cbc1;transform:rotate(1.5deg);max-width:540px;margin:35px 20px 50px 0}.visual-caption{display:flex;justify-content:space-between;padding:4px 4px 12px;font-size:10px;letter-spacing:.13em;font-weight:750;color:#645c5f}.intro-visual img{width:100%;display:block;aspect-ratio:1;object-fit:cover}.intro-visual p{text-align:center;margin:14px 0 7px;font-size:10px;letter-spacing:.25em;font-weight:750}.card-screen,.review-screen{padding:30px 0 60px}.progress-top{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}.progress-top .overline{margin:0}.progress-track{height:3px;background:#ded6ce;margin:13px 0 36px}.progress-fill{height:100%;width:10%;background:var(--rust);transition:width .3s}.card-columns{display:grid;grid-template-columns:minmax(300px, .98fr) minmax(320px,.82fr);gap:clamp(36px,6vw,100px);align-items:center}.blot-display{background:#efe9e1;border:1px solid #e3dbd2;padding:15px 15px 12px;max-width:640px}.blot-display img{display:block;width:100%;height:auto;aspect-ratio:1}.blot-display span{display:block;text-align:center;font-size:10px;letter-spacing:.22em;font-weight:750;color:var(--muted);padding-top:12px}.answer-panel{padding:10px 0}.answer-panel h2,.review-screen h2,.loading-screen h2,.result-details h2,.error-screen h2{font-family:Georgia,"Noto Serif KR",serif;font-weight:500;letter-spacing:-.05em;line-height:1.2;font-size:clamp(36px,4.2vw,58px);margin:0 0 19px}.muted{color:var(--muted);font-size:15px;line-height:1.75;margin:0 0 27px}.field-label{display:block;font-size:13px;font-weight:750;margin-bottom:11px}.field-label small{font-weight:450;color:var(--muted);margin-left:7px}.answer-panel textarea,.text-input{background:#fffaf4;border:1px solid #ccc3ba;border-radius:3px;color:var(--ink);width:100%;padding:16px;outline:none}.answer-panel textarea{resize:vertical;min-height:116px;max-height:280px;line-height:1.65;font-size:15px}.answer-panel textarea:focus,.text-input:focus{border-color:var(--rust)}.char-row{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;margin:7px 0 22px}.focus-label{margin:0 0 13px}.focus-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:33px}.focus-chip{border:1px solid var(--line);border-radius:40px;background:transparent;color:#5d5759;font-size:12px;padding:9px 14px}.focus-chip[aria-pressed=true]{color:#fff;background:var(--rust);border-color:var(--rust)}.nav-row{display:flex;gap:11px}.nav-row .button{flex:1;justify-content:space-between}.review-screen{max-width:780px;margin:auto}.review-screen .muted{margin-bottom:27px}.review-list{border-top:1px solid var(--line);margin:0 0 33px}.review-row{width:100%;display:grid;grid-template-columns:40px 1fr 20px;gap:12px;text-align:left;align-items:center;border:0;border-bottom:1px solid var(--line);padding:14px 6px;color:var(--ink);background:transparent}.review-row:hover{background:#eee6df}.review-row .index{font-family:Georgia,serif;color:var(--rust);font-size:20px}.review-row .excerpt{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-row .arrow{color:var(--muted)}.review-screen .text-input{margin-bottom:22px}.settings{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0 0 22px}.settings summary{font-size:14px;font-weight:750;cursor:pointer}.settings summary span{float:right;color:var(--muted);font-size:12px;font-weight:450}.settings label{display:block;margin:10px 0}.settings label input{position:absolute;opacity:0}.settings label span{display:block;border:1px solid var(--line);border-radius:3px;padding:12px 14px;color:var(--muted);font-size:12px;cursor:pointer}.settings label span strong{color:var(--ink);font-size:13px;margin-right:8px}.settings label input:checked+span{border-color:var(--rust);background:#f7eae1}.settings label input:focus-visible+span{outline:2px solid var(--rust)}.consent{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:13px;line-height:1.65}.consent input{width:19px;height:19px;margin:1px 0 0;accent-color:var(--rust);flex-shrink:0}.review-screen .note{margin:12px 0 22px}.wide{width:100%;justify-content:space-between}.loading-screen.active{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:calc(100svh - 151px)}.loading-bloom{position:relative;width:175px;height:175px;margin:0 0 32px}.loading-bloom i{position:absolute;top:20px;left:46px;width:84px;height:138px;border-radius:49% 51% 65% 35% / 50% 62% 38% 50%;background:#4f414f;mix-blend-mode:multiply;animation:breathe 2.2s ease-in-out infinite alternate}.loading-bloom i:nth-child(2){transform:rotate(65deg);background:#a87569;animation-delay:.4s}.loading-bloom i:nth-child(3){transform:rotate(-65deg);background:#b6a5a1;animation-delay:.7s}@keyframes breathe{to{opacity:.35;border-radius:33% 67% 36% 64%/48% 32% 68% 52%}}.loading-screen .muted{max-width:360px}.result-screen{padding:45px 0 65px}.result-grid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(280px,.76fr);gap:clamp(35px,6vw,110px);align-items:center}.artwork{padding:16px 16px 8px;background:#e9dfd5;box-shadow:18px 18px 0 #ded1c4}.artwork img{width:100%;display:block;aspect-ratio:1;object-fit:cover}.artwork span{display:block;text-align:center;padding:14px 0 5px;font-size:10px;letter-spacing:.19em;font-weight:750}.result-description{color:#514c50;line-height:1.9;font-size:16px;margin:0 0 24px}.keywords{display:flex;flex-wrap:wrap;gap:8px}.keywords span{padding:8px 12px;border:1px solid var(--line);border-radius:99px;font-size:12px;color:#5f575b}.result-actions{display:flex;gap:10px;margin:31px 0 9px}.result-actions .button{flex:1;padding-left:12px;padding-right:12px}.error-screen{padding:18vh 0 60px;max-width:520px;margin:auto}.error-screen .wide{margin-top:32px}footer{border-top:1px solid var(--line);height:63px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#817a78;font-size:10px;letter-spacing:.11em}@media(max-width:850px){.intro.active,.card-columns,.result-grid{grid-template-columns:1fr}.intro{gap:0}.intro-copy{padding:45px 0 5px}.intro-visual{max-width:500px;width:calc(100% - 20px);margin:28px auto 55px}.card-columns{gap:25px}.blot-display{width:min(100%,530px);margin:auto}.answer-panel{max-width:600px;width:100%;margin:auto}.result-grid{gap:40px}.artwork{max-width:620px;width:calc(100% - 18px);margin:0 auto}.result-details{max-width:620px;width:100%;margin:auto}}@media(max-width:540px){.page{padding:0 19px}.topbar{height:67px}.brand{font-size:11px}.brand-icon{font-size:19px}.mode-badge{font-size:9px;padding:7px 9px;max-width:132px}.screen{min-height:calc(100svh - 130px)}h1{font-size:clamp(48px,12vw,65px)}.intro-lead{font-size:15px}.intro-copy{padding:39px 0 0}.intro-facts{gap:10px;font-size:11px;margin-bottom:25px}.intro-facts strong{font-size:16px}.intro-start{width:100%}.intro-visual{margin-bottom:45px}.progress-track{margin-bottom:18px}.card-screen{padding-top:22px}.blot-display{padding:8px 8px 10px}.blot-display span{padding-top:9px;font-size:8px}.card-columns{gap:23px}.answer-panel .overline{margin-bottom:10px}.answer-panel h2,.review-screen h2,.result-details h2{font-size:36px}.answer-panel .muted{font-size:13px;margin-bottom:18px}.answer-panel textarea{min-height:98px}.focus-grid{margin-bottom:25px}.focus-chip{padding:9px 12px;font-size:11px}.nav-row .button{padding:12px 15px;min-height:49px}.result-screen{padding-top:23px}.artwork{padding:9px 9px 3px;box-shadow:10px 10px 0 #ded1c4}.result-actions{flex-direction:column}.error-screen{padding-top:100px}footer span:last-child{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* V3 historical reproductions and answer evidence */
.blot-display img,.intro-visual img{object-fit:contain;background:#f8f5f0}.blot-display img{width:100%;height:auto;max-height:65vh}.intro-visual img{width:100%;height:auto}.answer-panel .field-label{display:block;margin-top:1.25rem}.focus-grid.choices{grid-template-columns:repeat(2,minmax(0,1fr))}.focus-chip[aria-pressed="true"]{background:#30292b;color:#fff;border-color:#30292b}.focus-chip:disabled{opacity:.4;cursor:not-allowed}.interpretation-screen{max-width:850px;margin:0 auto;padding:36px 18px 80px}.analysis-statements{display:grid;gap:14px;margin:24px 0}.analysis-statements p{padding:18px 21px;background:#f5f0e9;border-left:3px solid #776463;line-height:1.7;margin:0}.evidence{padding:15px;background:#f5f0e9;margin:20px 0}.evidence summary{cursor:pointer;font-weight:700}.evidence article{border-top:1px solid #d8d0c7;margin-top:12px;padding:10px 0;line-height:1.6}.interpretation-screen h3{margin-top:42px}.interpretation-screen .note{line-height:1.6}.review-row .excerpt{white-space:normal}.result-details .note{line-height:1.65}@media(max-width:720px){.focus-grid.choices{grid-template-columns:1fr 1fr}.blot-display img{max-height:47vh}}
.analysis-statements .analysis-card{background:#f5f0e9;border-left:3px solid #776463;padding:19px 22px;line-height:1.6}.analysis-statements .analysis-card h3{margin:0 0 8px;font-size:1.18rem}.analysis-statements .analysis-card p{border:0;padding:0;margin:6px 0;background:transparent}.analysis-observation{font-weight:650;color:#56494b}.analysis-statements .analysis-card .analysis-reading{font-size:1.05rem;color:#292426}.analysis-statements .analysis-card .analysis-basis{font-size:.85rem;color:#786e70;margin-top:12px}.choices .focus-chip{text-align:left}
/* Personal response map: measured choices rather than mental-health grades. */
.portrait-hero{background:linear-gradient(145deg,#fbf6ef,#efe5dd);padding:28px 28px 24px;border:1px solid #e3d5ca;border-radius:18px;margin:28px 0 24px}.portrait-hero h3{font-size:clamp(1.5rem,4vw,2.35rem);margin:8px 0 12px;line-height:1.3}.portrait-hero>p:not(.overline){line-height:1.7;margin-bottom:18px}.portrait-spectrum{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin:30px 0 12px}.spectrum-cell{min-height:98px;padding:14px 7px 10px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-radius:6px;color:#292426;opacity:.78;border:2px solid transparent}.spectrum-cell strong{font-size:1.2rem;line-height:1.2}.spectrum-cell span{font-size:.79rem;margin-top:7px;line-height:1.2}.spectrum-cell.dominant{opacity:1;border-color:#46373c;box-shadow:0 4px 12px #241b2526;transform:translateY(-5px)}.category-animal{background:#bfddc1}.category-human{background:#b6d7e6}.category-nature{background:#f3d9a2}.category-object{background:#e6c4c0}.category-abstract{background:#d9cce9}.category-other{background:#e2ded5}.portrait-hero .spectrum-note{font-size:.81rem;line-height:1.45;color:#665b5c;margin:10px 0 0}.profile-sections{display:grid;gap:13px}.profile-sections article{border:1px solid #e5dcd2;border-radius:12px;padding:21px 23px;background:#fffefa}.profile-sections h3{font-size:1.1rem;margin:0 0 8px}.profile-sections p{font-size:1rem;line-height:1.8;margin:0}.profile-sections small{display:block;color:#6c6061;margin-top:12px;line-height:1.5}.art-bridge{margin:22px 0;background:#323038;color:#fff;border-radius:12px;padding:21px 23px}.art-bridge strong{font-size:1rem}.art-bridge p{line-height:1.7;margin:10px 0 0}@media(max-width:720px){.portrait-hero{padding:22px 17px}.portrait-spectrum{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.spectrum-cell{min-height:79px}.spectrum-cell.dominant{transform:translateY(-2px)}}
[hidden]{display:none!important}.profile-sections p{white-space:pre-line}.review-screen .consent{margin:0 0 17px;padding:16px;background:#fffaf4;border:1px solid var(--line);border-radius:8px}.answer-panel #reasonInput,.answer-panel #impressionInput{min-height:76px}.interpretation-screen #aiAnalysisNotice{font-weight:650;color:#574449;background:#f1e7df;padding:14px 18px;border-left:3px solid var(--rust)}
/* Options use aria-checked (radio), while optional location/cue chips use aria-pressed. */
.choices .focus-chip[aria-checked="true"]{background:#18171b;color:#fff;border-color:#18171b;box-shadow:inset 0 0 0 2px #18171b,0 3px 10px #18171b3b;font-weight:750}
.choices .focus-chip[aria-checked="true"]::before{content:"✓ ";font-weight:900}
.choices .focus-chip[aria-checked="true"]:hover{background:#343136}
.first-thought{margin:0 0 14px}.reveal-options{margin:0 0 20px;padding:11px 17px;min-height:44px;border:1px solid var(--ink);border-radius:4px;background:transparent;color:var(--ink);font-weight:700}.reveal-options:hover{background:#ebe1d8}.choice-panel{margin-bottom:12px}.choice-panel .field-label{margin-top:0}.clarification-panel{border-top:1px solid var(--line);padding-top:16px}.clarification-panel>p:first-child{font-weight:700;margin:0 0 10px}
.answer-panel textarea[readonly]{background:#eee8e1;color:#5d5456}
/* The first screen reads like a short, grounded summary; detailed counts stay in disclosure. */
.interpretation-screen .portrait-hero{margin:24px 0 16px;padding:19px 24px}
.interpretation-screen .portrait-hero h3{margin:5px 0 7px;font-size:1.55rem}
.interpretation-screen .portrait-hero>p:not(.overline){margin:0;font-size:.96rem}
.interpretation-screen .profile-sections{list-style:none;padding:0;margin:0;gap:8px}
.interpretation-screen .profile-sections li{padding:16px 21px;background:#fffefa;border:1px solid #e5dcd2;border-radius:10px;line-height:1.58}
.interpretation-screen .profile-sections strong{display:block;font-size:1.03rem;margin-bottom:3px}
.interpretation-screen .profile-sections span{display:block}
.interpretation-screen .profile-sections small{display:block;color:#6c6061;margin-top:5px;font-size:.81rem}
.interpretation-screen .art-bridge{margin:16px 0;padding:16px 21px}
.interpretation-screen .art-bridge p{margin-top:5px;line-height:1.5}
.interpretation-screen .portrait-spectrum{margin:17px 0 10px}
.interpretation-screen .evidence .spectrum-note{font-size:.82rem;color:#645b5d}
.interpretation-screen .portrait-hero{background:#f3ece4;border-color:#e1d4ca;padding:24px 26px}
.interpretation-screen .portrait-hero h3{font-size:clamp(1.55rem,4vw,2.15rem)}
.interpretation-screen .profile-sections{gap:0;border-top:1px solid #dcd1c8;border-bottom:1px solid #dcd1c8}
.interpretation-screen .profile-sections li{background:transparent;border:0;border-radius:0;padding:17px 8px}
.interpretation-screen .profile-sections li+li{border-top:1px solid #e4dcd3}
.interpretation-screen .art-bridge{background:#eee7de;color:#292426;border-left:3px solid #8a6861;border-radius:6px}
.interpretation-screen #aiAnalysisNotice{font-size:.88rem;font-weight:500;background:transparent;border:0;color:#625959;padding:5px 2px 14px;margin:8px 0}
.interpretation-screen .result-lead{font-size:1.18rem;font-weight:700;line-height:1.6;margin:28px 0 16px}
.interpretation-screen .profile-sections{display:block;list-style:disc outside;padding-left:26px;border:0}
.interpretation-screen .profile-sections li{display:list-item;background:transparent;border:0;padding:7px 0 9px 2px;line-height:1.7;font-size:1.05rem}
.interpretation-screen .profile-sections li+li{border:0}
.interpretation-screen .profile-sections .result-domain{display:block;margin-bottom:4px;font-size:.86rem;letter-spacing:.02em;color:#895f52;font-weight:750}
.interpretation-screen .profile-sections .result-reading{display:block}
.interpretation-screen .style-select{margin:0 0 20px;cursor:pointer;min-height:52px}
.result-details #variantButton{margin-top:8px}
