.admin-shell { background:#f8f5f9; color:#2b1d34; }
.admin-shell .topbar-inner { width:min(1500px,calc(100% - 44px)); }
.admin-shell .app-layout { width:min(1500px,100%); grid-template-columns:238px minmax(0,1fr); }
.admin-shell .sidebar { background:#24142e; border:0; }
.admin-shell .sidebar .side-label { color:#bd9ec3; }
.admin-shell .sidebar .side-link { color:#e1d4e7; }
.admin-shell .sidebar .side-link:hover,.admin-shell .sidebar .side-link.active { color:#fff; background:#b51c7b; }
.admin-shell .dashboard { min-width:0; padding:34px clamp(22px,3vw,48px) 70px; overflow:visible; }
.admin-shell button,.admin-shell input,.admin-shell select,.admin-shell textarea { font:inherit; }
.admin-shell button { cursor:pointer; }
.admin-shell button:disabled { cursor:not-allowed; opacity:.45; }
.admin-welcome { display:flex; align-items:end; justify-content:space-between; gap:24px; padding:35px 38px; border-radius:24px; color:#fff; background:radial-gradient(circle at 85% 15%,#b51c7b 0,transparent 35%),linear-gradient(115deg,#251231,#632058); box-shadow:0 20px 45px #3c1a3924; }
.admin-welcome span,.admin-heading>div>span { display:block; color:#ea9bcc; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.admin-welcome h1 { margin:12px 0 9px; font:800 clamp(26px,3vw,39px)/1.15 Manrope,sans-serif; letter-spacing:-.04em; }
.admin-welcome p { margin:0; color:#f4dfe9; font-size:14px; }
.admin-hero-link { display:inline-flex; align-items:center; gap:9px; flex:none; padding:12px 17px; border-radius:10px; background:#fff; color:#9e126d; font-size:13px; font-weight:800; }
.admin-hero-link .material-symbols-rounded { font-size:18px; }
.admin-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; margin:22px 0; }
.admin-stat { display:flex; flex-direction:column; min-width:0; padding:22px; border:1px solid #eadce8; border-radius:18px; background:#fff; color:#2b1d34; box-shadow:0 10px 24px #35153a0a; }
.admin-stat>span { display:flex; align-items:center; gap:9px; color:#6d5d70; font-size:12px; font-weight:700; }
.admin-stat>span .material-symbols-rounded { color:#b51c7b; font-size:19px; }
.admin-stat strong { margin:16px 0 7px; font:800 30px/1.1 Manrope,sans-serif; letter-spacing:-.04em; }
.admin-stat small { display:flex; align-items:center; gap:4px; color:#a31670; font-size:11px; font-weight:800; }
.admin-stat small .material-symbols-rounded { font-size:16px; }
.admin-quick-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-bottom:22px; }
.admin-quick { display:grid; align-content:start; gap:9px; padding:22px; border:1px solid #eadce8; border-radius:18px; background:#fff; color:#2b1d34; }
.admin-quick>.material-symbols-rounded { color:#b51c7b; font-size:27px; }
.admin-quick strong { font:800 17px Manrope,sans-serif; }
.admin-quick span:last-child { display:flex; align-items:center; gap:4px; color:#a31670; font-size:12px; font-weight:700; }
.admin-quick span:last-child .material-symbols-rounded { font-size:15px; }
.admin-two-col,.admin-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.admin-two-col .admin-panel,.admin-detail-grid .admin-panel { margin:0; }
.admin-panel { min-width:0; margin:20px 0; padding:25px; border:1px solid #eadce8; border-radius:20px; background:#fff; box-shadow:0 12px 35px #35153a0b; }
.admin-panel-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
.admin-panel-heading h2 { margin:0; font:800 18px Manrope,sans-serif; }
.admin-panel-heading a { color:#ac1778; font-size:12px; font-weight:800; }
.admin-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:22px; }
.admin-heading h1 { margin:8px 0 7px; font:800 clamp(27px,3vw,36px)/1.14 Manrope,sans-serif; letter-spacing:-.035em; }
.admin-heading p { margin:0; color:#74677a; font-size:14px; line-height:1.5; }
.admin-tag { display:inline-flex; align-items:center; justify-content:center; padding:6px 10px; border-radius:30px; background:#f1edf3; color:#6b6270; font-size:10px; font-weight:800; white-space:nowrap; }
.admin-tag.good { background:#e5f8ee; color:#157a4b; }
.admin-tag.warn { background:#fff1dc; color:#945d13; }
.admin-tag.danger { background:#ffebee; color:#b52c46; }
.admin-tag.accent { background:#fce6f2; color:#a91773; }
.admin-action { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:36px; padding:8px 12px; border:1px solid #d9b8cf; border-radius:9px; background:#fff; color:#9d166e; font-size:11px; font-weight:800; text-decoration:none; white-space:nowrap; }
.admin-action:hover { background:#fdf1f8; }
.admin-action.primary { border-color:#bc1b80; background:#bc1b80; color:#fff; }
.admin-action.primary:hover { background:#9d166e; }
.admin-action.danger { border-color:#efbac6; color:#af2947; }
.admin-empty { padding:20px 0; margin:0; color:#8a7d8d; font-size:13px; }
.admin-record { display:grid; grid-template-columns:minmax(130px,1fr) auto auto minmax(0,auto); align-items:center; gap:12px; padding:17px 0; border-bottom:1px solid #f0e8ef; font-size:13px; }
.admin-record:last-child { border-bottom:0; }
.admin-record>div:first-child { min-width:0; }
.admin-record strong { font-weight:800; }
.admin-record small,.admin-client-name small,.admin-service-heading small { display:block; margin-top:5px; color:#85778a; font-size:11px; line-height:1.45; overflow-wrap:anywhere; }
.admin-record-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.admin-record-actions:empty { display:none; }
.admin-two-col .admin-record { grid-template-columns:minmax(0,1fr) auto; }
.admin-two-col .admin-record>.admin-tag { justify-self:start; }
.admin-two-col .admin-record-actions { grid-column:1/-1; justify-content:flex-start; }
.admin-ticket-row { display:grid; grid-template-columns:1fr auto; width:100%; gap:4px 12px; padding:15px 0; border:0; border-bottom:1px solid #f0e8ef; background:transparent; color:#2b1d34; text-align:left; }
.admin-ticket-row:last-child { border-bottom:0; }
.admin-ticket-row strong { font-size:13px; }
.admin-ticket-row small { grid-column:1; color:#85778a; font-size:11px; }
.admin-ticket-row .admin-tag { grid-column:2; grid-row:1/3; align-self:center; }
.admin-integrations-strip { display:flex; align-items:center; gap:16px; margin-top:22px; padding:18px 22px; border-radius:16px; background:#f3e6f0; color:#3a2440; }
.admin-integrations-strip>.material-symbols-rounded { color:#b51c7b; font-size:30px; }
.admin-integrations-strip>div { display:grid; flex:1; gap:3px; }
.admin-integrations-strip span { color:#74677a; font-size:12px; }
.admin-integrations-strip a { color:#a51573; font-size:12px; font-weight:800; }
.admin-search label { display:block; margin-bottom:8px; color:#6c5d71; font-size:12px; font-weight:800; }
.admin-search>div { display:flex; gap:9px; }
.admin-search input { flex:1; min-width:0; }
.admin-shell input:not([type="checkbox"]),.admin-shell select,.admin-shell textarea { width:100%; min-width:0; padding:10px 12px; border:1px solid #ddcddd; border-radius:9px; outline:none; background:#fff; color:#2b1d34; font-size:13px; }
.admin-shell input:focus,.admin-shell select:focus,.admin-shell textarea:focus { border-color:#ba1e80; box-shadow:0 0 0 3px #f8ddec; }
.admin-client-item { border-top:1px solid #f0e8ef; }
.admin-client-item:first-of-type { margin-top:20px; }
.admin-client-row { display:grid; grid-template-columns:42px minmax(170px,1.8fr) minmax(120px,1fr) auto auto; align-items:center; gap:14px; padding:18px 0; }
.admin-avatar { display:grid; place-items:center; width:42px; height:42px; border-radius:13px; background:linear-gradient(145deg,#fce3f1,#ead7f1); color:#a20d70; font:800 16px Manrope,sans-serif; }
.admin-avatar.large { width:54px; height:54px; border-radius:16px; font-size:22px; }
.admin-client-name strong { font-size:13px; }
.admin-client-metrics { display:flex; gap:9px; flex-wrap:wrap; color:#7b6b7e; font-size:11px; }
.admin-client-expansion { padding:8px 0 24px; }
.admin-client-expansion[hidden] { display:none; }
.admin-client-detail { padding:24px; border:1px solid #e9d5e4; border-radius:18px; background:#fbf8fb; }
.admin-detail-intro,.admin-detail-intro>div { display:flex; align-items:center; gap:13px; }
.admin-detail-intro { justify-content:space-between; margin-bottom:18px; }
.admin-detail-intro h2 { margin:0; font:800 19px Manrope,sans-serif; }
.admin-detail-intro p { margin:4px 0 0; color:#7b6b7e; font-size:12px; }
.admin-client-detail .admin-panel { margin:16px 0; box-shadow:none; }
.admin-client-detail>.admin-panel { margin:16px 0; }
.admin-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.admin-form-grid label,.admin-message-form label { display:grid; align-content:start; gap:6px; color:#625468; font-size:11px; font-weight:800; }
.admin-form-grid label.wide { grid-column:1/-1; }
.admin-form-grid label.admin-check { display:flex; align-items:center; gap:8px; padding-top:19px; }
.admin-form-grid input[type="checkbox"] { width:17px; height:17px; accent-color:#bd1e80; }
.admin-form-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:15px; }
.admin-form-footer small { color:#85778a; font-size:11px; line-height:1.5; }
.admin-muted { margin:0 0 15px; color:#827387; font-size:12px; line-height:1.6; }
.admin-notice { padding:12px 15px; border-radius:10px; font-size:12px; line-height:1.5; }
.admin-notice.warn { background:#fff2db; color:#805816; }
.admin-notice button { border:0; padding:0; background:none; color:#a21673; font-weight:800; text-decoration:underline; }
.admin-module-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.admin-module { display:grid; grid-template-columns:27px 1fr; gap:1px 7px; align-items:center; padding:11px; border:1px solid #eadce8; border-radius:11px; background:#fff; color:#47364d; text-align:left; }
.admin-module.enabled { border-color:#e6a9cf; background:#fff7fb; }
.admin-module>.material-symbols-rounded { grid-row:span 2; color:#ad1677; font-size:25px; }
.admin-module span:not(.material-symbols-rounded) { font-size:12px; font-weight:800; }
.admin-module small { color:#87798a; font-size:10px; }
.admin-subhead { margin:24px 0 5px; font:800 14px Manrope,sans-serif; }
.admin-service-form { padding:16px 0; border-bottom:1px solid #f0e8ef; }
.admin-service-form:last-child { border-bottom:0; }
.admin-service-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:13px; }
.admin-service-heading strong { font-size:13px; }
.admin-message-form { display:grid; justify-items:start; gap:11px; margin-bottom:17px; }
.admin-message-form label { width:100%; }
.admin-message { padding:14px 0; border-top:1px solid #f0e8ef; }
.admin-message strong { font-size:12px; }
.admin-message small { display:block; margin-top:4px; color:#85778a; font-size:10px; }
.admin-message p { margin:8px 0 0; color:#58495f; font-size:12px; line-height:1.55; white-space:pre-wrap; }
.admin-pagination { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-top:17px; color:#85778a; font-size:11px; }
.admin-pagination>div { display:flex; gap:7px; }
.admin-pagination button { padding:8px 12px; border:1px solid #dbc5d5; border-radius:8px; background:#fff; color:#a31670; font-size:11px; font-weight:800; }
.admin-filter-row { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0; }
.admin-filter { padding:9px 13px; border:1px solid #e1cadb; border-radius:30px; background:#fff; color:#77667c; font-size:11px; font-weight:800; }
.admin-filter.active { border-color:#bd1e80; background:#bd1e80; color:#fff; }
.admin-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.admin-product-card { min-width:0; padding:22px; border:1px solid #eadce8; border-radius:18px; background:#fff; box-shadow:0 10px 24px #35153a0b; }
.admin-product-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:17px; color:#a31670; font-size:11px; font-weight:800; }
.admin-create-plan { margin-top:20px; padding:19px 22px; border:1px dashed #cc9dbb; border-radius:16px; background:#fff; }
.admin-create-plan summary { display:flex; align-items:center; gap:8px; color:#a31670; cursor:pointer; font-size:13px; font-weight:800; }
.admin-create-plan form { display:grid; justify-items:start; gap:17px; margin-top:20px; }
.admin-create-plan .admin-form-grid { width:100%; }
.admin-integration-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.admin-integration-grid .admin-panel { margin:0; }
.admin-integration-row { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #f0e8ef; font-size:12px; }
.admin-integration-grid code { padding:2px 5px; border-radius:5px; background:#f7edf4; color:#8e1b68; font-size:11px; }
.admin-integration-grid .admin-muted { margin:17px 0 0; }
.admin-footnote { margin:17px 0; color:#827387; font-size:12px; line-height:1.6; }
.admin-lead { padding:18px 0; border-bottom:1px solid #f0e8ef; }
.admin-lead:last-child { border-bottom:0; }
.admin-lead>strong { margin-right:8px; font-size:13px; }
.admin-lead small { display:block; margin-top:6px; color:#85778a; font-size:11px; }
.admin-lead p { color:#57495c; font-size:13px; line-height:1.6; white-space:pre-wrap; }
@media(max-width:1200px) { .admin-client-row { grid-template-columns:42px minmax(150px,1fr) auto auto; } .admin-client-metrics { display:none; } .admin-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .admin-two-col,.admin-detail-grid { grid-template-columns:1fr; } }
@media(max-width:860px) { .admin-shell .app-layout { display:block; } .admin-shell .dashboard { padding:22px 18px 55px; } .admin-shell .mobile-panel-nav a.active { background:#b51c7b; } .admin-welcome { padding:27px; } .admin-product-grid,.admin-integration-grid { grid-template-columns:1fr; } }
@media(max-width:620px) { .admin-welcome,.admin-heading,.admin-form-footer,.admin-detail-intro { align-items:flex-start; flex-direction:column; } .admin-welcome { gap:22px; } .admin-stat-grid,.admin-quick-grid,.admin-form-grid { grid-template-columns:1fr; } .admin-form-grid label.wide { grid-column:auto; } .admin-client-row { grid-template-columns:42px 1fr auto; gap:9px; } .admin-client-row>.admin-tag { grid-column:2; justify-self:start; } .admin-client-row>.admin-action { grid-column:3; grid-row:1/3; } .admin-client-detail { padding:12px; } .admin-panel { padding:18px; } .admin-record { grid-template-columns:1fr auto; } .admin-record>.admin-tag { justify-self:start; } .admin-record-actions { grid-column:1/-1; justify-content:flex-start; } .admin-search>div { flex-direction:column; } .admin-module-grid { grid-template-columns:1fr; } .admin-pagination { align-items:flex-start; flex-direction:column; } .admin-integrations-strip { align-items:flex-start; flex-wrap:wrap; } }
