/* HAMJU editorial redesign v1 — original CSS composition, no third-party imagery. */
:root{--bg:#17121f;--panel:#261d30;--ink:#f8f1e8;--muted:#c7b9ca;--pink:#d98baa;--mint:#b69a6b;--gold:#d8bd8c;--line:#f8f1e828}
html{scroll-behavior:smooth}
body{background:radial-gradient(ellipse at 70% -15%,#46304d 0,transparent 47%),radial-gradient(ellipse at 5% 50%,#2c2037 0,transparent 42%),#17121f;color:var(--ink);font-family:'DM Sans','Noto Serif KR',sans-serif;font-size:16px;line-height:1.75}
main{max-width:1180px}
.topbar{background:#17121fe8;border-color:#b69a6b44;height:76px}
.brand,.brand small{color:var(--ink)}.brand{font-family:'Noto Serif KR',serif;font-size:23px}.brand small{color:var(--gold);font-family:'DM Sans',sans-serif;font-size:10px}
.logo{border:1px solid #d8bd8c77;background:linear-gradient(135deg,#4d354a,#241b2e);border-radius:50%;color:#f6d7b8;box-shadow:inset 0 0 0 3px #17121f}
nav button{color:#d7cad8;font-size:13px}nav button:hover{background:#f8f1e811;color:#fff}
.hero{min-height:600px;grid-template-columns:1.05fr .95fr;gap:36px;padding:76px 0 64px;position:relative}
.hero:after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#b69a6b80,transparent)}
.hero-copy{position:relative;z-index:1}
.eyebrow{color:var(--gold);font:700 11px 'DM Sans',sans-serif;letter-spacing:.25em}
.hero h1,.page-head h1{font-family:'Noto Serif KR',serif;color:var(--ink);font-size:clamp(45px,5.3vw,70px);font-weight:600;letter-spacing:-.07em;line-height:1.27}
.hero h1 em{color:#efb6c9;text-shadow:none}
.hero-sub{color:#fff1e8;font-family:'Noto Serif KR',serif;font-size:21px;font-weight:500}
.muted,.heading p,.page-head p{color:var(--muted)}
.hero-copy>.muted{max-width:490px;font-size:15px}
.primary,.secondary{border-radius:10px;font-family:'DM Sans','Noto Serif KR',sans-serif;font-weight:700;transition:transform .2s,border-color .2s,background .2s}
.primary{background:linear-gradient(115deg,#d9a0b5,#eac7bc);color:#261724;box-shadow:0 8px 26px #0004;border:1px solid #e7b2c3}
.secondary{background:#f8f1e808;color:var(--ink);border-color:#b69a6b70}
.primary:hover,.secondary:hover{transform:translateY(-2px)}.secondary:hover{background:#f8f1e814;border-color:#e4cda4}
.note{color:#cbbbc7;font-size:12px}
.toy-wrap{filter:none;min-height:440px}
.toy-wrap:before{content:'';position:absolute;width:min(90%,425px);aspect-ratio:1;border:1px solid #b69a6b70;border-radius:50%;box-shadow:0 0 0 22px #b69a6b0b,0 0 0 44px #b69a6b07}
.toy{width:285px;padding:17px 20px 22px;transform:rotate(-4deg);border:1px solid #e3c3aa;background:linear-gradient(145deg,#745064,#3a2a45 58%,#241b30);box-shadow:inset 4px 4px 12px #ffffff22,inset -8px -8px 15px #0b081855,0 30px 65px #0007;animation:float 6s ease-in-out infinite}
.toy-label,.controls{color:#e9c7b8}.toy-window{background:radial-gradient(circle at 50% 45%,#5a435f,#241b35 72%);border:6px solid #b69a6b88;box-shadow:inset 0 0 40px #0008}.ring{filter:drop-shadow(0 0 5px currentColor);opacity:.8}.r1{color:#d98baa}.r2{color:#b69a6b}.r3{color:#e9d2b5}.r4{color:#b7a3c8}.r5{color:#d98baa}.buttons i{background:#b69a6b;border-color:#d7c0a7}
.section{padding:74px 0}.heading h2,.wish-cta h2{font-family:'Noto Serif KR',serif;color:var(--ink);font-weight:600;letter-spacing:-.045em}.heading p{font-size:14px}
.characters{gap:16px}.char{background:linear-gradient(160deg,#322539,#221a2b);border:1px solid #b69a6b40;border-radius:18px;padding:28px 18px;transition:transform .2s,border-color .2s}.char:hover{transform:translateY(-4px);border-color:#b69a6b99}.char.selected{border-color:#d98baa;box-shadow:0 0 0 1px #d98baa55}.hamster{width:92px;height:92px;background:radial-gradient(circle at 35% 30%,#f6e3d0,#bd9d82 80%);border:1px solid #e4c7a8;box-shadow:0 12px 24px #0005}.char h3{font-family:'Noto Serif KR',serif;font-size:15px;color:#fff1e8}.char p{color:#d1c3cf;font-size:13px}.char small{color:#c5b0bd;font-size:12px}
.plans{border-color:#b69a6b40}.plans-grid article{background:linear-gradient(150deg,#2e2338,#211a2b);border:1px solid #b69a6b50;border-radius:17px;padding:27px}.plans-grid article>b,.plans-grid article>b.gold{color:var(--gold)}.plans-grid article>b.pink{color:#efb6c9}.plans-grid h3{color:var(--ink);font-family:'Noto Serif KR',serif}.plans-grid p{color:var(--muted);font-size:13px}
.wish-cta{background:linear-gradient(105deg,#35253c,#241b2e);border:1px solid #b69a6b70;border-radius:18px}
.page-head h1{font-size:clamp(34px,4.5vw,52px)}
.panel,.result-card,.card,.character-card,.price-card{background:#261d30!important;border:1px solid #b69a6b50!important;color:var(--ink)!important;border-radius:17px}
.panel label{color:#f4e9ed;font-size:14px}.form-grid input,.form-grid select,.wide select,.panel input,.panel select,.panel textarea,input,select,textarea{background:#1b1524!important;color:#f8f1e8!important;border:1px solid #b69a6b70!important;border-radius:9px;font-family:'DM Sans','Noto Serif KR',sans-serif;font-size:15px}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid #efb6c9;outline-offset:3px}
h2,h3,h4{color:var(--ink);font-family:'Noto Serif KR',serif}.result-card h2{color:#fff0e9;font-family:'Noto Serif KR',serif}.result-card h3{color:#efb6c9}.result-card p,.result-card li{color:#ede1e9;font-size:16px;line-height:1.95}.result-card .muted{color:#c7b9ca}.lead{color:#f3c1ce;font-size:20px}.quote{border-color:#d8bd8c;background:#b69a6b16;color:#fff0e3}
.question legend{color:var(--ink)}.question{border-color:#b69a6b40}.option span{color:#d5c7d2;border-color:#b69a6b70}.option input:checked+span{background:#d98baa25;border-color:#efb6c9;color:#fff}
.canvas-wrap,.saved-item{background:#261d30;border-color:#b69a6b50}.saved-item p{color:var(--muted)}footer{border-color:#b69a6b50;color:#bbaabd}
.manseryeok-notice{color:#e6d2df!important;border-left-color:#d8bd8c;background:#b69a6b10}.pillar{background:#34273d;border-color:#b69a6b60}.pillar small{color:#e8b6ca}.pillar strong{color:#fff3e9}.pillar span{color:#e6d3dc}.saju-reading-section{border-color:#b69a6b40}.saju-reading-section h3{color:#eac0cf}
@media(max-width:760px){main{padding:0 18px}.topbar{height:64px;padding:0 14px}.brand{font-size:20px}nav button{font-size:12px;padding:8px 6px}.hero{grid-template-columns:1fr;min-height:auto;text-align:center;gap:0;padding:30px 0 48px}.toy-wrap{grid-row:1;min-height:320px}.toy-wrap:before{width:270px}.toy{width:220px;padding:13px 16px 17px}.toy-window{height:168px}.hero-copy{grid-row:2;padding:16px 0 0}.hero h1{font-size:clamp(39px,10vw,55px)}.hero-sub{font-size:19px}.hero-copy>.muted{margin-inline:auto}.section{padding:55px 0}.characters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.char{padding:20px 10px}.char h3{font-size:13px}.hamster{width:74px;height:74px;font-size:43px}.plans-grid{grid-template-columns:1fr}.form-grid,.talisman-layout{grid-template-columns:1fr}.result-card p,.result-card li{font-size:15px}.result-card{padding:22px 18px}.primary,.secondary{font-size:15px;padding:13px 16px}}
@media(max-width:370px){nav button{font-size:11px;padding:7px 4px}.brand{font-size:18px}.hero h1{font-size:37px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
