*{box-sizing:border-box}:root{--page-bg: #f6f7f9;--surface: #ffffff;--border: #e4e6eb;--border-strong: #d1d5db;--text: #202124;--muted: #6b7280;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-soft: #eff6ff;--accent: #0d9488;--accent-soft: #ecfdf5;--danger: #dc2626;--danger-soft: #fef2f2;--warn: #d97706;--radius: 10px;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .08)}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--page-bg);color:var(--text);min-height:100vh;line-height:1.5}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}input,select,button,textarea{font:inherit;padding:.55rem .75rem;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary-soft);border-color:var(--primary)}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px var(--surface) inset;caret-color:var(--text)}button{cursor:pointer;background:var(--primary);border-color:var(--primary);color:#fff;font-weight:500}button:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}button:disabled{opacity:.6;cursor:wait}button.secondary,.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text)}button.secondary:hover:not(:disabled){background:#f9fafb}.admin-page{max-width:1100px;margin:0 auto;padding:1.5rem 1.25rem 2.5rem}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.admin-header h1{margin:0;font-size:1.5rem;font-weight:600}.admin-header p{margin:.35rem 0 0;color:var(--muted);font-size:.875rem}.admin-nav{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.admin-nav a{font-size:.875rem;font-weight:500}.admin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.admin-error{color:var(--danger);font-size:.875rem}.admin-muted{color:var(--muted);font-size:.875rem}.admin-section-title{margin:0 0 .75rem;font-size:1rem;font-weight:600}table{width:100%;border-collapse:collapse;font-size:.875rem}th,td{border-bottom:1px solid var(--border);padding:.65rem .75rem;text-align:left}th{background:#f9fafb;color:var(--muted);font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.chip{display:inline-block;font-size:.6875rem;padding:.15rem .5rem;border-radius:999px;font-weight:500}.chip-admin{background:#fef3c7;color:#92400e}.chip-user{background:var(--primary-soft);color:#1e40af}.preset-row{display:flex;flex-wrap:wrap;gap:.5rem}.preset-btn{padding:.35rem .75rem;font-size:.8125rem;border-radius:999px;background:#f3f4f6;border:1px solid var(--border);color:var(--text)}.preset-btn:hover{background:var(--primary-soft);border-color:#bfdbfe;color:#1e40af}.preset-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.user-search-wrap{padding:.75rem;border-bottom:1px solid var(--border)}.user-list{max-height:420px;overflow-y:auto}.user-row{padding:.75rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .12s}.user-row:hover{background:#f9fafb}.user-row.selected{background:var(--primary-soft);border-left:3px solid var(--primary)}.target-banner{padding:1rem;margin-bottom:1rem;border-radius:var(--radius);border:1px solid #bfdbfe;background:var(--primary-soft)}.login-card{max-width:400px;margin:4rem auto;padding:1.75rem;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}
