:root{--ink:#0b1020;--muted:#667085;--line:#e6e2da;--paper:#fbfaf7;--card:#fff;--gold:#b88746;--green:#1f6f4a;--dark:#090d1b;--soft:#f4efe7;--danger:#b42318;--ok:#067647}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:radial-gradient(circle at 10% 10%,#f6efe3 0,#fbfaf7 30%,#f7f5f0 100%)}a{color:inherit;text-decoration:none}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 7vw;border-bottom:1px solid var(--line);background:rgba(251,250,247,.88);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:46px;height:46px;border-radius:18px;background:linear-gradient(135deg,#1b7a53,#d9b06d);color:#fff;display:grid;place-items:center;font-weight:900}.brand small{display:block;color:var(--muted);font-weight:500}.topnav{display:flex;align-items:center;gap:24px;font-weight:700}.btn,button{border:0;border-radius:16px;padding:13px 20px;font-weight:900;cursor:pointer;background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px rgba(16,24,40,.06)}.btn.dark,button.dark,.primary{background:var(--dark)!important;color:#fff!important;border-color:var(--dark)!important}.btn.gold{background:#f3dfbd;border-color:#e3c18a;color:#6d4514}.btn.ghost{background:transparent}.hero{padding:92px 7vw 56px;display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center}.badge{display:inline-flex;gap:8px;align-items:center;padding:10px 18px;border-radius:999px;background:#fff5e6;color:#7a4e18;border:1px solid #e6c898;font-weight:900}.hero h1{font-size:clamp(44px,6vw,88px);letter-spacing:-.07em;line-height:.92;margin:28px 0 20px}.lead{font-size:21px;line-height:1.55;color:#344054;max-width:760px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-card{background:linear-gradient(145deg,#10172a,#060914);color:#fff;border-radius:36px;padding:34px;box-shadow:0 30px 90px rgba(9,13,27,.3);position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;inset:-60px;background:radial-gradient(circle at 80% 10%,rgba(216,174,103,.38),transparent 35%),radial-gradient(circle at 10% 80%,rgba(31,111,74,.35),transparent 35%)}.hero-card>*{position:relative}.mock-pattern{height:260px;border-radius:26px;background:repeating-radial-gradient(circle at 20% 30%,#d8ae67 0 5px,transparent 7px 28px),linear-gradient(135deg,#174f3a,#111827);border:1px solid rgba(255,255,255,.18);margin:20px 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mini{padding:16px;border-radius:20px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13)}.section{padding:64px 7vw}.section h2{font-size:42px;letter-spacing:-.04em;margin:0 0 14px}.grid{display:grid;gap:18px}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.card,.panel{background:rgba(255,255,255,.84);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 18px 60px rgba(16,24,40,.08)}.feature-card h3,.card h3{font-size:22px;margin:0 0 8px}.feature-card p,.card p{color:#536078;line-height:1.55}.price-card{max-width:880px;margin:auto;text-align:center}.price{font-size:64px;font-weight:950;letter-spacing:-.06em}.footer{display:flex;justify-content:space-between;padding:42px 7vw;border-top:1px solid var(--line);color:#667085}.footer div:last-child{display:flex;gap:24px}.app-layout{display:grid;grid-template-columns:290px 1fr;gap:28px;padding:38px 7vw 80px}.sidebar{background:rgba(255,255,255,.86);border:1px solid var(--line);border-radius:30px;padding:22px;height:max-content;position:sticky;top:110px;box-shadow:0 18px 50px rgba(16,24,40,.08)}.sidebar h3{margin:0 0 14px}.nav-link{display:block;padding:13px 15px;border-radius:14px;color:#667085;font-weight:900;margin:4px 0}.nav-link.active,.sidebar .nav-link:hover{background:#090d1b;color:#fff}.side-label{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#98a2b3;margin:20px 14px 8px;font-weight:950}.content{min-width:0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h1{font-size:48px;letter-spacing:-.05em;margin:8px 0}.kicker{color:#8a5b22;background:#fff5e6;border:1px solid #e6c898;border-radius:999px;padding:8px 14px;font-weight:900;display:inline-flex}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 12px 36px rgba(16,24,40,.06)}.stat strong{font-size:32px;display:block;letter-spacing:-.04em}.stat span{color:#667085;font-weight:700}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-weight:900;color:#344054}.field input,.field select,.field textarea,input,select,textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:14px 15px;background:#fff;font:inherit;color:#0b1020}.field textarea,textarea{min-height:120px}.table{width:100%;border-collapse:separate;border-spacing:0 10px}.table th{text-align:left;color:#667085;font-size:13px}.table td{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px}.table td:first-child{border-left:1px solid var(--line);border-radius:14px 0 0 14px}.table td:last-child{border-right:1px solid var(--line);border-radius:0 14px 14px 0}.notice{background:#ecfdf3;border:1px solid #abefc6;color:#05603a;border-radius:18px;padding:14px 18px;margin:16px 0;font-weight:800}.danger{background:#fff1f3;border-color:#fecdd6;color:#a11025}.pill{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eef4ff;color:#3538cd;font-weight:900;font-size:12px}.status-active{background:#ecfdf3;color:#067647}.status-suspended,.status-pending_payment{background:#fff7ed;color:#b54708}.tool-card{display:flex;gap:18px;align-items:flex-start}.tool-icon{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:#fff5e6;color:#8a5b22;font-weight:950}.preview-box{min-height:360px;border-radius:24px;background:linear-gradient(135deg,#fff,#f5efe7);border:1px dashed #d6b98c;padding:22px}.auth-wrap{max-width:520px;margin:60px auto;padding:0 20px}.auth-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:32px;box-shadow:0 24px 80px rgba(16,24,40,.12)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.timeline{display:grid;gap:14px}.timeline div{border-left:3px solid #d9b06d;padding-left:16px}.swatches{display:flex;gap:10px;flex-wrap:wrap}.swatch{width:54px;height:54px;border-radius:18px;border:1px solid rgba(0,0,0,.08)}.empty{padding:40px;border:1px dashed var(--line);border-radius:24px;color:#667085;text-align:center}@media(max-width:980px){.hero,.studio-grid,.two-col{grid-template-columns:1fr}.grid.cols-3,.grid.cols-4,.stats{grid-template-columns:1fr 1fr}.app-layout{grid-template-columns:1fr}.sidebar{position:static}.topbar{padding:0 20px}.topnav{gap:10px}.topnav a:not(.btn){display:none}}@media(max-width:640px){.grid.cols-3,.grid.cols-4,.stats,.form-grid{grid-template-columns:1fr}.hero{padding:48px 20px}.section,.app-layout{padding-left:20px;padding-right:20px}.page-head{display:block}.page-head h1{font-size:38px}.footer{display:block}.footer div:last-child{margin-top:18px}}
.grid-2 {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 22px;
}

.form-stack {
    display: grid;
    gap: 18px;
}

.status-box {
    border-radius: 18px;
    padding: 14px 16px;
    margin: 14px 0;
    font-weight: 700;
}

.status-ok {
    background: rgba(36, 140, 86, .10);
    color: #155e3f;
    border: 1px solid rgba(36, 140, 86, .22);
}

.status-warn {
    background: rgba(198, 137, 42, .10);
    color: #7a4d09;
    border: 1px solid rgba(198, 137, 42, .24);
}

.field small,
.check-row small {
    display: block;
    margin-top: 6px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.check-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(255,255,255,.72);
}

.check-row input {
    margin-top: 4px;
}

.actions-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.btn.ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 18px;
    border-radius: 16px;
    border: 1px solid var(--line);
    text-decoration: none;
    color: var(--ink);
    font-weight: 800;
    background: #fff;
}

.mini-flow {
    display: grid;
    gap: 14px;
}

.mini-flow > div {
    padding: 16px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.72);
}

.mini-flow p {
    margin: 6px 0 0;
    color: var(--muted);
    line-height: 1.55;
}

.table-wrap {
    width: 100%;
    overflow-x: auto;
}

.data-table {
    width: 100%;
    border-collapse: collapse;
}

.data-table th,
.data-table td {
    padding: 14px 16px;
    border-bottom: 1px solid var(--line);
    text-align: left;
    vertical-align: top;
}

.data-table th {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--muted);
}

@media (max-width: 900px) {
    .grid-2 {
        grid-template-columns: 1fr;
    }
}

.generated-image-box {
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid var(--line);
    background: #fff;
    box-shadow: 0 22px 70px rgba(15, 23, 42, .12);
}

.generated-image-box img {
    display: block;
    width: 100%;
    height: auto;
}

.image-placeholder {
    border: 1px dashed rgba(15, 23, 42, .22);
    background: rgba(255, 255, 255, .68);
    border-radius: 22px;
    padding: 24px;
    margin-bottom: 18px;
}

.image-placeholder p {
    color: var(--muted);
    line-height: 1.55;
}

.actions-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.image-generate-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(8, 12, 24, .72);
    backdrop-filter: blur(12px);
    display: grid;
    place-items: center;
    padding: 24px;
}

.image-generate-box {
    width: min(520px, 100%);
    background: #fff;
    border-radius: 28px;
    padding: 34px;
    text-align: center;
    box-shadow: 0 40px 100px rgba(0, 0, 0, .25);
    border: 1px solid rgba(255,255,255,.35);
}

.image-generate-box h2 {
    margin: 16px 0 10px;
    font-size: 28px;
}

.image-generate-box p {
    color: var(--muted);
    line-height: 1.6;
}

.loader-ring {
    width: 62px;
    height: 62px;
    border-radius: 999px;
    border: 6px solid rgba(15, 23, 42, .12);
    border-top-color: #0b1020;
    margin: 0 auto;
    animation: loaderSpin .9s linear infinite;
}

@keyframes loaderSpin {
    to {
        transform: rotate(360deg);
    }
}

.trend-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: 18px;
}

.trend-card {
    padding: 22px;
    border-radius: 24px;
    background: rgba(255,255,255,.82);
    border: 1px solid var(--line);
    box-shadow: 0 20px 60px rgba(15, 23, 42, .08);
}

.trend-card h3 {
    margin: 0 0 10px;
}

.trend-card p {
    color: var(--muted);
    line-height: 1.55;
}

.trend-profile-card {
    margin-bottom: 22px;
}

.profile-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.profile-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 22px;
    margin-top: 22px;
}

.info-list p {
    margin: 0 0 10px;
    color: var(--muted);
}

.info-list strong {
    color: var(--ink);
}

.signal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.signal-card {
    padding: 16px;
    border-radius: 18px;
    background: rgba(255,255,255,.78);
    border: 1px solid var(--line);
    color: var(--muted);
    line-height: 1.55;
}

.swatches.compact {
    margin-top: 14px;
}

@media (max-width: 1100px) {
    .trend-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profile-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .trend-grid,
    .signal-grid {
        grid-template-columns: 1fr;
    }

    .profile-top {
        flex-direction: column;
    }
}/* =========================================================
   AIDESV Trend Lab - Final Industrial Grade Override
   Add this at the very bottom of assets/css/app.css
========================================================= */

.trend-head {
    margin-bottom: 26px;
}

.trend-profile-shell,
.trend-catalog-shell {
    width: 100%;
    max-width: 1240px;
}

.trend-profile-shell {
    margin-bottom: 30px;
}

.trend-profile-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    align-items: start;
    padding: 28px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(196, 156, 78, .16), transparent 35%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.trend-profile-hero h2 {
    margin: 10px 0;
    font-size: clamp(30px, 4vw, 54px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.trend-profile-hero p {
    max-width: 780px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.65;
}

.trend-profile-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.trend-profile-grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 20px;
    margin-top: 20px;
}

.trend-panel {
    padding: 24px;
    border-radius: 28px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 20px 60px rgba(15, 23, 42, .07);
}

.trend-panel h3 {
    margin: 0 0 18px;
    font-size: 22px;
    letter-spacing: -0.03em;
}

.trend-subtitle {
    margin-top: 26px !important;
}

.trend-detail-list {
    display: grid;
    gap: 12px;
}

.trend-detail-list div,
.trend-meta-grid div {
    display: grid;
    gap: 5px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
}

.trend-detail-list span,
.trend-meta-grid span,
.trend-card-top span {
    color: var(--muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-weight: 800;
}

.trend-detail-list strong,
.trend-meta-grid strong,
.trend-card-top strong {
    color: var(--ink);
    font-size: 14px;
    line-height: 1.35;
}

.trend-swatches {
    gap: 8px;
}

.trend-swatches .pill {
    font-size: 12px;
    padding: 8px 11px;
    border-radius: 999px;
    white-space: nowrap;
}

.trend-signals-panel {
    margin-top: 20px;
}

.trend-signal-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
}

.trend-signal-card {
    min-height: 118px;
    padding: 16px;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,247,243,.94));
    border: 1px solid rgba(15, 23, 42, .08);
    color: var(--muted);
    line-height: 1.5;
    font-size: 14px;
}

.trend-section-title {
    margin: 8px 0 20px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.trend-section-title h2 {
    margin: 8px 0;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1;
    letter-spacing: -0.05em;
}

.trend-section-title p {
    color: var(--muted);
    line-height: 1.6;
}

.trend-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.trend-market-card {
    display: flex;
    flex-direction: column;
    min-height: 430px;
    padding: 22px;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.82));
    border: 1px solid var(--line);
    box-shadow: 0 22px 65px rgba(15, 23, 42, .08);
}

.trend-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.trend-card-top strong {
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(196, 156, 78, .14);
    color: #7a4d09;
}

.trend-market-card h3 {
    margin: 0 0 12px;
    font-size: 24px;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.trend-market-card p {
    color: var(--muted);
    line-height: 1.58;
    margin: 0 0 18px;
}

.trend-meta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin: 4px 0 16px;
}

.trend-card-actions {
    margin-top: auto;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 18px;
}

.trend-card-actions .btn,
.trend-profile-actions .btn {
    min-height: 44px;
    padding: 12px 16px;
    border-radius: 16px;
}

@media (max-width: 1280px) {
    .trend-signal-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .trend-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .trend-profile-hero,
    .trend-profile-grid {
        grid-template-columns: 1fr;
    }

    .trend-profile-actions {
        justify-content: flex-start;
    }

    .trend-signal-grid,
    .trend-card-grid {
        grid-template-columns: 1fr;
    }

    .trend-market-card {
        min-height: auto;
    }
}

@media (max-width: 640px) {
    .trend-profile-hero,
    .trend-panel,
    .trend-market-card {
        padding: 18px;
        border-radius: 22px;
    }

    .trend-meta-grid {
        grid-template-columns: 1fr;
    }

    .trend-card-actions .btn,
    .trend-profile-actions .btn {
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   AIDESV Palette Studio - Final Industrial Grade Override
========================================================= */

.palette-head {
    margin-bottom: 26px;
}

.palette-detail-shell,
.palette-catalog-shell {
    width: 100%;
    max-width: 1240px;
}

.palette-detail-shell {
    margin-bottom: 30px;
}

.palette-detail-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    align-items: start;
    padding: 28px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .12), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.palette-detail-hero h2 {
    margin: 10px 0;
    font-size: clamp(30px, 4vw, 54px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.palette-detail-hero p {
    max-width: 780px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.65;
}

.palette-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.palette-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.palette-color-card {
    padding: 16px;
    border-radius: 24px;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.07);
}

.palette-color-card span {
    display: block;
    height: 92px;
    border-radius: 18px;
    border: 1px solid rgba(15,23,42,.08);
    margin-bottom: 12px;
}

.palette-color-card strong {
    display: block;
    font-size: 16px;
}

.palette-color-card small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.palette-info-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 20px;
    margin-top: 20px;
}

.palette-use-list {
    display: grid;
    gap: 12px;
}

.palette-use-list div {
    padding: 15px;
    border-radius: 18px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15,23,42,.06);
    color: var(--muted);
    font-weight: 750;
}

.palette-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.palette-market-card {
    display: flex;
    flex-direction: column;
    min-height: 445px;
    padding: 22px;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.82));
    border: 1px solid var(--line);
    box-shadow: 0 22px 65px rgba(15, 23, 42, .08);
}

.palette-card-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 16px;
}

.palette-card-header span {
    color: var(--muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-weight: 900;
}

.palette-card-header h3 {
    margin: 8px 0 0;
    font-size: 26px;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.palette-card-header strong {
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(196, 156, 78, .14);
    color: #7a4d09;
    white-space: nowrap;
}

.palette-mini-strip {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin: 4px 0 18px;
}

.palette-mini-strip span {
    height: 62px;
    border-radius: 18px;
    border: 1px solid rgba(15,23,42,.08);
}

.palette-market-card p {
    color: var(--muted);
    line-height: 1.58;
    margin: 0 0 18px;
}

@media (max-width: 1280px) {
    .palette-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .palette-detail-hero,
    .palette-info-grid {
        grid-template-columns: 1fr;
    }

    .palette-actions {
        justify-content: flex-start;
    }

    .palette-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .palette-card-grid {
        grid-template-columns: 1fr;
    }

    .palette-market-card {
        min-height: auto;
    }
}

@media (max-width: 640px) {
    .palette-detail-hero,
    .palette-market-card {
        padding: 18px;
        border-radius: 22px;
    }

    .palette-strip {
        grid-template-columns: 1fr;
    }

    .palette-actions .btn,
    .trend-card-actions .btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 1280px) {
    .palette-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .palette-detail-hero,
    .palette-info-grid {
        grid-template-columns: 1fr;
    }

    .palette-actions {
        justify-content: flex-start;
    }

    .palette-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .palette-card-grid {
        grid-template-columns: 1fr;
    }

    .palette-market-card {
        min-height: auto;
    }
}

@media (max-width: 640px) {
    .palette-detail-hero,
    .palette-market-card {
        padding: 18px;
        border-radius: 22px;
    }

    .palette-strip {
        grid-template-columns: 1fr;
    }

    .palette-actions .btn,
    .trend-card-actions .btn {
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   AIDESV Palette Studio - AI/User Defined Only
========================================================= */

.palette-ai-shell,
.palette-result-shell {
    width: 100%;
    max-width: 1240px;
}

.palette-ai-hero {
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .12), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 22px;
}

.palette-ai-hero h2 {
    margin: 10px 0;
    font-size: clamp(30px, 4vw, 54px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.palette-ai-hero p {
    max-width: 850px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.65;
}

.palette-work-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    align-items: start;
}

.palette-form-card h2 {
    margin-top: 0;
    font-size: 28px;
    letter-spacing: -0.04em;
}

.palette-result-shell {
    margin-top: 34px;
}

.palette-detail-shell {
    width: 100%;
}

.palette-detail-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    align-items: start;
    padding: 28px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .12), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.palette-detail-hero h2 {
    margin: 10px 0;
    font-size: clamp(30px, 4vw, 54px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.palette-detail-hero p {
    max-width: 780px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.65;
}

.palette-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.palette-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 20px;
}

.palette-color-card {
    padding: 16px;
    border-radius: 24px;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.07);
}

.palette-color-card span {
    display: block;
    height: 92px;
    border-radius: 18px;
    border: 1px solid rgba(15,23,42,.08);
    margin-bottom: 12px;
}

.palette-color-card strong {
    display: block;
    font-size: 16px;
}

.palette-color-card small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.palette-color-card p {
    color: var(--muted);
    line-height: 1.5;
    font-size: 13px;
}

.palette-info-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 20px;
    margin-top: 20px;
}

.palette-use-list {
    display: grid;
    gap: 12px;
}

.palette-use-list div {
    padding: 15px;
    border-radius: 18px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15,23,42,.06);
    color: var(--muted);
    font-weight: 750;
}

.muted {
    color: var(--muted);
}

@media (max-width: 980px) {
    .palette-work-grid,
    .palette-detail-hero,
    .palette-info-grid {
        grid-template-columns: 1fr;
    }

    .palette-actions {
        justify-content: flex-start;
    }

    .palette-strip {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .palette-ai-hero,
    .palette-detail-hero {
        padding: 20px;
        border-radius: 22px;
    }

    .palette-strip {
        grid-template-columns: 1fr;
    }

    .palette-actions .btn {
        width: 100%;
        justify-content: center;
    }
}
/* Fix: keep loading overlays hidden until JS activates them */
.image-generate-overlay[hidden] {
    display: none !important;
}

/* =========================================================
   AIDESV Print Prompt Builder - AI/User Defined Only
========================================================= */

.prompt-ai-shell,
.prompt-result-shell {
    width: 100%;
    max-width: 1240px;
}

.prompt-ai-hero {
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(184, 135, 70, .14), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 22px;
}

.prompt-ai-hero h2 {
    margin: 10px 0;
    font-size: clamp(30px, 4vw, 54px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.prompt-ai-hero p {
    max-width: 850px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.65;
}

.prompt-work-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    align-items: start;
}

.prompt-form-card h2 {
    margin-top: 0;
    font-size: 28px;
    letter-spacing: -0.04em;
}

.prompt-result-shell {
    margin-top: 34px;
}

.prompt-result-card {
    padding: 28px;
    border-radius: 30px;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}

.prompt-result-top {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 20px;
    align-items: start;
    margin-bottom: 18px;
}

.prompt-result-top h2 {
    margin: 10px 0;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1;
    letter-spacing: -0.05em;
}

.prompt-result-top p {
    color: var(--muted);
    line-height: 1.6;
}

.prompt-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

#latestGeneratedPrompt {
    min-height: 180px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    line-height: 1.55;
    margin-bottom: 20px;
}

.prompt-info-grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 20px;
}

@media (max-width: 980px) {
    .prompt-work-grid,
    .prompt-result-top,
    .prompt-info-grid {
        grid-template-columns: 1fr;
    }

    .prompt-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .prompt-ai-hero,
    .prompt-result-card {
        padding: 20px;
        border-radius: 22px;
    }

    .prompt-actions .btn {
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   AIDESV Collection Builder
========================================================= */

.collection-shell,
.collection-library,
.collection-projects {
    width: 100%;
    max-width: 1240px;
}

.collection-hero {
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(184, 135, 70, .14), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 22px;
}

.collection-hero h2 {
    margin: 10px 0;
    font-size: clamp(30px, 4vw, 54px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.collection-hero p {
    max-width: 850px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.65;
}

.collection-work-grid {
    display: grid;
    grid-template-columns: 1fr .85fr;
    gap: 22px;
    align-items: start;
}

.collection-form-card h2,
.collection-info-card h2 {
    margin-top: 0;
    font-size: 28px;
    letter-spacing: -0.04em;
}

.collection-feature-list {
    display: grid;
    gap: 14px;
}

.collection-feature-list div {
    padding: 16px;
    border-radius: 20px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
}

.collection-feature-list strong {
    display: block;
    margin-bottom: 6px;
    color: var(--ink);
}

.collection-feature-list span {
    color: var(--muted);
    line-height: 1.55;
}

.collection-library,
.collection-projects {
    margin-top: 34px;
}

.collection-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.collection-card {
    display: flex;
    flex-direction: column;
    min-height: 390px;
    padding: 22px;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.82));
    border: 1px solid var(--line);
    box-shadow: 0 22px 65px rgba(15, 23, 42, .08);
}

.collection-card-top {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.collection-card-top span {
    color: var(--muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-weight: 900;
}

.collection-card-top strong {
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(196, 156, 78, .14);
    color: #7a4d09;
    white-space: nowrap;
}

.collection-card h3 {
    margin: 0 0 12px;
    font-size: 26px;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.collection-card p {
    color: var(--muted);
    line-height: 1.58;
    margin: 0 0 18px;
}

.collection-card-actions {
    margin-top: auto;
    padding-top: 18px;
}

.collection-detail-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 22px;
    width: 100%;
    max-width: 1240px;
}

.collection-project-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.collection-project-card {
    display: grid;
    gap: 8px;
    padding: 18px;
    border-radius: 22px;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.06);
}

.collection-project-card strong {
    color: var(--ink);
    line-height: 1.25;
}

.collection-project-card span {
    color: var(--muted);
    line-height: 1.45;
}

@media (max-width: 1180px) {
    .collection-card-grid,
    .collection-project-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .collection-work-grid,
    .collection-detail-grid {
        grid-template-columns: 1fr;
    }

    .collection-card-grid,
    .collection-project-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .collection-hero,
    .collection-card {
        padding: 20px;
        border-radius: 22px;
    }
}

/* =========================================================
   AIDESV User Manual
========================================================= */

.manual-shell {
    width: 100%;
    max-width: 1240px;
}

.manual-hero {
    padding: 32px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .13), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 24px;
}

.manual-hero h2 {
    margin: 10px 0;
    font-size: clamp(32px, 4vw, 58px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.manual-hero p {
    max-width: 900px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.manual-grid {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 24px;
    align-items: start;
}

.manual-toc {
    position: sticky;
    top: 110px;
    display: grid;
    gap: 8px;
}

.manual-toc h3 {
    margin: 0 0 10px;
}

.manual-toc a {
    padding: 11px 12px;
    border-radius: 14px;
    color: var(--muted);
    font-weight: 850;
}

.manual-toc a:hover {
    background: var(--dark);
    color: #fff;
}

.manual-content {
    display: grid;
    gap: 20px;
}

.manual-card {
    position: relative;
    padding: 32px;
    border-radius: 30px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .07);
    scroll-margin-top: 120px;
}

.manual-card h2 {
    margin: 0 0 14px;
    font-size: clamp(28px, 3vw, 44px);
    line-height: 1;
    letter-spacing: -0.05em;
}

.manual-card h3 {
    margin: 22px 0 8px;
    font-size: 20px;
}

.manual-card p,
.manual-card li {
    color: var(--muted);
    line-height: 1.7;
    font-size: 15px;
}

.manual-num {
    display: inline-flex;
    margin-bottom: 16px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(196, 156, 78, .14);
    color: #7a4d09;
    font-weight: 950;
}

.manual-flow {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0;
}

.manual-flow div {
    padding: 14px;
    border-radius: 18px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
    text-align: center;
    font-weight: 900;
    color: var(--ink);
}

.manual-steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
}

.manual-steps div,
.manual-two div {
    padding: 18px;
    border-radius: 20px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
}

.manual-steps strong,
.manual-two strong {
    display: block;
    margin-bottom: 8px;
    color: var(--ink);
}

.manual-two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 14px;
}

@media (max-width: 1100px) {
    .manual-grid {
        grid-template-columns: 1fr;
    }

    .manual-toc {
        position: static;
    }

    .manual-flow {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .manual-steps,
    .manual-two {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .manual-hero,
    .manual-card {
        padding: 20px;
        border-radius: 22px;
    }

    .manual-flow {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   AIDESV AI Assistant
========================================================= */

.assistant-shell {
    width: 100%;
    max-width: 1240px;
}

.assistant-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .13), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 24px;
}

.assistant-hero h2 {
    margin: 10px 0;
    font-size: clamp(32px, 4vw, 58px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.assistant-hero p {
    max-width: 850px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.assistant-status {
    min-width: 180px;
    padding: 18px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.06);
}

.assistant-status strong,
.assistant-status span {
    display: block;
}

.assistant-status span {
    margin-top: 8px;
    color: var(--muted);
    font-weight: 900;
}

.assistant-layout {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 22px;
    align-items: start;
}

.assistant-panel {
    display: grid;
    grid-template-rows: 620px auto;
    background: rgba(255,255,255,.92);
    border: 1px solid var(--line);
    border-radius: 30px;
    box-shadow: 0 24px 70px rgba(15,23,42,.08);
    overflow: hidden;
}

.assistant-messages {
    padding: 24px;
    overflow-y: auto;
    display: grid;
    align-content: start;
    gap: 14px;
}

.assistant-msg {
    max-width: 82%;
    padding: 16px 18px;
    border-radius: 22px;
    background: rgba(248,247,243,.95);
    border: 1px solid rgba(15,23,42,.06);
}

.assistant-msg strong {
    display: block;
    margin-bottom: 8px;
    color: var(--ink);
}

.assistant-msg p {
    margin: 0;
    color: var(--muted);
    line-height: 1.65;
    white-space: pre-wrap;
}

.assistant-msg.user {
    justify-self: end;
    background: var(--dark);
    color: #fff;
}

.assistant-msg.user strong,
.assistant-msg.user p {
    color: #fff;
}

.assistant-msg.error,
.assistant-msg.ai.error {
    background: #fff1f3;
    border-color: #fecdd6;
}

.assistant-msg.loading p {
    opacity: .75;
}

.assistant-chat-form {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    padding: 18px;
    border-top: 1px solid var(--line);
    background: rgba(255,255,255,.88);
}

.assistant-chat-form textarea {
    min-height: 70px;
    max-height: 160px;
    resize: vertical;
}

.assistant-guide h2 {
    margin-top: 0;
}

.assistant-guide ul {
    padding-left: 18px;
}

.assistant-guide li {
    color: var(--muted);
    line-height: 1.6;
    margin-bottom: 8px;
}

.assistant-suggestion-list {
    display: grid;
    gap: 10px;
}

.assistant-suggestion-list button {
    text-align: left;
    box-shadow: none;
    border-radius: 16px;
    background: rgba(248,247,243,.95);
}

@media (max-width: 1100px) {
    .assistant-hero,
    .assistant-layout {
        grid-template-columns: 1fr;
    }

    .assistant-panel {
        grid-template-rows: 520px auto;
    }
}

@media (max-width: 640px) {
    .assistant-hero {
        padding: 20px;
        border-radius: 22px;
    }

    .assistant-chat-form {
        grid-template-columns: 1fr;
    }

    .assistant-msg {
        max-width: 100%;
    }
}

/* =========================================================
   AIDESV Professional Responsive App Shell Fix
   Add at the very bottom of assets/css/app.css
========================================================= */

html,
body {
    width: 100%;
    min-height: 100%;
    overflow-x: hidden;
}

body.app-page {
    background:
        radial-gradient(circle at 8% 0%, rgba(216, 176, 109, .12), transparent 28%),
        radial-gradient(circle at 95% 10%, rgba(31, 111, 74, .08), transparent 24%),
        #fbfaf7;
}

.main-shell {
    width: 100%;
}

/* Topbar */
.topbar {
    height: 78px;
    padding: 0;
}

.topbar-inner {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 0 clamp(18px, 5vw, 84px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}

.topbar-left {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.brand {
    min-width: 0;
}

.brand-mark {
    width: 38px;
    height: 38px;
    border-radius: 14px;
    flex: 0 0 auto;
}

.brand strong {
    display: block;
    line-height: 1.05;
}

.brand small {
    font-size: 12px;
    line-height: 1.1;
}

.topnav .nav-link {
    display: inline-flex;
    margin: 0;
    padding: 10px 14px;
    border-radius: 14px;
}

.topnav .nav-link.active {
    background: var(--dark);
    color: #fff;
}

/* Mobile menu button */
.mobile-menu-btn {
    display: none;
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 14px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .08);
    place-items: center;
}

.mobile-menu-btn span {
    display: block;
    width: 18px;
    height: 2px;
    margin: 3px auto;
    border-radius: 999px;
    background: var(--ink);
}

/* Main app shell */
.app-layout-shell {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 34px clamp(18px, 5vw, 84px) 78px;
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

/* Sidebar */
.sidebar {
    width: 260px;
    max-width: 260px;
    position: sticky;
    top: 104px;
    align-self: start;
    max-height: calc(100vh - 128px);
    padding: 18px;
    border-radius: 28px;
    overflow: hidden;
}

.sidebar-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.sidebar-top h3 {
    margin: 0;
    font-size: 16px;
    letter-spacing: -0.02em;
}

.sidebar-close {
    display: none;
    width: 34px;
    height: 34px;
    padding: 0;
    border-radius: 12px;
    line-height: 1;
    font-size: 20px;
}

.sidebar-scroll {
    max-height: calc(100vh - 190px);
    overflow-y: auto;
    padding-right: 4px;
}

.sidebar-scroll::-webkit-scrollbar {
    width: 6px;
}

.sidebar-scroll::-webkit-scrollbar-thumb {
    background: rgba(15, 23, 42, .18);
    border-radius: 999px;
}

.nav-link {
    padding: 11px 13px;
    border-radius: 13px;
    font-size: 14px;
    line-height: 1.2;
}

.side-label {
    margin: 18px 12px 8px;
    font-size: 11px;
}

/* Content */
.content {
    min-width: 0;
    width: 100%;
}

.page-head {
    max-width: 1240px;
}

.page-head h1 {
    font-size: clamp(36px, 4vw, 56px);
    line-height: .95;
}

.page-head p {
    color: var(--muted);
    line-height: 1.6;
    max-width: 880px;
}

/* Dashboard / cards safety */
.stats,
.grid,
.studio-grid,
.manual-shell,
.assistant-shell,
.collection-shell,
.palette-ai-shell,
.prompt-ai-shell,
.trend-profile-shell,
.trend-catalog-shell {
    min-width: 0;
}

/* Sidebar overlay */
.sidebar-overlay {
    display: none;
}

/* Footer */
.footer {
    max-width: 1540px;
    margin: 0 auto;
    padding-left: clamp(18px, 5vw, 84px);
    padding-right: clamp(18px, 5vw, 84px);
}

/* Tablet */
@media (max-width: 1180px) {
    .app-layout-shell {
        grid-template-columns: 230px minmax(0, 1fr);
        gap: 22px;
    }

    .sidebar {
        width: 230px;
        max-width: 230px;
    }

    .topbar-inner {
        padding-left: 24px;
        padding-right: 24px;
    }
}

/* Mobile drawer */
@media (max-width: 980px) {
    .topbar {
        height: 72px;
    }

    .topbar-inner {
        padding-left: 16px;
        padding-right: 16px;
    }

    .mobile-menu-btn {
        display: grid;
    }

    .topnav {
        gap: 8px;
    }

    .topnav .nav-link {
        display: none;
    }

    .topnav .btn {
        padding: 10px 14px;
        border-radius: 14px;
    }

    .app-layout-shell {
        display: block;
        padding: 22px 16px 58px;
    }

    .sidebar {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1001;
        width: min(86vw, 330px);
        max-width: min(86vw, 330px);
        height: 100vh;
        max-height: 100vh;
        border-radius: 0 28px 28px 0;
        transform: translateX(-110%);
        transition: transform .22s ease;
        box-shadow: 30px 0 80px rgba(15, 23, 42, .22);
        background: rgba(255, 255, 255, .98);
    }

    .sidebar-top {
        padding-bottom: 8px;
        border-bottom: 1px solid var(--line);
    }

    .sidebar-close {
        display: inline-grid;
        place-items: center;
    }

    .sidebar-scroll {
        max-height: calc(100vh - 78px);
        padding-top: 10px;
    }

    .sidebar-overlay {
        position: fixed;
        inset: 0;
        z-index: 1000;
        background: rgba(9, 13, 27, .48);
        backdrop-filter: blur(6px);
        opacity: 0;
        pointer-events: none;
        transition: opacity .22s ease;
    }

    body.sidebar-open .sidebar {
        transform: translateX(0);
    }

    body.sidebar-open .sidebar-overlay {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }

    body.sidebar-open {
        overflow: hidden;
    }

    .content {
        width: 100%;
    }

    .page-head {
        margin-bottom: 18px;
    }

    .page-head h1 {
        font-size: 38px;
    }
}

/* Small mobile */
@media (max-width: 640px) {
    .brand-mark {
        width: 34px;
        height: 34px;
        border-radius: 12px;
    }

    .brand small {
        display: none;
    }

    .topnav {
        font-size: 13px;
    }

    .topnav .btn {
        padding: 9px 12px;
    }

    .app-layout-shell {
        padding-left: 12px;
        padding-right: 12px;
    }

    .card,
    .panel,
    .stat,
    .assistant-hero,
    .assistant-panel,
    .assistant-guide,
    .manual-hero,
    .manual-card,
    .collection-hero,
    .palette-ai-hero,
    .prompt-ai-hero {
        border-radius: 22px;
    }

    .footer {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* =========================================================
   AIDESV Brand Library
========================================================= */

.brand-shell {
    width: 100%;
    max-width: 1240px;
}

.brand-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .13), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 24px;
}

.brand-hero h2 {
    margin: 10px 0;
    font-size: clamp(32px, 4vw, 58px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.brand-hero p {
    max-width: 850px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.brand-status {
    min-width: 230px;
    padding: 18px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.06);
}

.brand-status strong,
.brand-status span,
.brand-status small {
    display: block;
}

.brand-status span {
    margin-top: 8px;
    color: var(--ink);
    font-weight: 900;
}

.brand-status small {
    margin-top: 8px;
    color: var(--muted);
    line-height: 1.45;
}

.brand-form {
    display: grid;
    gap: 22px;
}

.brand-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    align-items: start;
}

.brand-card h2 {
    margin: 0 0 10px;
    font-size: 28px;
    letter-spacing: -0.04em;
}

.brand-card textarea {
    min-height: 110px;
}

.brand-save-bar {
    position: sticky;
    bottom: 18px;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px;
    border-radius: 24px;
    background: rgba(255, 255, 255, .94);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .14);
    backdrop-filter: blur(16px);
}

.brand-save-bar strong,
.brand-save-bar span {
    display: block;
}

.brand-save-bar span {
    margin-top: 4px;
    color: var(--muted);
    font-weight: 700;
}

@media (max-width: 980px) {
    .brand-hero,
    .brand-grid {
        grid-template-columns: 1fr;
    }

    .brand-status {
        min-width: 0;
    }
}

@media (max-width: 640px) {
    .brand-hero,
    .brand-card {
        padding: 20px;
        border-radius: 22px;
    }

    .brand-save-bar {
        position: static;
        display: grid;
    }

    .brand-save-bar button {
        width: 100%;
    }
}

/* =========================================================
   AIDESV Team Management
========================================================= */

.team-shell {
    width: 100%;
    max-width: 1240px;
}

.team-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(184, 135, 70, .14), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 24px;
}

.team-hero h2 {
    margin: 10px 0;
    font-size: clamp(32px, 4vw, 58px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.team-hero p {
    max-width: 850px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.team-status {
    min-width: 220px;
    padding: 18px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.06);
}

.team-status strong {
    display: block;
    font-size: 44px;
    line-height: 1;
    letter-spacing: -0.06em;
}

.team-status span,
.team-status small {
    display: block;
    margin-top: 8px;
    color: var(--muted);
    font-weight: 850;
}

.team-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 22px;
    align-items: start;
    margin-bottom: 24px;
}

.team-form-card h2,
.team-info-card h2,
.team-list-card h2 {
    margin: 0 0 10px;
    font-size: 28px;
    letter-spacing: -0.04em;
}

.team-role-list {
    display: grid;
    gap: 14px;
}

.team-role-list div {
    padding: 16px;
    border-radius: 20px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
}

.team-role-list strong,
.team-role-list span {
    display: block;
}

.team-role-list span {
    margin-top: 6px;
    color: var(--muted);
    line-height: 1.55;
}

.team-list-card {
    margin-top: 24px;
}

.team-section-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.team-member-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.team-member-card {
    display: grid;
    gap: 16px;
    padding: 22px;
    border-radius: 26px;
    background: rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.team-member-top {
    display: flex;
    align-items: center;
    gap: 14px;
}

.team-avatar {
    width: 48px;
    height: 48px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #1f6f4a, #d9b06d);
    color: #fff;
    font-weight: 950;
}

.team-member-top h3 {
    margin: 0;
    font-size: 20px;
    letter-spacing: -0.03em;
}

.team-member-top p {
    margin: 4px 0 0;
    color: var(--muted);
    line-height: 1.4;
}

.team-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.team-meta {
    color: var(--muted);
    line-height: 1.6;
    font-size: 13px;
    margin: 0;
}

.team-edit-form {
    display: grid;
    gap: 14px;
    padding-top: 16px;
    border-top: 1px solid var(--line);
}

.team-delete-form {
    margin-top: -4px;
}

.team-delete-form button {
    width: 100%;
    color: #a11025;
}

.team-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.team-actions button {
    width: 100%;
}

@media (max-width: 1100px) {
    .team-grid,
    .team-hero {
        grid-template-columns: 1fr;
    }

    .team-status {
        min-width: 0;
    }
}

@media (max-width: 860px) {
    .team-member-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .team-hero,
    .team-member-card,
    .team-form-card,
    .team-info-card,
    .team-list-card {
        padding: 20px;
        border-radius: 22px;
    }

    .team-section-head {
        display: block;
    }
}

/* =========================================================
   AIDESV Storage / BYOS S3
========================================================= */

.storage-shell {
    width: 100%;
    max-width: 1240px;
}

.storage-hero {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 24px;
    padding: 30px;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .13), transparent 36%),
        rgba(255, 255, 255, .92);
    border: 1px solid var(--line);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
    margin-bottom: 24px;
}

.storage-hero h2 {
    margin: 10px 0;
    font-size: clamp(32px, 4vw, 58px);
    line-height: 1;
    letter-spacing: -0.06em;
}

.storage-hero p {
    max-width: 900px;
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.storage-status {
    min-width: 240px;
    padding: 18px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15,23,42,.06);
}

.storage-status strong,
.storage-status span,
.storage-status small {
    display: block;
}

.storage-status strong {
    font-size: 24px;
    letter-spacing: -0.03em;
}

.storage-status span {
    margin-top: 8px;
    color: var(--ink);
    font-weight: 900;
}

.storage-status small {
    margin-top: 8px;
    color: var(--muted);
    line-height: 1.45;
}

.storage-privacy-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 24px;
}

.storage-privacy-card h2,
.storage-form-card h2,
.storage-info-card h2,
.storage-files-card h2 {
    margin: 0 0 10px;
    font-size: 28px;
    letter-spacing: -0.04em;
}

.storage-privacy-card p {
    color: var(--muted);
    line-height: 1.65;
}

.storage-grid {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 22px;
    align-items: start;
}

.storage-form-card,
.storage-info-card,
.storage-files-card {
    margin-bottom: 24px;
}

.storage-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding-top: 18px;
    margin-top: 18px;
    border-top: 1px solid var(--line);
}

.storage-actions form {
    margin: 0;
}

.danger-btn {
    color: #a11025 !important;
}

.storage-meter-box {
    padding: 18px;
    border-radius: 22px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
    margin-bottom: 18px;
}

.storage-meter-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 12px;
}

.storage-meter-head strong {
    font-size: 32px;
    letter-spacing: -0.05em;
}

.storage-meter-head span,
.storage-meter-box p {
    color: var(--muted);
    font-weight: 800;
}

.storage-meter {
    height: 12px;
    border-radius: 999px;
    background: rgba(15, 23, 42, .08);
    overflow: hidden;
}

.storage-meter span {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, #1f6f4a, #d9b06d);
}

.storage-detail-list {
    display: grid;
    gap: 12px;
}

.storage-detail-list div {
    display: grid;
    gap: 5px;
    padding: 14px;
    border-radius: 18px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
}

.storage-detail-list span {
    color: var(--muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .09em;
    font-weight: 850;
}

.storage-detail-list strong {
    color: var(--ink);
    line-height: 1.35;
    word-break: break-word;
}

.storage-files-card {
    margin-top: 4px;
}

.storage-section-head {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

@media (max-width: 1100px) {
    .storage-hero,
    .storage-grid {
        grid-template-columns: 1fr;
    }

    .storage-status {
        min-width: 0;
    }

    .storage-privacy-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .storage-hero,
    .storage-privacy-card,
    .storage-form-card,
    .storage-info-card,
    .storage-files-card {
        padding: 20px;
        border-radius: 22px;
    }

    .storage-section-head {
        display: block;
    }

    .storage-actions .btn,
    .storage-actions button {
        width: 100%;
    }
}

/* =========================================================
   AIDESV Dynamic Landing Page
========================================================= */

.aidesv-landing-hero {
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 86px clamp(18px, 5vw, 84px) 58px;
    display: grid;
    grid-template-columns: 1.02fr .98fr;
    gap: 54px;
    align-items: center;
}

.aidesv-hero-copy {
    min-width: 0;
}

.aidesv-logo-line {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 24px;
    padding: 12px;
    width: fit-content;
    max-width: 100%;
    border-radius: 24px;
    background: rgba(255, 255, 255, .72);
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15, 23, 42, .07);
}

.aidesv-logo-line img {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    object-fit: contain;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
}

.aidesv-logo-line strong {
    display: block;
    font-size: 20px;
    line-height: 1.1;
}

.aidesv-logo-line span {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.35;
}

.aidesv-landing-hero h1 {
    margin: 26px 0 22px;
    font-size: clamp(48px, 6vw, 92px);
    line-height: .9;
    letter-spacing: -0.075em;
}

.aidesv-trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 26px 0 0;
}

.aidesv-trust-row span {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 9px 13px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .84);
    border: 1px solid var(--line);
    color: var(--muted);
    font-size: 13px;
    font-weight: 900;
}

.aidesv-trust-row strong {
    color: var(--ink);
}

.aidesv-slider-card {
    position: relative;
    border-radius: 38px;
    padding: 16px;
    background: linear-gradient(145deg, rgba(9, 13, 27, .98), rgba(24, 36, 61, .96));
    box-shadow: 0 34px 100px rgba(9, 13, 27, .3);
    overflow: hidden;
}

.aidesv-slider-card:before {
    content: "";
    position: absolute;
    inset: -80px;
    background:
        radial-gradient(circle at 85% 12%, rgba(216, 174, 103, .42), transparent 32%),
        radial-gradient(circle at 10% 90%, rgba(31, 111, 74, .42), transparent 36%);
    pointer-events: none;
}

.aidesv-slider {
    position: relative;
    height: 520px;
    border-radius: 30px;
    overflow: hidden;
    background: #111827;
    z-index: 1;
}

.aidesv-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: scale(1.03);
    transition: opacity .7s ease, transform .7s ease;
}

.aidesv-slide.active {
    opacity: 1;
    transform: scale(1);
}

.aidesv-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.04) contrast(1.03);
}

.aidesv-slide:after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(9, 13, 27, .1), rgba(9, 13, 27, .74)),
        radial-gradient(circle at top right, rgba(216, 174, 103, .25), transparent 35%);
}

.aidesv-slide-overlay {
    position: absolute;
    left: 26px;
    right: 26px;
    bottom: 26px;
    z-index: 2;
    color: #fff;
}

.aidesv-slide-overlay span {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(255, 255, 255, .22);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.aidesv-slide-overlay h2 {
    margin: 0 0 10px;
    font-size: clamp(30px, 4vw, 52px);
    line-height: .95;
    letter-spacing: -0.055em;
}

.aidesv-slide-overlay p {
    max-width: 620px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 16px;
    line-height: 1.6;
}

.aidesv-slider-dots {
    position: relative;
    z-index: 2;
    display: flex;
    gap: 8px;
    justify-content: center;
    padding: 14px 0 4px;
}

.aidesv-slider-dots button {
    width: 10px;
    height: 10px;
    padding: 0;
    border-radius: 999px;
    border: 0;
    background: rgba(255, 255, 255, .32);
    box-shadow: none;
}

.aidesv-slider-dots button.active {
    width: 34px;
    background: #d9b06d;
}

.aidesv-hero-metrics {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.aidesv-hero-metrics div {
    padding: 16px;
    border-radius: 20px;
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .14);
}

.aidesv-hero-metrics strong,
.aidesv-hero-metrics span {
    display: block;
}

.aidesv-hero-metrics strong {
    color: #fff;
    font-size: 20px;
}

.aidesv-hero-metrics span {
    margin-top: 6px;
    color: rgba(255, 255, 255, .72);
    font-size: 12px;
    line-height: 1.45;
    font-weight: 800;
}

.aidesv-section-head {
    max-width: 980px;
    margin-bottom: 24px;
}

.aidesv-section-head h2 {
    margin: 12px 0 12px;
    font-size: clamp(34px, 4vw, 58px);
    line-height: .95;
    letter-spacing: -0.06em;
}

.aidesv-section-head p {
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.aidesv-value-card span {
    display: inline-flex;
    margin-bottom: 18px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(196, 156, 78, .14);
    color: #7a4d09;
    font-weight: 950;
}

.aidesv-value-card h3,
.aidesv-module-card h3 {
    font-size: 24px;
    letter-spacing: -0.035em;
}

.aidesv-workflow-section {
    padding-top: 38px;
}

.aidesv-workflow-line {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 12px;
}

.aidesv-workflow-line div {
    min-height: 130px;
    padding: 18px;
    border-radius: 24px;
    background: rgba(255, 255, 255, .88);
    border: 1px solid var(--line);
    box-shadow: 0 18px 50px rgba(15, 23, 42, .06);
}

.aidesv-workflow-line strong,
.aidesv-workflow-line span {
    display: block;
}

.aidesv-workflow-line strong {
    color: #8a5b22;
    font-size: 13px;
    font-weight: 950;
}

.aidesv-workflow-line span {
    margin-top: 18px;
    font-size: 17px;
    line-height: 1.2;
    font-weight: 950;
}

.aidesv-privacy-card {
    display: grid;
    grid-template-columns: 1fr .9fr;
    gap: 28px;
    align-items: center;
    padding: 34px;
    background:
        radial-gradient(circle at top left, rgba(31, 111, 74, .12), transparent 38%),
        rgba(255, 255, 255, .92);
}

.aidesv-privacy-card h2 {
    margin: 12px 0;
    font-size: clamp(34px, 4vw, 58px);
    line-height: .95;
    letter-spacing: -0.06em;
}

.aidesv-privacy-card p {
    color: var(--muted);
    font-size: 17px;
    line-height: 1.7;
}

.aidesv-privacy-points {
    display: grid;
    gap: 12px;
}

.aidesv-privacy-points div {
    padding: 18px;
    border-radius: 22px;
    background: rgba(248, 247, 243, .95);
    border: 1px solid rgba(15, 23, 42, .06);
}

.aidesv-privacy-points strong,
.aidesv-privacy-points span {
    display: block;
}

.aidesv-privacy-points span {
    margin-top: 6px;
    color: var(--muted);
    line-height: 1.55;
    font-weight: 750;
}

.aidesv-price-card {
    background:
        radial-gradient(circle at top, rgba(216, 176, 109, .18), transparent 38%),
        rgba(255, 255, 255, .92);
}

/* Responsive */
@media (max-width: 1180px) {
    .aidesv-landing-hero {
        grid-template-columns: 1fr;
    }

    .aidesv-slider {
        height: 460px;
    }

    .aidesv-workflow-line {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .aidesv-privacy-card {
        grid-template-columns: 1fr;
    }

    .aidesv-workflow-line {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .aidesv-hero-metrics {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .aidesv-landing-hero {
        padding: 42px 16px 34px;
    }

    .aidesv-logo-line {
        align-items: flex-start;
        width: 100%;
    }

    .aidesv-logo-line img {
        width: 46px;
        height: 46px;
        border-radius: 15px;
    }

    .aidesv-landing-hero h1 {
        font-size: 44px;
    }

    .aidesv-slider-card {
        border-radius: 26px;
        padding: 10px;
    }

    .aidesv-slider {
        height: 380px;
        border-radius: 22px;
    }

    .aidesv-slide-overlay {
        left: 18px;
        right: 18px;
        bottom: 18px;
    }

    .aidesv-slide-overlay h2 {
        font-size: 30px;
    }

    .aidesv-workflow-line {
        grid-template-columns: 1fr;
    }

    .aidesv-privacy-card {
        padding: 22px;
        border-radius: 24px;
    }
}

/* =========================================================
   AIDESV Topbar Logo
========================================================= */

.brand-logo {
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: 0 10px 28px rgba(15, 23, 42, .08);
    overflow: hidden;
}

.brand-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 5px;
    display: block;
}

/* Hide old letter logo style if still exists anywhere */
.brand-mark {
    display: none;
}

@media (max-width: 640px) {
    .brand-logo {
        width: 36px;
        height: 36px;
        border-radius: 13px;
    }

    .brand-logo img {
        padding: 4px;
    }
}