.schema-preview-public-page .main-content{
    padding:20px 24px 30px;
    gap:18px;
}

.schema-preview-public-page .top-row{
    align-items:flex-start;
    gap:20px;
    padding:4px 2px 2px;
}

.schema-preview-public-page .headline{
    display:grid;
    gap:12px;
    max-width:980px;
}

.schema-preview-public-page .headline h1{
    max-width:820px;
    font-size:clamp(40px, 5vw, 68px);
}

.schema-preview-public-page .headline p{
    margin:0;
    max-width:920px;
    font-size:clamp(17px, 2vw, 25px);
    line-height:1.28;
}

.schema-preview-public-page .top-right{
    min-width:0;
    padding-top:2px;
}

.schema-preview-public-page .account-row{
    justify-content:flex-end;
}

.schema-preview-page{
    gap:20px;
}

.schema-preview-page .card{
    padding:22px;
    border-radius:18px;
}

.schema-hero{
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
    gap:24px;
    align-items:center;
    background:
        radial-gradient(circle at top left, rgba(245,158,11,.18), transparent 42%),
        linear-gradient(145deg, rgba(15,23,42,.96), rgba(30,41,59,.92));
}

.schema-kicker{
    display:inline-block;
    font-size:11px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:#fcd34d;
    margin-bottom:8px;
}

.schema-hero-copy{
    display:grid;
    gap:14px;
    align-content:start;
}

.schema-chip-row{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.schema-chip{
    display:inline-flex;
    align-items:center;
    gap:6px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    padding:6px 10px;
    font-size:11px;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:#cbd5e1;
    background:rgba(15,23,42,.48);
}

.schema-chip-strong{
    color:#fff;
    border-color:rgba(245,158,11,.45);
    background:rgba(245,158,11,.18);
}

.schema-chip-live{
    border-color:rgba(16,185,129,.45);
    background:rgba(16,185,129,.16);
    color:#d1fae5;
}

.schema-chip-sample{
    border-color:rgba(96,165,250,.45);
    background:rgba(96,165,250,.14);
    color:#dbeafe;
}

.schema-picker{
    display:grid;
    gap:10px;
    min-width:min(100%, 320px);
    padding:18px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:16px;
    background:rgba(2,6,23,.56);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}

.schema-picker label{
    display:grid;
    gap:8px;
    color:#e2e8f0;
}

.schema-picker select,
.schema-picker button{
    min-height:42px;
}

.schema-picker button{
    justify-self:start;
}

.schema-layout{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
    gap:18px;
    align-items:start;
}

.schema-main,
.schema-side{
    display:grid;
    gap:18px;
}

.schema-identity{
    display:grid;
    grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);
    gap:22px;
    overflow:hidden;
}

.schema-align-face{
    background:
        linear-gradient(135deg, rgba(8,47,73,.96), rgba(15,23,42,.94)),
        linear-gradient(180deg, rgba(255,255,255,.04), transparent);
}

.schema-align-heel{
    background:
        linear-gradient(135deg, rgba(69,10,10,.96), rgba(15,23,42,.94)),
        linear-gradient(180deg, rgba(255,255,255,.04), transparent);
}

.schema-align-tweener{
    background:
        linear-gradient(135deg, rgba(67,20,7,.96), rgba(15,23,42,.94)),
        linear-gradient(180deg, rgba(255,255,255,.04), transparent);
}

.schema-align-neutral{
    background:
        linear-gradient(135deg, rgba(17,24,39,.96), rgba(15,23,42,.94)),
        linear-gradient(180deg, rgba(255,255,255,.04), transparent);
}

.schema-identity-media{
    min-width:0;
    display:flex;
}

.schema-avatar{
    width:100%;
    height:100%;
    min-height:340px;
    object-fit:cover;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(2,6,23,.7);
}

.schema-avatar-empty{
    display:grid;
    place-items:center;
    color:#cbd5e1;
    min-height:300px;
}

.schema-identity-copy{
    display:grid;
    gap:14px;
    align-content:start;
}

.schema-name{
    margin:0;
    font-size:34px;
    line-height:1;
    color:#fff;
}

.schema-nickname{
    color:#fcd34d;
    font-size:15px;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.schema-meta-line{
    color:#cbd5e1;
    font-size:13px;
}

.schema-kv-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
    margin-top:4px;
}

.schema-kv{
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:rgba(2,6,23,.58);
    padding:12px;
    display:grid;
    gap:6px;
}

.schema-kv span{
    color:#94a3b8;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.schema-kv strong{
    color:#fff;
    font-size:18px;
    line-height:1.15;
}

.schema-bars-card{
    gap:12px;
}

.schema-bar-grid{
    display:grid;
    gap:10px;
}

.schema-bar-row{
    display:grid;
    grid-template-columns:116px minmax(0,1fr) 42px;
    gap:12px;
    align-items:center;
}

.schema-bar-label{
    color:#e5e7eb;
    font-size:12px;
}

.schema-bar{
    height:10px;
    border-radius:999px;
    background:rgba(148,163,184,.18);
    overflow:hidden;
}

.schema-bar-fill{
    height:100%;
    border-radius:999px;
}

.schema-tone-bridge{
    background:linear-gradient(90deg, #f59e0b, #f97316);
}

.schema-tone-legacy{
    background:linear-gradient(90deg, #60a5fa, #2563eb);
}

.schema-tone-competitive{
    background:linear-gradient(90deg, #34d399, #10b981);
}

.schema-tone-traits{
    background:linear-gradient(90deg, #f472b6, #ec4899);
}

.schema-tone-derived{
    background:linear-gradient(90deg, #c084fc, #8b5cf6);
}

.schema-tag-grid{
    display:grid;
    gap:10px;
}

.schema-tag-block{
    display:grid;
    gap:4px;
    padding:12px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(2,6,23,.58);
}

.schema-tag-block span{
    color:#94a3b8;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.schema-tag-block strong{
    color:#fff;
    font-size:15px;
    line-height:1.35;
}

.schema-modal-frame{
    border-radius:20px;
    padding:22px;
    background:
        radial-gradient(circle at top, rgba(245,158,11,.18), transparent 35%),
        linear-gradient(180deg, rgba(15,23,42,.92), rgba(2,6,23,.96));
    border:1px solid rgba(255,255,255,.10);
}

.schema-modal-card{
    display:grid;
    gap:16px;
    border-radius:18px;
    padding:18px;
    background:
        linear-gradient(145deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
        rgba(2,6,23,.8);
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 18px 40px rgba(0,0,0,.28);
}

.schema-modal-top{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:14px;
    align-items:start;
}

.schema-modal-top-copy{
    display:grid;
    gap:8px;
}

.schema-modal-top-copy h3{
    margin:0;
    color:#fff;
    font-size:24px;
}

.schema-modal-top-copy p{
    margin:0;
    color:#cbd5e1;
    font-size:13px;
    line-height:1.5;
}

.schema-modal-avatar{
    width:100%;
    aspect-ratio:4/5;
    object-fit:cover;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(2,6,23,.68);
}

.schema-modal-metrics{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px;
}

@media (max-width: 1120px){
    .schema-preview-public-page .main-content{
        padding:18px 18px 26px;
    }

    .schema-preview-public-page .top-row{
        gap:14px;
    }

    .schema-layout{
        grid-template-columns:1fr;
    }
}

@media (max-width: 900px){
    .schema-preview-public-page .account-row{
        justify-content:flex-start;
    }

    .schema-hero,
    .schema-identity{
        grid-template-columns:1fr;
    }
}

@media (max-width: 640px){
    .schema-preview-public-page .main-content{
        padding:14px 14px 22px;
    }

    .schema-preview-page .card{
        padding:16px;
    }

    .schema-avatar{
        min-height:260px;
    }

    .schema-bar-row{
        grid-template-columns:1fr;
    }

    .schema-kv-grid,
    .schema-modal-metrics{
        grid-template-columns:1fr;
    }

    .schema-modal-top{
        grid-template-columns:1fr;
    }
}
