.admin{min-height:100vh;background:var(--surface-alt);color:var(--ink)}.admin-nav{display:flex;align-items:center;gap:18px;padding:14px 22px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.admin-nav .logo{font-weight:800;color:var(--accent);letter-spacing:.06em}.admin-nav a{color:var(--ink-soft);text-decoration:none;font-weight:600;font-size:15px;padding:6px 4px;border-bottom:2px solid transparent}.admin-nav a.active{color:var(--ink);border-bottom-color:var(--accent)}.admin-nav .spacer{flex:1}.admin-nav .who{font-size:13px;color:var(--ink-soft)}.admin-main{max-width:1120px;margin:0 auto;padding:26px 22px 60px}.admin h1{font-size:22px;margin:0 0 18px}.admin h2{font-size:17px;margin:26px 0 12px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.stat .n{font-size:30px;font-weight:800}.stat .l{font-size:13px;color:var(--ink-soft);margin-top:2px}.stat.warn .n{color:var(--danger)}.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;align-items:center}.toolbar input,.toolbar select{padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:14px;background:var(--surface);color:var(--ink)}.toolbar input[type=search]{min-width:240px}table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:12px;overflow:hidden;border:1px solid var(--line)}th,td{text-align:left;padding:11px 12px;font-size:14px;border-bottom:1px solid var(--line)}th{background:var(--surface-alt);font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}tr:last-child td{border-bottom:none}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700}.badge.pending{background:var(--accent-soft);color:var(--accent-dark)}.badge.exported{background:#e4f1ea;color:var(--success)}.badge.needs_reexport{background:var(--danger-soft);color:var(--danger)}.abtn{padding:9px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-weight:600;font-size:14px;cursor:pointer}.abtn:hover:not(:disabled){border-color:var(--accent)}.abtn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.abtn.primary:hover:not(:disabled){background:var(--accent-dark)}.abtn.danger{color:var(--danger);border-color:#eecac8}.abtn:disabled{opacity:.5;cursor:not-allowed}.row-actions{display:flex;gap:6px}.pager{display:flex;gap:10px;margin-top:16px;align-items:center}.muted{color:var(--ink-soft);font-size:14px}.modal-bg{position:fixed;inset:0;background:#1f1b1673;display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.modal{background:var(--surface);border-radius:16px;padding:24px;width:100%;max-width:460px;max-height:90vh;overflow:auto}.modal h3{margin:0 0 16px}.modal .field label{font-size:14px}.modal .field input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;font-size:15px}.modal-actions{display:flex;gap:10px;margin-top:20px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface-alt);padding:20px}.login-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;width:100%;max-width:380px}.login-card h1{text-align:center}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;margin-bottom:18px}.preview-rows{font-family:ui-monospace,Menlo,monospace;font-size:13px;background:var(--surface-alt);border-radius:8px;padding:12px;overflow-x:auto;white-space:pre}:root{--accent: #F47D07;--accent-dark: #D96A03;--accent-soft: #FDEBD3;--ink: #1F1B16;--ink-soft: #5B554D;--line: #E7E2DA;--surface: #FFFFFF;--surface-alt: #FBF9F6;--success: #1E7A46;--danger: #B4231F;--danger-soft: #FBE7E6;--radius: 14px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;line-height:1.5;font-size:17px}.page{min-height:100%;display:flex;flex-direction:column;align-items:center;padding:24px 18px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(120% 60% at 50% 0%,var(--accent-soft) 0%,transparent 60%),var(--surface)}.card{width:100%;max-width:460px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:26px 22px 30px;box-shadow:0 10px 40px #1f1b160f}.topbar{width:100%;max-width:460px;display:flex;justify-content:flex-end;margin-bottom:12px}.brand{text-align:center;margin-bottom:18px}.brand img{height:96px;width:auto}.brand .wordmark{font-weight:800;letter-spacing:.12em;font-size:34px;color:var(--accent)}h1.title{font-size:24px;margin:6px 0 4px;text-align:center}p.subtitle{color:var(--ink-soft);text-align:center;margin:0 0 22px;font-size:16px}.field{margin-bottom:18px}.field label{display:block;font-weight:600;margin-bottom:7px;font-size:15px}.field .req{color:var(--accent-dark);font-weight:700}.field .opt{color:var(--ink-soft);font-weight:500;font-size:13px}.field input[type=text],.field input[type=tel],.field input[type=email]{width:100%;font-size:18px;padding:15px 14px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);transition:border-color .12s ease,box-shadow .12s ease}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.field input[aria-invalid=true]{border-color:var(--danger)}.hint{color:var(--ink-soft);font-size:13.5px;margin-top:6px}.error{color:var(--danger);font-size:14px;margin-top:6px;font-weight:500}.consent{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1.5px solid var(--line);border-radius:var(--radius);margin-bottom:14px;background:var(--surface-alt)}.consent input[type=checkbox]{width:24px;height:24px;margin:0;flex:0 0 auto;accent-color:var(--accent);cursor:pointer}.consent label{font-size:15px;cursor:pointer}.consent a{color:var(--accent-dark);font-weight:600}.btn{width:100%;font-size:18px;font-weight:700;padding:16px;border-radius:var(--radius);border:none;cursor:pointer;background:var(--accent);color:#fff;transition:background .12s ease;min-height:54px}.btn:hover:not(:disabled){background:var(--accent-dark)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}.btn.secondary:hover:not(:disabled){background:var(--surface-alt)}.lang-btn{border:1.5px solid var(--line);background:var(--surface);color:var(--ink);padding:9px 16px;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;min-height:44px}.lang-btn:hover{border-color:var(--accent)}.alert{border-radius:var(--radius);padding:14px 16px;margin-bottom:16px;font-size:15px}.alert.danger{background:var(--danger-soft);color:var(--danger);border:1px solid #f0c9c7}.confirm{text-align:center}.confirm .check{width:72px;height:72px;border-radius:50%;margin:4px auto 16px;background:var(--accent-soft);color:var(--accent-dark);display:flex;align-items:center;justify-content:center;font-size:40px}.confirm h1{font-size:26px;margin:0 0 12px}.confirm p{color:var(--ink-soft);font-size:17px;margin:0 0 24px}.foot{margin-top:22px;text-align:center;font-size:13px;color:var(--ink-soft)}.foot a{color:var(--ink-soft);text-decoration:underline}.policy{max-width:720px;margin:0 auto;padding:40px 20px}.policy h1{font-size:26px}.policy h2{font-size:19px;margin-top:28px}.policy .editable-note{background:var(--accent-soft);color:var(--accent-dark);padding:12px 14px;border-radius:var(--radius);font-size:14px;margin-bottom:24px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
