/* Admin uses the same workspace tokens and navigation primitives as /app. */
.admin-body { background: var(--ws-canvas); color: var(--ws-text); }
/* The Admin shell deliberately reuses the exact Workspace frame geometry. */
#adminApp { --ws-canvas:#16151d; --ws-nav:#18171f; --ws-workspace:#191820; --ws-surface:#201e29; --ws-raised:#292634; --ws-line-soft:rgba(139,128,159,.19); --ws-text:#f5f2fa; --ws-secondary:#c2bbce; --ws-muted:#a69db6; --ws-faint:#968ca7; --ws-violet:#a98bf2; --ws-sage:#78b8a7; font-size:14px; line-height:1.45; font-variant-numeric:tabular-nums; }
#adminApp.app-shell { position: relative; z-index: 1; display: grid; grid-template-columns: 224px minmax(0, 1fr); min-height: 100vh; background: transparent !important; isolation: isolate; }
#adminApp .sidebar { position:sticky; top:0; z-index:1; display:flex; flex-direction:column; align-self:start; height:100vh; overflow-y:auto; padding:24px 12px 20px!important; background:var(--ws-nav)!important; border:0!important; border-right:1px solid var(--ws-line-soft)!important; box-shadow:none!important; }
#adminApp .sidebar-top { padding:0 8px 15px!important; }
#adminApp .sidebar-brand { display:flex; align-items:center; gap:9px; margin:0; padding:0; border:0; color:inherit; text-decoration:none; }
#adminApp .sidebar-brand .brand-logo { width:29px; height:34px; object-fit:contain; }
#adminApp .sidebar-eyebrow { margin:0; color:var(--ws-text)!important; background:none; -webkit-text-fill-color:var(--ws-text); font-size:14px!important; font-weight:600; letter-spacing:-.035em!important; text-transform:none; }
#adminApp .sidebar-top h1 { margin:4px 0 0 38px!important; color:var(--ws-muted); font-size:10px!important; font-weight:400; letter-spacing:.03em; }
#adminApp .workspace-navigation { display:grid; align-content:start; gap:3px; }
#adminApp .workspace-nav-label { margin:18px 12px 8px; color:var(--ws-muted); font-family:inherit!important; font-size:10px!important; font-weight:500!important; line-height:1.35!important; letter-spacing:.075em!important; text-transform:uppercase; }
#adminApp .sidebar-section { padding:0!important; border:0!important; }
#adminApp .grouped-section { gap:4px; }
#adminApp .sidebar-link, #adminApp .workspace-account .sidebar-link { position:relative; display:flex; align-items:center; gap:12px; width:100%; min-height:40px!important; padding:9px 12px!important; border:0!important; border-radius:0!important; background:transparent!important; color:#c7c0d1!important; font-family:inherit!important; font-size:13px!important; font-weight:450!important; line-height:1.35!important; text-align:left; text-decoration:none; box-shadow:none!important; }
#adminApp .sidebar-link::before { content:'◇'; display:grid; place-items:center; width:18px; min-width:18px; height:20px; color:var(--ws-violet); font-size:18px; line-height:1; }
#adminApp #dashboardNavButton::before { content:'⌂'; }
#adminApp #newBacktestButton::before { content:'▥'; }
#adminApp .workspace-account .sidebar-link::before { content:'⚙'; }
#adminApp .sidebar-link:hover { background:rgba(169,139,242,.08)!important; color:var(--ws-text)!important; }
#adminApp .sidebar-link.active { border-radius:6px!important; background:linear-gradient(100deg,#a98bf22d,#a98bf215)!important; color:var(--ws-text)!important; box-shadow:inset 0 0 0 1px #a98bf236!important; }
#adminApp .sidebar-link.active::before { position:static; width:18px; height:20px; background:none; }
#adminApp .workspace-account { margin-top:auto; padding-top:20px; }
#adminApp .workspace-account-row { display:flex; align-items:center; gap:8px; padding:10px 8px 0; border-top:1px solid var(--ws-line-soft); }
#adminApp .workspace-identity { display:flex; align-items:center; min-width:0; gap:8px; flex:1 1 auto; }
#adminApp .workspace-avatar { display:grid; place-items:center; width:28px; height:28px; flex:0 0 28px; border:1px solid rgba(169,139,242,.42); border-radius:50%; background:rgba(169,139,242,.15); color:var(--ws-text); font-size:10px; font-weight:650; letter-spacing:.02em; }
#adminApp .workspace-account-controls { display:flex; align-items:center; gap:3px; flex:0 0 auto; }
#adminApp .workspace-utility-button { position:relative; display:grid; place-items:center; width:28px; height:28px; padding:0; border:1px solid transparent; border-radius:5px; background:transparent; color:var(--ws-muted); font:inherit; line-height:1; text-decoration:none; cursor:pointer; }
#adminApp .workspace-utility-button svg { width:15px; height:15px; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
#adminApp .workspace-utility-button:hover { border-color:rgba(169,139,242,.42); background:rgba(169,139,242,.12); color:var(--ws-text); }
#adminApp .workspace-utility-button:focus-visible { outline:2px solid var(--ws-violet); outline-offset:2px; }
#adminApp .workspace-signout-button:hover { border-color:rgba(221,143,179,.48); background:rgba(221,143,179,.11); color:var(--ws-orchid); }
#adminApp .main-area { position:relative; z-index:1; width:100%; max-width:1720px; padding:0 28px 28px!important; background-image: linear-gradient(#c7b8d608 1px,transparent 1px),linear-gradient(90deg,#c7b8d608 1px,transparent 1px); background-size:54px 54px; }
#adminApp .topbar { position:sticky!important; top:0!important; z-index:100!important; display:flex; align-items:center; justify-content:space-between; min-height:68px!important; margin:0 -28px 24px!important; padding:0 28px!important; border:0!important; border-bottom:1px solid var(--ws-line-soft)!important; border-radius:0!important; background:#1b1922!important; box-shadow:none!important; backdrop-filter:blur(12px); }
#adminApp .workspace-page-context strong { color:var(--ws-text); font-size:13px; font-weight:500; }
#adminApp .workspace-utilities { display:flex; align-items:center; gap:28px; }
#adminApp .daily-quote { max-width:380px; gap:6px; align-items:center; font-size:11px; color:var(--ws-muted); }
#adminApp .daily-quote p { margin:0; }
#adminApp .daily-quote-author { white-space:nowrap; font-size:10px; }
#adminApp #dailyQuoteText { color:var(--ws-secondary); font-size:11px; }
#adminApp .cloud-status { padding:0; border:0; background:none; color:var(--ws-secondary); font-size:11px; font-weight:450; }
@media(max-width:1150px) { #adminApp .daily-quote { display:none; } }
.admin-page-header { margin-bottom: 18px !important; }.admin-tabs,.range-buttons { display:flex; flex-wrap:wrap; gap:7px; }.admin-tabs { margin-bottom:24px; padding-bottom:17px; border-bottom:1px solid var(--ws-line-soft); }
.admin-tabs button,.range-buttons button,.toolbar button,.table-wrap button { min-height:34px; padding:7px 11px; border:1px solid var(--ws-line-soft); border-radius:5px; background:transparent; color:var(--ws-text); font:inherit; font-size:.77rem; cursor:pointer; }.admin-tabs button:hover,.range-buttons button:hover,.toolbar button:hover,.table-wrap button:hover { border-color:rgba(169,139,242,.7); background:rgba(169,139,242,.08); }.admin-tabs button.active,.range-buttons button.active { border-color:var(--ws-violet); background:rgba(169,139,242,.18); color:var(--ws-text); }
.admin-overview { display:grid; gap:25px; }.admin-section-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; padding-bottom:11px; border-bottom:1px solid var(--ws-line-soft); }.admin-section-heading h3 { margin:0; color:var(--ws-text); font-size:1rem; letter-spacing:-.02em; }.admin-section-heading p,.admin-note,.muted { margin:5px 0 0; color:var(--ws-muted); font-size:.78rem; line-height:1.55; }
.admin-metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--ws-line-soft); border-left:1px solid var(--ws-line-soft); }.admin-metric { min-width:0; min-height:103px; padding:16px; border-right:1px solid var(--ws-line-soft); border-bottom:1px solid var(--ws-line-soft); background:rgba(36,33,45,.62); }.admin-metric:hover { background:rgba(169,139,242,.07); }.admin-metric b { display:block; color:var(--ws-text); font-size:1.45rem; font-variant-numeric:tabular-nums; letter-spacing:-.04em; }.admin-metric span { display:block; margin-top:8px; color:var(--ws-muted); font-size:.72rem; line-height:1.35; }
.admin-range { padding:0 0 20px; border-bottom:1px solid var(--ws-line-soft); }.range-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:11px; align-items:end; max-width:690px; margin-top:14px; }.range-form label { display:grid; gap:5px; color:var(--ws-muted); font-size:.73rem; }.range-form input,.toolbar input,.toolbar select { min-width:0; min-height:36px; padding:7px 9px; border:1px solid var(--ws-line-soft); border-radius:5px; background:#191720; color:var(--ws-text); font:inherit; font-size:.78rem; }
.admin-chart-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.chart-panel { min-width:0; padding:17px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(36,33,45,.62); }.chart-title { display:flex; justify-content:space-between; gap:12px; align-items:baseline; }.chart-title h3 { margin:0; color:var(--ws-text); font-size:.88rem; letter-spacing:-.02em; }.chart-title strong { color:var(--ws-violet); font-size:.9rem; font-variant-numeric:tabular-nums; }.chart-hover-readout { display:block; min-height:17px; margin-top:4px; color:var(--ws-secondary); font-size:.69rem; font-variant-numeric:tabular-nums; line-height:1.35; }.chart-visual { position:relative; }.chart-panel svg { display:block; width:100%; height:185px; margin-top:9px; overflow:visible; }.interactive-chart { cursor:crosshair; touch-action:none; }.chart-grid { stroke:var(--ws-line-soft); stroke-width:1; }.chart-axis { stroke:var(--ws-muted); stroke-width:1; }.chart-axis-label { fill:var(--ws-faint); font-size:10px; font-family:inherit; }.chart-line { fill:none; stroke:var(--ws-violet); stroke-width:3; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }.chart-crosshair { stroke:rgba(212,194,247,.65); stroke-width:1; stroke-dasharray:4 4; pointer-events:none; }.chart-hover-point { fill:var(--ws-violet); stroke:var(--ws-text); stroke-width:2; pointer-events:none; }.chart-interaction-layer { fill:transparent; pointer-events:all; }.chart-meta { display:flex; justify-content:space-between; gap:8px; color:var(--ws-faint); font-size:.67rem; }.chart-panel details { margin-top:14px; color:var(--ws-muted); font-size:.74rem; }.chart-panel summary { cursor:pointer; }
.admin-usage { padding-top:3px; }.admin-usage .admin-metric-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }.admin-usage .admin-metric { display:flex; flex-direction:column; justify-content:center; overflow:hidden; }.admin-usage .admin-metric b { min-width:0; white-space:nowrap; font-size:clamp(.66rem,1vw,1.15rem); letter-spacing:-.035em; }.admin-usage .admin-metric span { min-width:0; white-space:nowrap; font-size:clamp(.58rem,.68vw,.72rem); line-height:1.2; }.toolbar { display:flex; flex-wrap:wrap; gap:9px; align-items:end; margin-bottom:15px; }.toolbar input { flex:1 1 220px; }.toolbar select { flex:1 1 150px; }.table-wrap { overflow-x:auto; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(32,29,41,.75); }.table-wrap table { width:100%; min-width:720px; border-collapse:collapse; font-size:.76rem; }.table-wrap th,.table-wrap td { padding:12px 11px; border-bottom:1px solid var(--ws-line-soft); color:var(--ws-muted); text-align:left; vertical-align:top; }.table-wrap th { color:#d8cfe5; font-size:.64rem; letter-spacing:.07em; text-transform:uppercase; }.table-wrap tr:last-child td { border-bottom:0; }
.admin-access { padding-top:4px; }.admin-access .range-form { max-width:none; grid-template-columns:repeat(3,minmax(0,1fr)); }.admin-access .range-form button { align-self:end; }
.affiliate-directory { max-width:1320px; }.affiliate-directory-controls { display:flex; flex-wrap:wrap; align-items:end; gap:10px; margin:0 0 16px; }.affiliate-directory-controls label { display:grid; flex:1 1 210px; gap:5px; color:var(--ws-muted); font-size:.72rem; }.affiliate-directory-controls input,.affiliate-directory-controls select { min-height:36px; padding:7px 9px; border:1px solid var(--ws-line-soft); border-radius:5px; background:#191720; color:var(--ws-text); font:inherit; font-size:.8rem; }.affiliate-directory-controls button { min-height:36px; }.affiliate-directory-pagination { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin-top:13px; color:var(--ws-muted); font-size:.75rem; }.affiliate-directory-pagination div { display:flex; gap:7px; }.affiliate-directory-pagination button { min-height:34px; padding:7px 11px; border:1px solid var(--ws-line-soft); border-radius:5px; background:transparent; color:var(--ws-text); font:inherit; font-size:.77rem; cursor:pointer; }.affiliate-directory-pagination button:disabled { opacity:.48; cursor:not-allowed; }.affiliate-directory-empty { margin:0; padding:18px; color:var(--ws-muted); }.affiliate-status { display:inline-flex; padding:3px 7px; border:1px solid var(--ws-line-soft); border-radius:999px; color:var(--ws-secondary); font-size:.68rem; font-weight:600; line-height:1.2; }.affiliate-status-approved { border-color:rgba(120,184,167,.56); color:#b2e2d4; }.affiliate-status-pending { border-color:rgba(222,180,95,.55); color:#ecd39c; }.affiliate-status-suspended,.affiliate-status-terminated,.affiliate-status-rejected { border-color:rgba(220,135,151,.52); color:#f0bcc5; }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.support-permissions { max-width:900px; }.support-permission-form { display:grid; gap:14px; margin-top:14px; }.support-mode-selector { min-width:0; margin:0; padding:0; border:0; }.support-mode-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }.support-mode-option { position:relative; min-width:0; cursor:pointer; }.support-mode-input { position:absolute; inline-size:1px; block-size:1px; opacity:0; }.support-mode-surface { display:grid; grid-template-columns:17px minmax(0,1fr); gap:9px; align-items:start; min-height:76px; padding:11px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(36,33,45,.5); color:var(--ws-secondary); transition:border-color .15s ease,background .15s ease,box-shadow .15s ease; }.support-mode-control { display:grid; place-items:center; width:17px; height:17px; margin-top:1px; border:1px solid rgba(194,187,206,.62); border-radius:50%; background:#191720; }.support-mode-control::after { content:""; width:7px; height:7px; border-radius:50%; background:var(--ws-violet); transform:scale(0); transition:transform .15s ease; }.support-mode-surface strong,.support-mode-surface small { display:block; }.support-mode-surface strong { color:var(--ws-text); font-size:.79rem; font-weight:600; line-height:1.35; }.support-mode-surface small { margin-top:3px; color:var(--ws-muted); font-size:.68rem; line-height:1.4; }.support-mode-option:hover .support-mode-surface { border-color:rgba(169,139,242,.58); background:rgba(169,139,242,.08); }.support-mode-input:checked + .support-mode-surface { border-color:var(--ws-violet); background:rgba(169,139,242,.16); box-shadow:inset 0 0 0 1px rgba(169,139,242,.18); }.support-mode-input:checked + .support-mode-surface .support-mode-control { border-color:var(--ws-violet); }.support-mode-input:checked + .support-mode-surface .support-mode-control::after { transform:scale(1); }.support-mode-input:focus-visible + .support-mode-surface,.support-category-input:focus-visible { outline:2px solid var(--ws-violet); outline-offset:2px; }
.support-category-panel { padding:13px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(36,33,45,.44); }.support-category-panel h4 { margin:0 0 10px; color:var(--ws-text); font-size:.8rem; font-weight:600; }.support-category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 18px; }.support-category-option { display:flex; align-items:center; gap:8px; min-width:0; padding:5px 0; color:var(--ws-secondary); font-size:.76rem; line-height:1.35; cursor:pointer; }.support-category-input { appearance:none; display:grid; place-items:center; flex:0 0 16px; width:16px; height:16px; margin:0; border:1px solid rgba(194,187,206,.65); border-radius:4px; background:#191720; }.support-category-input::after { content:""; width:8px; height:4px; border-bottom:2px solid #17141e; border-left:2px solid #17141e; transform:rotate(-45deg) scale(0); transform-origin:center; }.support-category-input:checked { border-color:var(--ws-violet); background:var(--ws-violet); }.support-category-input:checked::after { transform:rotate(-45deg) scale(1); }.support-permission-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }.support-permission-actions button { min-height:35px; }
.admin-denied { max-width:560px; margin:100px auto; padding:28px; border:1px solid var(--ws-line-soft); border-radius:8px; background:rgba(36,33,45,.75); color:var(--ws-muted); }.admin-denied h1 { margin:0 0 8px; color:var(--ws-text); font-size:1.35rem; }.admin-denied p { margin:0; line-height:1.55; }.error { padding:14px; border-left:2px solid var(--app-error); color:#f0bcc5; background:rgba(220,135,151,.08); }
@media(max-width:1120px){.admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.admin-chart-grid{grid-template-columns:1fr;}.admin-usage .admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}@media(max-width:880px){#adminApp.app-shell{grid-template-columns:1fr;}.admin-page-header{margin-top:7px;}}@media(max-width:640px){.admin-metric-grid,.admin-usage .admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.admin-metric{min-height:92px;padding:13px;}.range-form{grid-template-columns:1fr;}.range-form button{width:100%;}.admin-tabs button,.range-buttons button{flex:1 1 auto;}.chart-panel{padding:14px;}.chart-panel svg{height:155px;}.workspace-utilities .secondary-button{display:none;}.support-mode-options,.support-category-grid{grid-template-columns:1fr;}.support-mode-surface{min-height:0;}.support-permission-actions button{width:100%;}.affiliate-directory-controls>*{flex:1 1 100%!important}.affiliate-directory-controls button{width:100%;}.affiliate-directory-pagination{align-items:stretch;}.affiliate-directory-pagination div{display:grid;grid-template-columns:1fr 1fr;}.affiliate-directory-pagination button{width:100%;}.affiliate-directory .table-wrap{overflow:visible;}.affiliate-directory table,.affiliate-directory thead,.affiliate-directory tbody,.affiliate-directory tr,.affiliate-directory th,.affiliate-directory td{display:block;}.affiliate-directory thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}.affiliate-directory tr{padding:12px 0;border-bottom:1px solid var(--ws-line-soft);}.affiliate-directory td{display:grid;grid-template-columns:minmax(112px,.85fr) minmax(0,1.15fr);gap:10px;padding:5px 0;border:0;text-align:right;word-break:break-word;}.affiliate-directory td::before{content:attr(data-label);color:var(--ws-muted);font-size:.66rem;font-weight:600;letter-spacing:.04em;text-align:left;text-transform:uppercase;}.affiliate-directory tr:last-child{border-bottom:0;}}@media(prefers-reduced-motion:reduce){#adminApp *{scroll-behavior:auto;}}

/* Internal Support deliberately uses the canonical workspace frame above. */
.support-inbox { max-width:1320px; }.support-views,.support-filters { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px; }.support-views { padding-bottom:15px; border-bottom:1px solid var(--ws-line-soft); }.support-views button,.support-filters button,.support-reply button { min-height:34px; padding:7px 11px; border:1px solid var(--ws-line-soft); border-radius:5px; background:transparent; color:var(--ws-text); font:inherit; font-size:.78rem; cursor:pointer; }.support-views button.active { border-color:var(--ws-violet); background:rgba(169,139,242,.18); }.support-filters input,.support-filters select,.support-selects select,.support-reply textarea { min-height:36px; border:1px solid var(--ws-line-soft); border-radius:5px; background:#191720; color:var(--ws-text); font:inherit; font-size:.8rem; }.support-filters input { flex:1 1 250px; padding:7px 10px; }.support-filters select { min-width:145px; padding:7px; }.support-split { display:grid; grid-template-columns:minmax(290px,.76fr) minmax(0,1.5fr); min-height:560px; border:1px solid var(--ws-line-soft); border-radius:7px; overflow:hidden; background:rgba(32,29,41,.75); }.support-ticket-list { overflow:auto; border-right:1px solid var(--ws-line-soft); }.support-ticket-row { display:grid; width:100%; gap:7px; padding:14px; border:0; border-bottom:1px solid var(--ws-line-soft); background:transparent; color:var(--ws-secondary); font:inherit; text-align:left; cursor:pointer; }.support-ticket-row:hover,.support-ticket-row.active { background:rgba(169,139,242,.1); }.support-ticket-row b { overflow:hidden; color:var(--ws-text); font-size:.84rem; text-overflow:ellipsis; white-space:nowrap; }.support-ticket-top,.support-ticket-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:.69rem; }.support-ticket-top strong { color:var(--ws-violet); }.support-ticket-top time { color:var(--ws-muted); }.support-ticket-meta { justify-content:flex-start; color:var(--ws-muted); }.support-badge,.support-unread { padding:2px 6px; border-radius:999px; background:rgba(169,139,242,.16); color:var(--ws-secondary); font-size:.64rem; }.support-badge.high,.support-badge.urgent { color:#f1c1ce; background:rgba(220,135,151,.15); }.support-unread { color:#d8cff4; }.support-empty,.support-ticket-detail { padding:18px; }.support-detail-header { display:flex; justify-content:space-between; gap:18px; padding-bottom:16px; border-bottom:1px solid var(--ws-line-soft); }.support-detail-header strong { color:var(--ws-violet); font-size:.75rem; }.support-detail-header h3 { margin:4px 0; color:var(--ws-text); font-size:1.05rem; }.support-detail-header p { margin:0; color:var(--ws-muted); font-size:.75rem; }.support-selects { display:flex; gap:8px; }.support-selects label { display:grid; gap:4px; color:var(--ws-muted); font-size:.67rem; }.support-selects select { min-width:130px; padding:5px; }.support-conversation { display:grid; gap:11px; max-height:380px; padding:16px 0; overflow:auto; }.support-message { max-width:82%; padding:11px 13px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(36,33,45,.75); }.support-message.staff { margin-left:auto; border-color:rgba(169,139,242,.4); }.support-message.internal { max-width:100%; border-style:dashed; border-color:rgba(222,180,95,.5); background:rgba(125,96,29,.12); }.support-message small { color:var(--ws-muted); font-size:.67rem; }.support-message p { margin:6px 0 0; color:var(--ws-secondary); line-height:1.5; white-space:pre-wrap; }.support-reply { padding-top:14px; border-top:1px solid var(--ws-line-soft); }.support-reply label { display:grid; gap:6px; color:var(--ws-muted); font-size:.72rem; }.support-reply textarea { min-height:96px; padding:9px; resize:vertical; }.support-reply > div { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:9px; }.support-reply .primary-button { background:rgba(169,139,242,.2); border-color:var(--ws-violet); }.support-reply span { color:var(--ws-muted); font-size:.73rem; }
@media(max-width:880px){#supportApp.app-shell{grid-template-columns:1fr}.support-split{grid-template-columns:1fr}.support-ticket-list{max-height:300px;border-right:0;border-bottom:1px solid var(--ws-line-soft)}}@media(max-width:560px){.support-filters>*{flex:1 1 100%!important}.support-detail-header{display:grid}.support-selects{display:grid;grid-template-columns:1fr 1fr}.support-selects select{min-width:0}.support-message{max-width:100%}}

/* Read-only payout history and audit detail. */
.payout-views { display:flex; flex-wrap:wrap; gap:7px; margin:14px 0 17px; }
.payout-views button,#backToPayoutHistory { min-height:34px; padding:7px 11px; border:1px solid var(--ws-line-soft); border-radius:5px; background:transparent; color:var(--ws-text); font:inherit; font-size:.77rem; cursor:pointer; }
.payout-views button:hover,#backToPayoutHistory:hover { border-color:rgba(169,139,242,.7); background:rgba(169,139,242,.08); }
.payout-views button.active { border-color:var(--ws-violet); background:rgba(169,139,242,.18); }
.payout-detail { display:grid; gap:18px; }
.payout-audit-header { display:grid; gap:14px; }
.payout-audit-header .admin-metric-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.affiliate-directory > .admin-metric-grid { margin:15px 0 20px; }
.affiliate-directory #affiliateOverviewContent > .admin-metric-grid { margin:18px 0 24px; }
.payout-batch-review .admin-metric-grid { margin:14px 0 18px; }
.payout-audit-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin:0; border:1px solid var(--ws-line-soft); background:var(--ws-line-soft); }
.payout-audit-meta div { min-width:0; padding:11px 13px; background:rgba(36,33,45,.62); }
.payout-audit-meta dt { color:var(--ws-muted); font-size:.65rem; font-weight:600; letter-spacing:.05em; text-transform:uppercase; }
.payout-audit-meta dd { min-width:0; margin:4px 0 0; overflow-wrap:anywhere; color:var(--ws-secondary); font-size:.78rem; }
.payout-reversal-context { color:#f0bcc5; font-size:.72rem; line-height:1.45; }
.payout-reconciliation { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px 18px; align-items:center; margin-top:12px; padding:12px 14px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(169,139,242,.07); color:var(--ws-muted); font-size:.75rem; }
.payout-reconciliation strong { color:var(--ws-text); font-variant-numeric:tabular-nums; }
@media(max-width:640px){.payout-audit-header .admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.payout-views{display:grid;grid-template-columns:1fr 1fr;}.payout-views button,#backToPayoutHistory{width:100%;}.payout-audit-meta{grid-template-columns:1fr;}.payout-reconciliation{grid-template-columns:1fr;gap:4px;}.payout-reconciliation strong{margin-bottom:8px;}}
.payout-batch-review { display:grid; gap:14px; margin:0 0 22px; padding:17px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(36,33,45,.42); }
.payout-manual-fallback { margin:0 0 16px; padding:11px 13px; border-left:2px solid var(--ws-muted); background:rgba(139,128,159,.06); }
.payout-manual-fallback p { margin:0; }
.payout-batch-meta { display:flex; flex-wrap:wrap; gap:7px 15px; color:var(--ws-muted); font-size:.73rem; }
.payout-batch-meta span:first-child { color:var(--ws-secondary); font-weight:700; }
.payout-batch-notice { display:grid; gap:4px; padding:13px 15px; border-left:2px solid var(--ws-violet); background:rgba(169,139,242,.07); color:var(--ws-muted); font-size:.76rem; line-height:1.45; }
.payout-batch-notice strong { color:var(--ws-text); }
.payout-batch-notice.ready { border-left-color:var(--ws-sage); background:rgba(120,184,167,.06); }
.payout-batch-notice.blocked { border-left-color:#d8a96b; background:rgba(216,169,107,.08); }
.payout-batch-table,.payout-batch-excluded { display:grid; gap:11px; }
.payout-batch-table h4,.payout-batch-excluded h4 { margin:0; color:var(--ws-text); font-size:.86rem; }
.payout-batch-excluded ul { display:grid; gap:1px; margin:0; padding:0; list-style:none; border:1px solid var(--ws-line-soft); border-radius:7px; overflow:hidden; background:var(--ws-line-soft); }
.payout-batch-excluded li { display:grid; grid-template-columns:minmax(150px,1.2fr) minmax(150px,1.2fr) minmax(150px,1fr) auto; gap:10px; align-items:center; padding:11px 13px; background:rgba(36,33,45,.78); color:var(--ws-muted); font-size:.75rem; }
.payout-batch-excluded strong,.payout-batch-excluded b { color:var(--ws-text); }.payout-batch-excluded small { grid-column:3 / span 2; color:var(--ws-muted); }
.payout-batch-next-step { margin:0; padding-top:12px; border-top:1px solid var(--ws-line-soft); color:var(--ws-muted); font-size:.75rem; }
.payout-batch-actions { display:flex; flex-wrap:wrap; gap:9px; align-items:center; }
.payout-batch-actions button { min-height:36px; }
.payout-batch-action-reason { margin:0; color:var(--ws-muted); font-size:.75rem; }
.payout-batch-confirm { width:min(540px,calc(100% - 28px)); padding:0; border:1px solid var(--ws-line-soft); border-radius:8px; background:#24212d; color:var(--ws-secondary); box-shadow:0 20px 80px rgba(0,0,0,.52); }
.payout-batch-confirm::backdrop { background:rgba(12,10,16,.68); }
.payout-batch-confirm form { display:grid; gap:13px; padding:20px; }
.payout-batch-confirm h3 { margin:0; color:var(--ws-text); font-size:1.02rem; }
.payout-batch-confirm p { margin:0; line-height:1.5; font-size:.8rem; }
.payout-batch-confirm form > div { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.payout-batch-confirm button { min-height:36px; }
@media(max-width:640px){.payout-batch-review{padding:14px;}.payout-batch-excluded li{grid-template-columns:1fr auto;align-items:start;}.payout-batch-excluded li span:nth-child(2),.payout-batch-excluded li span:nth-child(3){grid-column:1 / -1;}.payout-batch-excluded small{grid-column:1 / -1;}.payout-batch-review .admin-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.admin-account-deletion { margin-top:18px; padding:16px; border:1px solid color-mix(in srgb,var(--bad) 44%,var(--line)); border-radius:12px; background:color-mix(in srgb,var(--bad) 7%,var(--surface)); }
.admin-account-deletion .error { margin:10px 0; }
.admin-account-deletion .stack-form { max-width:560px; margin-top:14px; }
.usage-alerts { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:14px 0 22px; list-style:none; }.usage-alert { padding:8px 10px; border-left:3px solid var(--ws-violet); background:rgba(169,139,242,.08); color:var(--ws-secondary); font-size:.74rem; }.usage-alert-warning { border-color:#d8a96b; }.usage-alert-critical { border-color:var(--app-error); }
.danger-button { border:1px solid color-mix(in srgb,var(--bad) 62%,var(--line)); background:color-mix(in srgb,var(--bad) 15%,var(--surface-strong)); color:var(--bad); }
.danger-button:hover:not(:disabled) { background:color-mix(in srgb,var(--bad) 24%,var(--surface-strong)); }
.danger-button:disabled { opacity:.58; cursor:not-allowed; }
.saved-reply-list { display:grid; gap:9px; margin-top:16px; }.saved-reply { padding:12px; border:1px solid var(--ws-line-soft); border-radius:7px; background:rgba(36,33,45,.5); }.saved-reply strong,.saved-reply small { display:block; }.saved-reply small { margin-top:3px; color:var(--ws-muted); font-size:.68rem; }.saved-reply p { margin:9px 0; white-space:pre-wrap; color:var(--ws-secondary); }.saved-reply > div { display:flex; flex-wrap:wrap; gap:8px; }.saved-reply .danger-button { border-color:rgba(220,135,151,.65); color:#f0bcc5; }
.support-view-count { color: var(--muted, #aaa4ba); font-variant-numeric: tabular-nums; }
.support-ticket-actions { display:flex; align-items:center; gap:.75rem; }
.support-closed-note { margin:1rem 0; color:var(--muted, #aaa4ba); }
.support-inbox #supportPreferences { margin:0 0 14px; }
.support-inbox #supportPreferences details { border:1px solid var(--ws-line-soft); border-radius:8px; background:rgba(32,29,41,.72); overflow:hidden; }
.support-inbox #supportPreferences summary { display:flex; align-items:center; min-height:42px; padding:0 13px; color:var(--ws-text); font-size:.82rem; font-weight:650; cursor:pointer; }
.support-inbox #supportPreferences summary::marker { color:var(--ws-violet); }
.support-inbox #preferenceForm { display:grid; gap:12px; padding:0 13px 13px; border-top:1px solid var(--ws-line-soft); }
.support-inbox .notification-channel-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.support-inbox .notification-channel { display:grid; gap:7px; padding:10px; border:1px solid var(--ws-line-soft); border-radius:6px; background:rgba(20,18,27,.62); }
.support-inbox .notification-channel-toggle { display:flex; align-items:center; gap:7px; color:var(--ws-secondary); font-size:.76rem; font-weight:600; }
.support-inbox .notification-channel input[type="checkbox"] { width:14px; height:14px; min-width:14px; margin:0; accent-color:var(--ws-violet); }
.support-inbox .notification-channel input[type="text"],.support-inbox .notification-channel input[type="email"] { width:100%; min-height:31px; box-sizing:border-box; border:1px solid var(--ws-line-soft); border-radius:5px; background:#191720; color:var(--ws-text); padding:5px 7px; font:inherit; font-size:.72rem; }
.support-inbox .notification-channel small { color:var(--ws-muted); font-size:.65rem; line-height:1.35; }
.support-inbox .notification-options { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.support-inbox .notification-options fieldset { display:flex; flex-wrap:wrap; gap:7px 12px; margin:0; padding:9px 10px; border:1px solid var(--ws-line-soft); border-radius:6px; }
.support-inbox .notification-options legend { padding:0 4px; color:var(--ws-muted); font-size:.67rem; }
.support-inbox .notification-options label { display:flex; align-items:center; gap:5px; color:var(--ws-secondary); font-size:.7rem; }
.support-inbox .notification-options input[type="checkbox"] { width:14px; height:14px; min-width:14px; margin:0; accent-color:var(--ws-violet); }
.support-inbox .notification-channel input[type="checkbox"]:focus,.support-inbox .notification-channel input[type="checkbox"]:focus-visible,.support-inbox .notification-options input[type="checkbox"]:focus,.support-inbox .notification-options input[type="checkbox"]:focus-visible { outline:0 !important; outline-offset:0 !important; box-shadow:none !important; }
.support-inbox .notification-save { display:flex; align-items:center; gap:9px; }
.support-inbox #templateForm > div { margin-top:10px; }
@media(max-width:880px){.support-inbox .notification-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.support-inbox .notification-channel-grid,.support-inbox .notification-options{grid-template-columns:1fr}}
.newsletter-block-editor{display:grid;grid-template-columns:1fr minmax(220px,32%);gap:16px;margin:16px 0;padding:16px;border:1px solid rgba(130,120,255,.25);border-radius:14px;background:rgba(20,20,38,.45)}.block-palette{grid-column:1/-1;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.block-canvas{min-height:180px;padding:18px;border-radius:10px;background:#fbfbff;color:#202033;display:grid;align-content:start;gap:9px}.newsletter-block{display:block;width:100%;padding:12px;text-align:left;border:1px solid #e1e0f0;border-radius:7px;background:#fff;color:inherit;white-space:pre-wrap}.newsletter-block.selected{border-color:#7564ff;box-shadow:0 0 0 2px rgba(117,100,255,.18)}.block-properties{padding:14px;border-radius:10px;background:rgba(255,255,255,.04)}.block-properties label{display:grid;gap:5px;margin-bottom:10px}.block-properties textarea{min-height:80px}.block-actions{display:flex;flex-wrap:wrap;gap:6px}@media(max-width:760px){.newsletter-block-editor{grid-template-columns:1fr}.block-palette{grid-column:auto}.block-properties{order:2}}
.rich-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.rich-toolbar button{min-width:34px;padding:6px 8px}.property-group{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.property-group>b{display:block;margin-bottom:8px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ws-muted,#bbb)}.rich-link{display:flex;gap:6px;flex-wrap:wrap}.rich-link input{flex:1 1 170px}.field-error{margin:7px 0 0;color:#ff9fa8;font-size:.85rem}.rich-preview p{margin:.2em 0}.rich-preview ul,.rich-preview ol{margin:.35em 0;padding-left:1.35em}.editor-button{display:inline-block;border-radius:6px;padding:.55em .95em;font-weight:700}.editor-button.primary{background:#6658e8;color:#fff}.editor-button.secondary{background:#f0edff;color:#4939b6;border:1px solid #a99ffa}.editor-button.small{font-size:.78rem}.editor-button.large{font-size:1.15rem}.editor-button.center{display:table;margin-inline:auto}.editor-button.right{float:right}
@media(max-width:760px){.rich-link button{flex:1 1 auto}.rich-toolbar{gap:4px}}
.newsletter-render-preview{margin:20px 0;padding:16px;border:1px solid rgba(130,120,255,.25);border-radius:14px;background:rgba(20,20,38,.45)}.preview-toolbar,.preview-toggle{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.preview-toolbar{justify-content:space-between}.preview-toggle button[aria-pressed=true]{border-color:#8d82ff;background:#5648ce;color:#fff}.preview-feedback{margin:12px 0 6px}.preview-meta{display:grid;gap:4px;margin-bottom:14px;font-size:.85rem;color:var(--ws-muted,#bbb)}.preview-stage{overflow:auto;padding:24px;background:#e8ebf1;border-radius:10px;min-height:220px}.preview-stage.mobile{display:flex;justify-content:center}.preview-frame{display:block;width:680px;max-width:100%;height:680px;border:0;border-radius:4px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.2)}.preview-stage.mobile .preview-frame{width:375px;max-width:375px}.preview-text{box-sizing:border-box;width:680px;max-width:100%;min-height:420px;margin:0;padding:22px;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px;background:#fff;color:#202033;font:14px/1.6 ui-monospace,Consolas,monospace}.preview-empty{display:grid;place-items:center;min-height:180px;color:#5e6475;background:#fff;border-radius:4px}@media(max-width:760px){.preview-toolbar{align-items:flex-start;flex-direction:column}.preview-stage{padding:12px}.preview-stage.mobile .preview-frame{width:375px}.preview-frame{width:600px}}
.campaign-send-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:16px 0;padding:12px;border:1px solid rgba(130,120,255,.25);border-radius:10px}.campaign-send-tools #campaignSendFeedback{flex:1 1 240px;font-size:.86rem}
#testSendDialog{width:min(460px,calc(100vw - 32px));border:1px solid rgba(130,120,255,.45);border-radius:14px;background:#201d2b;color:var(--ws-text,#fff);padding:22px;box-shadow:0 20px 64px rgba(0,0,0,.55)}#testSendDialog::backdrop{background:rgba(8,7,13,.68)}#testSendDialog h3{margin:0 0 14px}#testSendDialog dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 14px;margin:0;padding:12px;border-radius:8px;background:rgba(255,255,255,.05)}#testSendDialog dt{color:var(--ws-muted,#bbb)}#testSendDialog dd{margin:0;overflow-wrap:anywhere}#testSendDialog>div{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.image-placeholder{display:grid;place-items:center;min-height:110px;border:1px dashed #aaa4ef;border-radius:8px;color:#6258b5;background:#f7f5ff}.editor-image{display:block;max-width:100%;height:auto;max-height:340px;object-fit:contain}.editor-image.small{max-width:30%}.editor-image.medium{max-width:55%}.editor-image.large{max-width:75%}.editor-image.full{width:100%}.editor-image.center{margin-inline:auto}.editor-image.right{margin-left:auto}.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 0}.media-grid button{padding:4px;text-align:left}.media-grid img{display:block;width:100%;height:74px;object-fit:cover;border-radius:4px}.media-grid small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.editor-image.small{max-width:45%}.editor-image.medium{max-width:70%}.media-grid{grid-template-columns:1fr}}
