/* ==========================================================
   OTTPROVIDERS CONTROL V3 — FULL DESIGN SYSTEM
   Approved mockup 2: navy rail, bright workspace, vivid accents
   ========================================================== */

:root {
    --v30-navy-950: #07162b;
    --v30-navy-900: var(--navy-900, #0b1f3a);
    --v30-navy-800: #102b4d;
    --v30-navy-700: #17385e;
    --v30-ink: var(--ink, #10213e);
    --v30-text: #344664;
    --v30-muted: #7b8ca7;
    --v30-soft: #f6f8fc;
    --v30-soft-blue: #eef5ff;
    --v30-line: var(--line, #e3eaf4);
    --v30-blue: var(--blue-600, #1677ff);
    --v30-blue-2: #4da3ff;
    --v30-green: #18b873;
    --v30-orange: #ff8a1f;
    --v30-purple: #8b5cf6;
    --v30-pink: #f43f6f;
    --v30-red: #e5484d;
    --v30-cyan: #16b8d4;
    --v30-radius: 16px;
    --v30-radius-sm: 12px;
    --v30-shadow: 0 10px 32px rgba(19, 42, 76, .07);
    --v30-shadow-lg: 0 20px 52px rgba(19, 42, 76, .11);
}

* { scrollbar-width: thin; scrollbar-color: #c9d5e6 transparent; }
html { background: var(--v30-soft); }
body.v30-ui,
body.app-body {
    background: var(--v30-soft) !important;
    color: var(--v30-text) !important;
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    letter-spacing: -.005em;
}

/* ---------- APP SHELL / SIDEBAR ---------- */
.app-sidebar {
    width: 258px !important;
    padding: 18px 13px !important;
    border-right: 1px solid rgba(255,255,255,.07) !important;
    background: linear-gradient(180deg, var(--v30-navy-900) 0%, var(--v30-navy-950) 100%) !important;
    box-shadow: 18px 0 50px rgba(8, 28, 54, .10) !important;
}
.app-shell { margin-left: 258px !important; }
.app-brand.v30-brand,
.app-brand {
    min-height: 60px !important;
    margin: 0 4px 20px !important;
    padding: 8px 8px !important;
    gap: 12px !important;
    color: #fff !important;
}
.brand-mark {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    border-radius: 13px !important;
    color: #fff !important;
    background: linear-gradient(145deg, #4ea5ff, #1769ff 58%, #645cff) !important;
    box-shadow: 0 10px 24px rgba(22,119,255,.30) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}
.app-brand strong { color:#fff !important; font-size:15px !important; font-weight:800 !important; letter-spacing:-.02em !important; }
.app-brand small { margin-top:3px !important; color:#58a9ff !important; font-size:8px !important; letter-spacing:.22em !important; font-weight:800 !important; }
.app-nav { gap: 4px !important; }
.app-nav > a,
.app-nav .v281-support-main > a {
    min-height: 48px !important;
    padding: 0 14px !important;
    border: 1px solid transparent !important;
    border-radius: 11px !important;
    color: #bfcce0 !important;
    font-size: 13px !important;
    font-weight: 620 !important;
    transition: .16s ease !important;
}
.app-nav > a i,
.app-nav .v281-support-main > a i { width: 22px !important; color:#a9bdd7 !important; font-size:14px !important; }
.app-nav > a:hover,
.app-nav .v281-support-main > a:hover { color:#fff !important; background:rgba(255,255,255,.055) !important; transform:translateX(2px); }
.app-nav > a.active,
.app-nav .v281-support-main > a.active {
    color:#fff !important;
    border-color:#207cf0 !important;
    background:linear-gradient(90deg, rgba(22,119,255,.34), rgba(22,119,255,.12)) !important;
    box-shadow:inset 3px 0 #32a2ff, 0 7px 22px rgba(0,72,190,.13) !important;
}
.app-nav > a.active i,
.app-nav .v281-support-main > a.active i { color:#dceeff !important; }
.v281-support-toggle { color:#9cb2cf !important; }
.app-nav .v281-support-submenu {
    margin:4px 0 7px 18px !important;
    padding:7px !important;
    border-left:1px solid rgba(255,255,255,.12) !important;
}
.app-nav .v281-support-submenu a {
    min-height:36px !important;
    padding:0 10px !important;
    border-radius:8px !important;
    color:#9fb1ca !important;
    font-size:11px !important;
}
.app-nav .v281-support-submenu a:hover,
.app-nav .v281-support-submenu a.active { color:#fff !important; background:rgba(55,142,255,.16) !important; }
.app-nav .v281-support-submenu a i { color:#78aef1 !important; }
.v281-submenu-label { color:#6f88a8 !important; font-size:8px !important; letter-spacing:.13em !important; }
.sidebar-license {
    margin: auto 2px 0 !important;
    padding: 16px !important;
    border:1px solid rgba(116,166,226,.18) !important;
    border-radius:14px !important;
    color:#d8e6f8 !important;
    background:linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,255,255,.025)) !important;
    box-shadow:0 18px 40px rgba(0,0,0,.15) !important;
}
.sidebar-license i { color:#4da3ff !important; }
.sidebar-license strong { font-size:11px !important; }
.sidebar-license small { color:#7594bc !important; font-size:9px !important; }

/* ---------- HEADER ---------- */
.app-header,
.v30-header {
    height:72px !important;
    padding:0 28px !important;
    border-bottom:1px solid var(--v30-line) !important;
    background:rgba(255,255,255,.94) !important;
    backdrop-filter:saturate(150%) blur(16px) !important;
    box-shadow:0 2px 14px rgba(18,42,76,.025) !important;
}
.header-title { display:none !important; }
.v29-global-search,
.v30-search { width:min(520px, 48vw) !important; margin-right:auto !important; }
.v29-global-search form {
    height:42px !important;
    border:1px solid #dfe7f2 !important;
    border-radius:12px !important;
    background:#f8faff !important;
    box-shadow:inset 0 1px 1px rgba(18,42,76,.02) !important;
}
.v29-global-search i { color:#8294ad !important; }
.v29-global-search input { color:var(--v30-ink) !important; font-size:12px !important; }
.v29-global-search input::placeholder { color:#9aa9bd !important; }
.v29-global-search kbd { border:1px solid #d7e1ee !important; border-radius:7px !important; color:#8293a9 !important; background:#fff !important; box-shadow:none !important; font-size:9px !important; }
.header-actions { gap:9px !important; }
.icon-btn {
    width:40px !important;
    height:40px !important;
    border:1px solid #dfe7f2 !important;
    border-radius:11px !important;
    color:#526883 !important;
    background:#fff !important;
    box-shadow:0 4px 14px rgba(18,42,76,.035) !important;
}
.icon-btn:hover { color:var(--v30-blue) !important; border-color:#bad6ff !important; background:#f0f6ff !important; }
.account-chip {
    min-height:42px !important;
    padding:5px 11px 5px 5px !important;
    border:1px solid #dfe7f2 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 4px 14px rgba(18,42,76,.035) !important;
}
.account-chip > span { width:31px !important; height:31px !important; border-radius:9px !important; color:#fff !important; background:linear-gradient(145deg,var(--v30-blue),#09b9d9) !important; font-size:11px !important; }
.account-chip strong { color:var(--v30-ink) !important; font-size:11px !important; }
.account-chip small { color:#8696ab !important; font-size:9px !important; text-transform:capitalize !important; }

/* ---------- MAIN / TYPOGRAPHY ---------- */
.app-main {
    min-height:calc(100vh - 72px) !important;
    padding:30px 30px 42px !important;
    background:
        radial-gradient(circle at 82% 5%, rgba(22,119,255,.055), transparent 27%),
        var(--v30-soft) !important;
}
.app-main > * { max-width: 1480px; margin-left:auto; margin-right:auto; }
.page-heading,
.v29-page-head,
.v27-page-heading,
.v281-support-heading {
    margin-bottom:20px !important;
    padding:0 !important;
    align-items:flex-end !important;
}
.page-heading h1,
.v29-page-head h1,
.v281-support-heading h1 { margin:3px 0 4px !important; color:var(--v30-ink) !important; font-size:28px !important; line-height:1.15 !important; font-weight:820 !important; letter-spacing:-.045em !important; }
.page-heading p,
.v29-page-head p,
.v281-support-heading p { margin:0 !important; color:var(--v30-muted) !important; font-size:12px !important; }
.eyebrow,
.v29-eyebrow { color:var(--v30-blue) !important; font-size:9px !important; line-height:1 !important; font-weight:850 !important; letter-spacing:.16em !important; }
h1,h2,h3,h4,h5,h6 { color:var(--v30-ink); letter-spacing:-.025em; }
p { color:var(--v30-text); }

/* ---------- CARDS / PANELS ---------- */
.card,
.v30-card,
.panel,
.well,
.modal-card {
    border:1px solid var(--v30-line) !important;
    border-radius:var(--v30-radius) !important;
    background:#fff !important;
    box-shadow:var(--v30-shadow) !important;
}
.card:hover { border-color:#d9e4f2; }
.card-head,
.v29-panel > header,
.v26-section-head,
.v281-section-head {
    border-bottom:1px solid #e9eef5 !important;
}
.card-head { min-height:68px !important; padding:16px 18px !important; }
.card-head h2,
.v29-panel header h2,
.v26-section-head h2 { color:var(--v30-ink) !important; font-size:15px !important; font-weight:780 !important; }
.card-head p,
.v29-panel header p,
.v26-section-head p { color:var(--v30-muted) !important; font-size:10px !important; }
.empty-state { color:var(--v30-muted) !important; }

/* ---------- BUTTONS ---------- */
.btn {
    min-height:40px !important;
    padding:8px 14px !important;
    border-radius:10px !important;
    font-size:11px !important;
    font-weight:760 !important;
    letter-spacing:0 !important;
    box-shadow:none !important;
    transition:transform .14s ease, box-shadow .14s ease, background-color .14s ease, border-color .14s ease !important;
}
.btn-primary { border-color:var(--v30-blue) !important; background:linear-gradient(180deg,#2d87ff,var(--v30-blue)) !important; color:#fff !important; box-shadow:0 8px 18px rgba(22,119,255,.18) !important; }
.btn-primary:hover { transform:translateY(-1px); background:linear-gradient(180deg,#438fff,#0969ef) !important; box-shadow:0 11px 24px rgba(22,119,255,.24) !important; }
.btn-secondary,.btn-light { border-color:#dbe5f1 !important; background:#fff !important; color:#314760 !important; }
.btn-secondary:hover,.btn-light:hover { border-color:#bcd5fa !important; background:#f1f6ff !important; color:#1269df !important; }
.btn-danger { border-color:#ffd0d3 !important; background:#fff3f4 !important; color:#c9343b !important; }
.v30-pressed { transform:scale(.985) !important; }

/* ---------- FORMS ---------- */
label { margin-bottom:6px !important; color:#445a75 !important; font-size:10px !important; font-weight:720 !important; }
input,select,textarea,
.form-control {
    min-height:42px !important;
    padding:9px 11px !important;
    border:1px solid #d9e3ef !important;
    border-radius:10px !important;
    color:#213650 !important;
    background:#fff !important;
    font-size:12px !important;
    box-shadow:none !important;
}
textarea { min-height:105px !important; }
input::placeholder, textarea::placeholder { color:#a0aec0 !important; }
input:focus,select:focus,textarea:focus,.form-control:focus { border-color:#72adff !important; box-shadow:0 0 0 4px rgba(22,119,255,.10) !important; }
.field-help,.form-text,.help-block { color:#8b9ab0 !important; font-size:9px !important; }
.form-grid { gap:15px !important; }

/* ---------- TABLES ---------- */
.table-wrap { overflow:auto; border-radius:0 0 var(--v30-radius) var(--v30-radius); }
table,.v30-table { width:100%; border-collapse:separate !important; border-spacing:0 !important; }
thead th {
    padding:12px 14px !important;
    border-bottom:1px solid #e3eaf3 !important;
    color:#6f819a !important;
    background:#f7f9fc !important;
    font-size:9px !important;
    font-weight:820 !important;
    letter-spacing:.07em !important;
    text-transform:uppercase !important;
}
tbody td {
    padding:13px 14px !important;
    border-bottom:1px solid #edf1f6 !important;
    color:#354a65 !important;
    background:#fff !important;
    font-size:11px !important;
}
tbody tr:hover td { background:#f8fbff !important; }
tbody tr:last-child td { border-bottom:0 !important; }
.identity-cell strong { color:var(--v30-ink) !important; font-size:11px !important; }
.identity-cell small,.subline { color:#8899af !important; font-size:9px !important; }
.identity-cell > span { background:linear-gradient(145deg,#e3efff,#cfe3ff) !important; color:#126cde !important; }
.v29-local-search { margin-bottom:12px !important; padding:9px !important; border:1px solid #e1e9f3 !important; border-radius:12px !important; background:#fff !important; box-shadow:0 6px 20px rgba(18,42,76,.035) !important; }
.v29-local-search input { background:#f7f9fc !important; }

/* ---------- BADGES / STATUS ---------- */
.badge,.status-pill,.priority-chip {
    min-height:24px !important;
    padding:0 8px !important;
    border-radius:999px !important;
    font-size:8px !important;
    font-weight:820 !important;
    letter-spacing:.045em !important;
}
.badge-active,.badge-paid,.badge-answered { color:#087a51 !important; border-color:#bfead8 !important; background:#ecfaf4 !important; }
.badge-pending,.badge-unpaid,.badge-customer_reply { color:#b25a07 !important; border-color:#ffd9ae !important; background:#fff6e9 !important; }
.badge-open,.badge-in_progress { color:#1267d8 !important; border-color:#c6ddff !important; background:#edf5ff !important; }
.badge-suspended,.badge-overdue,.badge-expired,.badge-cancelled,.badge-closed,.badge-failed { color:#c23d4a !important; border-color:#f5c9ce !important; background:#fff0f2 !important; }

/* ---------- MODALS ---------- */
.modal-backdrop { background:rgba(5,21,42,.55) !important; backdrop-filter:blur(8px) !important; }
.modal-card,.v30-modal-card { border:1px solid rgba(255,255,255,.92) !important; border-radius:20px !important; box-shadow:0 30px 90px rgba(5,25,52,.28) !important; }
.modal-card > header { padding:19px 21px !important; }
.modal-form { padding:20px 21px !important; }

/* ==========================================================
   ADMIN DASHBOARD — mockup 2
   ========================================================== */
.v30-dashboard-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:20px; }
.v30-dashboard-head h1 { margin:4px 0 5px; color:var(--v30-ink); font-size:29px; font-weight:850; letter-spacing:-.045em; }
.v30-dashboard-head p { margin:0; color:var(--v30-muted); font-size:12px; }
.v30-dashboard-date { min-width:190px; padding:10px 13px; display:flex; align-items:center; gap:10px; border:1px solid #e0e8f2; border-radius:12px; background:#fff; box-shadow:0 6px 18px rgba(18,42,76,.035); }
.v30-dashboard-date i { color:var(--v30-blue); }
.v30-dashboard-date span { display:flex; flex-direction:column; }
.v30-dashboard-date strong { color:var(--v30-ink); font-size:10px; }
.v30-dashboard-date small { color:#8b9ab0; font-size:8px; }
.v29-kpi-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:14px !important; margin-bottom:16px !important; }
.v29-kpi-card {
    position:relative; min-height:122px; padding:18px !important; display:grid !important; grid-template-columns:52px 1fr 24px; grid-template-rows:auto auto auto; gap:2px 13px;
    overflow:hidden; border:1px solid #e2eaf4; border-radius:15px; color:inherit !important; text-decoration:none !important; box-shadow:0 9px 26px rgba(18,42,76,.055); transition:.18s ease;
}
.v29-kpi-card::after { content:""; position:absolute; right:-34px; bottom:-58px; width:150px; height:105px; border-radius:50%; opacity:.72; transform:rotate(-8deg); }
.v29-kpi-card:hover { transform:translateY(-3px); box-shadow:0 16px 34px rgba(18,42,76,.095); }
.v29-kpi-card .v30-kpi-icon { grid-row:1/4; width:52px; height:52px; display:grid; place-items:center; border-radius:15px; font-size:19px; }
.v29-kpi-card > span { color:#304766; font-size:11px; font-weight:720; }
.v29-kpi-card > strong { z-index:1; color:var(--v30-ink); font-size:24px; line-height:1.15; font-weight:850; letter-spacing:-.035em; }
.v29-kpi-card > small { z-index:1; color:#8494a9; font-size:9px; }
.v29-kpi-card > .v30-kpi-arrow { position:absolute; top:18px; right:16px; width:27px; height:27px; display:grid; place-items:center; border-radius:9px; font-size:10px; }
.v30-kpi-blue { background:linear-gradient(145deg,#fff,#edf5ff) !important; }.v30-kpi-blue::after{background:#cfe4ff}.v30-kpi-blue .v30-kpi-icon,.v30-kpi-blue .v30-kpi-arrow{color:#126ff0;background:#dcecff}
.v30-kpi-green { background:linear-gradient(145deg,#fff,#effcf5) !important; }.v30-kpi-green::after{background:#d0f5e0}.v30-kpi-green .v30-kpi-icon,.v30-kpi-green .v30-kpi-arrow{color:#10975c;background:#daf8e8}
.v30-kpi-orange { background:linear-gradient(145deg,#fff,#fff7ee) !important; }.v30-kpi-orange::after{background:#ffe3bf}.v30-kpi-orange .v30-kpi-icon,.v30-kpi-orange .v30-kpi-arrow{color:#e77710;background:#ffead2}
.v30-kpi-purple { background:linear-gradient(145deg,#fff,#f7f1ff) !important; }.v30-kpi-purple::after{background:#eadcff}.v30-kpi-purple .v30-kpi-icon,.v30-kpi-purple .v30-kpi-arrow{color:#7c4ce5;background:#eadfff}
.v29-mini-grid { display:none !important; }
.v30-secondary-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:-2px 0 16px; }
.v30-secondary-strip article { padding:11px 13px; display:flex; align-items:center; justify-content:space-between; border:1px solid #e2e9f3; border-radius:11px; background:rgba(255,255,255,.78); box-shadow:0 4px 13px rgba(18,42,76,.025); }
.v30-secondary-strip span { color:#71839b; font-size:9px; font-weight:680; }.v30-secondary-strip strong{color:var(--v30-ink);font-size:12px}
.v29-dashboard-grid { display:grid !important; grid-template-columns:minmax(0,1.45fr) minmax(300px,.62fr) minmax(275px,.58fr) !important; gap:14px !important; align-items:start; }
.v29-panel { overflow:hidden; border-radius:15px !important; }
.v29-panel > header { min-height:64px; padding:14px 16px !important; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.v29-panel header h2 { margin:0 0 3px !important; font-size:14px !important; }.v29-panel header p{margin:0 !important;font-size:9px !important}.v29-panel header>a{font-size:9px !important;font-weight:740 !important}
.v30-panel-overview { grid-column:1; grid-row:1 / span 2; }
.v30-panel-billing { grid-column:2; grid-row:1 / span 2; }
.v30-panel-clients { grid-column:3; grid-row:1; }
.v30-panel-team { grid-column:3; grid-row:2; }
.v30-panel-payments { grid-column:1; }
.v30-panel-upcoming { grid-column:2; }
.v30-panel-support { grid-column:3; }
.v30-panel-automation { grid-column:1; }
.v30-panel-activity { grid-column:2; }
.v30-panel-alerts { grid-column:3; }
.v29-chart-panel { min-height:360px !important; }
.v29-chart-wrap { height:245px !important; padding:12px 14px 0 !important; }
.v29-chart-legend { padding:9px 17px 15px !important; }
.v29-chart-legend span { font-size:9px !important; }
.v29-billing-grid { padding:10px 14px 16px !important; display:grid !important; grid-template-columns:1fr !important; gap:9px !important; }
.v29-billing-grid>div { padding:12px 13px !important; border:1px solid #e8eef5 !important; border-radius:11px !important; background:linear-gradient(145deg,#fafcff,#fff) !important; }
.v29-billing-grid>div:nth-child(1){background:#f4f8ff!important}.v29-billing-grid>div:nth-child(2){background:#f1fcf6!important}.v29-billing-grid>div:nth-child(3){background:#f8f4ff!important}.v29-billing-grid>div:nth-child(4){background:#f7f9fc!important}
.v29-billing-grid span { color:#8090a6 !important; font-size:8px !important; }.v29-billing-grid strong{font-size:17px !important;color:var(--v30-ink)!important}
.v29-duo-stats { gap:8px !important; padding:12px 14px !important; }.v29-duo-stats>div{border-radius:10px!important;background:#f8faff!important}.v29-duo-stats strong{font-size:18px!important}.v29-duo-stats span{font-size:8px!important}
.v29-list { padding:0 14px 13px !important; }.v29-list>a,.v29-list-row{min-height:48px!important;padding:9px 3px!important;border-bottom:1px solid #edf1f6!important}.v29-list strong{font-size:10px!important}.v29-list small{font-size:8px!important}.v29-list>a>span,.v29-list-row>span{font-size:9px!important}
.v29-support-grid { padding:13px !important; gap:8px !important; grid-template-columns:1fr 1fr !important; }.v29-support-grid>div{padding:12px!important;border-radius:11px!important;background:#f8faff!important}.v29-support-grid strong{font-size:18px!important}.v29-support-grid span{font-size:8px!important}
.v29-auto-health { padding:12px 14px 15px !important; gap:8px !important; grid-template-columns:1fr 1fr !important; }.v29-auto-health>div{padding:11px!important;border-radius:10px!important;background:#f8faff!important}.v29-auto-health span{font-size:8px!important}.v29-auto-health strong{font-size:10px!important}
.v29-activity-table { padding:4px 14px 12px !important; }.v29-activity-table>div{min-height:45px!important}.v29-activity-table strong{font-size:9px!important}.v29-activity-table small{font-size:8px!important}.v29-activity-table code{font-size:8px!important}
.v29-warning-row { min-height:50px!important;padding:8px 0!important }.v29-warning-row strong{font-size:9px!important}.v29-warning-row small,.v29-warning-row time{font-size:8px!important}

/* ==========================================================
   CLIENT AREA
   ========================================================== */
.v30-client .app-sidebar { background:linear-gradient(180deg,#0b1f3a,#07162b) !important; }
.v26-dashboard-hero {
    min-height:190px !important; padding:28px 30px !important; border:1px solid #dfe8f3 !important; border-radius:18px !important;
    background:radial-gradient(circle at 85% 30%,rgba(22,119,255,.17),transparent 30%),linear-gradient(135deg,#fff,#f2f7ff) !important; box-shadow:var(--v30-shadow) !important;
}
.v26-dashboard-hero h1 { color:var(--v30-ink) !important; font-size:29px !important; font-weight:850 !important; }.v26-dashboard-hero p{color:#71839b!important;font-size:12px!important}
.v26-client-card { border:1px solid #dce7f4!important;background:rgba(255,255,255,.86)!important;box-shadow:0 12px 28px rgba(18,42,76,.06)!important }
.v26-stat-grid { gap:13px !important; }.v26-stat-grid>a{min-height:112px!important;border:1px solid #e1e9f3!important;border-radius:15px!important;background:#fff!important;box-shadow:var(--v30-shadow)!important}.v26-stat-grid>a:hover{transform:translateY(-2px)!important}.v26-stat-grid>a>span{border-radius:13px!important;background:#edf5ff!important;color:var(--v30-blue)!important}.v26-stat-grid strong{font-size:20px!important}.v26-stat-grid small{font-size:9px!important}.v26-stat-grid p{font-size:9px!important}
.v26-dashboard-layout { gap:15px !important; }.v26-dashboard-card{border-radius:16px!important}.v26-dashboard-services>a,.v26-list>a,.v26-quick-actions>a,.v26-side-list>a{border-color:#ebf0f6!important}.v26-dashboard-services>a:hover,.v26-list>a:hover,.v26-quick-actions>a:hover,.v26-side-list>a:hover{background:#f7faff!important}
.v26-service-symbol,.v26-list-icon { background:#edf5ff!important;color:var(--v30-blue)!important;border-radius:11px!important }.v26-service-name-line strong{font-size:11px!important}.v26-service-name-line em{font-size:9px!important}.v26-dashboard-services small,.v26-list small{font-size:9px!important}
.v26-help-card { border-radius:16px!important; }.v26-help-grid>a{border:1px solid #e8eef5!important;border-radius:12px!important;background:#fbfcff!important}.v26-help-grid>a:hover{border-color:#cfe0f6!important;background:#f5f9ff!important}

/* Service detail V2.7 */
.v27-service-hero,.v27-access-card,.v27-apps-card,.v27-service-facts-card,.v27-service-banner { border-radius:16px!important; border-color:#e1e9f3!important; box-shadow:var(--v30-shadow)!important; }
.v27-service-hero { background:radial-gradient(circle at 93% 15%,rgba(24,184,115,.12),transparent 28%),linear-gradient(145deg,#fff,#f8fbff)!important; }
.v27-service-hero h1 { font-size:22px!important; }.v27-service-hero small,.v27-service-hero p{font-size:9px!important}
.v27-access-row,.v27-app-item { border-color:#e9eef5!important;background:#fbfcff!important;border-radius:11px!important }.v27-access-row:hover,.v27-app-item:hover{background:#f4f8ff!important;border-color:#d4e3f7!important}.v27-access-row strong,.v27-app-item strong{font-size:10px!important}.v27-access-row small,.v27-app-item small{font-size:8px!important}
.v27-app-icon { border-radius:10px!important; }.v27-service-grid { gap:15px!important; }

/* ---------- TICKETS / SUPPORT ---------- */
.v281-ticket-filters { gap:6px!important;padding:6px!important;border:1px solid #e1e9f3!important;border-radius:13px!important;background:#fff!important;box-shadow:0 7px 22px rgba(18,42,76,.04)!important}.v281-ticket-filters a{min-height:35px!important;border-radius:9px!important;font-size:9px!important}.v281-ticket-filters a.active{background:#edf5ff!important;color:#126be5!important}.v281-ticket-filters b{font-size:8px!important}
.v281-ticket-table-row { min-height:62px!important;padding:11px 15px!important;border-color:#edf1f6!important }.v281-ticket-main strong{font-size:10px!important}.v281-ticket-main small{font-size:8px!important}.v281-assignee,.v281-attention{font-size:8px!important}
.v281-ticket-console { gap:15px!important }.v281-ticket-summary,.v281-conversation-card,.v281-reply-card,.v281-properties-card,.v281-client-card,.v281-kb-card{border-radius:15px!important}.v281-ticket-summary{background:linear-gradient(145deg,#fff,#f7faff)!important}
.conversation-messages { background:#f7f9fc!important }.message{border-color:#e1e9f3!important;box-shadow:0 4px 14px rgba(18,42,76,.035)!important}.message.from-admin{border-color:#cfe0fa!important;background:#eef5ff!important}.message header strong{font-size:10px!important}.message header small{font-size:8px!important}.message p,.v281-message-body{font-size:11px!important;line-height:1.65!important}
.v281-properties-card header,.v281-client-card header,.v281-kb-card header{border-color:#e9eef5!important}.v281-property-field label{font-size:9px!important}

/* ---------- CRM / REPORTS / SEARCH ---------- */
.v29-report-kpis,.v29-report-grid,.v29-search-grid,.v29-client-summary-grid { gap:13px!important }.v29-report-kpis>article,.v29-client-summary-grid>article{border:1px solid #e2eaf4!important;border-radius:14px!important;background:#fff!important;box-shadow:0 7px 22px rgba(18,42,76,.04)!important}.v29-report-kpis strong,.v29-client-summary-grid strong{font-size:20px!important}.v29-report-kpis span,.v29-client-summary-grid span{font-size:9px!important}
.v29-tabs,.v2-filter-row { gap:5px!important;padding:5px!important;border:1px solid #e2eaf4!important;border-radius:12px!important;background:#fff!important }.v29-tabs a,.v2-filter-pill{min-height:34px!important;border-radius:8px!important;font-size:9px!important}.v29-tabs a.active,.v2-filter-pill.active{background:#edf5ff!important;color:#126be5!important}
.v29-timeline-item { border-color:#e8eef5!important }.v29-timeline-item i{background:#edf5ff!important;color:var(--v30-blue)!important}
.v29-search-section { border:1px solid #e2eaf4!important;border-radius:15px!important;background:#fff!important;box-shadow:var(--v30-shadow)!important }.v29-search-result{border-color:#edf1f6!important}.v29-search-result:hover{background:#f7faff!important}

/* ---------- SETTINGS / KNOWLEDGEBASE / ANNOUNCEMENTS ---------- */
.settings-grid { gap:15px!important }.settings-form,.license-summary,.v2-table-card,.v2-settings-card{border-radius:16px!important}.settings-form .form-grid{padding:20px!important}.color-field span{font-size:9px!important}
.v2-kb-grid,.v2-content-grid { gap:15px!important }.v2-kb-card,.v2-canned-card,.v27-announcement-list>div{border-color:#e5ecf4!important;border-radius:12px!important;background:#fff!important}.v27-announcement-list>div:hover{background:#f8fbff!important}.v27-announcement-list strong{font-size:11px!important}.v27-announcement-list p,.v27-announcement-list small{font-size:9px!important}
.md-editor,.v25-rich-editor { border-color:#dce6f2!important;border-radius:12px!important;overflow:hidden!important }.md-editor>.md-header,.v25-editor-toolbar{background:#f7f9fc!important;border-color:#e5ebf3!important}

/* ---------- CATALOG / PRODUCTS / ORDERS / SERVICES ---------- */
.product-grid,.service-card-grid,.client-catalog-grid { gap:14px!important }.product-card,.service-manage-card,.catalog-card,.checkout-card{border:1px solid #e2eaf4!important;border-radius:16px!important;background:#fff!important;box-shadow:var(--v30-shadow)!important}.product-card:hover,.service-manage-card:hover,.catalog-card:hover{transform:translateY(-3px)!important;box-shadow:var(--v30-shadow-lg)!important}.product-icon,.catalog-type{border-radius:13px!important}.product-card h2,.service-manage-card h2,.catalog-card h2{font-size:16px!important}.product-card p,.catalog-card p{font-size:10px!important}.service-meta{border-color:#e5ecf4!important;background:#e5ecf4!important}.service-meta>span{background:#fafcff!important}.service-meta small{font-size:8px!important}.service-meta strong{font-size:10px!important}

/* ---------- AUTH ---------- */
.login-page { min-height:100vh!important;background:#f5f8fc!important }.login-shell { width:min(1050px,calc(100% - 40px))!important;min-height:620px!important;border:1px solid #e1e8f1!important;border-radius:22px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 30px 90px rgba(11,31,58,.15)!important}.login-visual{background:radial-gradient(circle at 15% 10%,rgba(29,122,255,.34),transparent 34%),linear-gradient(145deg,#0b1f3a,#07162b)!important}.login-visual h1{font-size:34px!important;line-height:1.15!important}.login-visual p{color:#9fb3cf!important;font-size:12px!important}.login-card{border:0!important;box-shadow:none!important}.login-card h2{font-size:25px!important}.login-card p{font-size:11px!important}.login-help{font-size:9px!important}

/* ---------- ALERTS / NOTIFICATIONS ---------- */
.alert { border-radius:12px!important;font-size:11px!important;box-shadow:0 5px 16px rgba(18,42,76,.035)!important }.alert-success{border-color:#bfe9d5!important;background:#effbf5!important;color:#14734e!important}.alert-info{border-color:#c6defd!important;background:#f0f6ff!important;color:#1b5cae!important}.alert-warning{border-color:#f7d9ad!important;background:#fff7eb!important;color:#9a5b0e!important}.alert-danger{border-color:#f3c8cc!important;background:#fff1f2!important;color:#a93440!important}
.v27-notification-popover { border:1px solid #dfe7f2!important;border-radius:14px!important;box-shadow:0 24px 60px rgba(7,25,52,.18)!important }.v27-notification-popover header{background:#0b1f3a!important;color:#fff!important}.v27-notification-item{border-color:#ebf0f6!important}.v27-notification-item:hover{background:#f7faff!important}

/* ---------- FOOTER ---------- */
.app-footer { margin-top:26px!important;padding:16px 2px!important;border:0!important;background:transparent!important;color:#9aa9bb!important;font-size:9px!important;text-align:center!important;box-shadow:none!important }

/* ---------- RESPONSIVE ---------- */
@media (max-width: 1180px) {
    .app-sidebar{width:230px!important}.app-shell{margin-left:230px!important}
    .v29-dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr)!important}
    .v30-panel-overview{grid-column:1;grid-row:auto}.v30-panel-billing{grid-column:2;grid-row:auto}.v30-panel-clients,.v30-panel-team,.v30-panel-payments,.v30-panel-upcoming,.v30-panel-support,.v30-panel-automation,.v30-panel-activity,.v30-panel-alerts{grid-column:auto;grid-row:auto}
    .v29-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width: 900px) {
    .app-shell{margin-left:0!important}.app-sidebar{width:270px!important}
    .app-main{padding:22px 18px 34px!important}.app-header{padding:0 18px!important}.v29-global-search{width:min(420px,60vw)!important}
    .v29-dashboard-grid{grid-template-columns:1fr!important}.v29-dashboard-grid>*{grid-column:1!important;grid-row:auto!important}
    .v30-secondary-strip{grid-template-columns:1fr 1fr}.settings-grid,.ticket-grid,.ticket-workspace,.v281-ticket-console{grid-template-columns:1fr!important}
}
@media (max-width: 640px) {
    body.v30-ui{font-size:13px!important}.app-header{height:64px!important}.app-main{min-height:calc(100vh - 64px)!important;padding:18px 14px 30px!important}.v29-global-search{display:none!important}
    .v29-kpi-grid{grid-template-columns:1fr!important}.v30-secondary-strip{grid-template-columns:1fr!important}.v30-dashboard-head{align-items:flex-start;flex-direction:column}.v30-dashboard-date{width:100%}
    .page-heading,.v29-page-head,.v281-support-heading{align-items:flex-start!important;flex-direction:column!important}.page-heading h1,.v29-page-head h1,.v281-support-heading h1{font-size:24px!important}
    .form-grid,.product-grid,.service-card-grid,.client-catalog-grid{grid-template-columns:1fr!important}.span-2{grid-column:auto!important}
    .login-shell{width:100%!important;min-height:100vh!important;border:0!important;border-radius:0!important}.login-visual{display:none!important}.login-panel{padding:28px 20px!important}
    .account-chip div{display:none!important}.account-chip{padding:5px!important}
}
