@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css");@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap");:root{--bg:#090e12;--elev:#0d1217;--surf:#141a20;--surf2:#171d23;--border:#1c212b;--borders:#2a313c;--steal:#121f1c;--sgold:#1e1713;--sred:#24140f;--mint:#45cfa6;--mint-strong:#33d4ba;--gold:#e9c239;--blue:#5e8fbe;--red:#e5685a;--on-brand:#0a0f12;--gradient:linear-gradient(135deg,#33d4ba,#f4c029);--text:#f5f7fa;--sec:#b6bdc7;--muted:#828b99;--font-sans:"Pretendard Variable",Pretendard,Inter,system-ui,"Noto Sans KR",sans-serif;--font-num:"Inter","Pretendard Variable",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:24px;--glow:0 0 0 1px rgba(69,207,166,0.5),0 0 24px rgba(69,207,166,0.18);--shadow-card:0 1px 0 rgba(255,255,255,0.02) inset,0 8px 24px rgba(0,0,0,0.4);--ease:cubic-bezier(0.22,1,0.36,1);--mx:clamp(1.1rem,5vw,2rem)}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(60rem 42rem at 78% -12%,rgba(51,212,186,.07),transparent 60%),radial-gradient(52rem 40rem at -8% 108%,rgba(244,192,41,.05),transparent 55%);pointer-events:none}a{color:var(--mint);text-decoration:none}a:hover{text-decoration:underline}.shell{max-width:720px;margin:0 auto;padding:2.4rem var(--mx) 5rem}.center{min-height:100dvh;display:grid;place-items:center;padding:2rem var(--mx)}.center-col{width:100%;max-width:440px;text-align:center}h1,h2,h3{font-family:var(--font-sans);letter-spacing:-.02em;margin:0}h1{font-size:clamp(1.7rem,4vw,2.5rem);font-weight:700;line-height:1.15}h2{font-size:1.2rem;line-height:1.3;margin-bottom:.85rem}h2,h3{font-weight:600}h3{font-size:.95rem;color:var(--sec);margin-bottom:.5rem}.accent{background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{font-family:var(--font-num);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mint);margin-bottom:.7rem}.muted{color:var(--muted)}.sec{color:var(--sec)}.small{font-size:.86rem}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.metric,.num{font-family:var(--font-num)}.metric{font-weight:700;color:var(--gold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.row{gap:.6rem;flex-wrap:wrap}.row,.spread{display:flex;align-items:center}.spread{justify-content:space-between;gap:1rem}.stack{display:flex;flex-direction:column;gap:.65rem}.divider{height:1px;background:var(--border);margin:1.15rem 0}.card{background:var(--surf);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;margin-bottom:1.1rem;box-shadow:var(--shadow-card)}.card.selected{background:var(--steal);border-color:var(--mint);box-shadow:var(--glow)}label{font-size:.82rem;color:var(--sec);display:block;margin-bottom:.4rem}input,select,textarea{width:100%;padding:.66rem .8rem;background:var(--surf2);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);font:inherit;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--mint);box-shadow:var(--glow)}textarea{resize:vertical;min-height:80px;line-height:1.55}button{padding:.66rem 1.05rem;border-radius:var(--r-md);border:1px solid var(--borders);background:transparent;color:var(--text);font:inherit;font-weight:500;cursor:pointer;transition:filter .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease),transform .05s}button:hover:not(:disabled){border-color:var(--sec);background:rgba(255,255,255,.03)}button:active:not(:disabled){transform:translateY(1px)}button.primary{background:var(--gradient);color:var(--on-brand);border-color:transparent;font-weight:600}button.primary:hover:not(:disabled){filter:brightness(1.06);background:var(--gradient)}button:disabled{opacity:.45;cursor:not-allowed}button.small{padding:.42rem .72rem;font-size:.8rem;border-radius:var(--r-sm)}.btn-block{width:100%}.seg{display:inline-flex;padding:3px;gap:3px;background:var(--surf2);border:1px solid var(--border);border-radius:var(--r-md)}.seg button{border:none;background:transparent;color:var(--sec);padding:.35rem .8rem;border-radius:9px;font-size:.85rem}.seg button.on{background:var(--steal);color:var(--mint)}.seg-full{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;width:100%}.seg-full button{text-align:center}.field-area{animation:fade .18s var(--ease)}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}@media (max-width:440px){.field-row{grid-template-columns:1fr}}.chips{display:flex;flex-wrap:wrap;gap:.4rem}.chip{padding:.36rem .72rem;border-radius:999px;border:1px solid var(--border);background:var(--surf2);color:var(--sec);font-size:.82rem;cursor:pointer;transition:border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}.chip:hover:not(:disabled){border-color:var(--sec);background:var(--surf2)}.chip.on{background:var(--steal);border-color:var(--mint);color:var(--mint)}.upload{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1rem;border:1px dashed var(--borders);border-radius:var(--r-md);background:var(--surf2);color:var(--sec);font-size:.85rem;cursor:pointer;width:-moz-fit-content;width:fit-content;transition:border-color .2s var(--ease),color .2s var(--ease)}.upload:hover{border-color:var(--mint);color:var(--mint)}.brief-chip{display:flex;gap:.5rem;align-items:baseline;padding:.55rem .75rem;background:var(--surf2);border:1px solid var(--border);border-radius:var(--r-sm)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.14rem .55rem;border-radius:var(--r-full,999px);border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;border:1px solid var(--borders);color:var(--sec);font-family:var(--font-num)}.badge.pass{color:var(--mint);border-color:rgba(69,207,166,.5)}.badge.marginal{color:var(--gold);border-color:rgba(233,194,57,.5)}.badge.fail{color:var(--red);border-color:rgba(229,104,90,.5)}.badge.ship{background:var(--gradient);color:var(--on-brand);border-color:transparent}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:1rem;gap:1rem}.thumb{width:100%;border-radius:var(--r-md);border:1px solid var(--border);display:block;background:#fff}.thumb.shippable{border-color:var(--mint);box-shadow:var(--glow)}.error{color:var(--red);font-size:.85rem}code{background:var(--surf2);border:1px solid var(--border);padding:.1rem .4rem;border-radius:6px;font-family:var(--font-mono);font-size:.85em;color:var(--sec)}@keyframes creus-pulse{0%,to{opacity:.25}50%{opacity:1}}.pulse-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mint);animation:creus-pulse 1.1s var(--ease) infinite}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.tile{padding:0;text-align:left;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surf);overflow:hidden;cursor:pointer;color:var(--text);transition:border-color .2s var(--ease),box-shadow .2s var(--ease),transform .09s var(--ease)}.tile:hover:not(:disabled){border-color:var(--mint);box-shadow:var(--glow);transform:translateY(-2px);background:var(--surf)}.tile-thumb{position:relative;aspect-ratio:1;background:#fff;display:grid;place-items:center;border-bottom:1px solid var(--border)}.tile-tag{position:absolute;top:8px;left:8px;padding:.12rem .42rem;font-size:.66rem;font-family:var(--font-num);border-radius:6px;background:rgba(9,14,18,.72);color:var(--sec);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tile-thumb img{width:100%;height:100%;object-fit:cover;display:block}.tile-ph{color:#c8ccd2;font-size:1.35rem;letter-spacing:.12em}.tile-body{padding:.8rem .9rem .95rem;display:flex;flex-direction:column;gap:.35rem;min-width:0}.tile-code{background:none;border:none;padding:0;color:var(--text);font-size:.82rem}.tile-code,.tile-dest{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-card.primary .thumb{border-color:var(--mint);box-shadow:var(--glow)}.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:40;animation:fade .2s var(--ease)}.drawer{position:fixed;top:0;right:0;height:100dvh;width:min(460px,92vw);background:var(--surf);border-left:1px solid var(--borders);box-shadow:-20px 0 50px rgba(0,0,0,.5);padding:1.5rem;overflow-y:auto;z-index:41;animation:slidein .28s var(--ease)}@keyframes fade{0%{opacity:0}}@keyframes slidein{0%{transform:translateX(24px);opacity:0}}.drawer-hero{width:100%;aspect-ratio:1;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;display:grid;place-items:center;margin-bottom:.7rem}.drawer-hero img{width:100%;height:100%;object-fit:contain;display:block}.skeleton{position:relative;overflow:hidden;background:var(--surf2);border-color:var(--border)}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.04),transparent);animation:shimmer 1.3s infinite}@keyframes shimmer{to{transform:translateX(100%)}}