:root{--trs-red:#CD2323;--trs-red-dark:#A71919;--trs-ivory:#FAEEE2;--trs-cream:#FFF9F3;--trs-charcoal:#0D1216;--trs-text:#2B2927;--trs-muted:#756C66;--trs-border:#DDD3C9;--trs-success:#315D49;--trs-warning:#A66A24;--shadow:0 18px 50px rgba(13,18,22,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--trs-ivory);color:var(--trs-text);font-family:"DM Sans",sans-serif}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;width:284px;background:var(--trs-charcoal);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:50}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:#fff;padding:4px 6px 24px;border-bottom:1px solid rgba(255,255,255,.09)}.brand img{width:58px;height:58px;object-fit:cover;border-radius:15px;border:1px solid rgba(255,255,255,.14)}.brand strong{display:block;font-family:"Playfair Display",serif;font-size:20px}.brand span{display:block;color:rgba(255,255,255,.54);font-size:11px;margin-top:2px}.nav-list{display:grid;gap:7px;margin-top:24px}.nav-item{display:flex;align-items:center;gap:12px;min-height:48px;padding:11px 13px;border-radius:12px;text-decoration:none;color:rgba(255,255,255,.72);font-weight:600;font-size:14px;transition:.2s}.nav-item>span{font-size:10px;color:rgba(255,255,255,.35);width:19px}.nav-item small{margin-left:auto;font-size:9px;color:rgba(255,255,255,.3)}.nav-item.active,.nav-item:hover{background:rgba(205,35,35,.16);color:#fff}.nav-item.active{box-shadow:inset 3px 0 0 var(--trs-red)}.nav-item.disabled{cursor:not-allowed;opacity:.65}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.09);padding-top:17px}.profile-mini{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;padding:8px;border-radius:12px}.profile-mini:hover,.profile-mini.active{background:rgba(255,255,255,.06)}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--trs-red);font-weight:700}.profile-mini strong,.profile-mini small{display:block}.profile-mini strong{font-size:13px}.profile-mini small{font-size:10px;color:rgba(255,255,255,.5)}.logout-link{display:block;color:rgba(255,255,255,.55);font-size:12px;text-decoration:none;margin:10px 9px 0}.logout-link:hover{color:#fff}.main-content{width:100%;margin-left:284px;min-width:0}.topbar{height:112px;display:flex;align-items:center;justify-content:space-between;padding:24px 42px;border-bottom:1px solid rgba(117,108,102,.16);background:rgba(250,238,226,.88);backdrop-filter:blur(12px);position:sticky;top:0;z-index:30}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--trs-red);font-size:10px;font-weight:700;margin:0 0 4px}.topbar h1{font-family:"Playfair Display",serif;font-size:31px;margin:0}.topbar-date{font-size:13px;color:var(--trs-muted);font-weight:600}.menu-button{display:none;border:0;background:transparent;font-size:25px}.page-wrap{padding:36px 42px 70px;max-width:1500px}.mission-card{background:var(--trs-charcoal);color:#fff;border-radius:22px;padding:32px;position:relative;overflow:hidden;box-shadow:var(--shadow)}.mission-card:after{content:"";position:absolute;width:260px;height:260px;border:48px solid rgba(205,35,35,.15);border-radius:50%;right:-85px;top:-92px}.mission-card .label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#f5b8ae;font-weight:700}.mission-card h2{font-family:"Playfair Display",serif;font-size:34px;max-width:700px;margin:10px 0 12px}.mission-card p{color:rgba(255,255,255,.66);max-width:650px;margin:0}.btn-trs{background:var(--trs-red);border-color:var(--trs-red);color:white;border-radius:11px;padding:11px 17px;font-weight:700}.btn-trs:hover{background:var(--trs-red-dark);border-color:var(--trs-red-dark);color:#fff}.surface{background:rgba(255,249,243,.9);border:1px solid var(--trs-border);border-radius:18px;padding:23px;box-shadow:0 12px 32px rgba(13,18,22,.045)}.section-title{font-family:"Playfair Display",serif;font-size:22px;margin:0}.muted{color:var(--trs-muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{background:var(--trs-cream);border:1px solid var(--trs-border);border-radius:16px;padding:20px}.stat-card .stat{font-family:"Playfair Display",serif;font-size:31px}.stat-card .caption{font-size:12px;color:var(--trs-muted)}.status-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:99px;background:#f1e4d8;color:#6a4d39;font-size:11px;font-weight:700}.empty-panel{text-align:center;padding:35px 20px}.empty-panel img{width:95px;height:95px;object-fit:cover;border-radius:24px;opacity:.9}.empty-panel h3{font-family:"Playfair Display",serif;margin:18px 0 7px}.custom-alert{border-radius:13px;border:0}.form-card{max-width:760px}.form-label{font-size:12px;font-weight:700;color:var(--trs-text)}.form-control{border-color:var(--trs-border);background:#fffdf9;border-radius:11px;padding:11px 13px}.form-control:focus{border-color:var(--trs-red);box-shadow:0 0 0 .2rem rgba(205,35,35,.12)}.sidebar-overlay{display:none}.login-body{min-height:100vh;background:var(--trs-charcoal);display:grid;place-items:center;padding:24px}.login-shell{width:min(960px,100%);display:grid;grid-template-columns:1.08fr .92fr;background:var(--trs-cream);border-radius:28px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.38)}.login-brand{background:var(--trs-ivory);padding:42px;display:flex;flex-direction:column;justify-content:space-between}.login-brand img{width:100%;max-width:390px;align-self:center}.login-brand h1{font-family:"Playfair Display",serif;font-size:36px}.login-panel{padding:55px 48px;display:flex;flex-direction:column;justify-content:center}.login-panel h2{font-family:"Playfair Display",serif;font-size:34px}.login-panel .btn-trs{width:100%;padding:13px}.install-shell{max-width:820px;margin:45px auto;padding:0 20px}.install-logo{width:150px;height:150px;object-fit:cover;border-radius:26px}.code-note{background:#171c20;color:#e6ddd4;border-radius:12px;padding:14px;font-family:monospace;font-size:12px}
@media(max-width:1000px){.stat-grid{grid-template-columns:repeat(2,1fr)}.login-shell{grid-template-columns:1fr}.login-brand{display:none}}
@media(max-width:760px){.sidebar{transform:translateX(-102%);transition:.25s}.sidebar.open{transform:translateX(0)}.sidebar-overlay.show{display:block;position:fixed;inset:0;background:rgba(13,18,22,.55);z-index:40}.main-content{margin-left:0}.topbar{height:88px;padding:16px 18px;justify-content:flex-start;gap:14px}.topbar h1{font-size:25px}.topbar-date{display:none}.menu-button{display:block}.page-wrap{padding:22px 16px 45px}.mission-card{padding:24px}.mission-card h2{font-size:28px}.stat-grid{grid-template-columns:1fr 1fr}.login-panel{padding:40px 25px}}
.bb-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:start}.bb-subnav{position:sticky;top:132px;padding:16px}.bb-subnav-link{display:block;padding:10px 12px;border-radius:10px;color:var(--trs-muted);text-decoration:none;font-size:13px;font-weight:600;margin:2px 0}.bb-subnav-link:hover,.bb-subnav-link.active{background:#f1e4d8;color:var(--trs-text)}.bb-content{min-width:0}.bb-list{display:grid;gap:14px}.bb-record{display:flex;justify-content:space-between;gap:24px;transition:transform .18s,box-shadow .18s}.bb-record:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(13,18,22,.07)}.bb-record h3{font-family:"Playfair Display",serif;font-size:21px;margin:12px 0 7px}.bb-record p{color:var(--trs-muted);margin:0 0 8px;white-space:pre-line}.record-actions{display:flex;gap:12px;align-items:flex-start;flex-shrink:0}.record-actions a,.record-actions button{border:0;background:none;color:var(--trs-red);font-size:12px;font-weight:700;text-decoration:none;padding:4px}.record-actions form{margin:0}.sticky-form{position:sticky;top:132px}.bb-roadmap{display:grid;gap:10px}.bb-roadmap a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--trs-border);border-radius:13px;text-decoration:none;color:var(--trs-text);background:#fffdf9}.bb-roadmap a:hover{border-color:rgba(205,35,35,.45);transform:translateY(-1px)}.bb-roadmap span{font-family:"Playfair Display",serif;font-size:18px;color:var(--trs-red)}.bb-roadmap small{color:var(--trs-muted)}textarea.form-control{resize:vertical}.form-control,select.form-control{min-height:45px}
@media(max-width:1100px){.bb-shell{grid-template-columns:1fr}.bb-subnav{position:static;display:flex;overflow:auto;gap:6px;white-space:nowrap}.bb-subnav .eyebrow{display:none}.bb-subnav-link{margin:0}.sticky-form{position:static}}
@media(max-width:760px){.bb-record{display:block}.record-actions{margin-top:16px}.bb-roadmap a{grid-template-columns:35px 1fr auto}.bb-subnav{margin-bottom:0}}


/* Module 2 UI polish — Brand Brain */
.bb-shell{
    display:grid;
    grid-template-columns:240px minmax(0,1fr);
    gap:24px;
    align-items:start;
}
.bb-subnav{
    position:sticky;
    top:132px;
    padding:18px;
    overflow:hidden;
}
.bb-subnav .eyebrow{
    margin:0 0 12px;
    padding:0 4px 12px;
    border-bottom:1px solid var(--trs-border);
}
.bb-subnav-link{
    display:flex;
    align-items:center;
    min-height:42px;
    padding:10px 12px;
    margin:3px 0;
    border:1px solid transparent;
    border-radius:11px;
    color:var(--trs-muted) !important;
    text-decoration:none !important;
    font-size:13px;
    font-weight:650;
    line-height:1.25;
    transition:background-color .18s,border-color .18s,color .18s,transform .18s;
}
.bb-subnav-link:hover{
    background:#f7eadf;
    border-color:#ead9ca;
    color:var(--trs-text) !important;
    transform:translateX(2px);
}
.bb-subnav-link.active{
    background:var(--trs-charcoal);
    border-color:var(--trs-charcoal);
    color:#fff !important;
    box-shadow:0 8px 22px rgba(13,18,22,.12);
}
.bb-content{min-width:0}
.bb-roadmap{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:22px !important;
}
.bb-roadmap a{
    display:grid;
    grid-template-columns:52px minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
    min-height:82px;
    padding:16px 18px;
    border:1px solid var(--trs-border);
    border-radius:15px;
    background:#fffdf9;
    color:var(--trs-text) !important;
    text-decoration:none !important;
    box-shadow:0 7px 20px rgba(13,18,22,.025);
    transition:transform .18s,border-color .18s,box-shadow .18s;
}
.bb-roadmap a:hover{
    transform:translateY(-2px);
    border-color:rgba(205,35,35,.38);
    box-shadow:0 14px 30px rgba(13,18,22,.07);
}
.bb-roadmap a span{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border-radius:13px;
    background:#f6e5da;
    color:var(--trs-red);
    font-family:"Playfair Display",serif;
    font-size:18px;
    font-weight:700;
}
.bb-roadmap a strong{
    min-width:0;
    font-size:14px;
    line-height:1.35;
}
.bb-roadmap a small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:54px;
    padding:6px 9px;
    border-radius:99px;
    background:#f1e4d8;
    color:#6a4d39;
    font-size:10px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.alert-success.custom-alert{
    background:#d8eee4;
    border:1px solid #bfded0;
    color:#164b37;
}
@media(max-width:1180px){
    .bb-shell{grid-template-columns:1fr}
    .bb-subnav{
        position:static;
        display:flex;
        gap:7px;
        overflow-x:auto;
        padding:12px;
        scrollbar-width:thin;
    }
    .bb-subnav .eyebrow{display:none}
    .bb-subnav-link{
        flex:0 0 auto;
        margin:0;
        min-height:38px;
        white-space:nowrap;
    }
    .bb-subnav-link:hover{transform:none}
}
@media(max-width:820px){
    .bb-roadmap{grid-template-columns:1fr}
}
@media(max-width:520px){
    .bb-roadmap a{
        grid-template-columns:46px minmax(0,1fr);
        min-height:76px;
        padding:14px;
    }
    .bb-roadmap a small{display:none}
}
