:root{
    --axly-blue:#0f3f8f;
    --axly-blue-2:#1d4ed8;
    --axly-green:#22c55e;
    --axly-ink:#0f172a;
    --axly-soft:#f1f5f9;
    --axly-muted:#64748b;
}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--axly-ink);background:#f8fafc;}
.axly-nav{background:linear-gradient(90deg,#071933,#0f3f8f);box-shadow:0 10px 30px rgba(15,23,42,.16)}
.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,var(--axly-blue-2),var(--axly-green));color:#fff;font-weight:900;box-shadow:0 8px 20px rgba(34,197,94,.25)}
.hero{position:relative;background:radial-gradient(circle at top right,rgba(34,197,94,.24),transparent 34%),linear-gradient(135deg,#071933,#0f3f8f 58%,#0ea5e9);color:#fff;overflow:hidden;}
.hero:after{content:"";position:absolute;inset:auto -10% -40% auto;width:520px;height:520px;background:rgba(255,255,255,.07);border-radius:50%;}
.hero .container{position:relative;z-index:1;}
.hero-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:28px;backdrop-filter:blur(14px);box-shadow:0 25px 80px rgba(0,0,0,.25)}
.metric-card,.feature-card,.pricing-card,.app-card{border:0;border-radius:24px;background:#fff;box-shadow:0 16px 45px rgba(15,23,42,.08)}
.feature-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:#e0f2fe;color:var(--axly-blue-2);font-size:1.4rem;}
.btn-primary{background:linear-gradient(135deg,var(--axly-blue-2),#0ea5e9);border:0;box-shadow:0 10px 24px rgba(29,78,216,.22)}
.btn-success{background:linear-gradient(135deg,#16a34a,var(--axly-green));border:0;}
.badge-soft{background:#e0f2fe;color:#075985;border:1px solid #bae6fd;}
.badge-green{background:#dcfce7;color:#166534;border:1px solid #bbf7d0;}
.section-title{max-width:780px;margin:0 auto 2.5rem;text-align:center;}
.section-title p{color:var(--axly-muted)}
.dashboard-shell{min-height:70vh}.sidebar-card{position:sticky;top:90px;border:0;border-radius:22px;box-shadow:0 12px 35px rgba(15,23,42,.07)}
.admin-sidebar a,.member-sidebar a{display:flex;gap:.55rem;align-items:center;padding:.65rem .8rem;text-decoration:none;color:#334155;border-radius:12px;margin-bottom:.25rem}.admin-sidebar a:hover,.member-sidebar a:hover,.admin-sidebar a.active,.member-sidebar a.active{background:#eff6ff;color:#1d4ed8}
.table{--bs-table-bg:transparent}.legal-page{background:#fff;border-radius:24px;box-shadow:0 16px 45px rgba(15,23,42,.08);padding:2rem}.legal-page h2{margin-top:1.75rem}.legal-page p,.legal-page li{color:#334155}.axly-footer{background:#071933;color:#fff}.axly-footer a{display:block;color:rgba(255,255,255,.62);text-decoration:none;margin:.35rem 0}.axly-footer a:hover{color:#fff}.form-control,.form-select{border-radius:14px;border-color:#dbe3ef;padding:.72rem .9rem}.auth-card{max-width:520px;margin:auto}.status-dot{width:10px;height:10px;border-radius:999px;display:inline-block;background:#22c55e}.mini-chart{height:180px}
@media(max-width:767px){.hero{padding-top:2.5rem!important}.display-4{font-size:2.25rem}.legal-page{padding:1.25rem}.hero-card{border-radius:22px}}
.exchange-start-card{background:radial-gradient(circle at top right,rgba(34,197,94,.15),transparent 34%),#fff}.viewer-shell{min-height:calc(100vh - 72px);display:flex;flex-direction:column;background:#e2e8f0}.viewer-topbar{background:linear-gradient(90deg,#071933,#0f3f8f);padding:.8rem 0;box-shadow:0 10px 30px rgba(15,23,42,.22);z-index:2}.viewer-pill{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:.45rem .7rem;font-size:.92rem}.viewer-frame-wrap{position:relative;flex:1;min-height:60vh}.viewer-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}.viewer-fallback{position:absolute;left:1rem;bottom:1rem;max-width:420px;z-index:1;opacity:.96}.viewer-bottombar{background:#fff;border-top:1px solid #dbe3ef;padding:.85rem 0;box-shadow:0 -10px 30px rgba(15,23,42,.08);z-index:2}@media(max-width:767px){.viewer-frame-wrap{min-height:55vh}.viewer-fallback{position:static;margin:1rem}.viewer-topbar .btn{width:100%;}.viewer-bottombar .btn{width:100%;}}

/* Package 12 analytics layouts */
.axly-chart-wrap{position:relative;width:100%;min-height:320px}
.metric-card .axly-chart-wrap{height:340px}
.analytics-mini-chart{height:230px}
.analytics-table td,.analytics-table th{vertical-align:middle}
.trend-badge{border-radius:999px;padding:.35rem .65rem;font-weight:700;font-size:.8rem}
.kpi-subtext{font-size:.78rem;color:#6c757d}

/* Package 15 branding controls */
.brand-logo-wrap{display:inline-flex;align-items:center;justify-content:center;min-height:34px}
.brand-logo-img{max-height:38px;max-width:210px;width:auto;object-fit:contain;display:block}
.axly-footer .brand-logo-img{filter:none;max-height:42px}
.brand-preview-card{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #e2e8f0;border-radius:24px;box-shadow:0 16px 45px rgba(15,23,42,.08)}

/* Package 17: iframe fallback and external display mode */
.viewer-frame-external{display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#eef5ff,#f8fafc)}
.external-view-card{width:min(820px,100%)}
.viewer-fallback .card{border:1px solid rgba(15,63,143,.12)!important}
@media(max-width:767px){.viewer-frame-external{padding:1rem;min-height:50vh}.external-view-card .card-body{padding:1.5rem!important}}
