/* Shared product language: ink, violet, mineral surfaces and crisp typography. */
:root { --primary:#6041d9; --primary-dark:#4f32bd; --hero-bg:#101020; --bg-light:#f7f8fc; --bg-section:#eff1f8; --text-dark:#1c2034; --text-body:#5e647a; --text-muted:#737991; --gradient-brand:linear-gradient(120deg,#6041d9,#8057e9); }
body { background:#f7f8fc; color:#5e647a; letter-spacing:-.012em; }
h1,h2,h3,h4 { letter-spacing:-.035em; }
button,input,select,textarea { font:inherit; }
.text-aurora { background-image:linear-gradient(110deg,#b5a2ff,#e4c5ff 58%,#a6eadc); animation:none; }
.btn-brand,.btn-outline-brand { border-radius:12px; box-shadow:none; padding:12px 22px; }
.dashboard-hero,.analytics-hero,.auth-hero,.qr-hero,.tools-hero { background:radial-gradient(ellipse at 85% 0,#3b286d,transparent 60%),#101020 !important; }
.dashboard-hero h1,.analytics-hero h1 { letter-spacing:-.045em; }
.dash-card,.auth-card { border-color:#e4e7f0 !important; box-shadow:0 8px 30px #25204506 !important; }
.home-hero { background:radial-gradient(ellipse at 15% 0,#262044 0,transparent 52%),radial-gradient(ellipse at 100% 95%,#34255b,transparent 50%),#101020; padding:80px 0 88px; color:#c5c1d5; }
.home-hero h1 { color:#fff; font-size:clamp(2.9rem,5vw,4.8rem); font-weight:800; line-height:1.06; letter-spacing:-.055em; margin:26px 0; }
.home-lead { font-size:1.06rem; line-height:1.85; max-width:450px; color:#b7b5cb; }
.status-dot { width:6px; height:6px; border-radius:50%; background:#a4e2ca; }
.home-benefits { display:flex; flex-wrap:wrap; gap:12px 18px; margin-top:26px; font-size:.75rem; color:#d5d2e1; }
.home-benefits i { color:#ac9cf5; margin-right:5px; }
.home-proof { display:flex; align-items:center; gap:14px; margin-top:45px; }
.home-proof p { font-size:.78rem; color:#9995b1; margin:0; }
.home-proof strong { font-weight:500; color:#d2cde4; }
.home-proof-icon { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border:1px solid #49415e; border-radius:50%; color:#c7b6fb; transform:rotate(45deg); }
.shortener-card { color:#6b6479; border:1px solid #ffffff66; background:#fff; padding:34px; border-radius:24px; box-shadow:0 24px 80px #0003; }
.shortener-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.shortener-heading .ui-icon { margin:0; }
.shortener-card h2 { font-size:1.45rem; font-weight:800; }
.shortener-card > p { font-size:.88rem; margin-bottom:26px; }
.form-hint { font-size:.7rem; color:#79728a; margin:8px 0 0; }
.alias-input { display:flex; border:1px solid #d9d2e4; border-radius:11px; background:#fdfcfe; align-items:center; overflow:hidden; }
.alias-input > span { font-size:.76rem; padding-left:13px; color:#888195; flex-shrink:0; }
.alias-input input { min-width:0; width:100%; border:0; padding:12px 8px; color:#312b3d; background:transparent; font-size:.88rem; }
.shortener-terms { text-align:center; font-size:.67rem; margin:14px 0 24px; color:#837b8e; }
.shortener-terms a { color:#615276; }
.shortener-account { font-size:.75rem; border-top:1px solid #ebe7f1; padding-top:20px; text-align:center; }
.shortener-account a { color:#6041d9; font-weight:700; }
.shortener-result { border:1px solid #bee1d6; background:#effaf5; border-radius:12px; padding:18px; margin-bottom:24px; }
.shortener-result > span,.shortener-result > a { display:block; overflow-wrap:anywhere; }
.shortener-result > span { font-size:.73rem; color:#26745b; margin-bottom:6px; }
.shortener-result > a { font-weight:700; color:#1a634b; }
.home-usecases { padding:24px 0; background:#f0f0f8; border-bottom:1px solid #e2e3ee; }
.home-usecases .container { display:flex; justify-content:space-between; gap:22px; flex-wrap:wrap; align-items:center; }
.home-usecases span { font-size:.79rem; color:#65617a; font-weight:650; }
.home-usecases span:first-child { font-size:.6rem; letter-spacing:.12em; color:#8a849b; }
.home-usecases i { margin-right:8px; color:#9087ab; }
.home-feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.home-feature-grid .ui-card { padding:26px; }
.home-feature-grid a { font-size:.78rem; font-weight:700; color:#6041d9; text-decoration:none; }
.icon-mint { background:#edf9f4; border-color:#ceeade; color:#2b8a68; }.icon-peach { background:#fff4ec; border-color:#f4dfcf; color:#bd763e; }.icon-blue { background:#eef4ff; border-color:#dbe5fa; color:#4e79c3; }
.insights-preview { background:#fff; border:1px solid #e3dfef; padding:32px; border-radius:23px; box-shadow:0 12px 45px #362d6408; }
.preview-brand { font-size:.87rem; font-weight:700; color:#49425f; }.preview-brand i { color:#8061d0; margin-right:8px; }.preview-number { font-size:1.7rem; margin-top:8px; }
.preview-chart { display:flex; align-items:flex-end; gap:10px; height:190px; padding:24px 5px 0; border-bottom:1px solid #e7e1ef; background:repeating-linear-gradient(to top,transparent 0,transparent 47px,#f1edf7 48px); }
.preview-chart span { flex:1; border-radius:5px 5px 0 0; background:linear-gradient(#a78be8,#e2d9f5); }.preview-chart span:nth-last-child(-n+4) { background:linear-gradient(#7851d6,#b49ce7); }
.preview-caption,.preview-row { display:flex; justify-content:space-between; gap:12px; font-size:.64rem; color:#8c849e; padding-top:13px; }.preview-row { margin-top:26px; padding-top:20px; border-top:1px solid #eeeaf4; font-size:.73rem; color:#6d647e; }.preview-dot { display:inline-block; width:6px; height:6px; background:#896acd; border-radius:50%; margin-right:6px; }
.home-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }.home-plan { background:#fafafe; border:1px solid #e5e3ef; border-radius:20px; padding:30px; display:flex; flex-direction:column; }.home-plan-featured { background:#f5f0ff; border-color:#b5a1e7; }.home-plan h3 { font-size:2.8rem; margin:18px 0; font-weight:800; }.home-plan h3 small { font-size:.8rem; font-weight:500; color:#82778f; letter-spacing:0; }.home-plan p { font-size:.86rem; flex:1; }.home-plan .small { font-size:.73rem; color:#80748d; }
.ad-placement { background:#eff0f7; padding:14px 0 19px; border-block:1px solid #e3e5ee; }.ad-caption { display:flex; justify-content:space-between; gap:12px; margin-bottom:8px; font-size:.58rem; letter-spacing:.12em; text-transform:uppercase; color:#74798c; }.ad-caption a { color:#6d648e; letter-spacing:0; text-transform:none; text-decoration:none; font-size:.64rem; }.ad-inventory { min-height:90px; text-align:center; overflow:hidden; }.house-ad { display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid #dcd9e8; border-radius:10px; padding:13px 20px; background:linear-gradient(100deg,#fff,#f6f3ff); color:#4c445f; text-decoration:none; }.house-ad:hover { color:#332345; border-color:#b5a5cf; }.house-ad > span:nth-child(2) { flex:1; }.house-ad strong { font-size:.84rem; display:block; }.house-ad span span { display:block; font-size:.69rem; color:#83768f; }.house-ad-icon { display:flex; width:32px; height:32px; align-items:center; justify-content:center; border-radius:8px; background:#eee8fc; color:#8865bf; }.house-ad-cta { font-size:.72rem; font-weight:700; color:#69449a; flex-shrink:0; }
.analytics-filters { display:flex; flex-wrap:wrap; align-items:flex-end; gap:14px; padding:20px; background:#fff; border:1px solid #e2e4ef; border-radius:16px; margin-bottom:24px; }.analytics-filters label { font-size:.7rem; font-weight:700; color:#71768d; display:block; margin-bottom:7px; }.analytics-filters select { min-width:160px; border:1px solid #dfe0ea; border-radius:9px; background:#f9f9fc; padding:10px 13px; font-size:.8rem; color:#44495f; }.analytics-filters .ui-btn { min-height:42px; }.analytics-period-note { font-size:.73rem; margin-bottom:22px; color:#7b7890; }.analytics-dashboard .breakdown-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr)); }.analytics-dashboard .stats-header-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); }.analytics-dashboard .stat-box:hover { transform:none; }.analytics-dashboard .chart-container,.analytics-dashboard .breakdown-card,.analytics-dashboard .stat-box { box-shadow:0 5px 20px #2c234505; border-color:#e4e5f0; border-radius:18px; }.analytics-dashboard .stat-box::before { display:none; }.analytics-dashboard .stat-value { font-size:1.9rem; letter-spacing:-.045em; }.analytics-dashboard .stat-title { font-size:.63rem; letter-spacing:.1em; }.analytics-dashboard .data-item { border:0; border-bottom:1px solid #eeeef5; border-radius:0; background:#fff; padding:13px 0; }.analytics-dashboard .card-title { font-size:.92rem; }.analytics-dashboard .item-label { font-size:.82rem; }.analytics-dashboard .item-value { font-size:.78rem; }
@media(max-width:767px) { .home-hero { padding:48px 0; }.home-hero h1 { font-size:3rem; }.home-proof { margin-top:26px; }.shortener-card { padding:24px; }.home-plan-grid { grid-template-columns:1fr; }.home-feature-grid { gap:12px; }.home-feature-grid .ui-card { padding:20px; }.insights-preview { padding:24px; }.home-usecases .container { justify-content:center; }.home-usecases span:first-child { width:100%; text-align:center; }.house-ad { padding:12px; gap:12px; }.house-ad-icon { display:none; }.house-ad-cta { font-size:0; }.house-ad-cta i { font-size:13px; }.preview-chart { gap:6px; }.analytics-filters > div { flex:1; }.analytics-filters select { width:100%; }.analytics-dashboard .chart-container { padding:20px; } }
@media(max-width:420px) { .home-feature-grid { grid-template-columns:1fr; }.home-hero h1 { font-size:2.65rem; }.preview-row { flex-direction:column; } }
.ui-hero {
    position: relative;
    overflow: hidden;
    padding: 76px 0 82px;
    background: radial-gradient(ellipse at 88% 15%, #372062 0, transparent 55%), #0c0c19;
    color: #d1cee2;
}
.ui-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(196,181,253,.13) 1px, transparent 1px);
    background-size: 26px 26px;
    pointer-events: none;
}
.ui-hero > .container { position: relative; }
.ui-hero h1 { color: #fff; font-size: clamp(2.15rem, 4.6vw, 3.6rem); font-weight: 800; letter-spacing: -.045em; line-height: 1.15; margin: 18px 0; }
.ui-hero .ui-lead { color: #c5c1d5; }
.ui-hero a:not(.ui-btn):not(.billing-toggle a) { color: #ddd6fe; }
.ui-kicker { display: inline-flex; align-items: center; gap: 8px; padding: 6px 13px; border: 1px solid #55466f; border-radius: 40px; color: #ddd6fe; background: rgba(255,255,255,.05); font-weight: 700; font-size: .73rem; letter-spacing: .08em; text-transform: uppercase; }
.ui-lead { font-size: 1.06rem; line-height: 1.8; max-width: 680px; }
.ui-section { padding: 72px 0; }
.ui-section-tight { padding: 42px 0; }
.ui-section-white { background: #fff; border-top: 1px solid #ece9f0; border-bottom: 1px solid #ece9f0; }
.ui-eyebrow { color: #6250b0; font-weight: 800; font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 12px; }
.ui-section h2 { font-weight: 800; letter-spacing: -.035em; font-size: clamp(1.65rem, 3vw, 2.3rem); }
.ui-muted { color: #686477; }
.ui-card { height: 100%; padding: 28px; background: #fff; border: 1px solid #e7e3ee; border-radius: 22px; box-shadow: 0 8px 28px rgba(38,25,67,.035); }
.ui-card h2, .ui-card h3 { font-size: 1.12rem; font-weight: 800; letter-spacing: -.02em; }
.ui-card p { color: #686477; font-size: .91rem; }
.ui-card p:last-child { margin-bottom: 0; }
.ui-icon { width: 45px; height: 45px; display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; border: 1px solid #e1d9fa; border-radius: 13px; background: #f3efff; color: #6944d7; margin-bottom: 20px; }
.ui-btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 46px; padding: 11px 19px; border-radius: 11px; border: 1px solid transparent; font-weight: 700; font-size: .87rem; text-decoration: none; transition: background .15s ease, box-shadow .15s ease; cursor: pointer; }
.ui-btn-primary { color: #fff; background: #6041d9; box-shadow: 0 4px 12px rgba(96,65,217,.16); }
.ui-btn-primary:hover { color: #fff; background: #4f32bd; }
.ui-btn-secondary { color: #4b368f; background: #fff; border-color: #d8cee9; }
.ui-btn-secondary:hover { color: #4b368f; background: #f5f1fc; }
.ui-btn-light { color: #261443; background: #fff; }
.ui-btn-light:hover { color: #261443; background: #eee8fb; }
.ui-btn:disabled { cursor: not-allowed; color: #686477; background: #f1eef5; border-color: #e3dfeb; box-shadow: none; }
.ui-badge { display: inline-flex; align-items: center; gap: 7px; padding: 5px 11px; color: #5a3ca1; background: #f0eafb; border: 1px solid #e1d6f5; border-radius: 40px; font-size: .74rem; font-weight: 750; }
.ui-badge-success { color: #17664d; background: #eaf7f1; border-color: #c5e7d9; }
.ui-badge-warning { color: #815323; background: #fff6e9; border-color: #f2dbb6; }
.ui-overlap { position: relative; margin-top: -34px; padding-bottom: 64px; }
.ui-page-nav { display: flex; flex-wrap: wrap; gap: 12px; font-size: .8rem; margin-bottom: 22px; }
.ui-page-nav a { color: #7960bf; text-decoration: none; }
.ui-notice { padding: 17px 20px; border: 1px solid #ddd5ee; border-radius: 13px; background: #f4f0fb; font-size: .87rem; color: #574770; }
.ui-checklist { list-style: none; padding: 0; margin: 0; }
.ui-checklist li { display: flex; align-items: flex-start; gap: 10px; padding: 7px 0; font-size: .87rem; color: #575161; }
.ui-checklist i { color: #287a61; font-size: .8rem; padding-top: 6px; }
.ui-cta { padding: 38px; border-radius: 24px; background: radial-gradient(ellipse at right, #342056, #141021); color: #c7bfd8; }
.ui-cta h2 { color: #fff; }
.ui-cta p { max-width: 680px; }
.ui-faq { border-bottom: 1px solid #e1dce9; padding: 20px 0; }
.ui-faq summary { color: #272033; font-weight: 700; cursor: pointer; padding-right: 15px; }
.ui-faq p { color: #686477; font-size: .9rem; margin: 13px 0 0; max-width: 860px; }
.ui-prose { max-width: 840px; }
.ui-prose h2 { font-size: 1.3rem; margin: 34px 0 12px; }
.ui-prose h2:first-child { margin-top: 0; }
.ui-prose p, .ui-prose li { font-size: .94rem; color: #5f586a; }
.ui-prose a { color: #603fba; overflow-wrap: anywhere; }
.ui-prose section { scroll-margin-top: 90px; }
.ui-form-label { display: block; color: #312b3d; font-size: .85rem; font-weight: 700; margin-bottom: 7px; }
.ui-input { display: block; width: 100%; padding: 12px 14px; border: 1px solid #d9d2e4; background: #fdfcfe; color: #302b3a; border-radius: 11px; }
.ui-input:focus { border-color: #7756d4; }
.billing-toggle { display: inline-flex; flex-wrap: wrap; padding: 5px; gap: 4px; border-radius: 14px; border: 1px solid #514267; background: rgba(255,255,255,.06); }
.billing-toggle a { color: #e7def6; text-decoration: none; font-size: .86rem; font-weight: 700; padding: 9px 17px; border-radius: 10px; }
.billing-toggle a[aria-current="true"] { color: #402570; background: #fff; }
.billing-toggle span { font-size: .72rem; margin-left: 6px; }
.pricing-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.plan-card { position: relative; display: flex; flex-direction: column; padding: 30px; border: 1px solid #ded7e9; border-radius: 22px; background: #fff; box-shadow: 0 12px 28px rgba(29,16,48,.05); }
.plan-card-featured { border: 2px solid #8263d9; background: linear-gradient(180deg, #f7f3ff, #fff 45%); }
.plan-card h2 { font-size: 1.35rem; font-weight: 800; letter-spacing: -.03em; margin: 0; }
.plan-card .plan-description { font-size: .87rem; color: #6c6378; min-height: 46px; margin: 13px 0 22px; }
.plan-card .plan-price { font-weight: 800; font-size: 3rem; color: #211b2c; letter-spacing: -.07em; line-height: 1.2; }
.plan-card .plan-price small { color: #756b83; font-size: .86rem; font-weight: 500; letter-spacing: 0; }
.plan-card .plan-billing { color: #736b7b; font-size: .77rem; min-height: 43px; margin: 9px 0 20px; }
.plan-card .ui-checklist { border-top: 1px solid #ebe5f0; margin-top: 23px; padding-top: 18px; flex: 1; }
.plan-card .plan-fit { font-size: .77rem; color: #73647e; margin: 20px 0 0; }
.plan-recommended { color: #6941c7; font-size: .7rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.plan-comparison { width: 100%; border-collapse: collapse; font-size: .86rem; }
.plan-comparison caption { color: #655d70; font-size: .8rem; padding-top: 16px; }
.plan-comparison th, .plan-comparison td { padding: 17px 20px; border-bottom: 1px solid #e9e4ef; text-align: center; }
.plan-comparison th:first-child, .plan-comparison td:first-child { text-align: left; }
.plan-comparison thead th { background: #f6f2fb; color: #42344f; font-weight: 800; }
.plan-comparison tbody th { font-weight: 600; color: #61546e; }
.billing-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding: 23px 0; margin: 23px 0; border-top: 1px solid #e8e1ef; border-bottom: 1px solid #e8e1ef; }
.billing-facts dt { color: #85788f; font-size: .73rem; font-weight: 500; margin-bottom: 6px; }
.billing-facts dd { color: #352940; font-size: .89rem; font-weight: 700; margin: 0; }
.product-footer { background: #10101b; color: #aba7ba; padding: 56px 0 22px; }
.product-footer h2 { color: #fff; font-size: 1.4rem; }
.product-footer h3 { font-size: .8rem; color: #ddd7ed; margin-bottom: 17px; }
.product-footer p, .product-footer a { font-size: .84rem; }
.product-footer a { color: #aaa3bb; text-decoration: none; }
.product-footer a:hover { color: #e9ddff; }
.product-footer ul { list-style: none; padding: 0; display: grid; gap: 9px; margin: 0; }
.product-footer-bottom { border-top: 1px solid #292335; padding-top: 20px; margin-top: 38px; font-size: .76rem; }
.auth-hero .section-label, .auth-hero .benefit-pill { color: #ddd6fe; border-color: #685684; background: rgba(255,255,255,.07); }
.auth-hero { padding-bottom: 62px; }
.auth-card { box-shadow: 0 12px 45px rgba(49,25,89,.09); }
.auth-card .text-muted, .auth-card .perks-list { color: #6c627b !important; }
.auth-card .form-control-premium { background: #fdfcfe; }
@media (max-width: 991px) {
    .pricing-grid { gap: 14px; }
    .plan-card { padding: 24px 20px; }
}
@media (max-width: 767px) {
    .container > .row.g-5 { --bs-gutter-x: 1.5rem; }
    .ui-hero { padding: 52px 0 65px; }
    .ui-section { padding: 48px 0; }
    .ui-card, .ui-cta { padding: 24px; }
    .pricing-grid { grid-template-columns: 1fr; gap: 22px; }
    .plan-card { padding: 28px; }
    .plan-card .plan-description, .plan-card .plan-billing { min-height: auto; }
    .billing-facts { grid-template-columns: 1fr; gap: 16px; }
    .plan-comparison th, .plan-comparison td { padding: 14px 12px; min-width: 98px; }
    .plan-comparison th:first-child { min-width: 180px; }
    .ui-lead { font-size: .97rem; }
    .ui-prose { padding: 24px; }
}
.ad-placement:has(.house-ad) { background:#f7f8fc; padding:12px 0 28px; border:0; }
.house-ad { padding:25px 28px; gap:22px; background:#f0ebf8; border:1px solid #e2d9ef; border-radius:18px; }
.house-ad-icon { width:44px; height:44px; border-radius:13px; background:#e1d5f3; color:#77539c; flex-shrink:0; }
.house-ad strong { font-size:16px; letter-spacing:-.025em; margin:5px 0; color:#4a375c; }
.house-ad span .house-ad-label { font-size:8px; font-weight:750; letter-spacing:.12em; color:#8c779f; }
.house-ad span span { font-size:11px; line-height:1.7; color:#85748f; }
.house-ad-cta { display:inline-flex; align-items:center; gap:12px; background:#fff; padding:12px 17px; border-radius:10px; font-size:11px; color:#694f85; border:1px solid #e2d8ed; }
@media(max-width:575px) { .house-ad { padding:22px; flex-wrap:wrap; gap:12px; }.house-ad-icon { display:none; }.house-ad > span:nth-child(2) { flex-basis:100%; }.house-ad strong { font-size:15px; }.house-ad-cta { font-size:10px; padding:10px 14px; } }
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
