:root{--bg: #F4F5FC;--surface: #FFFFFF;--surface-2: #FAFBFF;--surface-hover: #F4F6FF;--border: #E2E6F5;--border-strong: #D0D6EE;--ink: #171A2B;--ink-2: #4A5080;--ink-mute: #8A91B4;--ink-soft: #A9AFCB;--accent: #5B5EF4;--accent-hover: #4A4DE0;--accent-deep: #7C3AED;--accent-soft: #EDEEFF;--accent-ring: rgba(91, 94, 244, .16);--gradient: linear-gradient(135deg, #5B5EF4, #7C3AED);--ok: #059669;--ok-bg: #D1FAE5;--ok-border: #6EE7B7;--ok-ink: #065F46;--warn: #D97706;--warn-bg: #FEF3C7;--warn-border: #FCD34D;--warn-ink: #92400E;--danger: #DC2626;--danger-bg: #FEE2E2;--danger-border: #FCA5A5;--danger-ink: #991B1B;--neutral: #6B7280;--neutral-bg: #F3F4F6;--neutral-border: #D1D5DB;--neutral-ink: #374151;--scroll-thumb: #D3D8EC;--scroll-thumb-hover: #BFC5E0;--glass: rgba(255,255,255,.82);--panel: linear-gradient(150deg,#F1F2FF,#EAEBFF);--panel-border: #DEE0FB;--r-sm: 7px;--r: 10px;--r-lg: 14px;--r-xl: 18px;--r-pill: 999px;--shadow-xs: 0 1px 2px rgba(23,26,43,.04);--shadow-sm: 0 2px 8px -3px rgba(23,26,43,.1);--shadow-md: 0 10px 24px -14px rgba(23,26,43,.3);--shadow-lg: 0 20px 40px -22px rgba(23,26,43,.4);--ease: cubic-bezier(.2,.8,.3,1)}:root[data-theme=dark]{--bg: #0F1120;--surface: #171A2B;--surface-2: #1C2036;--surface-hover: #222741;--border: #2A2F4A;--border-strong: #383E5E;--ink: #EEF0FA;--ink-2: #B6BCDA;--ink-mute: #868DB0;--ink-soft: #656B8C;--accent: #8385FF;--accent-hover: #9A9CFF;--accent-deep: #A77DFF;--accent-soft: #23264A;--accent-ring: rgba(131,133,255,.22);--gradient: linear-gradient(135deg, #6C6FF5, #9459F0);--ok: #34D399;--ok-bg: #10312A;--ok-border: #1F6B54;--ok-ink: #6EE7B7;--warn: #FBBF24;--warn-bg: #362713;--warn-border: #7A5314;--warn-ink: #FCD34D;--danger: #F87171;--danger-bg: #3A1A1D;--danger-border: #7F2D33;--danger-ink: #FCA5A5;--neutral: #9CA3AF;--neutral-bg: #23273C;--neutral-border: #3A4058;--neutral-ink: #C7CBDD;--scroll-thumb: #2E3450;--scroll-thumb-hover: #3C4468;--glass: rgba(23,26,43,.82);--panel: linear-gradient(150deg,#1E2140,#242749);--panel-border: #333861;--shadow-xs: 0 1px 2px rgba(0,0,0,.35);--shadow-sm: 0 2px 8px -3px rgba(0,0,0,.5);--shadow-md: 0 10px 24px -14px rgba(0,0,0,.75);--shadow-lg: 0 20px 40px -22px rgba(0,0,0,.85);color-scheme:dark}body,.card,.table th,.table td,.input,.select,.textarea{transition:background-color .22s ease,border-color .22s ease,color .22s ease}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}html,body{overflow-x:hidden}body{margin:0;background:radial-gradient(1100px 480px at 88% -140px,var(--accent-soft) 0%,transparent 62%),var(--bg);background-attachment:fixed;color:var(--ink);font-family:Plus Jakarta Sans,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--accent-soft);color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:5px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-title{font-size:1.4rem;font-weight:800;color:var(--ink);margin:0;letter-spacing:-.02em}.page-sub{font-size:.85rem;color:var(--ink-mute);margin:5px 0 0;max-width:64ch;line-height:1.5}.ph{align-items:center}.ph-left{display:flex;align-items:center;gap:14px;min-width:0}.ph-icon{width:44px;height:44px;flex-shrink:0;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;line-height:1;background:var(--gradient);box-shadow:0 10px 22px -10px #5b5ef4d9;animation:phPop .42s var(--ease) both}@keyframes phPop{0%{opacity:0;transform:scale(.7) rotate(-8deg)}to{opacity:1;transform:none}}.ph-actions{display:flex;align-items:center;gap:10px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow-xs)}.card-title{font-size:.95rem;font-weight:700;color:var(--ink);margin:0 0 14px}.card-flush{padding:0;overflow:hidden}.eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--r);border:1px solid transparent;font-family:inherit;font-size:.86rem;font-weight:650;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .16s var(--ease),box-shadow .16s var(--ease),background .14s ease,border-color .14s ease,filter .14s ease}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-primary{background:var(--gradient);color:#fff;box-shadow:0 8px 18px -10px #5b5ef4d9}.btn-primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1.5px);box-shadow:0 14px 26px -12px #5b5ef4}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-ghost{background:var(--surface);border-color:var(--border-strong);color:var(--ink-2)}.btn-ghost:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.btn-danger{background:transparent;border-color:var(--danger-border);color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-bg)}.btn-sm{padding:6px 13px;font-size:.78rem;border-radius:var(--r-sm)}.link{color:var(--accent);font-weight:600;font-size:.82rem;text-decoration:none;background:none;border:none;cursor:pointer;padding:0;font-family:inherit}.link:hover{text-decoration:underline}.link-muted{color:var(--ink-soft);cursor:not-allowed}.link-muted:hover{text-decoration:none}.field{display:flex;flex-direction:column;gap:7px}.label{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-mute)}.label-plain{font-size:.82rem;font-weight:600;color:var(--ink-2);text-transform:none;letter-spacing:0}.input,.select,.textarea{width:100%;padding:10px 12px;font-family:inherit;font-size:.88rem;color:var(--ink);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);outline:none;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.input:hover,.select:hover,.textarea:hover{border-color:#bfc6e6}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3.5px var(--accent-ring)}.input::placeholder,.textarea::placeholder{color:var(--ink-soft)}.textarea{min-height:72px;resize:vertical;line-height:1.55}.check{display:flex;align-items:center;gap:9px;font-size:.86rem;color:var(--ink);cursor:pointer}.check input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.hint{font-size:.77rem;color:var(--ink-mute);margin:0;line-height:1.5}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.85rem}.table th{text-align:left;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-mute);padding:12px 16px;white-space:nowrap;background:var(--surface-2);border-bottom:1px solid var(--border)}.table td{padding:13px 16px;border-bottom:1px solid var(--border);color:var(--ink);vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr{transition:background .13s ease,box-shadow .13s ease}.table tbody tr:hover{background:var(--surface-hover)}.table tr.clickable{cursor:pointer}.table tr.clickable:hover{box-shadow:inset 3px 0 0 var(--accent)}.table .num{font-variant-numeric:tabular-nums}.table .muted-cell{color:var(--ink-mute);white-space:nowrap}.empty-state{padding:40px 16px;text-align:center;color:var(--ink-mute);font-size:.87rem}.empty-state strong{display:block;color:var(--ink-2);font-size:.95rem;margin-bottom:4px}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 11px;border-radius:var(--r-pill);font-size:.69rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid;white-space:nowrap}.badge-ok{background:var(--ok-bg);color:var(--ok-ink);border-color:var(--ok-border)}.badge-warn{background:var(--warn-bg);color:var(--warn-ink);border-color:var(--warn-border)}.badge-danger{background:var(--danger-bg);color:var(--danger-ink);border-color:var(--danger-border)}.badge-neutral{background:var(--neutral-bg);color:var(--neutral-ink);border-color:var(--neutral-border)}.badge-accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-ring)}.pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--r-pill);font-size:.77rem;font-weight:650;background:var(--accent-soft);color:var(--accent)}.pill-plain{background:var(--neutral-bg);color:var(--ink-2)}.notice{padding:12px 15px;border-radius:var(--r);font-size:.84rem;line-height:1.5;border:1px solid}.notice-warn{background:var(--warn-bg);color:var(--warn-ink);border-color:var(--warn-border)}.notice-danger{background:var(--danger-bg);color:var(--danger-ink);border-color:var(--danger-border)}.notice-ok{background:var(--ok-bg);color:var(--ok-ink);border-color:var(--ok-border)}.email-preview{overflow-x:auto}.email-preview img{max-width:100%;height:auto;border-radius:4px}.email-preview table{border-collapse:collapse;width:100%;margin:10px 0}.email-preview th,.email-preview td{border:1px solid var(--border-strong);padding:6px 9px;text-align:left}.email-preview th{background:var(--surface-2);font-weight:700}.email-preview h2{font-size:1.15rem;margin:12px 0 6px}.email-preview h3{font-size:1.02rem;margin:10px 0 5px}.email-preview p{margin:6px 0}.email-preview ul,.email-preview ol{padding-left:22px;margin:6px 0}.rise{animation:rise .46s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.d1{animation-delay:50ms}.d2{animation-delay:.1s}.d3{animation-delay:.15s}.d4{animation-delay:.2s}.d5{animation-delay:.25s}.d6{animation-delay:.3s}.spinner{width:15px;height:15px;border-radius:50%;display:inline-block;border:2px solid rgba(255,255,255,.35);border-top-color:currentColor;animation:spin .68s linear infinite}.spinner-dark{border-color:var(--border-strong);border-top-color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
