:root{--bg: #f6f9fc;--panel: #ffffff;--text: #0a2540;--text-dim: #425466;--text-soft: #697386;--border: #e3e8ee;--indigo: #635bff;--indigo-2: #adbdff;--indigo-soft: #f0f4ff;--green: #00d4b1;--red: #df1b41;--amber: #ffb547;--radius: 8px;--radius-sm: 6px;--shadow-sm: 0 2px 5px -1px rgba(50, 50, 93, .05);--shadow-md: 0 6px 12px -3px rgba(50, 50, 93, .1)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--indigo);text-decoration:none}a:hover{text-decoration:underline}code{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;background:var(--indigo-soft);padding:1px 5px;border-radius:4px;color:#3c2e9c}.btn{background:var(--indigo);color:#fff;border:0;padding:10px 18px;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;font-size:14px;box-shadow:0 1px 3px #635bff66;font-family:inherit;transition:background-color 80ms ease}.btn:hover:not(:disabled){background:#4f47e0}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:#fff;color:var(--text);border:1px solid var(--border);box-shadow:none}.btn.secondary:hover:not(:disabled){background:#fafbfc}.btn.danger{background:var(--red);box-shadow:0 1px 3px #df1b4159}.btn.danger:hover:not(:disabled){background:#b8132f}.btn.small{padding:6px 12px;font-size:13px}.btn-row{display:flex;gap:10px;align-items:center}.boot{height:100vh;display:flex;align-items:center;justify-content:center}.boot-spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--indigo-soft);border-top-color:var(--indigo);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.topbar{background:linear-gradient(135deg,#0a2540,#1a3a5c);color:#fff;padding:14px 32px;display:flex;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:8px;font-weight:600;font-size:16px}.brand-dot{width:22px;height:22px;border-radius:6px;background:linear-gradient(135deg,var(--indigo),var(--indigo-2))}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:16px;font-size:13px}.balance{background:#ffffff14;padding:6px 12px;border-radius:6px}.balance b{color:var(--indigo-2)}.avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#ff7eb6,var(--indigo))}.container{padding:36px 32px;max-width:1400px;margin:0 auto}.container.narrow{max-width:540px}.container h1{font-size:28px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.container .lead{color:var(--text-dim);margin-bottom:28px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;margin-bottom:28px;box-shadow:var(--shadow-sm)}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.card-head{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.card-head h2{font-size:15px;font-weight:600}.card-head .link{color:var(--indigo);font-size:13px}.url-head{font-size:13px;color:var(--text-dim);margin-bottom:8px}.url-row{display:flex;gap:10px;align-items:center}.url-input{flex:1;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-family:inherit;color:var(--text)}.url-input:focus{outline:2px solid var(--indigo-2);border-color:var(--indigo)}.url-generated{margin-top:12px;font-size:13px;color:var(--text-dim);display:flex;align-items:center;gap:8px}.url-generated a{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.layout{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}@media (max-width: 980px){.layout{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse}thead th{text-align:left;padding:10px 20px;font-size:11px;color:var(--text-soft);font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}tbody td{padding:14px 20px;border-bottom:1px solid var(--border);font-size:14px}tbody tr{cursor:pointer}tbody tr:hover{background:#fafbfc}tbody tr.sel{background:var(--indigo-soft)}.phone{color:var(--text-dim);font-variant-numeric:tabular-nums}.pag{padding:14px 20px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--text-soft)}.pag .nav button{background:#fff;border:1px solid var(--border);padding:4px 10px;border-radius:4px;cursor:pointer;font-size:13px;margin-left:6px;font-family:inherit;color:var(--text)}.pag .nav button:disabled{opacity:.45;cursor:not-allowed}.detail-empty{padding:40px 20px;text-align:center;color:var(--text-soft);font-size:13px}.detail-head{padding:20px;border-bottom:1px solid var(--border)}.detail-name{font-size:18px;font-weight:600}.detail-meta{color:var(--text-soft);font-size:13px;margin-top:4px}.tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--border)}.tab{padding:12px 0;margin-right:24px;cursor:pointer;color:var(--text-soft);font-size:13px;border-bottom:2px solid transparent;font-weight:500;background:none;border-left:0;border-right:0;border-top:0;font-family:inherit}.tab.active{color:var(--indigo);border-bottom-color:var(--indigo)}.detail-body{padding:20px;max-height:460px;overflow-y:auto}.fields{display:grid;grid-template-columns:160px 1fr;gap:10px 16px}.fields .k{color:var(--text-soft);font-size:13px}.fields .v{font-size:14px}.conv{display:flex;flex-direction:column;gap:10px}.msg{padding:10px 14px;border-radius:14px;max-width:80%;font-size:14px;line-height:1.5}.msg.a{background:var(--indigo-soft);align-self:flex-start}.msg.u{background:var(--indigo);color:#fff;align-self:flex-end}.form-stack{display:flex;flex-direction:column;gap:14px}.form-stack label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-dim)}.form-stack input[type=text],.form-stack input[type=email],.form-stack input[type=password],.form-stack input[type=tel],.form-stack textarea,.form-stack select{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;color:var(--text);background:#fff}.form-stack input:focus,.form-stack textarea:focus,.form-stack select:focus{outline:2px solid var(--indigo-2);border-color:var(--indigo)}.auth-tabs{display:flex;gap:6px;margin-bottom:18px;border-bottom:1px solid var(--border)}.auth-tabs button{background:none;border:0;padding:10px 14px;font-size:13px;font-weight:500;color:var(--text-soft);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit}.auth-tabs button.active{color:var(--indigo);border-bottom-color:var(--indigo)}.alert{padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;margin-top:8px}.alert.error{background:#fef0f2;color:var(--red);border:1px solid #fbd5dd}.alert.success{background:#ebfbf6;color:#007e6d;border:1px solid #c2efe2}.alert.info{background:var(--indigo-soft);color:#3c2e9c;border:1px solid #d2dafe}.onboarding-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow-md)}.permission-list{list-style:none;padding:0;margin:16px 0 24px}.permission-list li{padding:10px 0 10px 28px;position:relative;font-size:14px;color:var(--text-dim)}.permission-list li:before{content:"✓";position:absolute;left:0;top:10px;color:var(--green);font-weight:700}.cgu-row{display:flex;gap:8px;align-items:flex-start;margin:20px 0;font-size:13px;color:var(--text-dim)}.cgu-row input[type=checkbox]{margin-top:3px}.btn-stack{display:flex;gap:12px;margin-top:8px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(180deg,var(--bg) 0%,#eef3f9 100%)}.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:36px;width:100%;max-width:420px;box-shadow:var(--shadow-md)}.auth-card .brand{color:var(--text);margin-bottom:24px}.auth-card h2{font-size:20px;font-weight:600;margin-bottom:6px}.auth-card .lead{color:var(--text-dim);font-size:14px;margin-bottom:20px}.google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px;background:#fff;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;font-family:inherit}.google-btn:hover{background:#fafbfc}.divider{display:flex;align-items:center;margin:18px 0;color:var(--text-soft);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.divider:before{margin-right:12px}.divider:after{margin-left:12px}.recovery-toggle{margin-top:20px;font-size:13px;color:var(--text-soft)}.recovery-toggle summary{cursor:pointer;-webkit-user-select:none;user-select:none}.recovery-toggle summary:hover{color:var(--indigo)}.terms-page{max-width:720px;margin:0 auto;padding:48px 24px;color:var(--text)}.terms-page h1{font-size:28px;margin-bottom:12px}.terms-page h2{font-size:18px;font-weight:600;margin-top:32px;margin-bottom:8px}.terms-page p,.terms-page li{color:var(--text-dim);font-size:14px;line-height:1.65;margin-bottom:10px}.terms-page ul{padding-left:24px;margin-bottom:12px}
