:root{
    --bg:#07111B;
    --surface:#0E1B2A;
    --card:#13263A;
    --text:#F8FAFC;
    --muted:#94A3B8;
    --border:rgba(148,163,184,0.18);
    --brand-primary:#18C6B3;
    --brand-primary-hover:#12A89A;
}
html,body{font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,sans-serif;background:var(--bg);color:var(--text)}
body{min-height:100vh}
.input,.textarea,.select{
    width:100%;
    border-radius:1rem;
    border:1px solid rgba(148,163,184,.18);
    background:rgba(255,255,255,.04);
    color:#F8FAFC;
    padding:.875rem 1rem;
    outline:none;
}
.input:focus,.textarea:focus,.select:focus{
    border-color:rgba(24,198,179,.55);
    box-shadow:0 0 0 4px rgba(24,198,179,.12);
}
.textarea{min-height:120px}
.label{
    display:block;
    font-size:.9rem;
    font-weight:600;
    color:#E2E8F0;
    margin-bottom:.5rem;
}
.btn-primary,.btn-secondary,.btn-ghost,.btn-danger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    border-radius:1rem;
    padding:.85rem 1.1rem;
    font-weight:700;
    transition:.2s ease;
}
.btn-primary{background:var(--brand-primary);color:#06231F}
.btn-primary:hover{background:var(--brand-primary-hover)}
.btn-secondary{background:rgba(255,255,255,.05);color:#F8FAFC;border:1px solid rgba(148,163,184,.18)}
.btn-secondary:hover{background:rgba(255,255,255,.08)}
.btn-ghost{color:#E2E8F0}
.btn-ghost:hover{background:rgba(255,255,255,.05)}
.btn-danger{background:rgba(244,63,94,.12);color:#FDA4AF;border:1px solid rgba(244,63,94,.2)}
.table-shell{border-radius:1.5rem;border:1px solid rgba(148,163,184,.18);overflow:hidden;background:rgba(255,255,255,.03)}
.table-shell table{width:100%}
.table-shell th,.table-shell td{padding:1rem;border-bottom:1px solid rgba(148,163,184,.08);text-align:left}
.table-shell th{font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:#94A3B8}
.card{border:1px solid rgba(148,163,184,.18);background:rgba(19,38,58,.88);border-radius:1.75rem}
.public-hero{background:radial-gradient(circle at top left, rgba(24,198,179,.2), transparent 30%), radial-gradient(circle at bottom right, rgba(96,165,250,.18), transparent 28%), linear-gradient(140deg,#07111B,#0E1B2A)}
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media (min-width:1024px){
    .app-main{padding-left:18rem}
}
