:root{--bg:#fffbf5;--fg:#0a0a0a;--muted:#6b6b6b;--line:#e8e0d6;--line-strong:#1a1a1a;--accent:#0b1d3a;--accent-2:#ff4d00;--card:#fff;--radius:2px;--mono:"JetBrains Mono", ui-monospace, monospace;--serif:"Instrument Serif", Georgia, serif;--sans:ui-sans-system, -apple-system, BlinkMacSystemFont, "Inter", sans-serif;--max:1180px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}html,body{background:var(--bg);color:var(--fg);font-family:var(--sans);margin:0;padding:0}a{color:inherit;text-underline-offset:3px;text-decoration:underline}a:hover{opacity:.7}img{max-width:100%;height:auto}.topbar{border-bottom:1px solid var(--line-strong);background:var(--bg);z-index:10;-webkit-backdrop-filter:saturate(1.2);backdrop-filter:saturate(1.2);position:sticky;top:0}.topbar-inner{max-width:var(--max);justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:12px 16px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{font-family:var(--serif);letter-spacing:-.02em;border:1.5px solid var(--line-strong);background:var(--card);flex-shrink:0;padding:4px 8px;font-size:20px;line-height:1}.brand-meta{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:11px}.nav{letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;gap:10px;font-size:11px;display:flex}.nav a{padding:6px 2px}.hero{max-width:var(--max);border-bottom:1px solid var(--line);grid-template-columns:1.15fr .85fr;gap:18px;margin:0 auto;padding:24px 16px 16px;display:grid}.hero h1{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 8px;font-size:clamp(32px,5vw,52px);font-weight:400;line-height:.95}.hero h1 i{color:var(--muted);font-style:italic}.hero p{color:var(--muted);max-width:46ch;margin:0;font-size:14px;line-height:1.6}.hero-meta{font-family:var(--mono);letter-spacing:.02em;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;font-size:10px;display:flex}.badge{border:1px solid var(--line-strong);background:var(--card);white-space:nowrap;padding:3px 7px}.hero-card{border:1px solid var(--line-strong);background:var(--card);align-self:start;gap:8px;padding:12px;display:grid}.hero-card .k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px}.hero-card .v{font-family:var(--mono);word-break:break-all;font-size:11px;line-height:1.5}.hero-card .sep{background:var(--line);height:1px;margin:2px 0}.main{max-width:var(--max);grid-template-columns:1fr 1fr;gap:16px;margin:0 auto;padding:16px 16px 32px;display:grid}.card{border:1px solid var(--line-strong);background:var(--card);padding:14px}.card-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;padding-bottom:10px;display:flex}.card-head h2{font-family:var(--serif);letter-spacing:-.02em;margin:0;font-size:20px;font-weight:400}.card-head span{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px}.field{gap:6px;margin-bottom:12px;display:grid}.field label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px}.field input,.field select,.field textarea{border:1px solid var(--line-strong);width:100%;font-family:var(--sans);border-radius:var(--radius);background:#fff;outline:none;min-height:44px;padding:11px;font-size:16px}.field textarea{font-family:var(--mono);resize:vertical;min-height:88px;font-size:12px;line-height:1.5}.field select{font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #0b1d3a14}.row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.hint{color:var(--muted);font-size:12px;line-height:1.5}.uploader{border:1px dashed var(--line-strong);cursor:pointer;text-align:center;background:#fff;place-items:center;gap:6px;min-height:88px;padding:16px;transition:background .15s;display:grid}.uploader:hover{background:#fff8ec}.uploader:active{background:#fff0d6}.uploader small{font-family:var(--mono);color:var(--muted);font-size:11px}.btn{appearance:none;border:1px solid var(--line-strong);background:var(--accent);color:#fff;font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:var(--radius);justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:11px 14px;font-size:13px;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.secondary{color:var(--fg);background:#fff}.btn:active{transform:translateY(.5px)}.actions{flex-wrap:wrap;gap:8px;display:flex}.qr-wrap{border:1px solid var(--line-strong);background:#fff;place-items:center;min-height:220px;padding:12px;display:grid}.qr-wrap img{aspect-ratio:1;width:min(260px,70vw);height:auto;image-rendering:pixelated;border:1px solid var(--line)}.qr-empty{font-family:var(--mono);color:var(--muted);text-align:center;padding:12px;font-size:12px;line-height:1.6}.meta{gap:10px;font-size:13px;line-height:1.6;display:grid}.meta b{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:11px;display:block}.code{font-family:var(--mono);word-break:break-all;border:1px solid var(--line);-webkit-overflow-scrolling:touch;background:#fffefc;max-height:160px;padding:10px;font-size:11px;line-height:1.6;overflow:auto}.alert{border:1px solid var(--accent-2);background:#fff2ef;padding:10px;font-size:12px;line-height:1.6}.ok{background:#eff8f5;border:1px solid #0b6e4f;padding:10px;font-size:12px}.foot{max-width:var(--max);border-top:1px solid var(--line-strong);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);grid-template-columns:1fr auto;gap:12px;margin:0 auto;padding:14px 16px;font-size:11px;display:grid}@media (width<=860px){.hero{grid-template-columns:1fr;padding:20px 16px 14px}.main{grid-template-columns:1fr}.topbar-inner{padding:10px 16px}.brand-meta{display:none}}@media (width<=520px){.row{grid-template-columns:1fr}.topbar-inner{gap:8px}.nav{gap:8px;font-size:10px}.hero h1{font-size:36px}.card{padding:12px}.foot{text-align:center;grid-template-columns:1fr}.actions{grid-template-columns:1fr 1fr;display:grid}.actions .btn{width:100%}}.pwa-banner{border:1px solid var(--line-strong);background:var(--accent);color:#fff;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:none}.pwa-banner.show{display:flex}.pwa-banner button{color:var(--accent);border:1px solid var(--line-strong);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:#fff;min-height:36px;padding:8px 10px;font-size:12px}@media print{.topbar,.foot,.pwa-banner{display:none!important}.hero,.main{padding:0}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
