:root{
    --bg:#050811;
    --panel:#0d1426;
    --panel2:#101a31;
    --line:rgba(255,255,255,.10);
    --line2:rgba(255,255,255,.18);
    --text:#ffffff;
    --muted:#9fb2d8;
    --soft:#c7d7f2;
    --green:#18f08b;
    --blue:#38a9ff;
    --gold:#ffd166;
    --orange:#ff8a18;
    --red:#ff416c;
    --purple:#8b5cf6;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

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

body{
    font-family:Inter,Arial,sans-serif;
    background:
        radial-gradient(circle at 15% 0,rgba(24,240,139,.18),transparent 30%),
        radial-gradient(circle at 86% 8%,rgba(56,169,255,.15),transparent 32%),
        radial-gradient(circle at 50% 100%,rgba(139,92,246,.12),transparent 36%),
        linear-gradient(180deg,#071226,#050811 66%,#03050b);
    color:var(--text);
}

a{
    color:inherit;
    text-decoration:none;
}

button,
input,
select,
textarea{
    font-family:inherit;
}

button{
    -webkit-tap-highlight-color:transparent;
}

.topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    padding:22px 34px;
    background:rgba(6,10,20,.88);
    border-bottom:1px solid var(--line);
    position:sticky;
    top:0;
    z-index:50;
    backdrop-filter:blur(16px);
}

.brand{
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
}

.brand img{
    width:48px;
    height:48px;
    object-fit:contain;
    border-radius:14px;
    filter:drop-shadow(0 10px 22px rgba(0,0,0,.28));
}

.logo{
    font-size:27px;
    font-weight:1000;
    letter-spacing:-.6px;
}

.subtitle{
    font-size:13px;
    color:var(--muted);
    margin-top:4px;
}

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

.btn{
    border:0;
    border-radius:16px;
    padding:13px 18px;
    color:white;
    font-weight:1000;
    cursor:pointer;
    background:linear-gradient(135deg,#2f6bff,#7c4dff);
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    transition:.18s ease;
    min-height:46px;
    text-align:center;
    box-shadow:0 14px 34px rgba(0,0,0,.18);
}

.btn:hover{
    transform:translateY(-1px);
    filter:brightness(1.06);
}

.btn.dark{
    background:rgba(255,255,255,.08);
    border:1px solid var(--line);
}

.btn.green{
    background:linear-gradient(135deg,var(--green),var(--blue));
    color:#06111c;
}

.btn.gold{
    background:linear-gradient(135deg,var(--gold),var(--orange));
    color:#06111c;
}

.btn.red{
    background:linear-gradient(135deg,var(--red),#8b1d35);
}

.btn.soft{
    background:rgba(255,255,255,.06);
    border:1px solid var(--line);
}

.btn.outline{
    background:rgba(255,255,255,.035);
    border:1px solid rgba(255,255,255,.16);
}

.btn.small-btn{
    min-height:38px;
    padding:9px 12px;
    border-radius:13px;
    font-size:12px;
}

.main{
    max-width:1180px;
    margin:0 auto;
    padding:30px 28px 112px;
}

.notice{
    display:none;
    padding:14px 16px;
    border-radius:18px;
    margin:0 0 18px;
    font-size:13px;
    font-weight:900;
}

.notice.show{
    display:block;
}

.notice.ok{
    color:var(--green);
    background:rgba(0,245,160,.10);
    border:1px solid rgba(0,245,160,.25);
}

.notice.warn{
    color:var(--gold);
    background:rgba(247,183,51,.10);
    border:1px solid rgba(247,183,51,.25);
}

.notice.err{
    color:#ffb8b8;
    background:rgba(255,70,70,.10);
    border:1px solid rgba(255,70,70,.25);
}

.hero{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    gap:22px;
    margin-bottom:22px;
}

.card,
.panel{
    background:
        radial-gradient(circle at top right,rgba(56,169,255,.06),transparent 34%),
        linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
    border:1px solid var(--line);
    border-radius:30px;
    padding:28px;
    box-shadow:0 25px 80px rgba(0,0,0,.25);
}

.hero-card{
    position:relative;
    overflow:hidden;
}

.hero-card:before{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    right:-110px;
    top:-110px;
    background:radial-gradient(circle,rgba(24,240,139,.16),transparent 70%);
    pointer-events:none;
}

.hero-card > *{
    position:relative;
    z-index:2;
}

.badge{
    display:inline-block;
    padding:8px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:1000;
    margin-bottom:14px;
}

.badge.green{
    background:rgba(0,245,160,.14);
    border:1px solid rgba(0,245,160,.35);
    color:var(--green);
}

.badge.blue{
    background:rgba(56,169,255,.12);
    border:1px solid rgba(56,169,255,.30);
    color:#9fd7ff;
}

.badge.gold{
    background:rgba(255,209,102,.13);
    border:1px solid rgba(255,209,102,.32);
    color:#ffe7a3;
}

h1{
    font-size:44px;
    line-height:1.02;
    margin-bottom:12px;
    letter-spacing:-1.3px;
}

h2{
    font-size:24px;
    margin-bottom:15px;
    letter-spacing:-.4px;
}

h3{
    font-size:18px;
    margin-bottom:10px;
}

p{
    color:var(--soft);
    line-height:1.7;
}

.hero-lead{
    font-size:16px;
    max-width:720px;
}

.micro-row{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:18px;
}

.micro-row span{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.055);
    border:1px solid rgba(255,255,255,.08);
    color:#dbe6ff;
    font-size:12px;
    font-weight:900;
}

.grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}

.field{
    display:grid;
    gap:7px;
}

.field.full{
    grid-column:1/-1;
}

label{
    color:var(--muted);
    font-size:12px;
    font-weight:1000;
}

input,
select,
textarea{
    width:100%;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.055);
    color:white;
    border-radius:16px;
    padding:13px 14px;
    outline:none;
    font-weight:850;
    min-height:46px;
}

textarea{
    resize:vertical;
    min-height:96px;
    line-height:1.5;
}

input:focus,
select:focus,
textarea:focus{
    border-color:rgba(24,240,139,.45);
    box-shadow:0 0 0 4px rgba(24,240,139,.08);
}

select option{
    color:#06111c;
}

.quick-actions{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:14px;
}

.event-btn{
    border:1px solid rgba(255,255,255,.11);
    background:rgba(255,255,255,.06);
    color:white;
    border-radius:18px;
    min-height:62px;
    padding:12px 10px;
    font-weight:1000;
    cursor:pointer;
    text-align:center;
    transition:.16s ease;
}

.event-btn:hover{
    transform:translateY(-1px);
    background:rgba(255,255,255,.09);
}

.event-btn.goal{
    background:linear-gradient(135deg,rgba(24,240,139,.18),rgba(56,169,255,.10));
    border-color:rgba(24,240,139,.28);
}

.event-btn.danger{
    background:linear-gradient(135deg,rgba(255,65,108,.18),rgba(255,138,24,.10));
    border-color:rgba(255,65,108,.28);
}

.event-btn.gold{
    background:linear-gradient(135deg,rgba(255,209,102,.18),rgba(255,138,24,.10));
    border-color:rgba(255,209,102,.30);
}

.event-emoji{
    display:block;
    font-size:20px;
    margin-bottom:4px;
}

.event-text{
    font-size:12px;
    line-height:1.25;
}

.match-status{
    display:grid;
    gap:12px;
}

.status-box{
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.08);
    border-radius:22px;
    padding:18px;
}

.status-label{
    color:var(--muted);
    font-size:12px;
    font-weight:1000;
    margin-bottom:7px;
}

.status-value{
    font-size:20px;
    font-weight:1000;
    word-break:break-word;
}

.score-box{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:10px;
    margin-top:14px;
    padding:16px;
    border-radius:22px;
    background:rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.08);
}

.score-team{
    font-size:13px;
    color:#dbe6ff;
    font-weight:1000;
    line-height:1.3;
    word-break:break-word;
}

.score-team.away{
    text-align:right;
}

.score-main{
    font-size:34px;
    font-weight:1000;
    letter-spacing:-.8px;
    color:white;
}

.section{
    margin-top:22px;
}

.timeline{
    display:grid;
    gap:10px;
    max-height:420px;
    overflow:auto;
    padding-right:5px;
}

.timeline::-webkit-scrollbar{
    width:7px;
}

.timeline::-webkit-scrollbar-thumb{
    background:rgba(56,169,255,.45);
    border-radius:999px;
}

.event-card{
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:12px;
    align-items:flex-start;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    padding:14px;
}

.event-minute{
    min-width:46px;
    padding:7px 9px;
    border-radius:999px;
    background:rgba(56,169,255,.14);
    border:1px solid rgba(56,169,255,.25);
    color:#9fd7ff;
    font-weight:1000;
    font-size:12px;
    text-align:center;
}

.event-title{
    font-weight:1000;
    margin-bottom:4px;
}

.event-meta{
    color:var(--muted);
    font-size:12px;
    font-weight:850;
}

.event-note{
    margin-top:7px;
    color:#dbe6ff;
    font-size:13px;
    line-height:1.45;
}

.delete-event{
    border:0;
    background:rgba(255,65,108,.14);
    color:#ffc3cf;
    border-radius:12px;
    width:34px;
    height:34px;
    cursor:pointer;
    font-weight:1000;
}

.empty{
    padding:22px;
    border-radius:22px;
    text-align:center;
    background:rgba(255,255,255,.04);
    border:1px dashed rgba(255,255,255,.16);
    color:var(--soft);
    font-weight:900;
    line-height:1.5;
}

.report-box{
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.08);
    border-radius:22px;
    padding:18px;
    color:#dbe6ff;
    line-height:1.75;
    white-space:pre-line;
    max-height:520px;
    overflow:auto;
}

.report-box strong{
    color:#fff;
}

.kpi-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin-top:18px;
}

.kpi{
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.08);
    border-radius:20px;
    padding:16px;
}

.kpi-label{
    color:var(--muted);
    font-size:11px;
    font-weight:1000;
    margin-bottom:8px;
}

.kpi-value{
    font-size:24px;
    font-weight:1000;
}

.bottom-nav{
    display:none;
}

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

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

@media(max-width:900px){
    .topbar{
        padding:16px 14px;
        align-items:center;
    }

    .brand img{
        width:42px;
        height:42px;
    }

    .logo{
        font-size:22px;
    }

    .subtitle{
        font-size:12px;
    }

    .actions{
        display:none;
    }

    .main{
        padding:20px 14px 112px;
        max-width:720px;
    }

    .card,
    .panel{
        border-radius:24px;
        padding:20px;
    }

    h1{
        font-size:34px;
    }

    h2{
        font-size:22px;
    }

    .hero-lead{
        font-size:14px;
    }

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

    .quick-actions{
        grid-template-columns:repeat(2,1fr);
    }

    .event-btn{
        min-height:60px;
    }

    .score-box{
        grid-template-columns:1fr;
        text-align:center;
    }

    .score-team.away{
        text-align:center;
    }

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

    .event-minute{
        grid-column:1/-1;
        width:max-content;
    }

    .bottom-nav{
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        background:rgba(6,10,20,.94);
        backdrop-filter:blur(16px);
        border-top:1px solid var(--line);
        padding:10px 12px calc(10px + env(safe-area-inset-bottom));
        display:grid;
        grid-template-columns:repeat(4,1fr);
        gap:8px;
        z-index:80;
    }

    .bottom-nav a{
        color:white;
        text-decoration:none;
        text-align:center;
        font-weight:900;
        font-size:12px;
        padding:11px 6px;
        border-radius:14px;
        background:rgba(255,255,255,.055);
    }

    .bottom-nav a.active{
        background:linear-gradient(135deg,var(--green),var(--blue));
        color:#06111c;
    }
}

@media(max-width:420px){
    .logo{
        font-size:19px;
    }

    .brand{
        gap:9px;
    }

    h1{
        font-size:30px;
    }

    .quick-actions{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .event-text{
        font-size:11px;
    }

    .kpi-grid{
        grid-template-columns:1fr;
    }
}
/* ======================================================
   MATCHIQ COACH MODE V1.4.1
   Mobile sideline polish
====================================================== */

.report-box{
    font-size:14px;
    line-height:1.85;
}

.report-box strong{
    display:block;
    margin:14px 0 6px;
    font-size:15px;
    color:#ffffff;
}

.status-box,
.kpi,
.event-card,
.unlock-card{
    backdrop-filter:blur(10px);
}

.event-btn{
    position:relative;
    overflow:hidden;
}

.event-btn:active{
    transform:scale(.98);
}

.event-btn:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
    transform:translateX(-120%);
    transition:.35s ease;
    pointer-events:none;
}

.event-btn:hover:after{
    transform:translateX(120%);
}

.score-main{
    background:linear-gradient(90deg,#fff,#dbeafe);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.timeline{
    min-height:220px;
}

.event-card{
    box-shadow:0 12px 32px rgba(0,0,0,.14);
}

.delete-event{
    transition:.15s ease;
}

.delete-event:active{
    transform:scale(.94);
}

@media(max-width:900px){

    body{
        background:
            radial-gradient(circle at 12% 0,rgba(24,240,139,.16),transparent 32%),
            radial-gradient(circle at 86% 10%,rgba(56,169,255,.13),transparent 34%),
            linear-gradient(180deg,#071226,#050811 68%,#03050b);
    }

    .topbar{
        position:sticky;
        top:0;
        min-height:74px;
        padding:calc(12px + env(safe-area-inset-top)) 14px 12px;
    }

    .brand{
        align-items:center;
    }

    .brand img{
        width:46px;
        height:46px;
        border-radius:15px;
    }

    .logo{
        font-size:24px;
        line-height:1.05;
    }

    .subtitle{
        font-size:11px;
        line-height:1.35;
        max-width:250px;
    }

    .main{
        padding:16px 12px 116px;
    }

    .hero{
        gap:12px;
        margin-bottom:14px;
    }

    .card,
    .panel{
        padding:18px;
        border-radius:24px;
    }

    .hero-card{
        background:
            radial-gradient(circle at top right,rgba(24,240,139,.10),transparent 36%),
            linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
    }

    h1{
        font-size:31px;
        line-height:1.06;
    }

    h2{
        font-size:21px;
    }

    .hero-lead{
        font-size:14px;
        line-height:1.55;
    }

    .micro-row{
        gap:7px;
        margin-top:14px;
    }

    .micro-row span{
        font-size:11px;
        padding:7px 9px;
    }

    .kpi-grid{
        grid-template-columns:repeat(2,1fr);
        gap:9px;
    }

    .kpi{
        padding:14px;
        border-radius:18px;
    }

    .kpi-value{
        font-size:25px;
    }

    .match-status{
        gap:10px;
    }

    .status-box{
        padding:15px;
        border-radius:19px;
    }

    .status-value{
        font-size:18px;
    }

    .score-box{
        padding:18px;
        border-radius:22px;
        background:
            radial-gradient(circle at center,rgba(24,240,139,.09),transparent 55%),
            rgba(0,0,0,.20);
    }

    .score-main{
        font-size:48px;
        line-height:1;
    }

    .score-team{
        font-size:14px;
    }

    .section{
        margin-top:14px;
    }

    .field{
        gap:6px;
    }

    label{
        font-size:12px;
    }

    input,
    select,
    textarea{
        min-height:52px;
        border-radius:17px;
        font-size:15px;
        padding:14px;
    }

    textarea{
        min-height:110px;
    }

    .quick-actions{
        grid-template-columns:repeat(2,1fr);
        gap:10px;
        margin-top:16px;
    }

    .event-btn{
        min-height:78px;
        border-radius:20px;
        padding:13px 10px;
    }

    .event-emoji{
        font-size:25px;
        margin-bottom:7px;
    }

    .event-text{
        font-size:13px;
        line-height:1.22;
    }

    .event-card{
        border-radius:19px;
        padding:15px;
        gap:10px;
    }

    .event-title{
        font-size:15px;
    }

    .event-meta{
        font-size:12px;
    }

    .event-note{
        font-size:13px;
    }

    .timeline{
        max-height:390px;
        min-height:210px;
    }

    .report-box{
        max-height:460px;
        font-size:13px;
        line-height:1.75;
        border-radius:20px;
        padding:16px;
        -webkit-overflow-scrolling:touch;
    }

    .report-box strong{
        font-size:14px;
        margin:13px 0 5px;
    }

    .btn{
        min-height:52px;
        border-radius:17px;
    }

    .btn.small-btn{
        min-height:42px;
    }

    .bottom-nav{
        box-shadow:0 -16px 45px rgba(0,0,0,.34);
    }

    .bottom-nav a{
        min-height:48px;
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:13px;
    }
}

@media(max-width:420px){

    .main{
        padding-left:10px;
        padding-right:10px;
    }

    h1{
        font-size:29px;
    }

    .logo{
        font-size:22px;
    }

    .subtitle{
        font-size:10px;
    }

    .quick-actions{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .event-btn{
        min-height:74px;
        border-radius:18px;
    }

    .event-emoji{
        font-size:23px;
    }

    .event-text{
        font-size:12px;
    }

    .score-main{
        font-size:44px;
    }

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

/* ======================================================
   MATCHIQ COACH MODE - PAGELLE V1.1 FIX
====================================================== */
.ratings-list{display:grid;gap:10px;max-height:420px;overflow:auto;padding-right:5px}
.ratings-list::-webkit-scrollbar{width:7px}
.ratings-list::-webkit-scrollbar-thumb{background:rgba(255,209,102,.45);border-radius:999px}
.rating-card{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:flex-start;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:15px;box-shadow:0 12px 32px rgba(0,0,0,.14)}
.rating-player{font-size:16px;font-weight:1000;margin-bottom:5px}
.rating-meta{color:var(--muted);font-size:12px;font-weight:850;line-height:1.4}
.rating-note{margin-top:8px;color:#dbe6ff;font-size:13px;line-height:1.45}
.rating-vote{min-width:54px;height:54px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:1000;color:#06111c;background:linear-gradient(135deg,var(--gold),var(--orange));box-shadow:0 10px 24px rgba(0,0,0,.18)}
.rating-vote.high{background:linear-gradient(135deg,var(--green),var(--blue))}
.rating-vote.low{background:linear-gradient(135deg,var(--red),#8b1d35);color:white}
.rating-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.rating-remove{border:0;background:rgba(255,65,108,.14);color:#ffc3cf;border-radius:12px;padding:8px 11px;cursor:pointer;font-weight:1000}
@media(max-width:900px){.ratings-list{max-height:390px}.rating-card{border-radius:19px;padding:15px}.rating-player{font-size:15px}.rating-vote{min-width:52px;height:52px;border-radius:17px}}

/* ======================================================
   MATCHIQ COACH MODE V1.4 - Professional Report Polish
====================================================== */
.pro-report-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.report-box{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.035));}
.report-box em{color:#ffe7a3;font-style:normal;font-weight:900}
.whatsapp-hint{margin-top:10px;color:var(--muted);font-size:12px;font-weight:850;line-height:1.45}
@media(max-width:900px){.pro-report-actions{display:grid;grid-template-columns:1fr 1fr}.pro-report-actions .btn{width:100%}}

/* ======================================================
   MATCHIQ COACH MODE V1.4 - Storico Coach
====================================================== */
.history-list{display:grid;gap:10px;max-height:430px;overflow:auto;padding-right:5px}
.history-list::-webkit-scrollbar{width:7px}
.history-list::-webkit-scrollbar-thumb{background:rgba(24,240,139,.45);border-radius:999px}
.history-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:15px;box-shadow:0 12px 32px rgba(0,0,0,.14)}
.history-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}
.history-title{font-weight:1000;font-size:15px;line-height:1.35}
.history-date{color:var(--muted);font-size:12px;font-weight:850;white-space:nowrap}
.history-meta{color:#dbe6ff;font-size:12px;font-weight:850;line-height:1.5;margin-bottom:10px}
.history-actions{display:flex;gap:8px;flex-wrap:wrap}
.history-actions button{border:0;border-radius:12px;padding:9px 11px;font-weight:1000;cursor:pointer;color:white;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10)}
.history-actions button.green{background:linear-gradient(135deg,var(--green),var(--blue));color:#06111c}
.history-actions button.red{background:rgba(255,65,108,.14);color:#ffc3cf}
@media(max-width:900px){.history-list{max-height:390px}.history-actions{display:grid;grid-template-columns:1fr 1fr}.history-actions button{width:100%}}

/* ======================================================
   MATCHIQ COACH MODE V1.5 - PDF / Print Report
====================================================== */
.pdf-report-page{
    display:none;
}

@media print{
    @page{
        size:A4;
        margin:14mm;
    }

    body{
        background:#ffffff !important;
        color:#111827 !important;
        -webkit-print-color-adjust:exact;
        print-color-adjust:exact;
    }

    .topbar,
    .main,
    .bottom-nav,
    .notice{
        display:none !important;
    }

    .pdf-report-page{
        display:block !important;
        font-family:Arial,sans-serif;
        color:#111827;
        background:#ffffff;
    }

    .pdf-header{
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        gap:18px;
        border-bottom:3px solid #18f08b;
        padding-bottom:14px;
        margin-bottom:18px;
    }

    .pdf-brand{
        font-size:24px;
        font-weight:900;
        letter-spacing:-.5px;
    }

    .pdf-subtitle{
        margin-top:4px;
        color:#4b5563;
        font-size:12px;
        font-weight:700;
    }

    .pdf-badge{
        background:#0f172a;
        color:#ffffff;
        border-radius:999px;
        padding:8px 12px;
        font-size:11px;
        font-weight:900;
        white-space:nowrap;
    }

    .pdf-title{
        font-size:26px;
        line-height:1.12;
        font-weight:900;
        margin:0 0 8px;
    }

    .pdf-meta{
        display:grid;
        grid-template-columns:repeat(4,1fr);
        gap:8px;
        margin:14px 0 18px;
    }

    .pdf-meta-box{
        border:1px solid #d1d5db;
        border-radius:12px;
        padding:10px;
        background:#f9fafb;
    }

    .pdf-meta-label{
        color:#6b7280;
        font-size:10px;
        font-weight:900;
        text-transform:uppercase;
        margin-bottom:4px;
    }

    .pdf-meta-value{
        color:#111827;
        font-size:15px;
        font-weight:900;
    }

    .pdf-section{
        break-inside:avoid;
        margin:14px 0;
        border:1px solid #e5e7eb;
        border-radius:14px;
        overflow:hidden;
    }

    .pdf-section h2{
        margin:0;
        padding:10px 12px;
        color:#06111c;
        background:#e8fff4;
        border-bottom:1px solid #d1fae5;
        font-size:15px;
        font-weight:900;
    }

    .pdf-section-body{
        padding:12px;
        font-size:12px;
        line-height:1.55;
        white-space:pre-line;
    }

    .pdf-footer{
        margin-top:22px;
        padding-top:10px;
        border-top:1px solid #d1d5db;
        color:#6b7280;
        font-size:10px;
        display:flex;
        justify-content:space-between;
        gap:12px;
    }
}
