:root{--bg:oklch(100% 0 0);--surface:oklch(97.5% .004 242);--surface-2:oklch(95.5% .006 242);--ink:oklch(22% .028 250);--muted:oklch(52% .024 250);--faint:oklch(68% .018 250);--line:oklch(90% .008 250);--line-strong:oklch(84% .012 250);--primary:oklch(55% .14 250);--primary-ink:oklch(46% .15 250);--primary-wash:oklch(96.5% .02 250);--accent:oklch(82% .11 205);--accent-deep:oklch(62% .09 205);--shadow-card:0 1px 2px oklch(40% .03 250/.05), 0 8px 24px -12px oklch(40% .05 250/.22);--shadow-lift:0 2px 4px oklch(40% .03 250/.06), 0 24px 48px -20px oklch(40% .06 250/.28);--font-display:"Fraunces", ui-serif, Georgia, serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--radius:14px;--radius-lg:20px;--ease-out:cubic-bezier(.16, 1, .3, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.55}body:before{content:"";z-index:-1;background:radial-gradient(60% 50% at 50% -8%, var(--primary-wash), transparent 70%), radial-gradient(40% 40% at 92% 8%, oklch(97% .02 205), transparent 70%);pointer-events:none;position:fixed;inset:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:600}button{font:inherit;cursor:pointer}input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}.page{flex-direction:column;gap:clamp(1.75rem,4vw,2.75rem);max-width:1040px;margin:0 auto;padding:clamp(1.5rem,4vw,3.5rem) clamp(1.25rem,4vw,2.5rem) 3rem;display:flex}.masthead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1.5rem;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);align-items:center;gap:.6rem;font-size:1.35rem;font-weight:600;text-decoration:none;display:inline-flex}.brand__mark{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);gap:3px;width:26px;height:26px;display:grid;position:relative}.brand__mark>span{background:var(--primary);border-radius:3px}.brand__mark>span:first-child,.brand__mark>span:nth-child(2),.brand__mark>span:nth-child(3){aspect-ratio:1}.brand__dots{background:radial-gradient(circle at 25% 25%, var(--accent-deep) 34%, transparent 36%), radial-gradient(circle at 75% 25%, var(--accent-deep) 34%, transparent 36%), radial-gradient(circle at 25% 75%, var(--accent-deep) 34%, transparent 36%), radial-gradient(circle at 75% 75%, var(--accent-deep) 34%, transparent 36%)!important}.masthead__tag{color:var(--muted);margin:0;font-size:.95rem}.workspace{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:clamp(1.25rem,3vw,2rem);display:grid}@media (width<=780px){.workspace{grid-template-columns:1fr}}.panel{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:clamp(1.4rem,3vw,2rem)}.panel__head{margin-bottom:1.6rem}.panel__title{font-size:clamp(1.5rem,3.5vw,1.9rem);line-height:1.1}.panel__sub{max-width:46ch;color:var(--muted);margin:.55rem 0 0;font-size:.92rem;line-height:1.5}.form{flex-direction:column;gap:1.15rem;display:flex}.field{flex-direction:column;gap:.4rem;min-width:0;display:flex}.field--disabled{opacity:.55}.field__label{letter-spacing:.01em;color:var(--ink);font-size:.8rem;font-weight:600}.field__wrap{display:flex;position:relative}.field__input{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;color:var(--ink);transition:border-color .18s var(--ease-out), box-shadow .18s var(--ease-out), background .18s var(--ease-out);padding:.7rem .85rem}.field__input::placeholder{color:var(--faint)}.field__input:hover:not(:disabled){border-color:var(--muted)}.field__input:focus{background:var(--bg);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-wash);outline:none}.field__input:disabled{cursor:not-allowed}.field__wrap .field__input{padding-right:3.6rem}.field__toggle{color:var(--primary-ink);background:var(--primary-wash);border:none;border-radius:8px;padding:.28rem .55rem;font-size:.78rem;font-weight:600;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.field__toggle:hover{background:oklch(94% .035 250)}.field-row{grid-template-columns:1fr;gap:1.15rem;display:grid}.select{display:flex;position:relative}.select .field__input{appearance:none;cursor:pointer;padding-right:2.4rem}.select__caret{width:14px;height:14px;color:var(--muted);pointer-events:none;position:absolute;top:50%;right:.85rem;transform:translateY(-50%)}.switch{cursor:pointer;align-items:flex-start;gap:.7rem;display:flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch__track{background:var(--line-strong);width:40px;height:23px;transition:background .2s var(--ease-out);border-radius:999px;flex:none;margin-top:1px;position:relative}.switch__thumb{background:var(--bg);width:19px;height:19px;transition:transform .2s var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px oklch(30% .02 250/.35)}.switch input:checked+.switch__track{background:var(--primary)}.switch input:checked+.switch__track .switch__thumb{transform:translate(17px)}.switch input:focus-visible+.switch__track{outline:2px solid var(--primary);outline-offset:2px}.switch__label{color:var(--ink);flex-direction:column;font-size:.9rem;font-weight:600;display:flex}.switch__label small{color:var(--muted);font-size:.8rem;font-weight:400}.preview{flex-direction:column;gap:1.1rem;display:flex;position:sticky;top:1.5rem}.card{--card-fg:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out);flex-direction:column;align-items:center;gap:1.25rem;padding:clamp(1.6rem,3vw,2.2rem);display:flex}.card--ready:hover{transform:translateY(-2px)}.card__header{text-align:center}.card__eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--accent-deep);background:oklch(96% .03 205);border-radius:999px;padding:.2rem .7rem;font-size:.72rem;font-weight:600;display:inline-block}.card__network{overflow-wrap:anywhere;max-width:22ch;margin-top:.6rem;font-size:clamp(1.35rem,4vw,1.7rem);line-height:1.15}.card__qr{border:1px solid var(--line);border-radius:var(--radius);background:#fff;place-items:center;padding:14px;display:grid}.card__qr svg{height:auto;display:block}.card__placeholder{text-align:center;width:220px;height:220px;color:var(--faint);flex-direction:column;justify-content:center;align-items:center;gap:.9rem;display:flex}.card__placeholder svg{width:46px;height:46px}.card__placeholder p{max-width:22ch;margin:0;font-size:.85rem;line-height:1.4}.card__footer{color:var(--muted);flex-direction:column;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.card__pw{font-family:var(--font-mono);color:var(--ink);background:var(--surface-2);border:1px dashed var(--line-strong);overflow-wrap:anywhere;border-radius:8px;padding:.3rem .7rem;font-size:.9rem}.preview__actions{flex-direction:column;align-items:center;gap:.6rem;display:flex}.btn{border-radius:var(--radius);transition:transform .15s var(--ease-out), box-shadow .2s var(--ease-out), background .2s var(--ease-out);border:1px solid #0000;align-items:center;gap:.55rem;padding:.75rem 1.4rem;font-weight:600;display:inline-flex}.btn svg{width:19px;height:19px}.btn--primary{color:oklch(99% .005 250);background:var(--primary);box-shadow:0 1px 2px oklch(40% .1 250/.3),0 10px 20px -10px oklch(50% .15 250/.6)}.btn--primary:hover:not(:disabled){background:var(--primary-ink);transform:translateY(-1px)}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.preview__hint{color:var(--muted);text-align:center;margin:0;font-size:.82rem}.footer{color:var(--faint);text-align:center;font-size:.82rem}@media print{:root{--shadow-card:none;--shadow-lift:none}body:before{display:none}.masthead,.panel,.preview__actions,.footer{display:none!important}.page{padding:0;display:block}.workspace{display:block}.preview{position:static}.card{max-width:340px;box-shadow:none;break-inside:avoid;border:1px solid #cbd2dd;margin:0 auto}.card__eyebrow{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
