@font-face {
    font-display: block;
    font-family: "bootstrap-icons";
    src: url("fonts/bootstrap-icons.woff2") format("woff2"),
         url("fonts/bootstrap-icons.woff") format("woff");
}
.bi::before, [class^="bi-"]::before, [class*=" bi-"]::before {
    display: inline-block;
    font-family: bootstrap-icons !important;
    font-style: normal;
    font-weight: normal !important;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    vertical-align: -.125em;
    -webkit-font-smoothing: antialiased;
}
.bi-speedometer2::before { content: "\f580"; }
.bi-building::before { content: "\f1dd"; }
.bi-people::before { content: "\f4d0"; }
.bi-credit-card::before { content: "\f2dc"; }
.bi-bell::before { content: "\f18a"; }
.bi-gear::before { content: "\f3e5"; }
.bi-person-plus::before { content: "\f4dd"; }
.bi-search::before { content: "\f52a"; }
.bi-grid::before { content: "\f3fc"; }
.bi-arrow-right::before { content: "\f138"; }
.bi-three-dots-vertical::before { content: "\f5d3"; }
.bi-shield-check::before { content: "\f52f"; }
.bi-cash-coin::before { content: "\f632"; }
.bi-calendar-check::before { content: "\f1e2"; }
.bi-pencil-square::before { content: "\f4ca"; }
.bi-box-arrow-right::before { content: "\f1c5"; }
.bi-box-arrow-up-right::before { content: "\f1c5"; }
.bi-chevron-down::before { content: "\f282"; }
.bi-check-circle::before { content: "\f26b"; }
.bi-exclamation-triangle::before { content: "\f33a"; }
.bi-list::before { content: "\f479"; }
.bi-database::before { content: "\f2c8"; }
.bi-sliders::before { content: "\f56b"; }
.bi-receipt::before { content: "\f50d"; }
.bi-palette::before { content: "\f4b1"; }
.bi-key::before { content: "\f44f"; }

:root {
    --ma-navy-950: #061525;
    --ma-navy-900: #0a2037;
    --ma-navy-800: #102d4b;
    --ma-cyan: #14b8a6;
    --ma-cyan-dark: #0a8176;
    --ma-gold: #d2a84c;
    --ma-canvas: #edf2f7;
    --ma-surface: #ffffff;
    --ma-line: #dce5ee;
    --ma-ink: #14253a;
    --ma-muted: #687b91;
    --ma-danger: #c43838;
    --ma-shadow: 0 12px 30px rgba(5, 28, 51, .09), 0 2px 5px rgba(5, 28, 51, .05);
}
body.master-body {
    min-width: 320px;
    color: var(--ma-ink);
    background:
        radial-gradient(circle at 80% -20%, rgba(20,184,166,.09), transparent 28rem),
        linear-gradient(135deg, #f4f7fa 0%, var(--ma-canvas) 100%);
    font-family: Inter, "Segoe UI", Arial, sans-serif;
}
.master-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 40;
    display: flex;
    width: 254px;
    flex-direction: column;
    color: #c7d6e5;
    background:
        linear-gradient(115deg, rgba(255,255,255,.035), transparent 36%),
        linear-gradient(180deg, var(--ma-navy-950), #081b30 60%, #0c253f);
    border-right: 1px solid rgba(255,255,255,.08);
    box-shadow: 8px 0 28px rgba(3,18,32,.14);
}
.master-brand {
    display: flex;
    min-height: 82px;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(255,255,255,.08);
    box-shadow: inset 0 -1px rgba(0,0,0,.22);
}
.master-brand img { width: 128px; }
.master-brand span {
    padding: 4px 6px;
    color: #91a7bb;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .16em;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 5px;
}
.owner-switcher {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 14px 14px 8px;
    padding: 11px;
    background: linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 11px;
    box-shadow: inset 0 1px rgba(255,255,255,.07), 0 8px 18px rgba(0,0,0,.12);
}
.owner-avatar, .master-profile-avatar {
    display: inline-flex;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: #d9fffa;
    background: linear-gradient(145deg, #17c7b5, #08796f);
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 10px;
    font-size: 12px;
    font-weight: 850;
    box-shadow: inset 0 1px rgba(255,255,255,.32), 0 4px 10px rgba(0,0,0,.17);
}
.owner-switcher > span:nth-child(2) { min-width: 0; flex: 1; }
.owner-switcher small, .owner-switcher strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.owner-switcher small { color: #8097aa; font-size: 10px; }
.owner-switcher strong { margin-top: 2px; color: white; font-size: 12px; }
.owner-switcher .bi { color: #71899f; font-size: 10px; }
.master-nav { flex: 1; overflow-y: auto; padding: 6px 12px 18px; }
.master-nav-label {
    display: block;
    margin: 18px 11px 7px;
    color: #617b92;
    font-size: 9px;
    font-weight: 850;
    letter-spacing: .15em;
    text-transform: uppercase;
}
.master-nav-item {
    position: relative;
    display: flex;
    min-height: 42px;
    align-items: center;
    gap: 12px;
    margin: 3px 0;
    padding: 8px 11px;
    color: #afc2d3;
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 9px;
}
.master-nav-item .bi {
    width: 23px;
    color: #7893aa;
    font-size: 17px;
    text-align: center;
}
.master-nav-item span { flex: 1; }
.master-nav-item em {
    padding: 2px 6px;
    color: #6fe0d4;
    background: rgba(20,184,166,.13);
    border-radius: 12px;
    font-size: 9px;
    font-style: normal;
}
.master-nav-item:hover, .master-nav-item:focus {
    color: white;
    background: rgba(255,255,255,.055);
    border-color: rgba(255,255,255,.07);
    text-decoration: none;
}
.master-nav-item.active {
    color: white;
    background: linear-gradient(100deg, rgba(20,184,166,.25), rgba(20,184,166,.08));
    border-color: rgba(56,218,201,.23);
    box-shadow: inset 3px 0 #22c7b6, inset 0 1px rgba(255,255,255,.06), 0 6px 15px rgba(0,0,0,.1);
}
.master-nav-item.active .bi { color: #5be1d4; }
.master-sidebar-footer { padding: 12px 14px 16px; border-top: 1px solid rgba(255,255,255,.07); }
.system-health { display: flex; align-items: center; gap: 8px; padding: 8px 4px 12px; color: #7992a7; font-size: 9px; }
.system-health span { width: 7px; height: 7px; background: #33d18f; border-radius: 50%; box-shadow: 0 0 0 3px rgba(51,209,143,.12); }
.master-sidebar-footer form button {
    width: 100%;
    padding: 9px;
    color: #9db2c4;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 8px;
    font-size: 11px;
}
.master-shell { min-height: 100vh; margin-left: 254px; }
.master-topbar {
    position: sticky;
    top: 0;
    z-index: 30;
    display: flex;
    min-height: 72px;
    align-items: center;
    justify-content: space-between;
    padding: 10px 26px;
    background: rgba(255,255,255,.94);
    border-bottom: 1px solid #d9e2eb;
    box-shadow: 0 3px 16px rgba(8,33,56,.05);
    backdrop-filter: blur(12px);
}
.master-title small, .master-title strong { display: block; }
.master-title small { margin-bottom: 3px; color: #8999aa; font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.master-title strong { color: var(--ma-navy-900); font-size: 17px; }
.master-top-actions { display: flex; align-items: center; gap: 11px; }
.master-search {
    display: flex;
    width: min(340px, 29vw);
    min-height: 39px;
    align-items: center;
    gap: 9px;
    padding: 0 11px;
    background: #f2f5f8;
    border: 1px solid #e0e7ee;
    border-radius: 9px;
    box-shadow: inset 0 1px 2px rgba(9,32,53,.035);
}
.master-search .bi { color: #8496a9; }
.master-search input { min-width: 0; flex: 1; color: var(--ma-ink); background: transparent; border: 0; outline: 0; font-size: 11px; }
.master-search kbd { padding: 3px 5px; color: #8292a4; background: white; border: 1px solid #dce3ea; border-radius: 4px; font-size: 8px; box-shadow: 0 1px 1px rgba(0,0,0,.04); }
.icon-button, .mobile-menu {
    position: relative;
    display: inline-flex;
    width: 39px;
    height: 39px;
    align-items: center;
    justify-content: center;
    color: #536b82;
    background: linear-gradient(180deg, white, #f3f6f9);
    border: 1px solid #dce4ec;
    border-radius: 9px;
    box-shadow: 0 2px 5px rgba(10,34,55,.06);
}
.notification-dot { position: absolute; top: 6px; right: 6px; width: 7px; height: 7px; overflow: hidden; color: transparent; background: #e24d4d; border: 2px solid white; border-radius: 50%; }
.topbar-divider { width: 1px; height: 31px; background: #e2e8ee; }
.master-profile { display: flex; align-items: center; gap: 9px; }
.master-profile > span:nth-child(2) { display: flex; flex-direction: column; }
.master-profile strong { font-size: 10px; }
.master-profile small { margin-top: 2px; color: #8494a5; font-size: 9px; }
.master-profile .bi { color: #8b9aaa; font-size: 10px; }
.mobile-menu { display: none; }
.master-content { padding: 22px 25px 45px; }
.owner-hero {
    position: relative;
    display: flex;
    min-height: 134px;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    overflow: hidden;
    margin-bottom: 18px;
    padding: 25px 28px;
    color: white;
    background:
        radial-gradient(circle at 87% 25%, rgba(74,222,207,.35), transparent 13rem),
        linear-gradient(115deg, #0b2641, #103c5f 62%, #096d6b);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    box-shadow: inset 0 1px rgba(255,255,255,.16), 0 14px 30px rgba(5,38,63,.16);
}
.owner-hero::after { position: absolute; right: -65px; bottom: -115px; width: 250px; height: 250px; content: ""; border: 35px solid rgba(255,255,255,.055); border-radius: 50%; }
.owner-hero small { color: #82e4da; font-size: 9px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.owner-hero h1 { margin: 5px 0 7px; color: white; font-size: clamp(23px, 2.2vw, 31px); }
.owner-hero p { max-width: 650px; margin: 0; color: #c7d9e7; font-size: 11px; line-height: 1.6; }
.hero-actions { position: relative; z-index: 2; display: flex; gap: 9px; }
.master-button {
    display: inline-flex;
    min-height: 40px;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    color: white;
    background: linear-gradient(180deg, #19bea9, #0b8e82);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 8px;
    font-size: 10px;
    font-weight: 750;
    text-decoration: none;
    box-shadow: inset 0 1px rgba(255,255,255,.25), 0 5px 12px rgba(0,0,0,.13);
}
.master-button.secondary { color: #e5f0f7; background: rgba(255,255,255,.09); }
.master-button:hover { color: white; text-decoration: none; transform: translateY(-1px); }
.owner-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.owner-metric {
    position: relative;
    min-height: 105px;
    overflow: hidden;
    padding: 16px;
    background: linear-gradient(145deg, #fff, #f7fafc);
    border: 1px solid #dbe4ec;
    border-radius: 12px;
    box-shadow: var(--ma-shadow), inset 0 1px white;
}
.owner-metric::after { position: absolute; right: -18px; bottom: -28px; width: 80px; height: 80px; content: ""; background: var(--metric-wash, #e8f7f5); border-radius: 50%; }
.metric-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; }
.metric-icon { display: inline-flex; width: 33px; height: 33px; align-items: center; justify-content: center; color: var(--metric-color, #0a8176); background: var(--metric-wash, #e8f7f5); border: 1px solid rgba(10,129,118,.1); border-radius: 8px; box-shadow: inset 0 1px white; }
.metric-change { color: #16956f; font-size: 9px; font-weight: 750; }
.owner-metric strong { position: relative; z-index: 1; display: block; margin: 9px 0 1px; color: var(--ma-navy-900); font-size: 21px; }
.owner-metric small { position: relative; z-index: 1; color: var(--ma-muted); font-size: 9px; }
.owner-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(260px, .75fr); gap: 15px; margin-bottom: 18px; }
.owner-panel {
    background: rgba(255,255,255,.97);
    border: 1px solid #dbe4ec;
    border-radius: 13px;
    box-shadow: var(--ma-shadow), inset 0 1px white;
}
.owner-panel-header { display: flex; min-height: 59px; align-items: center; justify-content: space-between; gap: 15px; padding: 13px 16px; border-bottom: 1px solid #e7edf2; }
.owner-panel-title small, .owner-panel-title strong { display: block; }
.owner-panel-title small { color: #8595a5; font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.owner-panel-title strong { margin-top: 3px; color: var(--ma-navy-900); font-size: 13px; }
.panel-link { color: #0a8176; font-size: 9px; font-weight: 750; text-decoration: none; }
.company-list { padding: 2px 0; }
.company-row {
    display: grid;
    grid-template-columns: minmax(190px, 1.5fr) .6fr .55fr .45fr 34px;
    align-items: center;
    gap: 12px;
    min-height: 61px;
    padding: 9px 16px;
    border-bottom: 1px solid #edf1f5;
}
.company-row:last-child { border-bottom: 0; }
.company-row:hover { background: #f8fbfc; }
.company-identity { display: flex; min-width: 0; align-items: center; gap: 10px; }
.company-logo {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: white;
    background: linear-gradient(145deg, #183f61, #0a8176);
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 9px;
    font-size: 10px;
    font-weight: 850;
    box-shadow: inset 0 1px rgba(255,255,255,.23), 0 3px 7px rgba(7,36,59,.15);
}
.company-identity strong, .company-identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.company-identity strong { color: #183047; font-size: 11px; }
.company-identity small, .company-cell small { margin-top: 3px; color: #8998a7; font-size: 8px; }
.company-cell { color: #41586e; font-size: 10px; }
.company-cell strong, .company-cell small { display: block; }
.owner-status { display: inline-flex; align-items: center; gap: 5px; padding: 4px 7px; border-radius: 12px; font-size: 8px; font-weight: 800; }
.owner-status::before { width: 5px; height: 5px; content: ""; background: currentColor; border-radius: 50%; }
.owner-status.Active { color: #0d8a65; background: #e1f7ee; }
.owner-status.Trial { color: #8a6810; background: #fff4ce; }
.owner-status.Grace { color: #b65c16; background: #fff0df; }
.owner-status.Suspended, .owner-status.Cancelled { color: #b23b3b; background: #fde8e8; }
.row-action { display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; color: #5f7488; background: #f5f8fa; border: 1px solid #e0e7ed; border-radius: 7px; text-decoration: none; }
.attention-list { padding: 7px 13px 13px; }
.attention-item { display: flex; align-items: flex-start; gap: 10px; padding: 10px 2px; border-bottom: 1px solid #edf1f4; }
.attention-item:last-child { border-bottom: 0; }
.attention-item .metric-icon { width: 30px; height: 30px; flex: 0 0 auto; }
.attention-item strong, .attention-item small { display: block; }
.attention-item strong { color: #294158; font-size: 10px; }
.attention-item small { margin-top: 3px; color: #8292a2; font-size: 8px; line-height: 1.45; }
.owner-section-heading { display: flex; align-items: center; justify-content: space-between; margin: 24px 0 10px; }
.owner-section-heading h2 { margin: 0; font-size: 15px; }
.owner-section-heading p { margin: 2px 0 0; font-size: 9px; }
.commercial-grid, .settings-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.commercial-card, .settings-tile {
    position: relative;
    overflow: hidden;
    padding: 16px;
    background: linear-gradient(145deg, #fff, #f7fafc);
    border: 1px solid #dbe4ec;
    border-radius: 12px;
    box-shadow: 0 7px 20px rgba(5,28,50,.07), inset 0 1px white;
}
.commercial-card small, .commercial-card strong, .commercial-card span { display: block; }
.commercial-card small { color: #7f90a1; font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.commercial-card strong { margin: 9px 0 4px; color: #153149; font-size: 18px; }
.commercial-card span { color: #6f8193; font-size: 9px; }
.commercial-progress { height: 5px; overflow: hidden; margin-top: 13px; background: #e8edf2; border-radius: 8px; }
.commercial-progress i { display: block; height: 100%; background: linear-gradient(90deg, #0a8176, #25c7b5); border-radius: inherit; }
.settings-tile { display: flex; min-height: 96px; align-items: flex-start; gap: 12px; color: inherit; text-decoration: none; }
.settings-tile:hover { color: inherit; text-decoration: none; transform: translateY(-1px); box-shadow: 0 11px 25px rgba(5,28,50,.1); }
.settings-tile .metric-icon { flex: 0 0 auto; }
.settings-tile strong, .settings-tile small { display: block; }
.settings-tile strong { color: #17324a; font-size: 11px; }
.settings-tile small { margin-top: 5px; color: #76889a; font-size: 8px; line-height: 1.5; }
.master-toast { display: flex; align-items: center; gap: 11px; margin-bottom: 14px; padding: 11px 13px; border: 1px solid; border-radius: 10px; box-shadow: 0 7px 18px rgba(5,28,50,.08); }
.master-toast.success { color: #12684e; background: #e8f8f2; border-color: #bce8d7; }
.master-toast.error { color: #9d3232; background: #fff0f0; border-color: #f1caca; }
.master-toast > .bi { font-size: 18px; }
.master-toast span { flex: 1; font-size: 9px; }
.master-toast span strong { display: block; margin-bottom: 2px; font-size: 10px; }
.master-toast button { color: inherit; background: transparent; border: 0; font-size: 18px; }
.notification-drawer {
    position: fixed;
    inset: 0 -380px 0 auto;
    z-index: 80;
    width: min(365px, 92vw);
    padding: 18px;
    background: white;
    border-left: 1px solid #dfe6ed;
    box-shadow: -18px 0 45px rgba(5,25,45,.16);
    transition: right .22s ease;
}
.notification-drawer.open { right: 0; }
.notification-drawer header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; padding-bottom: 14px; border-bottom: 1px solid #e6ebef; }
.notification-drawer header small, .notification-drawer header strong { display: block; }
.notification-drawer header small { color: #0a8176; font-size: 8px; font-weight: 850; text-transform: uppercase; }
.notification-drawer header strong { margin-top: 3px; font-size: 17px; }
.notification-drawer header button { color: #536b80; background: #f3f6f8; border: 1px solid #e0e6eb; border-radius: 7px; font-size: 20px; }
.notification-item { display: flex; gap: 11px; padding: 13px 4px; border-bottom: 1px solid #eef2f5; }
.notification-item > .bi { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; color: #0a8176; background: #e5f7f3; border-radius: 8px; }
.notification-item strong, .notification-item small { display: block; }
.notification-item strong { font-size: 10px; }
.notification-item small { margin-top: 4px; color: #75879a; font-size: 8px; line-height: 1.5; }
.master-overlay { position: fixed; inset: 0; z-index: 60; visibility: hidden; background: rgba(4,17,30,.42); opacity: 0; transition: .2s; }
.master-overlay.open { visibility: visible; opacity: 1; }
.master-confirm { position: fixed; top: 50%; left: 50%; z-index: 90; width: min(385px, calc(100vw - 30px)); padding: 25px; text-align: center; background: white; border: 1px solid #dce4eb; border-radius: 14px; box-shadow: 0 24px 70px rgba(0,0,0,.24); transform: translate(-50%,-50%); }
.master-confirm[hidden] { display: none; }
.confirm-icon { display: inline-flex; width: 48px; height: 48px; align-items: center; justify-content: center; color: #b46a1e; background: #fff0df; border-radius: 50%; font-size: 21px; }
.master-confirm h2 { margin: 12px 0 5px; }
.master-confirm p { font-size: 10px; }
.master-confirm > div:last-child { display: flex; justify-content: center; gap: 8px; }
.button-danger { color: white; background: linear-gradient(180deg,#dc5555,#b93636); border: 0; }

.company-workspace-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 15px; }
.owner-form { padding: 17px; }
.owner-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.owner-field { display: flex; flex-direction: column; gap: 5px; }
.owner-field.span-2 { grid-column: span 2; }
.owner-field label { color: #566d82; font-size: 8px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.owner-field input, .owner-field select, .owner-field textarea {
    width: 100%;
    min-height: 39px;
    padding: 7px 10px;
    color: #1b344b;
    background: #fbfcfd;
    border: 1px solid #d8e1e9;
    border-radius: 8px;
    font-size: 10px;
    outline: none;
    box-shadow: inset 0 1px 2px rgba(7,31,51,.04);
}
.owner-field input:focus, .owner-field select:focus, .owner-field textarea:focus { border-color: #32a99c; box-shadow: 0 0 0 3px rgba(20,184,166,.11); }
.owner-field textarea { resize: vertical; min-height: 64px; }
.owner-field > small { color: #71879a; font-size: 8px; }
.owner-field .field-validation-error { color: #ac3030; font-size: 9px; }
.owner-form-actions { display: flex; justify-content: flex-end; margin-top: 14px; padding-top: 13px; border-top: 1px solid #e7edf2; }
.compact-user { display: grid; grid-template-columns: minmax(130px,1fr) minmax(160px,.8fr); gap: 12px; padding: 13px 16px; border-bottom: 1px solid #edf1f5; }
.compact-user:last-child { border-bottom: 0; }
.compact-user strong, .compact-user small { display: block; }
.compact-user strong { font-size: 10px; }
.compact-user small { margin-top: 3px; color: #8192a3; font-size: 8px; }
.password-reset { display: flex; align-items: center; gap: 6px; }
.password-reset input { min-width: 0; flex: 1; height: 33px; padding: 6px 8px; border: 1px solid #dbe3ea; border-radius: 7px; font-size: 9px; }
.password-reset button { height: 33px; padding: 6px 9px; color: #0a7068; background: #e6f6f3; border: 1px solid #c4e9e3; border-radius: 7px; font-size: 8px; font-weight: 800; }

.provision-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 0 0 18px; }
.provision-steps article {
    display: grid;
    grid-template-columns: 38px 1fr;
    column-gap: 11px;
    padding: 15px;
    background: linear-gradient(145deg,#fff,#f2f6fa);
    border: 1px solid #dce6ef;
    border-radius: 14px;
    box-shadow: 0 7px 16px rgba(12,34,57,.08), inset 0 1px 0 #fff;
}
.provision-steps article > span {
    display: grid;
    grid-row: 1 / span 2;
    width: 38px;
    height: 38px;
    place-items: center;
    color: #fff;
    background: linear-gradient(145deg,#18bfa5,#087d75);
    border-radius: 11px;
    box-shadow: 0 5px 12px rgba(8,125,117,.24), inset 0 1px 0 rgba(255,255,255,.35);
    font-weight: 800;
}
.provision-steps strong, .form-section-title strong, .empty-commercial strong { display: block; color: #102a43; }
.provision-steps small, .form-section-title small, .empty-commercial small { display: block; margin-top: 3px; color: #65798b; }
.form-section-title { display: flex; align-items: center; gap: 11px; margin-top: 8px; padding: 14px 0 10px; border-top: 1px solid #e6edf3; }
.form-section-title:first-of-type { margin-top: 0; border-top: 0; }
.owner-validation { margin: 0 0 14px; padding: 12px 14px; color: #9f2d2d; background: #fff1f1; border: 1px solid #efc2c2; border-radius: 10px; }
.owner-validation:empty { display: none; }
.owner-validation ul { margin: 0; padding-left: 18px; }
.empty-commercial { display: grid; min-height: 220px; place-content: center; justify-items: center; padding: 25px; text-align: center; }
.empty-commercial .metric-icon { margin-bottom: 10px; }
.attention-item { position: relative; }
.attention-action { margin-left: auto; display: inline-flex; align-items: center; gap: 5px; padding: 7px 9px; color: #087a74; background: #e6f5f3; border: 1px solid #c9e8e3; border-radius: 8px; font-size: 9px; font-weight: 800; white-space: nowrap; }
.signup-review-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); gap: 16px; }
.review-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #e5edf3; border-top: 1px solid #e5edf3; }
.review-detail-grid > div { min-height: 78px; padding: 17px 20px; background: #fff; }
.review-detail-grid small, .review-notes small, .signup-commercial-summary small { display: block; color: #718698; font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.review-detail-grid strong, .review-detail-grid a { display: block; margin-top: 6px; color: #18334b; font-size: 13px; font-weight: 800; overflow-wrap: anywhere; }
.review-detail-grid a { color: #087d78; }
.review-notes { padding: 18px 20px; }
.review-notes p { margin: 7px 0 0; color: #4c6275; font-size: 12px; line-height: 1.65; }
.signup-commercial-panel { align-self: start; }
.signup-commercial-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 18px; }
.signup-commercial-summary span { padding: 15px; background: linear-gradient(145deg,#f6fafc,#edf4f7); border: 1px solid #dbe7ed; border-radius: 12px; }
.signup-commercial-summary strong { display: block; margin-top: 4px; color: #12334b; font-size: 15px; }
.review-guidance { display: flex; gap: 10px; margin: 0 18px 18px; padding: 13px; color: #496477; background: #eef7f7; border: 1px solid #d2e9e7; border-radius: 11px; }
.review-guidance i { color: #098a82; }
.review-guidance p { margin: 0; font-size: 10px; line-height: 1.55; }
.signup-review-actions { display: grid; gap: 9px; padding: 0 18px 19px; }
.signup-review-actions form, .signup-review-actions .master-button { width: 100%; }
.signup-review-actions .master-button { justify-content: center; }
.master-button.danger { color: #a63d3d; background: #fff0f0; border-color: #efcccc; box-shadow: none; }
.signup-prefill-notice { display: flex; align-items: center; gap: 11px; margin-bottom: 14px; padding: 13px 15px; color: #17675e; background: #eaf8f4; border: 1px solid #c8eade; border-radius: 11px; }
.signup-prefill-notice i { font-size: 18px; }
.signup-prefill-notice span, .signup-prefill-notice strong, .signup-prefill-notice small { display: block; }
.signup-prefill-notice strong { font-size: 11px; }
.signup-prefill-notice small { margin-top: 2px; color: #5d7e78; font-size: 9px; }

@media (max-width: 1050px) {
    .owner-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .owner-grid { grid-template-columns: 1fr; }
    .master-search { display: none; }
    .signup-review-grid { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
    .master-sidebar { left: -270px; transition: left .22s ease; }
    .master-sidebar.open { left: 0; }
    .master-shell { margin-left: 0; }
    .mobile-menu { display: inline-flex; }
    .master-topbar { padding: 9px 14px; }
    .master-profile > span:nth-child(2), .master-profile > .bi, .topbar-divider { display: none; }
    .master-content { padding: 16px 13px 35px; }
    .owner-hero { align-items: flex-start; flex-direction: column; padding: 20px; }
    .commercial-grid, .settings-grid, .provision-steps { grid-template-columns: 1fr 1fr; }
    .company-row { grid-template-columns: minmax(150px,1.4fr) .6fr .45fr 30px; }
    .company-row .company-cell:nth-child(3) { display: none; }
    .company-workspace-grid { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
    .master-title small { display: none; }
    .master-topbar { min-height: 62px; }
    .owner-metrics, .commercial-grid, .settings-grid, .provision-steps { grid-template-columns: 1fr; }
    .owner-hero h1 { font-size: 23px; }
    .hero-actions { width: 100%; flex-direction: column; }
    .master-button { justify-content: center; }
    .company-row { grid-template-columns: minmax(145px,1fr) .55fr 30px; }
    .company-row .company-cell:nth-child(4) { display: none; }
    .owner-form-grid { grid-template-columns: 1fr; }
    .owner-field.span-2 { grid-column: span 1; }
    .compact-user { grid-template-columns: 1fr; }
    .review-detail-grid { grid-template-columns: 1fr; }
    .attention-action { padding: 6px; }
}
