@font-face{font-family:Openlab;src:local('Pretendard'),local('Noto Sans KR'),local('Apple SD Gothic Neo'),local('Malgun Gothic');font-display:swap}
:root{--blue:#1045ff;--ink:#17191d;--paper:#f9f8f2;--purple:#eee5fa;--sky:#dfedff;--yellow:#f4f36c;--line:#c4c4cc;font-family:Openlab,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:weight}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}#main:focus{outline:none}button{color:inherit}h1,h2,h3,h4,p{margin:0}svg{display:block}button{border-radius:0}h1,h2,h3{word-break:keep-all}p{word-break:keep-all;overflow-wrap:anywhere}button,input{touch-action:manipulation}.site-header{max-width:1400px;margin:auto;padding:26px 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink)}.brand{text-decoration:none;font-size:26px;font-weight:950;letter-spacing:-1.5px;display:flex;gap:22px;align-items:center}.brand span,.edition,.eyebrow,.type-number,.card-index{font-family:ui-monospace,monospace;letter-spacing:1.5px;font-size:11px;font-weight:600}.brand span{letter-spacing:1px}.edition{color:#62636b}.landing{max-width:1320px;margin:auto;min-height:630px;padding:75px 42px 65px;display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center}.eyebrow{color:var(--blue);line-height:1.8}.hero-copy h1{font-size:clamp(36px,3.7vw,56px);letter-spacing:-2.5px;line-height:1.4;margin:20px 0 24px;font-weight:900}.hero-copy em{font-style:normal;color:var(--blue);text-decoration:underline;text-decoration-color:var(--yellow);text-decoration-thickness:12px;text-underline-offset:2px;text-decoration-skip-ink:none}.lead{font-size:17px;line-height:1.9;color:#555963}.facts{display:flex;gap:12px;margin:24px 0}.facts span{font-size:12px;padding-right:12px;border-right:1px solid #aaa}.facts span:last-child{border:0}.primary{background:var(--blue);color:white;border:1px solid var(--blue);padding:18px 24px;font-weight:750;font-size:16px;display:flex;gap:25px;justify-content:space-between;align-items:center;min-height:54px}.primary:hover:not(:disabled){background:#092ec0}.start{width:100%;max-width:385px}.micro{font-size:12px;line-height:1.8;color:#626570;margin-top:16px}.hero-art{height:435px;position:relative;border:1px solid var(--ink);background:#eee7fb;box-shadow:10px 10px 0 var(--ink);overflow:hidden}.art-label{position:absolute;top:22px;left:22px;font:11px/1.8 ui-monospace,monospace;z-index:1}.art-label b{font:600 14px/2 Openlab,sans-serif}.hero-creature{position:absolute;inset:70px 40px 40px;mix-blend-mode:multiply}.hero-creature .character{width:100%;height:100%}.art-note{position:absolute;right:14px;bottom:26px;background:var(--yellow);font-size:14px;font-weight:750;padding:12px;transform:rotate(-4deg)}.hero-index{position:absolute;bottom:12px;left:16px;font:11px ui-monospace,monospace}.ticker{white-space:nowrap;overflow:hidden;background:var(--blue);color:white;padding:14px 0;font:800 20px/1.5 ui-monospace,monospace;letter-spacing:3px}.intro-strip{max-width:1320px;margin:0 auto;padding:42px;display:grid;grid-template-columns:1fr 1.2fr auto;gap:35px;align-items:center}.intro-strip h2{font-size:23px;letter-spacing:-1px;margin-top:8px}.intro-strip p{line-height:1.9;font-size:14px;color:#555963}.text-button{border:0;background:transparent;padding:12px 0;min-height:44px;font-weight:650;text-align:left}.text-button:hover{text-decoration:underline;text-underline-offset:5px}.disclaimer{text-align:center;font-size:12px;color:#626570;padding:20px 24px 40px;line-height:1.8}.site-footer{max-width:1320px;margin:auto;padding:22px 42px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:11px;color:#666}.site-footer button{border:0;background:none;text-decoration:underline;min-height:44px}.quiz-shell{width:min(100% - 40px,680px);margin:45px auto 80px;min-height:560px}.quiz-top{display:flex;justify-content:space-between;align-items:center;font:600 16px ui-monospace,monospace}.muted{color:#8a8d98}.progress{height:3px;background:#dedee6;margin:10px 0 46px}.progress>div{height:100%;background:var(--blue);transition:width .2s}.question-label{margin-bottom:17px}.quiz-shell h1{font-size:32px;line-height:1.55;letter-spacing:-1.2px}.question-context{font-size:15px;color:#636571;line-height:1.8;margin:14px 0 32px}.choices{border:0;padding:0;margin:0;display:grid;gap:15px}.choice{display:flex;gap:18px;align-items:center;padding:23px;border:1px solid #b6b8c2;cursor:pointer;background:white;position:relative;line-height:1.65;font-size:17px;min-height:96px}.choice:hover{border-color:var(--blue)}.choice.selected{border:2px solid var(--blue);padding:22px;background:#eaf0ff}.choice:focus-within{outline:3px solid var(--blue);outline-offset:3px}.choice input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.choice-letter{font:800 14px ui-monospace,monospace;color:var(--blue);border:1px solid currentColor;width:30px;height:30px;display:grid;place-content:center;flex-shrink:0}.choice-mark{margin-left:auto;color:var(--blue)}.next{width:100%;margin-top:28px}.quiz-shell>.micro{text-align:center}.result-layout{max-width:1250px;margin:50px auto 32px;padding:0 35px;display:grid;grid-template-columns:260px 1fr;gap:55px;align-items:start}.result-tools{position:sticky;top:28px}.result-tools h1{font-size:30px;letter-spacing:-1px;line-height:1.5;margin:15px 0}.tool-description{font-size:14px;line-height:1.9;color:#666;margin-bottom:25px}.result-tools .primary,.secondary{width:100%;font-size:14px}.secondary{background:transparent;border:1px solid var(--ink);padding:17px;margin:10px 0;min-height:50px;font-weight:650}.secondary:hover{background:var(--sky)}.result-tools>.text-button{display:block}.report{border:9px solid var(--blue);background:var(--paper);overflow:hidden}.report-masthead{display:flex;gap:12px;align-items:center;padding:18px 25px 5px;font-weight:800;font-size:15px}.report-masthead span{font-size:12px}.report-rule{height:1px;background:var(--ink);flex:1}.report-hero{padding:22px 25px 15px;display:grid;grid-template-columns:1.15fr 1fr;gap:8px;align-items:center}.type-number{font-size:9px;color:var(--blue);margin-bottom:10px}.report-hero h2{font-size:clamp(32px,3.9vw,60px);font-weight:950;letter-spacing:-3px;line-height:1.15;color:var(--blue);max-width:380px}.report-hero h3{font-size:18px;line-height:1.5;margin-top:17px;letter-spacing:-.5px}.report-keywords{font-size:11px;line-height:1.8;margin-top:12px}.report-character{mix-blend-mode:multiply;min-width:0}.report-character .character{width:100%;height:220px}.report-quote{background:var(--yellow);margin:0 20px 18px;font-size:19px;font-weight:850;padding:13px 14px;line-height:1.5;letter-spacing:-.7px}.report-row{border-top:1px solid #252628;display:grid;grid-template-columns:45px 1fr;gap:20px;padding:20px 25px}.report-row:nth-of-type(odd){background:var(--purple)}.row-number{font:750 21px ui-monospace,monospace;color:var(--blue);border-right:1px solid var(--ink);padding-right:12px}.report h3{font-size:19px;font-weight:850;letter-spacing:-.6px;margin-bottom:10px}.report p{font-size:14px;line-height:1.85}.report-bottom{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}.report-bottom section{background:var(--purple);padding:20px 23px}.report-bottom section+section{border-left:1px solid var(--ink);background:var(--sky)}.report-bottom h3{font-size:17px}.report-bottom h4{font-size:16px;margin:8px 0}.report-bottom p{font-size:13px}.report-footer{font-size:9px;text-align:center;padding:7px}.reasoning{max-width:1150px;padding:40px 30px;margin:auto;display:grid;grid-template-columns:1fr 1.3fr;gap:60px;border-top:1px solid var(--ink)}.reasoning h2{font-size:26px;margin:12px 0;letter-spacing:-1px}.reasoning>div>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#666}.axis-list details{border-bottom:1px solid #bbb;padding:15px 0}.axis-list summary{cursor:pointer;font-size:13px;line-height:1.7}.axis-list summary strong{color:var(--blue);float:right;font-size:12px}.axis-list details p{font-size:13px;line-height:1.8;margin:14px 0}.axis-list ul{padding:0;list-style:none}.axis-list li{font-size:12px;margin:10px 0;line-height:1.7}.axis-list li span,.axis-list li b{display:block}.axis-list li span{color:#666}.gallery-heading{max-width:1240px;padding:30px 30px;margin:auto}.gallery-heading h1{font-size:38px;line-height:1.45;letter-spacing:-1.5px;margin:15px 0}.gallery-heading>p:last-child{color:#666;line-height:1.8;font-size:14px}.gallery-grid{max-width:1240px;margin:0 auto 70px;padding:0 30px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-card{text-align:left;background:white;border:1px solid #bbb;padding:18px;position:relative;transition:transform .15s}.gallery-card:hover{border-color:var(--blue);transform:translateY(-4px);box-shadow:4px 4px 0 var(--blue)}.gallery-card .character{height:145px;width:100%;margin:15px 0;mix-blend-mode:multiply}.gallery-card h2{font-size:18px;letter-spacing:-.6px;margin:12px 0 7px}.gallery-card p{font-size:12px;color:#666}.card-index{color:var(--blue);font-size:10px}.card-arrow{position:absolute;bottom:15px;right:15px;color:var(--blue)}dialog{max-width:540px;width:calc(100% - 40px);border:2px solid var(--ink);padding:30px;background:var(--paper)}dialog::backdrop{background:#1119}dialog h2{font-size:23px;margin-bottom:18px}dialog p{font-size:14px;line-height:1.9;margin-bottom:16px}dialog .primary{margin-top:20px;width:100%}.share-input{width:100%;padding:13px;border:1px solid #bbb;min-width:0}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,15px);background:#17191d;color:white;padding:14px 20px;font-size:14px;max-width:90%;width:max-content;opacity:0;pointer-events:none;transition:all .2s;z-index:5}#toast.visible{opacity:1;transform:translate(-50%,0)}.skip{position:absolute;top:-100px;background:var(--blue);color:white;padding:15px;z-index:10}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.landing{gap:30px;padding:50px 30px}.hero-copy h1{font-size:38px}.hero-art{height:370px}.intro-strip{grid-template-columns:1fr 1fr}.intro-strip .text-button{grid-column:2}.result-layout{grid-template-columns:220px 1fr;gap:25px;padding:0 22px}.report-hero{padding:15px}.report-row{padding:17px 15px;gap:12px;grid-template-columns:35px 1fr}.report p{font-size:13px}.report-hero h2{font-size:38px}.report-hero h3{font-size:15px}.report-character .character{height:190px}.report-quote{font-size:16px}.report-bottom section{padding:16px}.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.site-header{padding:20px}.brand{font-size:23px}.brand span{font-size:9px}.edition{display:none}.landing{grid-template-columns:1fr;gap:35px;padding:35px 24px 45px;min-height:0}.hero-copy h1{font-size:36px;letter-spacing:-1.8px;margin-top:12px}.lead{font-size:15px}.facts{margin:20px 0}.start{max-width:none}.hero-art{height:300px;box-shadow:6px 6px 0 var(--ink)}.hero-creature{inset:35px 65px 18px}.art-label{font-size:9px;top:12px;left:12px}.art-label b{font-size:11px}.art-note{font-size:12px;bottom:15px}.ticker{font-size:15px}.intro-strip{display:block;padding:30px 24px}.intro-strip p{margin:18px 0}.site-footer{padding:15px 20px;flex-wrap:wrap;gap:8px}.site-footer>span:nth-child(2){display:none}.quiz-shell{margin-top:25px;min-height:0;margin-bottom:50px}.quiz-shell h1{font-size:26px}.progress{margin-bottom:30px}.choice{padding:18px 15px;font-size:15px;gap:13px;min-height:92px}.choice.selected{padding:17px 14px}.question-context{font-size:14px}.result-layout{display:flex;flex-direction:column;gap:24px;margin-top:25px;padding:0 14px}.result-tools{position:static;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding:0 7px}.result-tools>.eyebrow,.result-tools h1,.tool-description,.result-tools .micro,#export-status{grid-column:1/-1}.result-tools h1{font-size:25px;margin:0;line-height:1.4}.result-tools h1 br{display:none}.tool-description{margin:0 0 8px;font-size:13px}.result-tools .secondary{margin:0}.result-tools .primary,.result-tools .secondary{font-size:12px;padding:13px}.result-tools .text-button{font-size:12px}.result-tools .micro{margin:0;font-size:10px}.report{width:100%;border-width:6px}.report-masthead{padding:14px 15px 3px;font-size:12px;gap:7px}.report-masthead span{font-size:9px}.report-hero{padding:18px 15px 12px;grid-template-columns:1.1fr 1fr}.report-hero h2{font-size:32px;letter-spacing:-1.8px}.report-hero h3{font-size:13px;margin-top:12px}.report p.report-keywords{font-size:9px;margin-top:7px}.report-character .character{height:170px}.type-number{font-size:8px}.report-quote{margin:0 12px 14px;padding:10px;font-size:14px}.report-row{padding:16px 13px;grid-template-columns:26px 1fr;gap:12px}.row-number{font-size:17px;padding-right:9px}.report h3{font-size:16px;margin-bottom:8px}.report p{font-size:12px;line-height:1.85}.report-bottom section{padding:14px 12px}.report-bottom h3{font-size:14px}.report-bottom h4{font-size:13px}.report-bottom p{font-size:11px}.report-footer{font-size:8px}.reasoning{display:block;padding:30px 22px;margin-top:30px}.reasoning h2{font-size:23px}.axis-list{margin-top:22px}.axis-list summary strong{float:none;display:block;margin-left:17px}.gallery-heading{padding:20px}.gallery-heading h1{font-size:29px}.gallery-grid{padding:0 16px;grid-template-columns:repeat(2,1fr);gap:12px}.gallery-card{padding:13px}.gallery-card .character{height:110px}.gallery-card h2{font-size:15px}.gallery-card p{font-size:10px}.card-arrow{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* 휴대폰에서는 결과지를 축소하지 않고 읽기 좋은 세로 콘텐츠로 재배치합니다.
   저장용 PNG는 export.js의 1080×1920 구성을 그대로 유지합니다. */
@media(max-width:700px){
  .site-header{padding:16px 20px}
  .landing{padding:26px 20px 34px;gap:24px}
  .hero-copy h1{font-size:clamp(28px,8vw,34px);line-height:1.4;letter-spacing:-1.5px;margin-bottom:18px}
  .hero-copy em{white-space:nowrap;text-decoration-thickness:8px}
  .lead{font-size:15px;line-height:1.8}
  .hero-art{height:225px}
  .hero-creature{inset:55px 25px 35px}
  .hero-copy .micro{font-size:11px}
  .quiz-shell{margin-top:16px;width:calc(100% - 32px)}
  .progress{margin-bottom:24px}
  .quiz-shell h1{font-size:25px;line-height:1.5}
  .question-context{margin:12px 0 23px;font-size:15px}
  .choice{font-size:16px;min-height:88px}
  .next{min-height:56px;margin-top:22px}
  .result-layout{padding:0 12px;gap:25px;margin-top:18px}
  .result-tools{order:2;padding:8px;gap:8px 16px}
  .result-tools h1{font-size:22px}
  .result-tools .text-button{font-size:14px}
  .result-tools .micro{font-size:12px}
  .result-tools #save,.result-tools #share{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:5;width:calc(50% - 22px);min-height:54px;margin:0;font-size:14px;justify-content:center;padding:14px 8px;box-shadow:none}
  .result-tools #save{left:16px}
  .result-tools #share{right:16px;background:var(--paper)}
  .has-result{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
  .has-result::after{content:'';position:fixed;bottom:0;left:0;right:0;height:calc(78px + env(safe-area-inset-bottom,0px));background:var(--paper);border-top:1px solid var(--ink);z-index:4}
  .has-result #toast{bottom:calc(95px + env(safe-area-inset-bottom,0px))}
  .report{order:1;border-width:5px}
  .report-hero{grid-template-columns:1fr;padding:18px 18px 12px;gap:10px}
  .report-hero h2{font-size:38px;line-height:1.2;letter-spacing:-1.8px;overflow-wrap:anywhere}
  .report-hero h3{font-size:17px;line-height:1.65}
  .report p.report-keywords{font-size:12px;line-height:1.7}
  .report-character .character{height:160px;max-width:265px;margin:auto}
  .type-number{font-size:10px}
  .report-quote{font-size:17px;padding:13px;line-height:1.65;margin:0 13px 18px}
  .report-row{display:block;padding:22px 18px}
  .row-number{display:inline-block;border:0;padding:0;margin-bottom:9px;font-size:16px}
  .report h3{font-size:20px;line-height:1.5;margin-bottom:10px}
  .report p{font-size:16px;line-height:1.9;letter-spacing:-.25px}
  .report-bottom{grid-template-columns:1fr}
  .report-bottom section{padding:22px 18px}
  .report-bottom section+section{border-left:0;border-top:1px solid var(--ink)}
  .report-bottom h3{font-size:20px}
  .report-bottom h4{font-size:18px;margin:12px 0}
  .report-bottom p{font-size:16px}
  .report-footer{font-size:10px;padding:12px;line-height:1.7}
  .reasoning{margin-top:18px;padding:25px 20px}
  .axis-list summary{font-size:15px;min-height:48px}
  .axis-list summary strong{font-size:14px;margin-top:4px}
  .axis-list details p{font-size:15px}
  .axis-list li{font-size:14px;margin:16px 0}
  .gallery-card p{font-size:12px;line-height:1.6}
  .gallery-card h2{font-size:16px;line-height:1.5}
  .share-input{font-size:16px}
  dialog{max-height:calc(100dvh - 40px);overflow-y:auto;padding:24px}
}
