:root{--blue: #3182f6;--blue-pressed: #1b64da;--blue-soft: #e8f3ff;--bg: #ffffff;--bg-soft: #f7f8fa;--text: #191f28;--text-sub: #6b7684;--line: #e5e8eb;--danger: #d92d20;--radius: 16px;--shadow: 0 10px 30px rgba(25, 31, 40, .05);color:var(--text);background:var(--bg-soft);font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.55}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg-soft)}button,input,textarea,select{font:inherit;color:inherit}a{color:var(--blue);text-decoration:none}img{max-width:100%}.skip{position:absolute;left:12px;top:-40px;background:var(--blue);color:#fff;padding:8px 12px;border-radius:8px;z-index:5}.skip:focus{top:12px}.topbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:0 20px;background:#fffffff0;border-bottom:1px solid var(--line)}.brand{color:var(--text);font-weight:700;letter-spacing:-.03em}.nav-scroll{display:flex;gap:6px;overflow-x:auto}.nav-scroll a{color:var(--text-sub);padding:8px 10px;border-radius:10px;white-space:nowrap;font-weight:600}.nav-scroll a.active,.nav-scroll a[aria-current=page]{color:var(--blue);background:var(--blue-soft)}.page{width:min(760px,calc(100% - 32px));margin:0 auto;padding:32px 0 72px}.page-wide{width:min(1120px,calc(100% - 32px))}.page-head,.row,.spread{display:flex;gap:12px;align-items:center}.page-head,.spread{justify-content:space-between}.page-head{align-items:flex-end;margin-bottom:20px}.stack{display:grid;gap:14px}h1{margin:0;font-size:36px;line-height:1.25;letter-spacing:-.04em}h2{margin:0;font-size:20px;letter-spacing:-.03em}.eyebrow{margin:0 0 8px;color:var(--blue);font-weight:700}.lede,.copy,.hint,.footnote{color:var(--text-sub)}.lede{font-size:18px;margin:0}.footnote{margin-top:28px}.label{margin:0 0 8px;color:var(--text-sub);font-size:14px;font-weight:600}.hero{display:grid;gap:28px;align-items:center;padding:28px 0 12px}.hero-card,.card{background:var(--bg);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.hero-card{padding:24px}.card{padding:20px}.hero-label{margin:0;color:var(--text-sub);font-size:13px;font-weight:700}.typed{margin:8px 0 18px;font-size:28px;font-weight:700;letter-spacing:-.04em}.script{width:100%;height:auto}.script path{fill:none;stroke:var(--blue);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.steps{display:grid;gap:12px;margin-top:28px}.step-no{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 16px;border-radius:12px;border:1px solid transparent;font-weight:700;cursor:pointer;text-decoration:none}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--blue);color:#fff}.btn-primary:active{background:var(--blue-pressed)}.btn-secondary{background:#fff;color:var(--text);border-color:var(--line)}.btn-ghost{background:transparent;color:var(--text-sub)}.btn-danger{background:#fff;color:var(--danger);border-color:#f3c7c3}.btn-full{width:100%}.text-link{align-self:center;font-weight:700}.field{display:grid;gap:6px;font-weight:600}.input,.textarea,select.input{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px 14px}.textarea{resize:vertical;min-height:140px}.hint{color:var(--text-sub);font-weight:500}.error{color:var(--danger);font-weight:600}.banner{background:var(--blue-soft);color:var(--text);border-radius:14px;padding:12px 14px}.count{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.count.over{color:var(--danger)}.stat{margin:8px 0 0;font-size:28px;font-weight:700;letter-spacing:-.04em}.usage-list{margin:8px 0 0;padding-left:18px}.usage-strong{margin:8px 0 0;color:var(--blue);font-weight:800}.stat-grid,.price-grid,.split{display:grid;gap:12px}.auth-card{max-width:440px}.segmented,.pen-row,.char-row,.row{display:flex;flex-wrap:wrap;gap:8px}.segmented{padding:4px;background:var(--bg-soft);border-radius:14px}.segmented button,.chip,.profile-pick{border:1px solid transparent;background:#fff;border-radius:10px;min-height:40px;padding:8px 12px;cursor:pointer}.segmented button[aria-pressed=true],.chip-active,.profile-pick.active{background:var(--blue);color:#fff}.chip-done{border-color:#b7d4fb;color:var(--blue)}.profile-pick{display:grid;text-align:left}.profile-pick span{color:var(--text-sub);font-size:13px}.profile-pick.active span{color:#fff}.pad-block{display:grid;gap:8px}.pad{position:relative;height:min(62vh,520px);background:#fff;border:1px solid var(--line);border-radius:20px;touch-action:none;overflow:hidden}.pad-layer{position:absolute;inset:0;width:100%;height:100%}.saved-preview{display:flex;gap:12px;align-items:center}.saved-preview img,.glyph img,.thumb{width:96px;height:96px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:12px}.sample,.preview{width:100%;border-radius:12px;background:#fff}.checker{background-image:linear-gradient(45deg,#eceff3 25%,transparent 25%),linear-gradient(-45deg,#eceff3 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eceff3 75%),linear-gradient(-45deg,transparent 75%,#eceff3 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.compose{display:grid;gap:16px}.compose-result{display:grid;gap:16px;align-content:start}.history-list,.glyph-grid,.cell-grid{display:grid;gap:10px}.history-item{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center}.history-item.focus{outline:3px solid var(--blue)}.day-group{display:grid;gap:12px}.day-group h2{display:flex;justify-content:space-between;align-items:baseline;margin:8px 0 0;font-size:1.05rem}.day-group h2 span{color:var(--text-sub);font-size:.9rem;font-weight:600}.glyph-grid,.cell-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.glyph,.cell{margin:0;display:grid;gap:6px;justify-items:center}.cell img{width:100%;height:90px;object-fit:contain;background:#fff}.cell.bad{outline:2px solid var(--danger);border-radius:12px}.swatch{width:36px;height:36px;border-radius:50%;border:2px solid white;box-shadow:0 0 0 1px var(--line);cursor:pointer}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--blue)}.upload{display:grid;gap:8px;padding:16px;border:1px dashed var(--line);border-radius:16px;background:var(--bg-soft)}.crop-grid{display:grid;gap:8px}.plain-list{margin:0;padding-left:18px}.danger-zone{border-color:#f3c7c3}.page-loading{padding:48px 20px;text-align:center;color:var(--text-sub)}.modal-backdrop{position:fixed;inset:0;background:#191f2875;display:grid;place-items:center;padding:20px;z-index:20}.modal{width:min(520px,100%);background:#fff;border-radius:20px;padding:22px;display:grid;gap:12px}.hidden{display:none}@media(min-width:800px){.hero{grid-template-columns:1.1fr .9fr}.steps,.stat-grid{grid-template-columns:repeat(3,1fr)}.price-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:320px 1fr;align-items:start}.crop-grid{grid-template-columns:1fr 1fr}}@media(min-width:980px){.compose{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:start}.compose-result{position:sticky;top:84px}h1{font-size:44px}}@media(max-width:720px){h1{font-size:30px}.page-head,.history-item{display:grid}.topbar{align-items:flex-start;flex-direction:column;padding:12px 16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
