:root{
  --cream:#fcfbf9;--paper:#ffffff;--paper2:#f6f7f9;--ink:#20242c;--muted:#737985;
  --community:#ef5b3f;--communityDeep:#c9472f;--mentor:#6b63d9;--line:#e6e8ec;
  --green:#16a36f;--red:#d94f4f;--gold:#ef5b3f;--blue:#4968e8;--radius:13px;--shadow:0 8px 28px rgba(32,32,31,.045);
}
*{box-sizing:border-box}html,body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}button{cursor:pointer}.muted{color:var(--muted)}.eyebrow{margin:0 0 6px;font-size:8px;letter-spacing:1.55px;font-weight:600;color:#9b958d}
.app{min-height:100vh}.rail{position:fixed;inset:0 auto 0 0;width:216px;background:#fbfaf6;border-right:1px solid var(--line);padding:18px 13px;display:flex;flex-direction:column;z-index:30}
.brand{text-decoration:none;color:var(--ink);display:flex;flex-direction:column;line-height:1}.brand-mark{font-family:'Playfair Display',serif;font-size:31px;letter-spacing:-1.2px}.brand-sub{font-size:6px;letter-spacing:2.4px;margin-top:6px}.rail-brand{padding:6px 9px 22px}
.rail-nav{display:grid;gap:4px}.rail-item{position:relative;display:grid;grid-template-columns:26px 1fr auto;gap:8px;align-items:center;border:0;background:none;color:#6f6b65;padding:10px 10px;border-radius:9px;text-align:left}.rail-item span{font-size:14px;color:#817c75}.rail-item b{font-size:11px;font-weight:500}.rail-item:hover,.rail-item.is-active{background:#efebe4;color:var(--ink);transform:none;border:0}.rail-item.is-active b{font-weight:600}.nav-badge{font-style:normal;background:var(--community);color:#fff;border-radius:999px;font-size:7px;min-width:17px;height:17px;display:grid;place-items:center}.admin-nav{margin-top:12px;border-top:1px solid var(--line);border-radius:0;padding-top:14px}
.rail-foot{margin-top:auto;border-top:1px solid var(--line);padding:14px 8px 0}.access-pill{display:flex;align-items:center;gap:8px}.access-pill i{width:7px;height:7px;border-radius:50%;background:var(--community)}.access-pill small{display:block;font-size:7px;letter-spacing:1.2px;color:var(--muted)}.access-pill strong{font-size:10px}.text-btn{border:0;background:none;padding:5px 0;color:var(--muted);font-size:9px;text-align:left}
.content{margin-left:216px;padding:18px 22px 86px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;min-height:62px;padding:2px 2px 13px;margin-bottom:16px;border-bottom:1px solid var(--line)}.topbar h1{font-family:'DM Sans',Arial,sans-serif;font-size:23px;font-weight:600;letter-spacing:-.45px;margin:0}.top-subtitle{margin:4px 0 0;color:var(--muted);font-size:10px}.top-actions{display:flex;gap:8px}.icon-btn,.avatar{width:35px;height:35px;border:1px solid var(--line);border-radius:9px;background:var(--paper);display:grid;place-items:center}.avatar{border-radius:50%;font-size:10px;font-weight:600}
.screen{display:none}.screen.is-active{display:block}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);gap:12px}.hero-card,.live-card,.panel,.stats-grid article,.trade-card,.course-card,.profile-card,.menu-card,.members-table,.permission-matrix,.academy-builder{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-card{padding:18px}.hero-title-row{display:flex;justify-content:space-between;gap:12px}.instrument-row{display:flex;align-items:center;gap:7px}.instrument-row h2{font:600 26px 'DM Sans';margin:0}.rr{font-size:26px;font-weight:600;color:var(--communityDeep)}.pill{font-size:7px;letter-spacing:.8px;border:1px solid var(--line);border-radius:999px;padding:4px 6px}.pill.long{color:var(--green);background:#f3faf5}.pill.short{color:var(--red);background:#fff4f2}.pill.active{color:#245da8;background:#f3f7fb}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:9px;overflow:hidden;margin:14px 0}.metrics div{padding:10px;border-right:1px solid var(--line);background:var(--paper)}.metrics div:last-child{border-right:0}.metrics span{font-size:7px;color:var(--muted);letter-spacing:1px}.metrics b{font-size:11px}.hero-actions{display:flex;gap:7px}.cta,.outline{border-radius:8px;padding:9px 12px;font-size:9px}.cta{border:0;background:var(--community);color:#fff;font-weight:600}.cta:hover{background:var(--communityDeep)}.outline{border:1px solid var(--line);background:#fff;color:var(--ink)}
.live-card{padding:18px}.live-card h3{font-family:'DM Sans';font-size:18px;font-weight:600;margin:2px 0 7px}.chips{display:flex;gap:5px;margin:12px 0}.chips span{font-size:7px;border:1px solid var(--line);border-radius:999px;padding:4px 6px}
.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.panel{padding:16px}.panel h3{font-family:'DM Sans';font-size:15px;font-weight:600;margin:0}.panel h3 em{font-style:normal;color:var(--ink)}.panel-head{display:flex;justify-content:space-between}.progress{height:4px;background:#eee9e0;border-radius:999px;overflow:hidden;margin:14px 0 10px}.progress span{display:block;height:100%;background:var(--community)}.activity-list{display:grid;margin-top:8px}.activity-list button{display:grid;grid-template-columns:7px 1fr auto;gap:9px;align-items:center;border:0;border-top:1px solid var(--line);background:none;padding:10px 0;text-align:left}.activity-list strong{display:block;font-size:10px}.activity-list small{font-size:8px;color:var(--muted)}.activity-list i{width:6px;height:6px;border-radius:50%;background:var(--community)}.activity-list i.red{background:var(--mentor)}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.stats-grid article{padding:15px}.stats-grid strong{display:block;font-size:24px;font-weight:600}.stats-grid .green{color:var(--green)}.stats-grid span{font-size:8px;color:var(--muted)}
.section-title,.admin-panel-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:12px}.section-title h2,.admin-head h2,.admin-panel-head h3{font-family:'DM Sans';font-weight:600;letter-spacing:-.3px;margin:0}.section-title h2{font-size:21px}.section-title h2 em{font-style:normal;color:var(--muted)}
.filters{display:flex;gap:6px;margin-bottom:12px}.filters button{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 9px;font-size:8px}.filters .active{background:var(--ink);color:#fff}
.trade-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.trade-card{padding:16px}.trade-card-head{display:flex;justify-content:space-between}.trade-card h3{font-family:'DM Sans';font-size:16px;font-weight:600;margin:8px 0}.status{font-size:7px;padding:3px 5px;border-radius:999px}.status-active{background:#eef4fb;color:#245da8}.status-win{background:#edf8f1;color:var(--green)}.status-loss{background:#fff0ed;color:var(--red)}.trade-card p{font-size:9px;color:var(--muted)}.trade-card-actions{display:flex;gap:9px}.trade-card-actions button{border:0;background:none;padding:0;font-size:8px}
.community-layout{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:72vh;background:var(--paper);border:1px solid var(--line);border-radius:13px;overflow:hidden}.channels{border-right:1px solid var(--line);padding:12px;background:#faf8f3}.channels-head h3{font-family:'DM Sans';font-size:12px;font-weight:600;margin:0 0 12px}.group{font-size:7px;letter-spacing:1.2px;color:#a19b93;margin:12px 0 5px}.channel{width:100%;border:0;background:none;border-radius:8px;padding:8px;color:#6f6b65;text-align:left;font-size:10px}.channel:hover,.channel.is-active{background:#eee9e1;color:var(--ink)}
.chat{display:grid;grid-template-rows:auto 1fr auto;min-width:0;position:relative}.chat-head{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line)}.chat-head h2{font-family:'DM Sans';font-size:14px;font-weight:600;margin:0}.chat-tools{display:flex;gap:5px}.permission-chip{font-size:6px;letter-spacing:.8px;border:1px solid #e5c2a7;color:var(--communityDeep);border-radius:999px;padding:3px 5px}.messages{padding:14px;overflow:auto;max-height:60vh}.message{display:grid;grid-template-columns:33px 1fr;gap:9px;margin-bottom:14px}.message strong{font-size:10px}.message small{font-size:7px;color:var(--muted);margin-left:5px}.message p{font-size:10px;line-height:1.45;margin:3px 0}.attachment-card{max-width:420px;border:1px solid var(--line);border-radius:9px;padding:7px;margin-top:7px}.attachment-card img,.attachment-card video{max-width:100%;border-radius:7px}.voice-note{border:1px solid var(--line);border-radius:9px;padding:8px;margin-top:7px}
.message-box{display:grid;grid-template-columns:auto 1fr auto;gap:7px;padding:10px;border-top:1px solid var(--line);background:#fbfaf6}.attachment-actions{display:flex;gap:2px}.attachment-actions button,.message-box>button{border:0;background:none}.message-box input{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px;outline:none}.send-btn{background:var(--community)!important;color:#fff!important;border-radius:8px!important;padding:0 12px!important}.emoji-tray{position:absolute;left:12px;bottom:60px;border:1px solid var(--line);border-radius:9px;background:var(--paper);padding:5px}
.academy-workspace{display:grid;grid-template-columns:190px 1fr;gap:12px}.academy-side-note{background:#faf8f3;border:1px solid var(--line);border-radius:12px;padding:14px;align-self:start}.academy-side-note strong,.academy-side-note small{display:block}.academy-side-note strong{font-size:11px}.academy-side-note small{font-size:8px;color:var(--muted);margin-top:4px}.academy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.course-card{min-height:155px;padding:15px;display:flex;flex-direction:column}.course-card .phase{font-size:7px;color:var(--communityDeep);letter-spacing:1px}.course-card h3{font-family:'DM Sans';font-size:14px;line-height:1.15;font-weight:600;margin:12px 0 6px}.course-card p{font-size:9px;color:var(--muted);margin:0}.course-progress{height:4px;background:#eee9e0;border-radius:999px;overflow:hidden;margin-top:auto}.course-progress span{display:block;height:100%;background:var(--community)}.course-card small{font-size:7px;color:var(--muted);margin-top:6px}
.profile-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:15px;max-width:680px}.profile-card h2{font-family:'DM Sans';font-size:16px;font-weight:600;margin:0}.tag{font-size:7px}.more-label{font-size:7px;color:#999;letter-spacing:1.2px;margin:18px 0 6px}.menu-card{max-width:680px;overflow:hidden}.menu-card button{width:100%;display:grid;grid-template-columns:32px 1fr auto;gap:9px;align-items:center;border:0;border-bottom:1px solid var(--line);background:none;padding:12px 14px;text-align:left}.menu-card strong{display:block;font-size:10px}.menu-card small{font-size:8px;color:var(--muted)}
.admin-head h2{font-size:22px}.admin-tabs{display:flex;gap:6px;margin:14px 0}.admin-tabs button{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:7px 10px;font-size:8px}.admin-tabs .active{background:var(--ink);color:#fff}.admin-panel{display:none}.admin-panel.is-active{display:block}.members-table,.permission-matrix,.academy-builder{padding:10px}.member-row{display:grid;grid-template-columns:1.2fr .6fr .7fr .5fr;gap:8px;align-items:center;padding:9px 2px;border-bottom:1px solid var(--line)}.member-info{display:flex;align-items:center;gap:8px}.member-info strong,.member-info small{display:block}.member-info strong{font-size:9px}.member-info small{font-size:7px;color:var(--muted)}.role-badge{font-size:6px;border:1px solid var(--line);border-radius:999px;padding:4px 6px}.role-select,.permission-select{border:1px solid var(--line);border-radius:7px;background:#fff;padding:6px;font-size:8px}.matrix-head,.matrix-row{display:grid;grid-template-columns:1.2fr repeat(4,.8fr);gap:6px;align-items:center;padding:8px 2px;border-bottom:1px solid var(--line)}.matrix-head{font-size:6px;color:var(--muted)}.matrix-row strong{font-size:8px}.builder-folder{border-top:1px solid var(--line)}.builder-folder-head,.builder-course-head{display:flex;justify-content:space-between;align-items:center;padding:9px 0}.builder-course{padding-left:12px;border-top:1px solid #eee9e0}.builder-course h4{font-size:9px;margin:0}.builder-course small{font-size:7px;color:var(--muted)}.builder-actions button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:5px 6px;font-size:7px}
.modal{display:none;position:fixed;inset:0;background:rgba(20,20,18,.46);z-index:100;align-items:center;justify-content:center;padding:18px}.modal.open{display:flex}.modal-card{width:min(620px,100%);max-height:90vh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px}.modal-head{display:flex;justify-content:space-between}.modal-head h2{font-family:'DM Sans';font-size:18px;font-weight:600;margin:0}.modal form{display:grid;gap:12px;margin-top:16px}.modal label{font-size:8px;color:var(--muted)}.modal input,.modal textarea,.modal select{width:100%;margin-top:5px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.direction-row,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.direction{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px}.direction.long.is-active{background:#edf8f1;color:var(--green)}.direction.short.is-active{background:#fff0ed;color:var(--red)}
.auth-gate{position:fixed;inset:0;background:var(--cream);display:grid;place-items:center;z-index:200;padding:18px}.auth-gate.hidden{display:none}.auth-card{width:min(400px,100%);background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:26px;box-shadow:var(--shadow)}.auth-card .brand{margin-bottom:28px}.auth-card h1{font-family:'DM Sans';font-size:25px;font-weight:600;margin:0}.auth-card form{display:grid;gap:11px;margin:18px 0}.auth-card label{font-size:8px;color:var(--muted)}.auth-card input{width:100%;display:block;margin-top:5px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.mobile-nav{display:none}
@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.academy-workspace{grid-template-columns:1fr}.academy-side-note{display:none}.trade-grid,.academy-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){
 body{padding-bottom:68px}.rail{display:none}.content{margin-left:0;padding:13px 11px 84px}.topbar{min-height:auto;padding-bottom:11px}.topbar h1{font-size:20px}.dashboard-grid,.home-grid,.trade-grid,.academy-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(3,1fr);gap:7px}.stats-grid article{padding:10px}.stats-grid strong{font-size:19px}.community-layout{grid-template-columns:1fr}.channels{border-right:0;border-bottom:1px solid var(--line);display:flex;gap:5px;overflow:auto;padding:7px}.channels-head,.group{display:none}.channel{width:auto;min-width:max-content;border:1px solid var(--line);border-radius:999px;padding:7px 9px}.chat-tools{display:none}.messages{max-height:52vh}.message-box{grid-template-columns:1fr}.attachment-actions{overflow:auto}.message-box input,.send-btn{min-height:36px}.metrics{grid-template-columns:repeat(2,1fr)}.member-row{grid-template-columns:1fr 1fr}.member-row .role-badge{display:none}.matrix-head,.matrix-row{grid-template-columns:1.1fr repeat(4,.8fr)}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;height:67px;background:rgba(255,253,250,.97);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:70}.mobile-nav button{border:0;background:none;color:#817b74;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.mobile-nav button.is-active{color:var(--communityDeep)}.mobile-nav small{font-size:7px}
}

/* Functional UI v3 additions */
.tp-builder{border:1px solid var(--line);border-radius:10px;padding:12px}.tp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.tp-head small{font-size:8px;color:var(--muted)}.tp-row{display:grid;grid-template-columns:1fr 90px 32px;gap:8px;align-items:end;margin-top:8px}.tp-row>div{border:1px solid var(--line);border-radius:8px;padding:8px}.tp-row small{display:block;font-size:7px;color:var(--muted)}.tp-row strong{font-size:11px}.remove-tp{height:34px;border:1px solid var(--line);background:#fff;border-radius:8px}.trade-preview{display:flex;gap:18px;background:#f8f5ef;border:1px solid var(--line);border-radius:9px;padding:10px;font-size:9px}.trade-preview strong{margin-left:4px}.tp-chips{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.tp-chips span{font-size:7px;border:1px solid var(--line);border-radius:999px;padding:4px 6px;background:#fbf8f3}.closed-trade-line{font-size:9px;background:#f3f8f5;border-left:3px solid var(--green);padding:8px;margin:10px 0}.close-result-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px}.close-result-preview>div{border:1px solid var(--line);border-radius:9px;padding:12px}.close-result-preview small{display:block;font-size:7px;color:var(--muted)}.close-result-preview strong{font-size:20px}
.more-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.more-tile{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:16px;text-align:left}.more-tile:hover{border-color:var(--community);box-shadow:var(--shadow)}.more-icon{width:36px;height:36px;border-radius:9px;background:#f1e8df;display:grid;place-items:center;color:var(--communityDeep)}.more-tile strong,.more-tile small{display:block}.more-tile strong{font-size:11px}.more-tile small{font-size:8px;color:var(--muted);margin-top:2px}
.calendar-list{display:grid;gap:9px}.calendar-card{display:grid;grid-template-columns:90px 1fr auto;gap:14px;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px}.calendar-date{border-right:1px solid var(--line)}.calendar-date strong,.calendar-date span{display:block}.calendar-date strong{font-size:14px}.calendar-date span{font-size:9px;color:var(--muted)}.calendar-card small{font-size:7px;color:var(--communityDeep);text-transform:uppercase}.calendar-card h3{font-size:13px;margin:3px 0}.calendar-card p{font-size:9px;color:var(--muted);margin:0}.link-btn{text-decoration:none;display:inline-block}
.journal-toolbar{display:flex;gap:8px;margin-bottom:10px}.journal-toolbar input,.journal-toolbar select{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;font-size:9px}.journal-table-wrap{overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:12px}.journal-table{width:100%;border-collapse:collapse;min-width:760px}.journal-table th,.journal-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px;font-size:8px}.journal-table th{color:var(--muted);letter-spacing:.7px}.journal-table tr:last-child td{border-bottom:0}
.weekly-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px}.weekly-summary article{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:15px}.weekly-summary small{display:block;font-size:7px;color:var(--muted)}.weekly-summary strong{font-size:24px}.weekly-trade-list{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.weekly-trade-row{display:grid;grid-template-columns:1fr 100px 100px;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid var(--line)}.weekly-trade-row:last-child{border:0}.weekly-trade-row strong,.weekly-trade-row small{display:block}.weekly-trade-row strong{font-size:10px}.weekly-trade-row small{font-size:7px;color:var(--muted)}.weekly-trade-row span,.weekly-trade-row b{text-align:right;font-size:10px}.green{color:var(--green)}.red-text{color:var(--red)}.empty-state{padding:18px;color:var(--muted);font-size:9px}
.tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tool-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px}.tool-card h3{font-size:14px;margin:0 0 12px}.tool-form{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tool-form label{font-size:8px;color:var(--muted)}.tool-form input,.tool-form select{display:block;width:100%;margin-top:4px;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff}.tool-output{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}.tool-output small{display:block;font-size:7px;color:var(--muted)}.tool-output strong{font-size:26px;color:var(--communityDeep)}
.course-card-btn{cursor:pointer;text-align:left}.academy-course-detail{margin-top:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px}.academy-detail-head{display:flex;justify-content:space-between;align-items:flex-start}.academy-detail-head h3{font-size:14px;margin:0}.module-detail{border-top:1px solid var(--line);padding:10px 0}.module-detail>strong{font-size:10px}.lesson-detail-row{width:100%;display:flex;justify-content:space-between;border:0;background:none;border-top:1px solid #eee9e0;padding:8px 0;font-size:9px;text-align:left}.lesson-detail-row span{color:var(--muted)}
.module-admin{margin:8px 0 10px 16px;border-left:2px solid #eee5dc;padding-left:10px}.module-admin-head{display:flex;justify-content:space-between;align-items:center}.module-admin-head strong{font-size:9px}.lesson-admin-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee9e0;padding:7px 0;font-size:8px}.lesson-admin-row small{color:var(--muted);margin-left:5px}
@media(max-width:820px){.more-grid,.tools-grid{grid-template-columns:1fr}.calendar-card{grid-template-columns:70px 1fr}.calendar-card>div:last-child{grid-column:2}.weekly-summary{grid-template-columns:repeat(3,1fr)}.weekly-summary strong{font-size:18px}.tool-form{grid-template-columns:1fr}.tp-row{grid-template-columns:1fr 75px 32px}}

/* =========================================================
   COMMUNITY V1 — Discord/Slack-inspired workspace
   ========================================================= */
.community-v1-shell{
  height:calc(100vh - 120px);
  min-height:650px;
  display:grid;
  grid-template-columns:240px minmax(0,1fr) 220px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.community-left{
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  min-width:0;
  background:#f3f4f6;
  border-right:1px solid #dfe1e5;
}
.community-server-head{
  height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:0 12px;
  border-bottom:1px solid #dfe1e5;
}
.community-server-head strong,.community-server-head small{display:block}
.community-server-head strong{font-size:12px}
.community-server-head small{font-size:8px;color:#7b7f87;margin-top:2px}
.community-server-actions{display:flex;gap:3px}
.community-server-actions button{
  width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:#62666e;
}
.community-server-actions button:hover{background:#e4e6e9;color:#202124}
.community-channel-search{
  margin:8px 9px;
  height:30px;
  display:flex;align-items:center;
  padding:0 9px;
  border-radius:6px;
  background:#e5e7ea;
  color:#7e8289;
  font-size:9px;
}
.community-channel-list{overflow:auto;padding:2px 6px 12px}
.channel-category{margin-top:10px}
.channel-category-head{
  height:24px;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 4px 0 1px;
}
.category-toggle{
  flex:1;min-width:0;
  display:flex;align-items:center;gap:5px;
  border:0;background:none;padding:0;
  color:#777b82;text-align:left;
}
.category-toggle strong,.category-label{
  font-size:8px;letter-spacing:.75px;text-transform:uppercase;font-weight:600;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.category-add-channel{
  border:0;background:none;color:#777b82;width:24px;height:24px;border-radius:5px;
}
.category-add-channel:hover{background:#e1e3e6;color:#202124}
.channel-row-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.channel-row-actions{display:flex;align-items:center}
.channel{
  width:100%;
  height:32px;
  display:flex;align-items:center;gap:7px;
  border:0;border-radius:6px;background:transparent;
  color:#676b73;text-align:left;padding:0 7px;font-size:10px;
  min-width:0;
}
.channel:hover,.channel.is-active{background:#dcdee2;color:#202124}
.channel-icon{font-size:15px;color:#878b92}
.channel-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.channel-gear{
  visibility:hidden;
  width:23px;height:23px;border:0;background:none;border-radius:5px;color:#7d8188;font-size:10px;
}
.channel-row-wrap:hover .channel-gear{visibility:visible}
.channel-gear:hover{background:#d7d9dd;color:#202124}
.category-channel-list.hidden{display:none}
.community-userbar{
  display:grid;
  grid-template-columns:34px 1fr 28px;
  align-items:center;
  gap:8px;
  padding:8px;
  background:#e8eaed;
  border-top:1px solid #d8dade;
}
.community-user-meta{min-width:0}
.community-user-meta strong,.community-user-meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.community-user-meta strong{font-size:9px}.community-user-meta small{font-size:7px;color:#747981}
.community-userbar>button{border:0;background:none;color:#6f747c}

.community-center{
  min-width:0;
  min-height:0;
  display:grid;
  grid-template-rows:58px minmax(0,1fr) auto auto;
  background:#fff;
}
.community-channel-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  height:58px;padding:0 14px;
  border-bottom:1px solid #e4e5e7;
  box-shadow:0 1px 2px rgba(0,0,0,.02);
}
.community-channel-title{display:flex;align-items:center;gap:9px;min-width:0}
.community-hash{font-size:21px;color:#777c84}
.community-title-line{display:flex;align-items:center;gap:7px}
.community-title-line h2{margin:0;font-size:13px;font-weight:600}
.community-channel-title p{
  margin:2px 0 0;font-size:8px;color:#83878e;
  max-width:500px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.community-head-actions{display:flex;gap:3px}
.community-head-actions button{
  border:0;background:none;color:#60656d;width:30px;height:30px;border-radius:6px
}
.community-head-actions button:hover{background:#f0f1f3}
.community-messages{
  min-height:0;max-height:none;
  overflow:auto;
  padding:10px 0 14px;
}
.discord-message{
  position:relative;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:9px;
  padding:4px 14px 5px;
}
.discord-message:hover{background:#f7f7f8}
.discord-message .avatar{margin-top:2px}
.discord-message-body{min-width:0}
.message-meta{display:flex;align-items:baseline;gap:7px}
.message-meta strong{font-size:10px;color:#24262a}
.message-meta small{font-size:7px;color:#989ba1}
.message-text{font-size:10px;line-height:1.45;color:#31343a;margin-top:1px;word-break:break-word}
.message-hover-actions{
  display:none;position:absolute;right:12px;top:-10px;
  border:1px solid #dddfe2;border-radius:6px;background:#fff;
  box-shadow:0 3px 10px rgba(0,0,0,.08);overflow:hidden;
}
.discord-message:hover .message-hover-actions{display:flex}
.message-hover-actions button{
  width:30px;height:28px;border:0;background:#fff;color:#656a72;font-size:9px;
}
.message-hover-actions button:hover{background:#f2f3f5}
.discord-attachment{margin-top:6px;max-width:min(580px,90%)}
.image-attachment img,.video-attachment video{
  display:block;max-width:100%;max-height:460px;border-radius:5px;border:1px solid #e1e2e4
}
.discord-file{
  margin-top:6px;max-width:380px;display:flex;align-items:center;gap:9px;
  padding:9px;border:1px solid #e1e2e4;border-radius:6px;background:#f8f9fa
}
.discord-file strong,.discord-file small{display:block}
.discord-file strong{font-size:9px}.discord-file small{font-size:7px;color:#858a92}
.discord-voice-note{
  margin-top:6px;max-width:430px;display:flex;align-items:center;gap:8px;
  padding:7px 9px;border:1px solid #e1e2e4;border-radius:7px;background:#f8f9fa
}
.discord-voice-note audio{height:28px;max-width:300px}
.discord-voice-note small{font-size:7px;color:#7d828a}
.message-reactions{display:flex;align-items:center;gap:4px;margin-top:5px;flex-wrap:wrap}
.reaction-chip,.reaction-add{
  min-height:22px;border:1px solid #dfe1e4;border-radius:6px;background:#f4f5f6;
  color:#555a62;padding:2px 6px;font-size:8px
}
.reaction-chip:hover,.reaction-add:hover{border-color:#bfc2c7;background:#eceef0}
.channel-empty{padding:40px 20px 20px}.big-hash{width:55px;height:55px;border-radius:50%;background:#e8e9eb;display:grid;place-items:center;font-size:27px;color:#6d727a}.channel-empty h3{font-size:19px;margin:12px 0 4px}.channel-empty p{font-size:9px;color:#80858d}

.attachment-preview{padding:0 12px 7px}
.attachment-preview.hidden{display:none}
.pending-file-preview{
  max-width:430px;display:grid;grid-template-columns:52px 1fr 26px;align-items:center;gap:8px;
  padding:7px;border:1px solid #dddfe2;border-radius:7px;background:#f8f9fa
}
.pending-file-preview img,.pending-file-preview video{width:52px;height:46px;object-fit:cover;border-radius:4px}
.pending-file-preview strong,.pending-file-preview small{display:block}.pending-file-preview strong{font-size:8px}.pending-file-preview small{font-size:7px;color:#848991}
.pending-file-preview>button{border:0;background:none;font-size:15px;color:#777c84}

.community-composer-wrap{position:relative;padding:0 12px 13px}
.community-composer{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto;
  align-items:end;gap:3px;min-height:42px;
  background:#f0f1f3;border-radius:7px;padding:4px 5px
}
.composer-plus,.composer-right button{
  border:0;background:transparent;color:#676c74;border-radius:5px
}
.composer-plus{width:32px;height:32px;font-size:20px}
.composer-right{display:flex;align-items:center;gap:1px}
.composer-right button{height:32px;min-width:30px}
.composer-right .send-btn{
  background:#C86A3A;color:#fff;padding:0 10px;margin-left:3px
}
.community-composer textarea{
  resize:none;border:0;background:transparent;outline:none;
  min-height:32px;max-height:120px;padding:8px 5px;
  color:#2d3035;font-size:10px;line-height:1.4
}
.attach-menu{
  position:absolute;left:12px;bottom:58px;width:180px;
  border:1px solid #dcdfe2;border-radius:7px;background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.12);padding:5px;z-index:20
}
.attach-menu.hidden{display:none}
.attach-menu button{
  width:100%;display:grid;grid-template-columns:25px 1fr;gap:6px;
  border:0;background:none;border-radius:5px;padding:8px;text-align:left;color:#444950;font-size:9px
}
.attach-menu button:hover{background:#f0f1f3}
.community-emoji-tray{left:auto;right:60px;bottom:58px;z-index:20}

.community-members{
  min-width:0;background:#f6f7f8;border-left:1px solid #e0e1e3;
  overflow:auto;padding:0 9px 12px
}
.members-head{
  height:58px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid #e1e2e4;margin:0 -9px;padding:0 10px
}
.members-head strong{font-size:10px}.members-head button{display:none;border:0;background:none;font-size:18px}
.member-role-group>p{font-size:7px;letter-spacing:.8px;color:#8d9299;margin:14px 5px 6px}
.community-member-row{
  width:100%;display:grid;grid-template-columns:32px 1fr;gap:7px;align-items:center;
  border:0;background:none;border-radius:6px;padding:5px;text-align:left;color:#5e636a
}
.community-member-row:hover{background:#e9eaec}
.member-avatar-wrap{position:relative}
.member-avatar-wrap i{position:absolute;width:9px;height:9px;border:2px solid #f6f7f8;border-radius:50%;right:-1px;bottom:0}
.member-avatar-wrap i.online{background:#3ba55c}.member-avatar-wrap i.offline{background:#9ba0a8}
.community-member-row strong,.community-member-row small{display:block}
.community-member-row strong{font-size:9px}.community-member-row small{font-size:7px;color:#8b9097}

.community-create-tabs{display:flex;gap:5px;margin:14px 0}
.community-create-tabs button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 10px;font-size:8px}
.community-create-tabs button.active{background:var(--ink);color:#fff}
.community-modal-card form,.community-channel-settings form{display:grid;gap:10px}
.community-modal-card label,.community-channel-settings label{font-size:8px;color:var(--muted)}
.community-modal-card input,.community-modal-card select,.community-channel-settings input,.community-channel-settings select{
  display:block;width:100%;margin-top:4px;border:1px solid var(--line);border-radius:7px;padding:8px;background:#fff
}
.community-manage-modal{width:min(880px,95vw)}
.community-manage-layout{display:grid;grid-template-columns:240px 1fr;gap:12px;margin-top:14px;min-height:430px}
.community-manage-list{border:1px solid var(--line);border-radius:8px;padding:8px;overflow:auto}
.manage-category{margin-bottom:12px}.manage-category-title{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px;padding:5px}
.manage-category button{width:100%;border:0;background:none;border-radius:6px;padding:7px;text-align:left;font-size:9px}.manage-category button:hover{background:#f0f1f3}
.community-channel-settings{border:1px solid var(--line);border-radius:8px;padding:12px}
.permission-editor{border-top:1px solid var(--line);padding-top:10px;margin-top:4px}
.permission-editor-row{display:grid;grid-template-columns:1fr 130px;gap:8px;align-items:center;margin:6px 0}
.permission-editor-row strong{font-size:9px}
.community-settings-actions{display:flex;justify-content:space-between;gap:8px;margin-top:8px}
.hidden{display:none!important}

@media(max-width:1100px){
  .community-v1-shell{grid-template-columns:220px minmax(0,1fr)}
  .community-members{position:absolute;right:0;top:0;bottom:0;width:230px;z-index:40;transform:translateX(105%);transition:.22s ease;box-shadow:-10px 0 25px rgba(0,0,0,.08)}
  .community-members.mobile-open{transform:translateX(0)}
  .members-head button{display:block}
}
@media(max-width:820px){
  .community-v1-shell{height:calc(100vh - 155px);min-height:560px;grid-template-columns:1fr;position:relative}
  .community-left{
    position:absolute;left:0;top:0;bottom:0;width:235px;z-index:35;
    transform:translateX(-105%);transition:.22s ease;box-shadow:10px 0 25px rgba(0,0,0,.12)
  }
  .community-v1-shell.show-channels .community-left{transform:translateX(0)}
  .community-center{grid-column:1}
  .community-channel-head{height:52px;padding:0 9px}
  .community-channel-title p{display:none}
  .community-messages{padding-top:7px}
  .discord-message{padding-left:9px;padding-right:9px}
  .community-composer-wrap{padding-left:8px;padding-right:8px}
  .community-manage-layout{grid-template-columns:1fr}
}

/* =========================================================
   COMMUNITY 1.1
   ========================================================= */
.server-menu-trigger{
  flex:1;min-width:0;height:100%;
  display:flex;align-items:center;justify-content:space-between;
  border:0;background:none;text-align:left;padding:0;
}
.server-menu-trigger strong,.server-menu-trigger small{display:block}
.server-menu{
  position:absolute;left:8px;top:63px;width:205px;
  z-index:70;background:#fff;border:1px solid #d9dce0;border-radius:8px;
  padding:5px;box-shadow:0 12px 32px rgba(0,0,0,.14)
}
.community-left{position:relative}
.server-menu button{
  width:100%;height:34px;display:grid;grid-template-columns:26px 1fr;align-items:center;
  border:0;background:none;border-radius:6px;text-align:left;color:#3f444c;font-size:9px
}
.server-menu button:hover{background:#f0f1f3}.menu-sep{height:1px;background:#e3e5e7;margin:4px 5px}
.channel-unread-badge{
  margin-left:auto;min-width:17px;height:17px;padding:0 4px;border-radius:999px;
  display:grid;place-items:center;background:#C86A3A;color:#fff;font-size:7px
}
.reply-reference{
  max-width:620px;display:flex;align-items:center;gap:5px;
  border:0;background:none;padding:0 0 3px;color:#7c8189;font-size:8px;text-align:left
}
.reply-reference strong{color:#555a61;font-size:8px}.reply-reference span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reply-composer-bar{
  display:flex;justify-content:space-between;align-items:center;
  background:#e7e8ea;border-radius:7px 7px 0 0;padding:7px 9px;margin-bottom:-2px
}
.reply-composer-bar>div{display:flex;align-items:center;gap:5px;min-width:0}
.reply-composer-bar small{font-size:7px;color:#777c83}.reply-composer-bar strong{font-size:8px}.reply-composer-bar span{font-size:8px;color:#777c83;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reply-composer-bar button{border:0;background:none}
.pinned-tag{font-size:6px;color:#9a6d39;background:#fff4e8;border-radius:4px;padding:2px 4px}
.discord-message.is-pinned{background:#fffaf4}
.mention{display:inline-block;padding:0 3px;border-radius:3px;background:#e6e0fa;color:#55458a;font-weight:600}
.message-highlight{animation:messageFlash 1.6s ease}@keyframes messageFlash{0%,100%{background:transparent}20%,65%{background:#fff1df}}
.compact-community .discord-message{padding-top:1px;padding-bottom:2px}.compact-community .discord-message .avatar{width:28px;height:28px}
.community-drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.12);z-index:79}
.community-side-drawer{
  position:fixed;right:0;top:0;bottom:0;width:min(390px,92vw);z-index:80;
  transform:translateX(105%);transition:.22s ease;background:#fff;
  border-left:1px solid #dddfe2;box-shadow:-8px 0 25px rgba(0,0,0,.1);
  display:grid;grid-template-rows:auto auto 1fr
}
.community-side-drawer.open{transform:translateX(0)}
.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:1px solid #e2e4e7}
.drawer-header strong{font-size:11px}.drawer-header button{border:0;background:none;font-size:18px}
.drawer-search-box{padding:10px}.drawer-search-box input{width:100%;border:1px solid #dddfe2;border-radius:7px;padding:9px}
.drawer-results{overflow:auto;padding:8px}
.drawer-message-result{
  width:100%;border:0;border-bottom:1px solid #eceef0;background:none;padding:10px 6px;text-align:left
}
.drawer-message-result:hover{background:#f6f7f8}.drawer-message-result strong,.drawer-message-result small{display:block}.drawer-message-result strong{font-size:9px}.drawer-message-result small{font-size:7px;color:#8a8f96}.drawer-message-result p{font-size:9px;line-height:1.4;margin:4px 0;color:#555a61}.drawer-empty{padding:18px;color:#8b9097;font-size:9px}
.account-settings-modal{width:min(880px,96vw);padding:0;overflow:hidden}
.settings-layout{display:grid;grid-template-columns:220px 1fr;min-height:580px}
.settings-nav{padding:18px 10px;background:#f1f2f4;border-right:1px solid #dcdee1}
.settings-profile-card{display:flex;align-items:center;gap:8px;padding:8px 8px 16px;border-bottom:1px solid #dcdfe2;margin-bottom:10px}.settings-profile-card strong,.settings-profile-card small{display:block}.settings-profile-card strong{font-size:10px}.settings-profile-card small{font-size:7px;color:#858a92}
.settings-nav-btn{width:100%;border:0;background:none;border-radius:7px;padding:9px;text-align:left;color:#62676f;font-size:9px}.settings-nav-btn.active,.settings-nav-btn:hover{background:#e2e4e7;color:#202124}
.settings-content{padding:20px;overflow:auto}.settings-content-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:15px}.settings-content-head h2{font-size:17px;margin:0}.settings-content-head button{border:0;background:none;font-size:20px}
.settings-panel{display:none}.settings-panel.active{display:grid;gap:12px}.settings-panel label{font-size:8px;color:var(--muted)}.settings-panel input[type=text],.settings-panel input:not([type]),.settings-panel textarea,.settings-panel label>input{width:100%;display:block;margin-top:5px;border:1px solid var(--line);border-radius:7px;padding:9px;background:#fff}.settings-panel textarea{min-height:90px}
.setting-row{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:10px 0}.setting-row strong,.setting-row small{display:block}.setting-row strong{font-size:9px}.setting-row small{font-size:7px;color:var(--muted);margin-top:2px}
.community-members.members-hidden{display:none}
@media(max-width:820px){.settings-layout{grid-template-columns:1fr}.settings-nav{display:flex;overflow:auto;border-right:0;border-bottom:1px solid #dcdee1}.settings-profile-card{display:none}.settings-nav-btn{min-width:max-content}.account-settings-modal{height:94vh}.server-menu{top:58px}}

/* =========================================================
   COMMUNITY 1.2
   ========================================================= */
.channel-bell{
  visibility:hidden;width:23px;height:23px;border:0;background:none;border-radius:5px;color:#7d8188;font-size:9px
}
.channel-row-wrap:hover .channel-bell{visibility:visible}
.channel-bell:hover{background:#d7d9dd;color:#202124}
.mobile-channels-btn{display:none;border:0;background:none;font-size:16px;color:#666b73;padding:0}
.typing-indicator{height:16px;padding:1px 8px 0;font-size:7px;color:#777c84}
.mention-autocomplete{
  position:absolute;left:45px;bottom:58px;width:250px;z-index:25;
  background:#fff;border:1px solid #d9dce0;border-radius:8px;
  box-shadow:0 8px 24px rgba(0,0,0,.12);padding:5px
}
.mention-autocomplete button{
  width:100%;display:grid;grid-template-columns:30px 1fr;gap:7px;align-items:center;
  border:0;background:none;border-radius:6px;padding:6px;text-align:left
}
.mention-autocomplete button:hover{background:#f0f1f3}
.mention-autocomplete strong,.mention-autocomplete small{display:block}
.mention-autocomplete strong{font-size:9px}.mention-autocomplete small{font-size:7px;color:#858a92}
.community-center.drag-active::after{
  content:"Drop file to upload";
  position:absolute;inset:10px;z-index:50;
  display:grid;place-items:center;
  border:2px dashed #C86A3A;border-radius:10px;
  background:rgba(255,253,250,.92);
  color:#A8532D;font-size:14px;font-weight:600;
  pointer-events:none
}
.community-center{position:relative}
.small-modal-card{width:min(430px,92vw)}
.radio-setting{
  display:grid!important;grid-template-columns:22px 1fr;gap:8px;align-items:flex-start;
  border:1px solid var(--line);border-radius:8px;padding:10px!important;margin-bottom:8px
}
.radio-setting input{margin-top:3px}
.radio-setting strong,.radio-setting small{display:block}
.radio-setting strong{font-size:9px}.radio-setting small{font-size:7px;color:var(--muted);margin-top:2px}
.notification-pref-editor{border-top:1px solid var(--line);padding-top:10px;margin-top:4px}
.notification-pref-editor select{width:100%;border:1px solid var(--line);border-radius:7px;padding:8px;background:#fff}
@media(max-width:820px){
  .mobile-channels-btn{display:inline-block}
  .community-left{transform:translateX(-105%)}
  .community-v1-shell.show-channels .community-left{transform:translateX(0)}
  .mention-autocomplete{left:8px;right:8px;width:auto}
}

/* =========================================================
   COMMUNITY 1.3 MOBILE INTERACTIONS
   ========================================================= */
.category-admin-actions{display:flex;align-items:center}
.category-delete{
  border:0;background:none;color:#8b8f96;width:22px;height:22px;border-radius:5px;font-size:12px
}
.category-delete:hover{background:#e1e3e6;color:#b33b32}
.send-arrow{display:none}.send-btn.has-content .send-label{display:inline}
.message-action-backdrop{
  position:fixed;inset:0;background:rgba(0,0,0,.42);z-index:118
}
.message-action-sheet{
  position:fixed;left:0;right:0;bottom:0;z-index:119;
  transform:translateY(105%);transition:.2s ease;
  background:#fff;border-radius:26px 26px 0 0;padding:10px 14px calc(18px + env(safe-area-inset-bottom));
  max-height:86vh;overflow:auto;
}
.message-action-sheet.open{transform:translateY(0)}
.action-sheet-handle{width:52px;height:5px;border-radius:999px;background:#e2e3e6;margin:2px auto 14px}
.quick-reaction-row{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:14px}
.quick-reaction-row button{
  height:52px;border:0;border-radius:12px;background:#f2f2f3;font-size:24px
}
.action-sheet-list{
  border-radius:16px;background:#f7f7f8;overflow:hidden
}
.action-sheet-list button{
  width:100%;height:54px;display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;
  border:0;border-bottom:1px solid #e0e1e4;background:transparent;text-align:left;padding:0 16px;color:#292c31
}
.action-sheet-list button:last-child{border-bottom:0}
.action-sheet-list button span{font-size:20px}.action-sheet-list button strong{font-size:13px;font-weight:500}
.action-sheet-list .danger-action{color:#c33e35}
.forward-preview{
  margin:12px 0;border:1px solid var(--line);border-radius:8px;padding:10px;background:#faf9f6
}
.forward-preview strong{font-size:9px}.forward-preview p{font-size:9px;color:var(--muted)}
@media(max-width:820px){
  .community-left{will-change:transform}
  .community-composer{grid-template-columns:34px minmax(0,1fr) auto}
  .composer-right .send-label{display:none}
  .composer-right .send-arrow{display:block;font-size:17px;line-height:1}
  .composer-right .send-btn{
    width:38px;height:38px;padding:0!important;border-radius:10px!important;
    display:grid;place-items:center;
    opacity:0;transform:scale(.82);pointer-events:none;transition:.16s ease
  }
  .composer-right .send-btn.has-content{
    opacity:1;transform:scale(1);pointer-events:auto;background:#5266f0!important
  }
  .message-action-sheet.hidden,.message-action-backdrop.hidden{display:none}
}
@media(min-width:821px){
  .message-action-sheet,.message-action-backdrop{display:none!important}
}

/* =========================================================
   COMMUNITY 1.3.1 — REAL MOBILE LAYOUT / DESKTOP TEST MODE
   Final overrides intentionally live at end of file.
   ========================================================= */
@media(max-width:820px){
  /* The old app shell was consuming most of the narrow viewport. */
  .content{
    margin-left:0;
    padding:0 0 67px!important;
  }
  .topbar{display:none!important}
  #community.screen.is-active{
    display:block;
    margin:0;
    width:100%;
  }

  .community-v1-shell{
    width:100%;
    height:calc(100dvh - 67px)!important;
    min-height:0!important;
    border:0!important;
    border-radius:0!important;
    grid-template-columns:1fr!important;
    overflow:hidden;
    background:#fff;
  }

  .community-center{
    width:100%;
    height:100%;
    min-width:0;
    min-height:0;
    grid-template-rows:58px minmax(0,1fr) auto auto!important;
  }

  .community-channel-head{
    height:58px!important;
    padding:0 12px!important;
    background:#fff;
    position:relative;
    z-index:5;
  }
  .community-title-line h2{font-size:16px!important}
  .community-hash{font-size:22px!important}
  .permission-chip{font-size:8px!important}
  .community-head-actions button{width:36px;height:36px;font-size:16px}

  .community-messages{
    width:100%;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
    overflow-x:hidden;
    padding:10px 0 16px!important;
    -webkit-overflow-scrolling:touch;
    background:#fff;
  }

  .discord-message{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:10px!important;
    padding:7px 14px 8px!important;
  }
  .discord-message .avatar{
    width:40px!important;
    height:40px!important;
    font-size:12px!important;
  }
  .message-meta strong{font-size:14px!important}
  .message-meta small{font-size:10px!important}
  .message-text{
    font-size:15px!important;
    line-height:1.42!important;
    color:#25272b!important;
    margin-top:3px!important;
    overflow-wrap:anywhere;
  }
  .reply-reference{
    font-size:11px!important;
    max-width:100%!important;
  }
  .reply-reference strong{font-size:11px!important}
  .reaction-chip,.reaction-add{
    min-height:30px!important;
    padding:4px 9px!important;
    font-size:13px!important;
    border-radius:8px!important;
  }

  .community-left{
    width:260px!important;
    height:100%;
    z-index:65!important;
    background:#f3f4f6;
    box-shadow:8px 0 24px rgba(0,0,0,.12);
  }
  .community-v1-shell.show-channels .community-left{
    transform:translateX(0);
  }
  .community-server-head{height:58px}
  .community-channel-search{height:36px;font-size:12px}
  .category-toggle strong,.category-label{font-size:10px!important}
  .channel{height:38px!important;font-size:13px!important}
  .channel-icon{font-size:18px!important}
  .community-user-meta strong{font-size:12px!important}
  .community-user-meta small{font-size:10px!important}

  .community-composer-wrap{
    padding:5px 10px calc(8px + env(safe-area-inset-bottom))!important;
    background:#fff;
  }
  .typing-indicator{
    height:18px!important;
    padding:2px 6px!important;
    font-size:10px!important;
  }
  .community-composer{
    min-height:50px!important;
    border-radius:15px!important;
    padding:5px 7px!important;
    background:#f0f1f3!important;
  }
  .community-composer textarea{
    min-height:38px!important;
    max-height:110px!important;
    padding:9px 5px!important;
    font-size:16px!important;
    line-height:1.3!important;
  }
  .composer-plus{
    width:38px!important;height:38px!important;font-size:26px!important;
  }
  .composer-right button:not(.send-btn){
    width:36px!important;height:38px!important;font-size:18px!important;
  }
  .composer-right .send-btn{
    width:40px!important;height:40px!important;border-radius:12px!important;
  }

  .channel-empty{padding:48px 22px!important}
  .channel-empty h3{font-size:23px!important}
  .channel-empty p{font-size:14px!important}

  /* Make the simulated mobile viewport behave like an app, not a tiny desktop page. */
  html,body{width:100%;overflow-x:hidden}
}

/* Narrow-window test helper: the pointer can be dragged from the left 55px
   just like a finger swipe. */
@media(max-width:820px) and (hover:hover){
  .community-center{cursor:default}
}

/* =========================================================
   COMMUNITY 1.4 — DISCORD-LIKE COMMUNITY MODE
   Community becomes its own full-screen workspace.
   ========================================================= */
body.community-active{overflow:hidden;background:#fff}
body.community-active .rail,
body.community-active .topbar,
body.community-active .mobile-nav{display:none!important}
body.community-active .content{margin:0!important;padding:0!important;width:100%!important;height:100dvh!important;overflow:hidden!important}
body.community-active #community.screen.is-active{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:50!important;background:#fff!important;margin:0!important;padding:0!important;overflow:hidden!important}
body.community-active .community-v1-shell{width:100vw!important;height:100dvh!important;min-height:0!important;border:0!important;border-radius:0!important;grid-template-columns:280px minmax(0,1fr) 240px!important;background:#fff!important}

/* overall Discord-ish neutral visual language */
body.community-active .community-left{background:#f2f3f5!important;border-right:1px solid #e0e1e4!important}
body.community-active .community-server-head{height:54px!important;background:#f7f7f8!important;border-bottom:1px solid #dcdfe2!important;padding:0 10px!important}
body.community-active .server-menu-trigger strong{font-size:14px!important;color:#232428}
body.community-active .server-menu-trigger small{display:none!important}
body.community-active .community-channel-search{height:34px!important;margin:8px!important;background:#e3e5e8!important;border-radius:6px!important;font-size:11px!important;color:#62676f!important}
body.community-active .mobile-back-to-app{display:block;width:calc(100% - 16px);margin:0 8px 6px;border:0;background:transparent;color:#6b7078;text-align:left;border-radius:6px;padding:7px 9px;font-size:10px}
body.community-active .mobile-back-to-app:hover{background:#e3e5e8;color:#232428}
body.community-active .channel-category{margin-top:8px!important}
body.community-active .category-toggle strong,body.community-active .category-label{font-size:10px!important;letter-spacing:.2px!important;color:#6d727a!important}
body.community-active .channel{height:34px!important;border-radius:5px!important;padding:0 7px!important;font-size:12px!important;color:#5f646c!important}
body.community-active .channel:hover{background:#e3e5e8!important;color:#2b2d31!important}
body.community-active .channel.is-active{background:#dfe1e5!important;color:#1e1f22!important;font-weight:600}
body.community-active .channel-icon{font-size:18px!important;color:#7b8088!important}
body.community-active .community-userbar{background:#e8e9ec!important;border-top:1px solid #d8dade!important;min-height:54px!important}
body.community-active .community-userbar .avatar{background:#fff!important}

body.community-active .community-center{grid-template-rows:54px minmax(0,1fr) auto auto!important;background:#fff!important;height:100dvh!important;min-height:0!important}
body.community-active .community-channel-head{height:54px!important;padding:0 14px!important;background:#fff!important;border-bottom:1px solid #e1e2e4!important;box-shadow:0 1px 0 rgba(0,0,0,.02)!important}
body.community-active .community-hash{font-size:22px!important;color:#666b73!important}
body.community-active .community-title-line h2{font-size:15px!important;color:#222428!important}
body.community-active .permission-chip{display:none!important}
body.community-active .community-channel-title p{font-size:9px!important;color:#7b8088!important;margin-top:1px!important}
body.community-active .community-head-actions button{font-size:15px!important;color:#5f646c!important}
body.community-active .community-head-actions button:hover{background:#f0f1f3!important}
body.community-active .community-messages{max-height:none!important;min-height:0!important;overflow-y:auto!important;padding:12px 0 18px!important;background:#fff!important}
body.community-active .discord-message{grid-template-columns:42px minmax(0,1fr)!important;gap:10px!important;padding:4px 16px 5px!important}
body.community-active .discord-message:hover{background:#f6f6f7!important}
body.community-active .discord-message .avatar{width:40px!important;height:40px!important;background:#fafafa!important;border-color:#e0ddd6!important}
body.community-active .message-meta strong{font-size:13px!important;color:#232428!important}
body.community-active .message-meta small{font-size:9px!important;color:#8a8f96!important}
body.community-active .message-text{font-size:13px!important;line-height:1.42!important;color:#313338!important;margin-top:2px!important}
body.community-active .reply-reference{font-size:10px!important;color:#777d85!important}
body.community-active .reply-reference strong{font-size:10px!important;color:#4f545c!important}
body.community-active .reaction-chip,body.community-active .reaction-add{background:#f1f2f4!important;border-color:#e0e1e4!important;border-radius:7px!important;font-size:10px!important}
body.community-active .discord-message.is-pinned{background:#fff8eb!important;border-left:2px solid #e9b949!important}

body.community-active .community-composer-wrap{padding:0 14px 16px!important;background:#fff!important}
body.community-active .typing-indicator{height:18px!important;font-size:9px!important;color:#727780!important;padding-left:8px!important}
body.community-active .community-composer{min-height:44px!important;background:#eff0f2!important;border-radius:8px!important;padding:5px 7px!important}
body.community-active .community-composer textarea{font-size:13px!important;min-height:34px!important;padding:8px 6px!important;color:#313338!important}
body.community-active .composer-plus{font-size:22px!important;color:#646a73!important}
body.community-active .composer-right button{color:#646a73!important}
body.community-active .send-btn{background:#5865f2!important}
body.community-active .send-btn.has-content{background:#5865f2!important}

body.community-active .community-members{background:#f2f3f5!important;border-left:1px solid #e0e1e4!important;padding:0 10px 14px!important}
body.community-active .members-head{height:54px!important;background:#f7f7f8!important}
body.community-active .member-role-group>p{font-size:9px!important;color:#7c8188!important}
body.community-active .community-member-row{grid-template-columns:34px 1fr!important;padding:6px!important}
body.community-active .community-member-row strong{font-size:11px!important;color:#4a4e55!important}
body.community-active .community-member-row small{font-size:8px!important}

/* full emoji picker */
.community-emoji-tray{position:absolute;right:12px;bottom:66px;width:min(360px,calc(100vw - 24px));height:430px;background:#fff;border:1px solid #d9dce0;border-radius:12px;box-shadow:0 14px 36px rgba(0,0,0,.18);z-index:90;overflow:hidden}
.community-emoji-tray.hidden{display:none!important}
.emoji-picker-head{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-bottom:1px solid #e3e5e8}
.emoji-picker-head strong{font-size:12px}.emoji-picker-head button{border:0;background:none;font-size:19px;color:#6c7179}
#fullEmojiPicker{width:100%;height:388px;--background:#fff;--border-color:transparent;--input-border-color:#dddfe2;--input-font-color:#333;--category-font-color:#61666e;--indicator-color:#5865f2}
.emoji-fallback{height:388px;overflow:auto;padding:8px;display:grid;grid-template-columns:repeat(8,1fr);gap:3px}
.emoji-fallback button{border:0;background:none;border-radius:6px;font-size:23px;height:38px}.emoji-fallback button:hover{background:#f0f1f3}

/* Desktop server menu more like Discord */
body.community-active .server-menu{top:58px!important;width:250px!important;border-radius:8px!important;padding:6px!important}
body.community-active .server-menu button{height:38px!important;font-size:11px!important}

/* True Discord-like mobile community: full screen, no app chrome */
@media(max-width:820px){
  body.community-active #community.screen.is-active{position:fixed!important;inset:0!important;height:100dvh!important}
  body.community-active .community-v1-shell{height:100dvh!important;grid-template-columns:1fr!important;position:relative!important}
  body.community-active .community-center{height:100dvh!important;grid-template-rows:62px minmax(0,1fr) auto auto!important;width:100vw!important}
  body.community-active .community-channel-head{height:62px!important;padding:0 14px!important}
  body.community-active .mobile-channels-btn{display:block!important;font-size:28px!important;width:34px!important;color:#666b73!important}
  body.community-active .community-hash{font-size:24px!important}
  body.community-active .channel-heading-copy{min-width:0}
  body.community-active .community-title-line h2{font-size:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55vw}
  body.community-active .community-channel-title p{display:none!important}
  .mobile-online-line{display:flex!important;align-items:center;gap:6px;margin-top:1px;font-size:10px;color:#767b83}
  .mobile-online-line i{width:8px;height:8px;border-radius:50%;background:#23a559}
  body.community-active .community-head-actions #toggleMembersBtn,body.community-active .community-head-actions #pinnedMessagesBtn{display:none!important}
  body.community-active .community-head-actions #channelSearchBtn{font-size:24px!important;width:38px!important;height:38px!important}
  body.community-active .community-messages{padding:10px 0 12px!important}
  body.community-active .discord-message{grid-template-columns:44px minmax(0,1fr)!important;padding:7px 14px 8px!important;gap:11px!important}
  body.community-active .discord-message .avatar{width:42px!important;height:42px!important}
  body.community-active .message-meta strong{font-size:15px!important}
  body.community-active .message-meta small{font-size:10px!important}
  body.community-active .message-text{font-size:16px!important;line-height:1.38!important}
  body.community-active .reply-reference{font-size:12px!important}
  body.community-active .reply-reference strong{font-size:12px!important}
  body.community-active .reaction-chip,body.community-active .reaction-add{min-height:32px!important;font-size:14px!important;padding:4px 10px!important}
  body.community-active .community-composer-wrap{padding:5px 10px calc(10px + env(safe-area-inset-bottom))!important}
  body.community-active .community-composer{min-height:54px!important;border-radius:18px!important;padding:6px 8px!important}
  body.community-active .community-composer textarea{font-size:16px!important;min-height:40px!important;padding:10px 5px!important}
  body.community-active .composer-plus{font-size:28px!important;width:38px!important;height:40px!important}
  body.community-active .composer-right button:not(.send-btn){font-size:21px!important;width:38px!important;height:40px!important}
  body.community-active .composer-right .send-btn{width:42px!important;height:42px!important;border-radius:12px!important}
  body.community-active .community-left{position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:min(86vw,340px)!important;height:100dvh!important;z-index:95!important;transform:translateX(-105%);box-shadow:12px 0 30px rgba(0,0,0,.18)!important}
  body.community-active .community-v1-shell.show-channels .community-left{transform:translateX(0)}
  body.community-active .community-server-head{height:64px!important}
  body.community-active .server-menu-trigger strong{font-size:17px!important}
  body.community-active .community-channel-search{height:40px!important;font-size:13px!important}
  body.community-active .mobile-back-to-app{font-size:12px!important;padding:8px 9px!important}
  body.community-active .category-toggle strong,body.community-active .category-label{font-size:12px!important}
  body.community-active .channel{height:42px!important;font-size:15px!important}
  body.community-active .channel-icon{font-size:21px!important}
  body.community-active .community-userbar{min-height:68px!important;padding:9px 10px!important}
  body.community-active .community-user-meta strong{font-size:14px!important}
  body.community-active .community-user-meta small{font-size:11px!important}
  body.community-active .community-members{position:absolute!important;right:0!important;top:0!important;bottom:0!important;width:min(82vw,330px)!important;z-index:96!important;transform:translateX(105%);box-shadow:-10px 0 28px rgba(0,0,0,.16)!important}
  body.community-active .community-members.mobile-open{transform:translateX(0)}
  .community-emoji-tray{position:fixed!important;left:8px!important;right:8px!important;bottom:8px!important;width:auto!important;height:min(72dvh,570px)!important;border-radius:18px!important;z-index:120!important}
  #fullEmojiPicker{height:calc(min(72dvh,570px) - 42px)!important}
  .emoji-fallback{height:calc(min(72dvh,570px) - 42px)!important;grid-template-columns:repeat(7,1fr)!important}
}

/* =========================================================
   COMMUNITY 1.5 — DISCORD INTERACTION POLISH
   ========================================================= */
body.community-active .mobile-back-to-app{
  width:auto!important;display:inline-flex!important;align-items:center!important;
  margin:2px 8px 6px!important;padding:3px 6px!important;
  font-size:8px!important;line-height:1!important;color:#8a8f96!important;
  background:transparent!important;border:0!important;border-radius:4px!important;
}
body.community-active .mobile-back-to-app:hover{color:#4d525a!important;background:#e5e7ea!important}
body.community-active .message-hover-actions{right:14px!important;top:-11px!important;border:1px solid #d9dce0!important;border-radius:7px!important;background:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.10)!important}
body.community-active .message-hover-actions .message-more-btn{width:38px!important;height:30px!important;font-size:18px!important;letter-spacing:2px!important;display:grid!important;place-items:center!important;color:#5f646c!important}
.desktop-message-menu{position:fixed;z-index:130;width:280px;background:#fff;border:1px solid #d9dce0;border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.16);padding:7px}
.desktop-message-menu.hidden{display:none!important}.desktop-quick-reactions{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:2px 2px 7px}
.desktop-quick-reactions button{height:40px;border:0;border-radius:8px;background:#f1f2f4;font-size:20px}.desktop-quick-reactions button:hover{background:#e5e7ea;transform:translateY(-1px)}
.desktop-menu-list button{width:100%;height:38px;display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;border:0;border-radius:6px;background:transparent;text-align:left;padding:0 9px;color:#303339}
.desktop-menu-list button:hover{background:#5865f2;color:#fff}.desktop-menu-list button.danger-action{color:#c63d36}.desktop-menu-list button.danger-action:hover{background:#c63d36;color:#fff}
.desktop-menu-list strong{font-size:11px;font-weight:500}.ctx-icon{font-size:17px;text-align:center}.ctx-sep{height:1px;background:#e5e6e8;margin:5px 3px}
@media(max-width:820px){
  body.community-active .community-left{width:100vw!important;max-width:none!important;height:100dvh!important;border-right:0!important;box-shadow:none!important}
  body.community-active .community-v1-shell.show-channels .community-left{transform:translateX(0)}
  body.community-active .mobile-back-to-app{font-size:9px!important;margin:1px 10px 4px!important;padding:3px 5px!important;opacity:.72!important}
  body.community-active .community-channel-search{margin-left:10px!important;margin-right:10px!important}
  body.community-active .community-userbar{padding-bottom:calc(10px + env(safe-area-inset-bottom))!important}
  .message-action-sheet{max-height:94dvh!important;min-height:58dvh!important;height:68dvh;border-radius:24px 24px 0 0!important;padding:8px 14px calc(16px + env(safe-area-inset-bottom))!important;overscroll-behavior:contain;touch-action:none}
  .message-action-sheet.dragging{transition:none!important}.action-sheet-handle{width:44px!important;height:5px!important;margin:1px auto 12px!important;background:#dfe1e4!important;cursor:grab}
  .quick-reaction-row{grid-template-columns:repeat(7,1fr)!important;gap:7px!important;margin-bottom:12px!important}.quick-reaction-row button{height:50px!important;border-radius:11px!important;background:#f1f2f4!important;font-size:23px!important}
  .action-sheet-list{border-radius:16px!important;background:#f7f7f8!important;margin-bottom:12px!important}.action-sheet-list button{height:56px!important;grid-template-columns:38px 1fr!important;padding:0 17px!important}
  .action-sheet-list button span{font-size:22px!important;color:#34373d!important}.action-sheet-list button strong{font-size:15px!important;font-weight:500!important}.action-sheet-list .danger-action span,.action-sheet-list .danger-action strong{color:#c63d36!important}
  .desktop-message-menu{display:none!important}
}


/* =========================================================
   COMMUNITY 1.5.1 — USER FEEDBACK FIXES
   ========================================================= */
/* Sidebar structure: Back to GCA gets its own tiny row instead of consuming
   the flexible channel-list row. */
body.community-active .community-left{
  grid-template-rows:auto auto auto minmax(0,1fr) auto!important;
}
body.community-active .mobile-back-to-app{
  display:block!important;
  width:auto!important;
  margin:0 12px 5px!important;
  padding:2px 0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  color:#70757d!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-align:left!important;
}
body.community-active .mobile-back-to-app:hover{background:transparent!important;color:#232428!important;text-decoration:underline}
body.community-active .community-channel-list{min-height:0!important;overflow-y:auto!important}

/* Channel changes should visually feel immediate. */
body.community-active .community-left.channel-select-closing{transition:transform .22s cubic-bezier(.2,.8,.2,1)!important;will-change:transform}
.channel-loading{height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;gap:6px}
.channel-loading span{width:7px;height:7px;border-radius:50%;background:#b5b8be;animation:gcaChannelLoading .9s infinite ease-in-out}
.channel-loading span:nth-child(2){animation-delay:.12s}.channel-loading span:nth-child(3){animation-delay:.24s}
@keyframes gcaChannelLoading{0%,80%,100%{transform:scale(.7);opacity:.45}40%{transform:scale(1);opacity:1}}

/* Desktop: the three dots are the only hover affordance. */
@media(min-width:821px){
  body.community-active .message-hover-actions{display:none}
  body.community-active .discord-message:hover .message-hover-actions{display:flex}
  body.community-active .message-more-btn{display:grid!important}
}
/* Mobile: long press only — never show the three dots. */
@media(max-width:820px){
  body.community-active .mobile-back-to-app{display:none!important}
  body.community-active .community-left{
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
    width:100vw!important;max-width:none!important;
  }
  body.community-active .message-hover-actions,
  body.community-active .message-more-btn{display:none!important}
}

/* Reliable, built-in full emoji browser — no external CDN dependency. */
.community-emoji-tray{display:grid;grid-template-rows:42px 42px 38px minmax(0,1fr)}
.community-emoji-tray.hidden{display:none!important}
.emoji-search-wrap{margin:6px 9px;display:flex;align-items:center;gap:7px;background:#f1f2f4;border-radius:7px;padding:0 9px;color:#777c84}
.emoji-search-wrap input{width:100%;height:30px;border:0;outline:0;background:transparent;font:inherit;font-size:11px;color:#2b2d31}
.emoji-category-tabs{display:flex;align-items:center;gap:2px;padding:0 7px;border-bottom:1px solid #e3e5e8;overflow-x:auto;scrollbar-width:none}
.emoji-category-tabs::-webkit-scrollbar{display:none}
.emoji-category-tabs button{flex:0 0 auto;width:34px;height:32px;border:0;border-radius:6px;background:transparent;font-size:18px;opacity:.72}
.emoji-category-tabs button:hover,.emoji-category-tabs button.active{background:#eceef0;opacity:1}
.emoji-browser{overflow-y:auto;padding:8px;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));align-content:start;gap:3px}
.emoji-browser button{height:38px;border:0;background:transparent;border-radius:7px;font-size:23px;line-height:1;display:grid;place-items:center}
.emoji-browser button:hover{background:#f0f1f3;transform:scale(1.08)}
#fullEmojiPicker,.emoji-fallback{display:none!important}
@media(max-width:820px){
  .community-emoji-tray{grid-template-rows:48px 48px 42px minmax(0,1fr)!important}
  .emoji-search-wrap{margin:7px 10px!important}.emoji-search-wrap input{height:34px!important;font-size:14px!important}
  .emoji-category-tabs button{width:40px!important;height:36px!important;font-size:21px!important}
  .emoji-browser{grid-template-columns:repeat(7,minmax(0,1fr))!important;padding:9px!important}
  .emoji-browser button{height:44px!important;font-size:26px!important}
}

/* =========================================================
   COMMUNITY 1.5.2 — FULL REACTIONS + 3-LAYER MOBILE SWIPE
   ========================================================= */

/* Full reaction picker */
.reaction-picker-backdrop{
  position:fixed;inset:0;z-index:135;background:rgba(0,0,0,.12)
}
.reaction-picker{
  position:fixed;z-index:136;width:360px;height:440px;
  background:#fff;border:1px solid #d9dce0;border-radius:12px;
  box-shadow:0 18px 44px rgba(0,0,0,.18);overflow:hidden;
  display:grid;grid-template-rows:44px 48px 42px minmax(0,1fr)
}
.reaction-picker.hidden,.reaction-picker-backdrop.hidden{display:none!important}
.reaction-picker-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 12px;border-bottom:1px solid #e2e4e7
}
.reaction-picker-head strong{font-size:13px}
.reaction-picker-head button{border:0;background:none;font-size:20px;color:#6b7078}
.reaction-picker-search{padding:7px 9px}
.reaction-picker-search input{
  width:100%;height:34px;border:1px solid #d9dce0;border-radius:7px;
  padding:0 10px;font-size:11px;background:#f5f6f7;outline:none
}
.reaction-emoji-tabs{
  display:flex;gap:3px;align-items:center;padding:3px 7px;
  overflow-x:auto;border-bottom:1px solid #e2e4e7
}
.reaction-emoji-tabs button{
  flex:0 0 auto;width:32px;height:32px;border:0;background:none;border-radius:6px;font-size:18px
}
.reaction-emoji-tabs button.active,.reaction-emoji-tabs button:hover{background:#eef0f2}
.reaction-emoji-grid{
  overflow-y:auto;padding:8px;display:grid;
  grid-template-columns:repeat(8,minmax(0,1fr));align-content:start;gap:3px
}
.reaction-emoji-grid button{
  border:0;background:none;border-radius:6px;height:36px;font-size:22px
}
.reaction-emoji-grid button:hover{background:#f0f1f3}

/* Reaction + button next to a message should clearly be clickable. */
body.community-active .reaction-add{
  display:inline-grid!important;place-items:center;min-width:30px!important;
  cursor:pointer!important;font-weight:600
}
.open-all-reactions{font-family:inherit}

/* GCA app menu layer underneath the mobile Community channels drawer. */
.gca-mobile-app-menu{display:none}
@media(max-width:820px){
  body.community-active .community-v1-shell{
    overflow:hidden!important;
    position:relative!important;
  }

  .gca-mobile-app-menu{
    display:flex;position:absolute;inset:0;z-index:61;
    flex-direction:column;background:#f7f7f8;
    transform:translateX(-100%);
    will-change:transform;
  }
  .gca-mobile-menu-head{
    min-height:78px;display:flex;align-items:center;gap:12px;
    padding:14px 18px;border-bottom:1px solid #dedfe2;background:#fff
  }
  .brand-mark-small{
    width:46px;height:46px;border-radius:13px;background:#f0ede7;
    display:grid;place-items:center;font-family:'Playfair Display',serif;
    font-size:18px;font-weight:600
  }
  .gca-mobile-menu-head strong,.gca-mobile-menu-head small{display:block}
  .gca-mobile-menu-head strong{font-size:16px}.gca-mobile-menu-head small{font-size:11px;color:#777c84;margin-top:2px}

  .gca-mobile-menu-nav{display:grid;padding:12px 10px;gap:4px}
  .gca-mobile-menu-nav button{
    width:100%;min-height:58px;display:grid;grid-template-columns:40px 1fr;
    gap:9px;align-items:center;border:0;background:transparent;border-radius:10px;
    padding:7px 10px;text-align:left;color:#3f444c
  }
  .gca-mobile-menu-nav button:hover,.gca-mobile-menu-nav button.is-active{background:#e7e8eb}
  .gca-mobile-menu-nav button>span{font-size:23px;text-align:center}
  .gca-mobile-menu-nav strong,.gca-mobile-menu-nav small{display:block}
  .gca-mobile-menu-nav strong{font-size:15px}.gca-mobile-menu-nav small{font-size:10px;color:#7c8188;margin-top:2px}

  .gca-mobile-menu-foot{
    margin-top:auto;display:grid;grid-template-columns:42px 1fr;gap:10px;
    align-items:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom));
    border-top:1px solid #dedfe2;background:#eceef1
  }
  .gca-mobile-menu-foot strong,.gca-mobile-menu-foot small{display:block}
  .gca-mobile-menu-foot strong{font-size:13px}.gca-mobile-menu-foot small{font-size:10px;color:#777c84}

  /* Explicit z-order: app menu -> channels -> chat */
  body.community-active .community-left{z-index:63!important}
  body.community-active .community-center{z-index:64!important;position:absolute!important;inset:0!important}

  /* Mobile full reaction picker */
  .reaction-picker.mobile{
    left:0!important;right:0!important;top:auto!important;bottom:0!important;
    width:100vw!important;height:min(62dvh,560px)!important;
    border-radius:24px 24px 0 0!important;
    grid-template-rows:48px 48px 44px minmax(0,1fr)
  }
  .reaction-picker.mobile::before{
    content:"";position:absolute;top:7px;left:50%;transform:translateX(-50%);
    width:46px;height:5px;border-radius:999px;background:#dedfe2
  }
  .reaction-picker.mobile .reaction-picker-head{padding-top:7px}
  .reaction-emoji-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
  .reaction-emoji-grid button{height:42px;font-size:25px}
}

/* Desktop quick reaction row now has a dedicated "more" reaction button. */
@media(min-width:821px){
  .desktop-quick-reactions{grid-template-columns:repeat(6,1fr)!important}
}

/* =========================================================
   COMMUNITY 1.5.3 — REACTION CLICK + STABLE 3-LAYER SWIPE
   ========================================================= */
@media(max-width:820px){
  /* Persistent positions after a swipe animation finishes.
     Without these, clearing inline transforms caused the UI to snap back. */
  body.community-active .gca-mobile-app-menu{
    transform:translateX(-100%);
  }
  body.community-active .community-left{
    transform:translateX(-100%);
  }
  body.community-active .community-center{
    transform:translateX(0);
  }

  body.community-active .community-v1-shell.show-channels .gca-mobile-app-menu{
    transform:translateX(-100%);
  }
  body.community-active .community-v1-shell.show-channels .community-left{
    transform:translateX(0);
  }
  body.community-active .community-v1-shell.show-channels .community-center{
    transform:translateX(100vw);
  }

  body.community-active .community-v1-shell.show-app-menu .gca-mobile-app-menu{
    transform:translateX(0);
  }
  body.community-active .community-v1-shell.show-app-menu .community-left{
    transform:translateX(100vw);
  }
  body.community-active .community-v1-shell.show-app-menu .community-center{
    transform:translateX(200vw);
  }

  /* Keep the reaction picker above every Community layer. */
  body.community-active .reaction-picker-backdrop{z-index:240!important}
  body.community-active .reaction-picker{z-index:241!important}

  /* The + reaction affordance needs a generous touch target. */
  body.community-active .reaction-add{
    min-width:34px!important;
    min-height:32px!important;
    pointer-events:auto!important;
    position:relative!important;
    z-index:2!important;
  }
}


/* =========================================================
   COMMUNITY 1.5.4 — DISCORD-LIKE MOBILE SEND + FULL EMOJI VIEW
   ========================================================= */
/* There is no visible Send label anywhere. Desktop sends with Enter. */
.send-btn .send-label{display:none!important}
@media(min-width:821px){
  body.community-active .community-composer .send-btn{display:none!important}
}
@media(max-width:820px){
  /* Discord-like behavior: the blue send control is absent until there is
     message content (or a pending attachment), then animates into place. */
  body.community-active .community-composer .send-btn{
    display:grid!important;place-items:center!important;
    width:42px!important;height:42px!important;min-width:42px!important;
    padding:0!important;border:0!important;border-radius:12px!important;
    background:#5865f2!important;color:#fff!important;
    opacity:0!important;visibility:hidden!important;transform:scale(.82)!important;
    pointer-events:none!important;transition:opacity .14s ease,transform .14s ease,visibility .14s ease!important;
  }
  body.community-active .community-composer .send-btn.has-content{
    opacity:1!important;visibility:visible!important;transform:scale(1)!important;pointer-events:auto!important;
  }
  body.community-active .community-composer .send-arrow{
    display:grid!important;place-items:center!important;width:23px!important;height:23px!important;color:#fff!important;
  }
  body.community-active .community-composer .send-arrow svg{display:block!important;width:23px!important;height:23px!important;fill:#fff!important}
}
/* The first sparkle tab is "All" and exposes the entire bundled catalog,
   instead of making the user think only the first category is available. */
.emoji-category-tabs button:first-child,.reaction-emoji-tabs button:first-child{font-size:19px}


/* =========================================================
   COMMUNITY 1.5.5 — COMPOSER EMOJI + INSTANT SEND
   ========================================================= */
body.community-active #emojiBtn.composer-emoji-btn{
  display:grid!important;place-items:center!important;color:#646a73!important;
  opacity:1!important;visibility:visible!important;pointer-events:auto!important;
}
body.community-active #emojiBtn.composer-emoji-btn span{font-size:22px!important;line-height:1!important}
body.community-active .discord-message[data-message-id^="local-"]{opacity:.72}
@media(max-width:820px){
  body.community-active #emojiBtn.composer-emoji-btn{width:40px!important;height:40px!important;min-width:40px!important}
  body.community-active #emojiBtn.composer-emoji-btn span{font-size:24px!important}
  body.community-active .community-emoji-tray:not(.hidden){display:grid!important}
}


/* =========================================================
   COMMUNITY 1.5.6 — DESKTOP COMPOSER EMOJI FIX
   ========================================================= */
/* Picker visibility is controlled only by `.hidden`. The old `.open` rule
   prevented the composer emoji browser from appearing on desktop. */
@media(min-width:821px){
  body.community-active .community-emoji-tray:not(.hidden){display:grid!important;}
}

/* ===== Community 1.6.0 — Discord core interactions ===== */
.new-message-divider{position:relative;height:18px;margin:7px 12px 5px;border-top:1px solid #ed4245;display:flex;justify-content:flex-end;align-items:flex-start}
.new-message-divider span{position:relative;top:-7px;background:#ed4245;color:#fff;border-radius:8px 0 0 8px;padding:1px 7px;font:700 7px/14px Arial,sans-serif;letter-spacing:.04em}
.message-hover-actions{gap:0;background:#fff;border:1px solid #e2e4e7;border-radius:7px;box-shadow:0 4px 12px rgba(0,0,0,.08);overflow:hidden}
.message-hover-actions button{width:29px;height:27px;border:0;border-right:1px solid #eceef0;background:#fff;color:#5f646c;font-size:13px;display:grid;place-items:center;cursor:pointer}
.message-hover-actions button:last-child{border-right:0}.message-hover-actions button:hover{background:#f2f3f5;color:#222}
.thread-summary{display:flex;align-items:center;gap:6px;margin-top:5px;padding:4px 7px;border:0;background:transparent;border-radius:5px;color:#5865f2;font-size:8px;cursor:pointer}
.thread-summary:hover{background:#f3f4f6}.thread-summary strong{font-size:8px}.thread-summary span:last-child{color:#7a7f87}
.thread-drawer{display:flex;flex-direction:column;width:min(430px,42vw);z-index:82}
.thread-drawer.open{transform:translateX(0)}
.thread-messages{flex:1;overflow:auto;padding:8px 10px 12px;background:#fff}
.thread-message{display:grid;grid-template-columns:34px 1fr;gap:8px;padding:9px 5px;border-radius:6px}
.thread-message:hover{background:#fafafa}.thread-message .avatar{width:32px;height:32px;font-size:9px}.thread-message-body{min-width:0}
.thread-root{padding-bottom:14px}.thread-separator{border-top:1px solid #e2e4e7;margin:6px 5px 3px;position:relative;height:16px}
.thread-separator span{position:absolute;top:-7px;left:8px;background:#fff;padding:0 6px;color:#777d85;font-size:7px;font-weight:700}
.thread-composer{margin:8px 10px 12px;border:1px solid #d7d9dd;border-radius:8px;background:#f2f3f5;display:flex;align-items:flex-end;padding:5px 6px;gap:6px}
.thread-composer textarea{flex:1;resize:none;border:0;outline:0;background:transparent;min-height:28px;max-height:100px;padding:6px;font:inherit;font-size:9px}
.thread-composer button{border:0;background:#5865f2;color:#fff;border-radius:6px;width:30px;height:30px;display:grid;place-items:center;cursor:pointer}

@media(max-width:820px){
  .message-hover-actions{display:none!important}
  .thread-drawer{width:100vw;max-width:none;left:0;right:0;top:0;bottom:0;z-index:120;transform:translateX(100%);border-left:0}
  .thread-drawer.open{transform:translateX(0)}
  .thread-drawer .drawer-header{padding-top:max(16px,env(safe-area-inset-top));height:auto;min-height:62px}
  .thread-messages{padding-bottom:8px}
  .thread-composer{margin-bottom:max(10px,env(safe-area-inset-bottom))}
  .new-message-divider{margin-left:8px;margin-right:8px}
}


/* =========================================================
   COMMUNITY 1.6.1 — MESSAGE UX / DISCORD-LIKE MOBILE REPLY
   ========================================================= */
.message-reactions:not(.has-reactions){display:none!important}
.reaction-add{
  width:30px!important;min-width:30px!important;padding:2px!important;
  display:grid!important;place-items:center!important;
}
.reaction-add span{font-size:14px;line-height:1;color:#666b73}

/* Optimistic delete collapses only the deleted row instead of repainting the channel. */
.discord-message.message-deleting{
  opacity:0!important;overflow:hidden!important;
  transition:opacity .11s ease,height .15s ease,padding .15s ease,margin .15s ease!important;
  pointer-events:none!important;
}

/* Keep the message visibly selected for as long as the composer is replying to it. */
.discord-message.is-reply-target{
  background:#eef3ff!important;
  box-shadow:inset 3px 0 0 #5865f2;
}
.reply-composer-bar{
  background:#eef3ff!important;
  border-top:1px solid #d8e1ff!important;
}
.reply-composer-bar strong{color:#4758d6!important}

/* The reply icon is part of the message gesture, not a floating button. */
.swipe-reply-indicator{display:none}

@media(max-width:820px){
  body.community-active .discord-message{
    touch-action:pan-y;
    -webkit-touch-callout:none;
    -webkit-user-select:none;user-select:none;
    transform:translate3d(var(--swipe-x,0px),0,0);
    transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .16s ease,box-shadow .16s ease!important;
    will-change:transform;
  }
  body.community-active .discord-message.is-swiping{
    transition:none!important;
  }
  body.community-active .discord-message.long-press-active{
    background:#f0f1f3!important;
  }
  body.community-active .swipe-reply-indicator{
    display:grid;
    place-items:center;
    position:absolute;
    right:-48px;
    top:50%;
    width:38px;
    height:38px;
    transform:translateY(-50%) scale(.78);
    border-radius:50%;
    background:#eef0ff;
    opacity:0;
    transition:opacity .08s linear,transform .08s linear,background-color .08s linear;
    pointer-events:none;
  }
  body.community-active .is-swiping .swipe-reply-indicator{
    opacity:1;
    transform:translateY(-50%) scale(.94);
  }
  body.community-active .swipe-ready .swipe-reply-indicator{
    background:#5865f2;
    transform:translateY(-50%) scale(1.06);
  }
  body.community-active .swipe-reply-indicator svg{
    width:22px;height:22px;fill:#5865f2;
  }
  body.community-active .swipe-ready .swipe-reply-indicator svg{fill:#fff}

  body.community-active .reaction-add{
    width:34px!important;min-width:34px!important;height:32px!important;
    padding:0!important;border-radius:8px!important;
  }
  body.community-active .reaction-add span{font-size:20px!important}
  body.community-active .reply-composer-bar{
    padding:8px 12px!important;
    border-radius:12px 12px 0 0!important;
  }
  body.community-active .reply-composer-bar small,
  body.community-active .reply-composer-bar strong,
  body.community-active .reply-composer-bar span{font-size:12px!important}
}

/* =========================================================
   COMMUNITY 1.6.2 — DISCORD VISUAL PARITY
   Reference: Discord light UI, adapted to GCA's single-community app.
   Functional behavior from 1.6.1 is intentionally unchanged.
   ========================================================= */
body.community-active,
body.community-active button,
body.community-active input,
body.community-active textarea,
body.community-active select{
  font-family:"gg sans","Noto Sans","Helvetica Neue",Helvetica,Arial,sans-serif!important;
}
body.community-active{
  --discord-bg:#fbfbfb;
  --discord-sidebar:#f3f3f4;
  --discord-sidebar-2:#efeff0;
  --discord-hover:#e8e8ea;
  --discord-selected:#e3e3e5;
  --discord-border:#dedee0;
  --discord-text:#1e1f22;
  --discord-body:#313338;
  --discord-muted:#6d6f78;
  --discord-faint:#94969f;
  --discord-green:#248046;
  --discord-blurple:#5865f2;
  background:var(--discord-bg)!important;
  color:var(--discord-text)!important;
}
body.community-active .community-v1-shell{
  grid-template-columns:280px minmax(0,1fr) 300px!important;
  background:var(--discord-bg)!important;
}

/* One GCA community only: no redundant server-name strip. */
body.community-active .community-server-head{display:none!important}
body.community-active .community-left{
  grid-template-rows:auto minmax(0,1fr) auto!important;
  background:var(--discord-sidebar)!important;
  border-right:1px solid var(--discord-border)!important;
}
body.community-active .community-channel-search{
  order:0;
  height:34px!important;
  margin:10px 10px 7px!important;
  padding:0 10px!important;
  border:1px solid #d6d6d9!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#62646d!important;
  font-size:12px!important;
  font-weight:500!important;
}
body.community-active .mobile-back-to-app{display:none!important}
body.community-active .community-channel-list{
  padding:3px 8px 12px!important;
  scrollbar-width:thin;
  scrollbar-color:#c7c8cc transparent;
}
body.community-active .channel-category{margin-top:13px!important}
body.community-active .channel-category:first-child{margin-top:5px!important}
body.community-active .channel-category-head{
  height:27px!important;
  padding:0 5px 0 3px!important;
}
body.community-active .category-toggle{gap:5px!important;color:#5f6169!important}
body.community-active .category-toggle>span{font-size:10px!important;color:#777982!important}
body.community-active .category-toggle strong,
body.community-active .category-label{
  color:#5f6169!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  line-height:16px!important;
  text-transform:none!important;
}
body.community-active .category-add-channel,
body.community-active .category-delete{color:#656871!important}
body.community-active .channel-row-wrap{min-height:36px!important}
body.community-active .channel{
  height:36px!important;
  gap:0!important;
  padding:0 10px!important;
  border-radius:5px!important;
  color:#5f6169!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:20px!important;
}
body.community-active .channel:hover{background:var(--discord-hover)!important;color:#2b2d31!important}
body.community-active .channel.is-active{
  background:var(--discord-selected)!important;
  color:#1e1f22!important;
  font-weight:600!important;
}
/* GCA channels are already named/emoji-labelled; Discord's # is redundant here. */
body.community-active .channel-icon,
body.community-active .community-hash,
body.community-active .big-hash{display:none!important}
body.community-active .channel-name{padding-left:2px!important}
body.community-active .channel-unread-badge{
  background:#da373c!important;
  min-width:18px!important;height:18px!important;
  font-size:10px!important;font-weight:700!important;
}
body.community-active .channel-bell,
body.community-active .channel-gear{color:#5f6169!important}

/* Discord-like account strip */
body.community-active .community-userbar{
  min-height:58px!important;
  grid-template-columns:38px minmax(0,1fr) 34px!important;
  gap:8px!important;
  padding:7px 9px!important;
  background:#ededee!important;
  border-top:1px solid #dadadd!important;
}
body.community-active .community-userbar .avatar{width:36px!important;height:36px!important}
body.community-active .community-user-meta strong{font-size:13px!important;font-weight:600!important;color:#1e1f22!important}
body.community-active .community-user-meta small{font-size:10px!important;color:#6d6f78!important}
body.community-active .community-userbar>button{width:32px!important;height:32px!important;border-radius:5px!important;font-size:16px!important}
body.community-active .community-userbar>button:hover{background:#dedee0!important}

/* Channel header */
body.community-active .community-center{
  background:var(--discord-bg)!important;
  grid-template-rows:52px minmax(0,1fr) auto auto!important;
}
body.community-active .community-channel-head{
  height:52px!important;
  padding:0 14px!important;
  background:var(--discord-bg)!important;
  border-bottom:1px solid var(--discord-border)!important;
  box-shadow:none!important;
}
body.community-active .community-channel-title{gap:0!important}
body.community-active .community-title-line h2{
  font-size:15px!important;
  line-height:20px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  color:#1e1f22!important;
}
body.community-active .community-channel-title p{
  font-size:11px!important;
  line-height:15px!important;
  color:#6d6f78!important;
}
body.community-active .community-head-actions{gap:3px!important}
body.community-active .community-head-actions button{
  width:32px!important;height:32px!important;
  border-radius:5px!important;
  color:#5d6069!important;
  font-size:16px!important;
}
body.community-active .community-head-actions button:hover{background:#ececee!important;color:#1e1f22!important}

/* Messages: Discord spacing, type scale and neutral colors */
body.community-active .community-messages{
  background:var(--discord-bg)!important;
  padding:12px 0 20px!important;
  scrollbar-width:thin;
  scrollbar-color:#c9c9cc transparent;
}
body.community-active .discord-message{
  grid-template-columns:40px minmax(0,1fr)!important;
  gap:12px!important;
  padding:3px 16px 4px!important;
  margin:0!important;
}
body.community-active .discord-message:hover{background:#f4f4f5!important}
body.community-active .discord-message .avatar{
  width:40px!important;height:40px!important;
  border:0!important;
  background:#e9e9eb!important;
}
body.community-active .message-meta{gap:7px!important;min-height:18px!important}
body.community-active .message-meta strong{
  font-size:14px!important;line-height:18px!important;font-weight:600!important;color:#1e1f22!important;
}
body.community-active .message-meta small{
  margin:0!important;font-size:10px!important;line-height:14px!important;color:#777982!important;
}
body.community-active .message-text{
  margin-top:0!important;
  font-size:14px!important;
  line-height:1.375!important;
  font-weight:400!important;
  color:#313338!important;
}
body.community-active .reply-reference{font-size:11px!important;color:#6d6f78!important;padding-bottom:2px!important}
body.community-active .reply-reference strong{font-size:11px!important;color:#313338!important}
body.community-active .message-hover-actions{
  right:14px!important;top:-14px!important;
  border-color:#d8d8db!important;
  border-radius:6px!important;
  box-shadow:0 2px 6px rgba(0,0,0,.12)!important;
}
body.community-active .message-hover-actions button{
  width:32px!important;height:30px!important;
  color:#5f6169!important;background:#fff!important;font-size:14px!important;
}
body.community-active .message-hover-actions button:hover{background:#eeeeef!important;color:#1e1f22!important}
body.community-active .message-reactions{gap:5px!important;margin-top:5px!important}
body.community-active .reaction-chip,
body.community-active .reaction-add{
  min-height:28px!important;
  border:1px solid #dedee0!important;
  border-radius:8px!important;
  background:#f1f1f2!important;
  color:#4e5058!important;
  font-size:12px!important;
}
body.community-active .reaction-chip:hover,
body.community-active .reaction-add:hover{background:#e7e7e9!important;border-color:#c8c8cb!important}
body.community-active .mention{background:#e6e8ff!important;color:#4752c4!important;border-radius:3px!important}
body.community-active .new-message-divider{border-top-color:#da373c!important}
body.community-active .new-message-divider span{background:#da373c!important}
body.community-active .discord-message.is-reply-target{
  background:#eef0ff!important;
  box-shadow:inset 2px 0 0 var(--discord-blurple)!important;
}

/* Composer */
body.community-active .community-composer-wrap{
  padding:0 16px 18px!important;
  background:var(--discord-bg)!important;
}
body.community-active .typing-indicator{height:18px!important;padding:2px 8px 0!important;font-size:10px!important;color:#6d6f78!important}
body.community-active .community-composer{
  min-height:46px!important;
  padding:5px 7px!important;
  border:1px solid #d8d8da!important;
  border-radius:8px!important;
  background:#f1f1f2!important;
}
body.community-active .community-composer textarea{
  min-height:34px!important;
  padding:8px 6px!important;
  font-size:14px!important;
  line-height:18px!important;
  color:#313338!important;
}
body.community-active .community-composer textarea::placeholder{color:#777982!important;opacity:1!important}
body.community-active .composer-plus,
body.community-active .composer-right button:not(.send-btn){color:#5f6169!important}
body.community-active .composer-plus:hover,
body.community-active .composer-right button:not(.send-btn):hover{color:#1e1f22!important;background:#e3e3e5!important}
body.community-active #emojiBtn.composer-emoji-btn span{font-size:21px!important}
body.community-active .reply-composer-bar{
  margin:0!important;
  border:1px solid #d8d8da!important;border-bottom:0!important;
  border-radius:8px 8px 0 0!important;
  background:#e8e9f8!important;
}
body.community-active .reply-composer-bar + .community-composer{border-radius:0 0 8px 8px!important}

/* Member list */
body.community-active .community-members{
  background:var(--discord-sidebar)!important;
  border-left:1px solid var(--discord-border)!important;
  padding:0 10px 14px!important;
}
body.community-active .members-head{
  height:52px!important;
  margin:0 -10px!important;
  padding:0 12px!important;
  background:var(--discord-bg)!important;
  border-bottom:1px solid var(--discord-border)!important;
}
body.community-active .members-head strong{font-size:12px!important;font-weight:600!important;color:#5f6169!important}
body.community-active .member-role-group>p{
  margin:16px 7px 6px!important;
  color:#6d6f78!important;
  font-size:11px!important;
  line-height:14px!important;
  letter-spacing:0!important;
  text-transform:none!important;
  font-weight:600!important;
}
body.community-active .community-member-row{
  grid-template-columns:34px minmax(0,1fr)!important;
  min-height:42px!important;
  padding:4px 7px!important;
  border-radius:5px!important;
}
body.community-active .community-member-row:hover{background:#e7e7e9!important}
body.community-active .community-member-row strong{font-size:13px!important;font-weight:500!important;color:#4e5058!important}
body.community-active .community-member-row small{font-size:10px!important;color:#777982!important}
body.community-active .member-avatar-wrap i{border-color:var(--discord-sidebar)!important}
body.community-active .member-avatar-wrap i.online{background:#23a55a!important}
body.community-active .member-avatar-wrap i.offline{background:#80848e!important}
body.community-active .member-role-group.offline .community-member-row{opacity:.46}

/* Empty channel no longer invents a # icon. */
body.community-active .channel-empty{padding:44px 20px 22px!important}
body.community-active .channel-empty h3{font-size:22px!important;line-height:28px!important;color:#1e1f22!important;margin:0 0 5px!important}
body.community-active .channel-empty p{font-size:13px!important;color:#6d6f78!important}

@media(max-width:1100px) and (min-width:821px){
  body.community-active .community-v1-shell{grid-template-columns:260px minmax(0,1fr)!important}
}

@media(max-width:820px){
  body.community-active .community-v1-shell{grid-template-columns:1fr!important;background:var(--discord-bg)!important}
  body.community-active .community-center{grid-template-rows:64px minmax(0,1fr) auto auto!important}
  body.community-active .community-channel-head{
    height:64px!important;
    padding:0 15px!important;
    background:#fbfbfb!important;
  }
  body.community-active .mobile-channels-btn{
    width:38px!important;height:38px!important;
    margin-right:7px!important;
    display:grid!important;place-items:center!important;
    font-size:29px!important;color:#5f6169!important;
  }
  body.community-active .community-title-line h2{font-size:16px!important;line-height:20px!important}
  body.community-active .mobile-online-line{margin-top:1px!important;font-size:11px!important;color:#6d6f78!important}
  body.community-active .mobile-online-line i{background:#23a55a!important}
  body.community-active .community-head-actions button{width:38px!important;height:38px!important;font-size:19px!important}

  /* Channels drawer: same light Discord scale, minus redundant server title and # glyphs. */
  body.community-active .community-left{
    width:min(86vw,360px)!important;
    max-width:360px!important;
    background:#f3f3f4!important;
    box-shadow:10px 0 30px rgba(0,0,0,.12)!important;
  }
  body.community-active .community-channel-search{
    height:38px!important;margin:12px 12px 8px!important;
    font-size:13px!important;
  }
  body.community-active .community-channel-list{padding:4px 10px 14px!important}
  body.community-active .channel-category{margin-top:14px!important}
  body.community-active .channel-category-head{height:29px!important}
  body.community-active .category-toggle strong,
  body.community-active .category-label{font-size:13px!important}
  body.community-active .channel{height:40px!important;padding:0 11px!important;font-size:16px!important;border-radius:6px!important}
  body.community-active .community-userbar{min-height:66px!important;padding:8px 11px calc(8px + env(safe-area-inset-bottom))!important}
  body.community-active .community-userbar .avatar{width:42px!important;height:42px!important}
  body.community-active .community-user-meta strong{font-size:14px!important}
  body.community-active .community-user-meta small{font-size:11px!important}

  /* Chat matches Discord mobile screenshot proportions. */
  body.community-active .community-messages{padding:8px 0 16px!important}
  body.community-active .discord-message{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:10px!important;
    padding:5px 14px 6px!important;
  }
  body.community-active .discord-message .avatar{width:40px!important;height:40px!important}
  body.community-active .message-meta strong{font-size:15px!important;line-height:19px!important}
  body.community-active .message-meta small{font-size:11px!important;line-height:15px!important}
  body.community-active .message-text{font-size:16px!important;line-height:1.38!important;color:#313338!important}
  body.community-active .reply-reference,
  body.community-active .reply-reference strong{font-size:12px!important}
  body.community-active .reaction-chip,
  body.community-active .reaction-add{min-height:31px!important;font-size:14px!important}

  body.community-active .community-composer-wrap{
    padding:6px 14px calc(12px + env(safe-area-inset-bottom))!important;
    background:#fbfbfb!important;
  }
  body.community-active .community-composer{
    min-height:54px!important;
    border-radius:16px!important;
    padding:5px 7px!important;
    background:#f0f0f2!important;
  }
  body.community-active .community-composer textarea{
    min-height:42px!important;
    padding:10px 6px!important;
    font-size:16px!important;
    line-height:21px!important;
  }
  body.community-active .composer-plus{width:40px!important;height:42px!important;font-size:27px!important}
  body.community-active .composer-right button:not(.send-btn){width:40px!important;height:42px!important;font-size:20px!important}
  body.community-active #emojiBtn.composer-emoji-btn span{font-size:24px!important}
  body.community-active .reply-composer-bar{padding:9px 12px!important;border-radius:13px 13px 0 0!important}
  body.community-active .reply-composer-bar + .community-composer{border-radius:0 0 16px 16px!important}
}


/* =========================================================
   COMMUNITY 1.6.3 — DISCORD TYPOGRAPHY + DIRECT-TOUCH PANELS
   ========================================================= */
/* Discord uses its proprietary gg sans. We name it first so an environment
   that already has it can use it, then fall back to the closest neutral UI
   faces available to the browser without bundling Discord's font files. */
body.community-active #community,
body.community-active #community button,
body.community-active #community input,
body.community-active #community textarea,
body.community-active #community select,
body.community-active .gca-mobile-app-menu{
  font-family:"gg sans","Noto Sans","Helvetica Neue",Arial,sans-serif!important;
  letter-spacing:0;
}
body.community-active .category-toggle strong,
body.community-active .category-label{font-weight:600!important}
body.community-active .channel{font-weight:500!important}
body.community-active .channel.is-active{font-weight:600!important}
body.community-active .community-title-line h2{font-weight:600!important}
body.community-active .message-meta strong{font-weight:600!important}
body.community-active .message-text{font-weight:400!important}
body.community-active .community-user-meta strong{font-weight:600!important}
body.community-active .members-head strong{font-weight:600!important}
body.community-active .community-member-row strong{font-weight:500!important}
body.community-active .reply-reference strong{font-weight:600!important}
body.community-active .reply-composer-bar strong{font-weight:600!important}

@media(max-width:820px){
  /* Let JS own horizontal transforms while the finger is down. This is what
     makes the chat/channels/app-menu stack track the finger 1:1 instead of
     snapping between CSS states. Vertical scrolling remains native. */
  body.community-active .community-center,
  body.community-active .community-left,
  body.community-active .gca-mobile-app-menu{
    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    touch-action:pan-y;
  }
  body.community-active .community-v1-shell.is-panel-dragging .community-center,
  body.community-active .community-v1-shell.is-panel-dragging .community-left,
  body.community-active .community-v1-shell.is-panel-dragging .gca-mobile-app-menu{
    transition:none!important;
  }
}

/* =========================================================
   COMMUNITY 1.6.5 — GLOBAL SEARCH + FULL-SCREEN CHANNELS
   ========================================================= */
body.community-active .community-left{
  grid-template-rows:auto auto minmax(0,1fr)!important;
}
body.community-active .desktop-back-to-app{
  display:flex!important;
  align-items:center;
  width:calc(100% - 20px);
  min-height:30px;
  margin:8px 10px 0;
  padding:0 9px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#5f6169;
  font:500 12px/1 "gg sans","Noto Sans","Helvetica Neue",Arial,sans-serif;
  text-align:left;
  cursor:pointer;
}
body.community-active .desktop-back-to-app:hover{background:#e3e3e5;color:#1e1f22}
body.community-active .community-channel-search{
  width:calc(100% - 20px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  cursor:text!important;
  text-align:left!important;
}
body.community-active .community-search-icon{font-size:17px;line-height:1;color:#6d6f78}

/* The old Discord-style account strip is intentionally gone. Profile now lives
   in the main GCA navigation, so channels get the full vertical space. */
body.community-active .community-userbar{display:none!important}

/* One search surface for channels, members and every readable message. */
body.community-active .global-search-drawer{width:min(560px,96vw)!important;background:#fff!important}
body.community-active .global-search-drawer .drawer-header{padding:16px 18px!important}
body.community-active .global-search-drawer .drawer-header strong{font-size:18px!important;font-weight:600!important;color:#1e1f22}
body.community-active .global-search-box{position:relative;padding:12px 14px!important}
body.community-active .global-search-box>span{position:absolute;left:27px;top:50%;transform:translateY(-50%);font-size:18px;color:#6d6f78;pointer-events:none}
body.community-active .global-search-box input{
  height:44px!important;padding:0 14px 0 40px!important;border:1px solid #d6d6d9!important;
  border-radius:8px!important;background:#f2f3f5!important;color:#1e1f22!important;
  font-size:14px!important;font-weight:400!important;outline:none!important
}
body.community-active .global-search-box input:focus{border-color:#5865f2!important;box-shadow:0 0 0 2px rgba(88,101,242,.12)}
body.community-active .global-search-results{padding:0 12px 18px!important}
body.community-active .global-search-section{padding:8px 0 13px;border-bottom:1px solid #ececef}
body.community-active .global-search-section:last-child{border-bottom:0}
body.community-active .global-search-section-title{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 6px;color:#5f6169}
body.community-active .global-search-section-title strong{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}
body.community-active .global-search-section-title span{font-size:11px;color:#80848e}
body.community-active .global-channel-result,
body.community-active .global-member-result{
  width:100%;min-height:52px;display:grid;grid-template-columns:36px minmax(0,1fr) 18px;gap:9px;align-items:center;
  padding:6px 8px;border:0;border-radius:7px;background:transparent;text-align:left;color:#313338
}
body.community-active button.global-channel-result{cursor:pointer}
body.community-active button.global-channel-result:hover{background:#f0f1f3}
body.community-active .global-channel-result>span:nth-child(2) strong,
body.community-active .global-channel-result>span:nth-child(2) small,
body.community-active .global-member-result>span:nth-child(2) strong,
body.community-active .global-member-result>span:nth-child(2) small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.community-active .global-channel-result strong,
body.community-active .global-member-result strong{font-size:13px;font-weight:600}
body.community-active .global-channel-result small,
body.community-active .global-member-result small{margin-top:2px;font-size:11px;color:#80848e}
body.community-active .global-channel-result>b{font-size:20px;font-weight:400;color:#80848e}
body.community-active .search-result-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e9eaec;color:#5f6169;font-size:17px}
body.community-active .global-member-result{grid-template-columns:36px minmax(0,1fr)}
body.community-active .global-member-result .avatar{width:32px;height:32px;font-size:10px}
body.community-active .global-message-result{border:0!important;border-radius:7px!important;padding:9px 8px!important;margin:2px 0!important}
body.community-active .global-message-result:hover{background:#f0f1f3!important}
body.community-active .global-message-result strong{font-size:13px!important;font-weight:600!important;color:#1e1f22!important}
body.community-active .global-message-result small{font-size:10px!important;color:#80848e!important;margin-top:1px}
body.community-active .global-message-result p{font-size:13px!important;line-height:1.4!important;color:#4e5058!important;margin:5px 0 0!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body.community-active .global-search-none{padding:10px 7px;color:#94979f;font-size:12px}

@media(max-width:820px){
  /* Discord mobile: channels are a page, not a 70–85% drawer. */
  body.community-active .community-left{
    width:100vw!important;max-width:none!important;height:100dvh!important;
    border-right:0!important;box-shadow:none!important;
    grid-template-rows:auto minmax(0,1fr)!important;
  }
  body.community-active .desktop-back-to-app{display:none!important}
  body.community-active .community-channel-search{margin:12px 12px 8px!important;width:calc(100% - 24px)!important}
  body.community-active .global-search-drawer{
    left:0!important;right:0!important;top:0!important;bottom:0!important;
    width:100vw!important;height:100dvh!important;border-left:0!important;box-shadow:none!important;
  }
  body.community-active .global-search-drawer .drawer-header{padding-top:calc(14px + env(safe-area-inset-top))!important}
  body.community-active .global-search-box input{font-size:16px!important}
}

/* =========================================================
   GCA COMMUNITY 1.6.6 — MEMBER PROFILE + SETTINGS
   Discord-inspired interaction hierarchy, simplified for one GCA community.
   ========================================================= */
:root{
  --gca-discord-blue:#5865f2;
  --gca-discord-blue-hover:#4752c4;
  --gca-discord-text:#232428;
  --gca-discord-muted:#5f626b;
  --gca-discord-surface:#f2f3f5;
  --gca-discord-card:#fff;
  --gca-discord-line:#e1e2e5;
  --gca-online:#23a55a;
}
.top-profile-avatar,.message-profile-avatar{border:0;cursor:pointer;font:inherit;padding:0}
.top-profile-avatar{display:grid;place-items:center}
.mini-avatar{width:25px;height:25px;border-radius:50%;display:grid!important;place-items:center;background:#e7e1d8;color:#272522;font-size:9px!important;font-weight:700;background-size:cover;background-position:center}
.avatar.has-photo,.mini-avatar.has-photo,.profile-avatar-large.has-photo,.settings-big-avatar.has-photo{background-size:cover;background-position:center;color:transparent}

/* public profile */
.profile-modal{z-index:180}
.member-profile-card{position:relative;width:min(520px,94vw);padding:0!important;overflow:hidden;border-radius:18px!important;background:var(--gca-discord-surface)!important;color:var(--gca-discord-text);box-shadow:0 24px 70px rgba(0,0,0,.22)}
.profile-close{position:absolute;right:15px;top:14px;z-index:3;width:36px;height:36px;border:0;border-radius:50%;background:rgba(35,36,40,.68);color:#fff;font-size:23px;line-height:1;cursor:pointer}
.profile-cover{height:150px;background:linear-gradient(120deg,#f4eadf 0%,#eee5dc 46%,#e7e8ec 100%)}
.profile-identity{position:relative;height:70px;padding:0 26px}
.profile-avatar-wrap{position:absolute;left:25px;top:-58px}
.profile-avatar-large{width:116px;height:116px;border-radius:50%;border:7px solid var(--gca-discord-surface);display:grid;place-items:center;background:#eee8df;color:#262626;font:700 27px 'Noto Sans',sans-serif;background-size:cover;background-position:center}
.profile-online-dot{position:absolute;width:24px;height:24px;border-radius:50%;right:5px;bottom:7px;background:#80848e;border:5px solid var(--gca-discord-surface)}
.profile-online-dot.is-online{background:var(--gca-online)}
.profile-status-bubble{position:absolute;left:154px;right:26px;top:-12px;min-height:48px;padding:0 16px;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #dfe1e5;border-radius:24px;box-shadow:0 5px 14px rgba(0,0,0,.08);font-size:12px}
.profile-status-bubble span{font-size:18px}.profile-status-bubble strong{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-status-bubble.is-empty{color:#777b84}
.profile-main{padding:0 26px 26px}
.profile-name-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.profile-name-row h2{font:700 25px/1.2 'Noto Sans',sans-serif;margin:0 0 3px;color:#232428}.profile-name-row p{margin:0;color:#4e5058;font-size:13px}
.profile-role-badge{background:#e3e5e8;color:#4e5058;border-radius:6px;padding:5px 8px;font-size:9px;font-weight:700;letter-spacing:.3px}
.profile-bio{font:400 13px/1.55 'Noto Sans',sans-serif;margin:20px 0 12px;white-space:pre-wrap;color:#313338}
.profile-socials{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 18px}.profile-socials a{border:1px solid #d5d7db;background:#fff;border-radius:7px;padding:7px 9px;color:#4e5bd5;text-decoration:none;font-size:10px;font-weight:600}
.profile-meta-row{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid #dfe1e5;padding-top:15px;color:#6d6f78;font-size:10px}.profile-meta-row b{color:#3d3f45;font-weight:600}
.profile-own-actions{display:flex;gap:8px;margin-top:19px}.profile-primary{flex:1;border:0;border-radius:7px;background:var(--gca-discord-blue);color:#fff;padding:11px 16px;font:600 12px 'Noto Sans',sans-serif;cursor:pointer}.profile-primary:hover{background:var(--gca-discord-blue-hover)}
.profile-secondary{width:44px;border:1px solid #d5d7db;border-radius:7px;background:#fff;color:#4e5058;font-size:17px;cursor:pointer}

/* edit profile */
#editProfileModal{z-index:190}.edit-profile-modal{width:min(650px,96vw);padding:0!important;overflow:hidden;border-radius:14px!important;background:#f2f3f5!important}
.profile-editor-head{height:70px;background:#fff;border-bottom:1px solid #dedfe3;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:0 18px}.profile-editor-head h2{font:700 17px 'Noto Sans';margin:0}.profile-editor-head p{font:400 9px 'Noto Sans';margin:3px 0 0;color:#777b84}.profile-editor-back{border:0;background:none;font-size:22px;color:#4e5058;cursor:pointer}.profile-save-top{border:0;background:none;color:var(--gca-discord-blue);font:700 11px 'Noto Sans';cursor:pointer}
.profile-editor-scroll{max-height:78vh;overflow:auto;padding-bottom:25px}.profile-editor-preview{position:relative;margin-bottom:38px}.profile-editor-cover{height:135px;background:linear-gradient(120deg,#f4eadf,#e9e1d8 55%,#e3e5e8)}.profile-photo-editor{position:absolute;left:28px;bottom:-55px}.profile-photo-button{position:absolute;right:2px;top:5px;width:33px;height:33px;border-radius:50%;background:#fff;display:grid;place-items:center;border:1px solid #ddd;box-shadow:0 2px 7px rgba(0,0,0,.08);cursor:pointer}.profile-editor-preview-name{margin-left:162px;padding:12px 20px 0}.profile-editor-preview-name strong,.profile-editor-preview-name small{display:block}.profile-editor-preview-name strong{font:700 17px 'Noto Sans'}.profile-editor-preview-name small{font:400 10px 'Noto Sans';color:#777b84;margin-top:2px}
.profile-editor-fields{padding:20px 28px;display:grid;gap:17px}.profile-editor-fields label{display:block;font:600 10px 'Noto Sans';color:#5f626b}.profile-editor-fields input,.profile-editor-fields textarea{width:100%;margin-top:7px;border:1px solid #c8cad0;background:#fff;border-radius:8px;padding:11px 12px;font:400 12px 'Noto Sans';color:#232428;outline:none}.profile-editor-fields input:focus,.profile-editor-fields textarea:focus{border-color:var(--gca-discord-blue);box-shadow:0 0 0 1px var(--gca-discord-blue)}.profile-editor-fields textarea{min-height:105px;resize:vertical}.profile-editor-fields label>small{display:block;text-align:right;margin-top:4px;color:#94979f;font-weight:400}.profile-field-group{display:grid;gap:10px;padding-top:4px}.profile-field-group>p{font:700 10px 'Noto Sans';text-transform:uppercase;color:#4e5058;margin:0}.profile-save-bottom{display:none}

/* settings */
.account-settings-modal{width:min(1060px,97vw)!important;height:min(760px,94vh);padding:0!important;overflow:hidden!important;border-radius:12px!important;background:#fff!important}
.settings-layout{display:grid!important;grid-template-columns:260px 1fr!important;min-height:100%!important;height:100%}
.settings-nav{position:relative;padding:26px 12px 20px 20px!important;background:#f2f3f5!important;border-right:1px solid #dedfe3!important;overflow:auto}
.settings-profile-card{gap:10px!important;padding:5px 8px 18px!important;margin-bottom:12px!important}.settings-profile-card .avatar{width:42px;height:42px}.settings-profile-card strong{font:600 12px 'Noto Sans'!important;color:#232428}.settings-profile-card small{font:400 9px 'Noto Sans'!important;color:#777b84!important;margin-top:2px}
.settings-nav-label{margin:14px 9px 5px;font:700 8px 'Noto Sans';color:#777b84;letter-spacing:.5px}
.settings-nav-btn{font:500 11px 'Noto Sans'!important;padding:9px 10px!important;border-radius:5px!important;color:#5f626b!important}.settings-nav-btn.active{background:#dfe1e5!important;color:#232428!important;font-weight:600!important}.settings-nav-btn:hover{background:#e3e5e8!important}.settings-nav-divider{height:1px;background:#d7d9dd;margin:9px 8px}.settings-logout{color:#da373c!important}.settings-mobile-back{display:none}
.settings-content{padding:44px 56px!important;overflow:auto!important}.settings-content-head{border-bottom:0!important;padding:0!important;margin:0 0 26px!important}.settings-content-head h2{font:600 24px 'Noto Sans'!important;color:#232428}.settings-content-head p{font:400 10px 'Noto Sans';color:#777b84;margin:5px 0 0}.settings-content-head button{width:36px;height:36px;border:1px solid #b5bac1!important;border-radius:50%;font-size:20px!important;color:#6d6f78!important;cursor:pointer}
.settings-panel.active{display:block!important}.settings-group{border-top:1px solid #e1e2e5}.settings-group-title{font:600 13px 'Noto Sans';padding:20px 0 10px;color:#232428}.setting-row{min-height:68px!important;padding:13px 0!important}.setting-row strong{font:500 12px 'Noto Sans'!important;color:#232428}.setting-row small{font:400 9px/1.45 'Noto Sans'!important;color:#777b84!important;max-width:480px}.setting-row .outline{font:500 10px 'Noto Sans';padding:7px 12px;border-radius:5px}.settings-coming-soon{font:500 9px 'Noto Sans';color:#777b84;background:#f2f3f5;border-radius:5px;padding:6px 8px}.settings-account-card{background:#f2f3f5;border:1px solid #e1e2e5;border-radius:9px;padding:15px;margin-bottom:22px}.settings-account-profile{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px}.settings-big-avatar{width:54px!important;height:54px!important}.settings-account-profile strong,.settings-account-profile small{display:block}.settings-account-profile strong{font:600 13px 'Noto Sans'}.settings-account-profile small{font:400 10px 'Noto Sans';color:#777b84;margin-top:3px}.settings-inline-editor{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0 15px}.settings-inline-editor.hidden{display:none!important}.settings-inline-editor input{border:1px solid #b5bac1;border-radius:6px;padding:10px 11px;font:400 11px 'Noto Sans';outline:none}.settings-inline-editor input:focus{border-color:var(--gca-discord-blue)}.settings-inline-editor .cta{padding:8px 14px}

.avatar-image,.avatar-fallback{display:grid;place-items:center;border-radius:50%;background:#e5e1db;color:#2b2c30;font-weight:700;background-size:cover;background-position:center}.member-list-avatar{width:32px;height:32px;font-size:9px}.search-member-avatar{width:34px;height:34px;font-size:9px}.global-member-result{width:100%;border:0;background:none;display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:9px 7px;text-align:left;border-bottom:1px solid #eceef0;cursor:pointer}.global-member-result:hover{background:#f2f3f5}.global-member-result strong,.global-member-result small{display:block}.global-member-result strong{font-size:11px}.global-member-result small{font-size:9px;color:#777b84}.global-member-result>b{font-size:18px;color:#94979f}
.message-profile-avatar{background:#ece8e2}.message-author-link{border:0;background:none;padding:0;margin:0;font:700 13px 'Noto Sans',sans-serif;color:#232428;cursor:pointer}.message-author-link:hover{text-decoration:underline}

@media(max-width:820px){
  .member-profile-card{width:100vw!important;max-width:none!important;height:100dvh;border-radius:0!important}.profile-cover{height:31vh;min-height:190px}.profile-identity{height:86px;padding:0 22px}.profile-avatar-wrap{left:22px;top:-64px}.profile-avatar-large{width:126px;height:126px}.profile-status-bubble{left:158px;right:18px;top:-14px}.profile-main{padding:0 22px 28px}.profile-name-row h2{font-size:26px}.profile-bio{font-size:14px}.profile-own-actions{position:sticky;bottom:0;padding-top:12px;background:linear-gradient(transparent,var(--gca-discord-surface) 30%)}
  .edit-profile-modal{width:100vw!important;max-width:none!important;height:100dvh;border-radius:0!important}.profile-editor-head{padding-top:env(safe-area-inset-top);height:calc(66px + env(safe-area-inset-top))}.profile-editor-scroll{max-height:calc(100dvh - 66px - env(safe-area-inset-top));padding-bottom:calc(25px + env(safe-area-inset-bottom))}.profile-editor-cover{height:190px}.profile-editor-fields{padding:24px 20px}.profile-save-bottom{display:block}.profile-save-top{display:none}
  .account-settings-modal{width:100vw!important;max-width:none!important;height:100dvh!important;border-radius:0!important}.settings-layout{display:block!important;height:100%}.settings-nav{display:block!important;position:absolute!important;inset:0!important;z-index:2;padding:calc(18px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom))!important;border:0!important}.settings-profile-card{display:flex!important;padding-left:48px!important}.settings-mobile-back{display:grid;place-items:center;position:absolute;left:12px;top:calc(18px + env(safe-area-inset-top));width:36px;height:36px;border:0;background:transparent;font-size:23px;color:#4e5058}.settings-content{position:absolute;inset:0;z-index:3;background:#fff;padding:calc(24px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom))!important;transform:translateX(100%);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.account-settings-modal.mobile-panel-open .settings-content{transform:translateX(0)}.settings-content-head{padding-left:34px!important}.settings-close-desktop{position:absolute;left:18px;top:calc(19px + env(safe-area-inset-top));border:0!important}.settings-account-profile{grid-template-columns:48px 1fr}.settings-account-profile .outline{grid-column:1/-1}.settings-inline-editor{grid-template-columns:1fr}.settings-nav-btn{font-size:13px!important;padding:13px 11px!important;margin:1px 0}.settings-nav-label{font-size:9px}.setting-row strong{font-size:13px!important}.setting-row small{font-size:10px!important}
}
.gca-mobile-profile-entry{margin-top:12px!important;border-top:1px solid #dedfe3!important;padding-top:14px!important}.gca-mobile-profile-entry>b{margin-left:auto;color:#94979f;font-size:18px}

.message-profile-avatar .message-avatar-inner{width:100%;height:100%;font-size:9px}


/* GCA 1.6.8 — registration + approval flow */
.auth-view.hidden{display:none!important}
.auth-links{display:flex;justify-content:center;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}
.auth-link{border:0;background:none;padding:4px;color:var(--ink);font:500 9px 'DM Sans';cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.auth-card .optional{font-size:7px;color:#a09a92;margin-left:4px}
.auth-status-icon{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;margin:2px 0 18px;font:600 18px 'DM Sans';background:#fff}
.auth-status-icon.pending{font-size:16px}
.auth-back-button{margin-top:18px}
.pending-card{max-width:430px}
.pending-card h1{margin-bottom:8px}
.pending-account{margin:20px 0 14px;padding:12px 13px;border:1px solid var(--line);border-radius:9px;background:#fff}
.pending-account small,.pending-account strong{display:block}.pending-account small{font-size:7px;color:var(--muted);margin-bottom:4px}.pending-account strong{font-size:9px;overflow-wrap:anywhere}
.member-approval-actions{display:flex;gap:5px;flex-wrap:wrap}
.member-approval-actions button{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 7px;font-size:7px;cursor:pointer}
.member-approval-actions .approve-primary{background:var(--ink);color:#fff;border-color:var(--ink)}
.member-approval-actions .reject-member{color:#8d3f31}
.member-row.member-pending{background:#fffdf7}
.member-row.member-rejected{opacity:.65}
@media(max-width:820px){.member-approval-actions{grid-column:1/-1}.pending-card{width:min(400px,100%)}}

@media(min-width:821px){.member-row{grid-template-columns:1.2fr .5fr .7fr .5fr 1.3fr}}


/* =========================================================
   AUTH UX 1.6.9 — inline errors + remembered email picker
   ========================================================= */
.login-email-field{position:relative}
.auth-card input:focus{outline:none;border-color:#a9a39a;box-shadow:0 0 0 2px rgba(32,33,31,.05)}
.auth-card input.input-error{border-color:#b94132;box-shadow:0 0 0 2px rgba(185,65,50,.08)}
.login-error{margin:-1px 0 1px;padding:9px 10px;border:1px solid rgba(185,65,50,.22);border-radius:8px;background:#fbf2f0;color:#9f3429;font:500 9px/1.45 'DM Sans',Arial,sans-serif}
.login-error.hidden,.login-email-suggestions.hidden{display:none!important}
.login-email-suggestions{position:absolute;z-index:260;left:0;right:0;top:calc(100% + 4px);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(32,32,31,.12)}
.login-email-suggestion{width:100%;display:flex;align-items:center;gap:9px;border:0;border-bottom:1px solid #eeeae3;background:#fff;padding:10px 11px;text-align:left;color:var(--ink);font:500 10px 'DM Sans',Arial,sans-serif}
.login-email-suggestion:last-child{border-bottom:0}.login-email-suggestion:hover,.login-email-suggestion.is-active{background:#f4f1eb}
.login-email-suggestion-icon{width:24px;height:24px;flex:0 0 24px;border-radius:50%;display:grid;place-items:center;background:#efebe4;color:#6f6b65;font-size:9px}
.login-email-suggestion-copy{min-width:0;display:grid;gap:1px}.login-email-suggestion-copy strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.login-email-suggestion-copy small{font-size:7px;color:var(--muted);font-weight:400}
#loginSubmitBtn[disabled]{opacity:.68;cursor:default}


/* =========================================================
   GCA 1.7.0 — Editorial authentication experience
   ========================================================= */
.auth-gate-editorial{
  padding:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(430px,.85fr);
  place-items:stretch;background:#ece8df;overflow:auto;
}
.auth-hero{position:relative;min-height:100vh;overflow:hidden;padding:38px 44px 30px;color:#f7f2e9;background:#171817;display:flex;flex-direction:column}
.auth-hero:after{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-220px;top:-250px;background:radial-gradient(circle,rgba(200,106,58,.22),rgba(200,106,58,0) 68%);pointer-events:none}
.auth-hero-grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 82%)}
.auth-hero-top,.auth-hero-copy,.auth-market-visual,.auth-hero-footer{position:relative;z-index:1}
.auth-hero-top{display:flex;justify-content:space-between;align-items:flex-start}
.auth-hero-brand{display:flex;flex-direction:column;line-height:1}.auth-hero-brand>span{font:500 39px/1 'Playfair Display',serif;letter-spacing:-1.8px}.auth-hero-brand small{font:500 7px/1 'DM Sans';letter-spacing:3px;margin-top:8px;color:#c8c2b8}
.auth-hero-chip{display:flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:7px 10px;font:600 7px 'DM Sans';letter-spacing:1.2px;color:#cfc9c0;background:rgba(255,255,255,.035)}
.auth-hero-chip i{width:5px;height:5px;border-radius:50%;background:#d47a46;box-shadow:0 0 0 4px rgba(212,122,70,.1)}
.auth-hero-copy{max-width:720px;margin:auto 0 34px}.auth-kicker{margin:0 0 18px;color:#d47a46;font:600 8px 'DM Sans';letter-spacing:2.3px}.auth-hero-copy h2{margin:0;max-width:700px;font:500 clamp(42px,4.6vw,72px)/.98 'Playfair Display',serif;letter-spacing:-2.8px}.auth-hero-copy h2 em{font-weight:500;color:#d7d0c6}.auth-hero-text{max-width:570px;margin:24px 0 0;color:#a9a49c;font:400 13px/1.7 'DM Sans';letter-spacing:.05px}.auth-feature-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px;color:#d5cfc6;font:500 8px 'DM Sans';letter-spacing:1.15px;text-transform:uppercase}.auth-feature-row b{color:#5e5e59;font-weight:400}
.auth-market-visual{margin:0 0 28px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.025);backdrop-filter:blur(8px);overflow:hidden}.market-visual-head,.market-visual-foot{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;color:#8f8c86;font:600 7px 'DM Sans';letter-spacing:1.2px}.market-visual-head{border-bottom:1px solid rgba(255,255,255,.08)}.market-visual-head small{font:500 7px 'DM Sans';color:#d47a46}.market-chart{display:block;width:100%;height:142px}.chart-grid-lines path{stroke:rgba(255,255,255,.065);stroke-width:1}.chart-area{fill:url(#chartFade)}.chart-line{fill:none;stroke:#d47a46;stroke-width:2.1;vector-effect:non-scaling-stroke}.chart-points circle{fill:#171817;stroke:#e18a54;stroke-width:2;vector-effect:non-scaling-stroke}.market-visual-foot{border-top:1px solid rgba(255,255,255,.08);justify-content:flex-start;gap:22px}.market-visual-foot span{display:flex;align-items:center;gap:6px}.market-visual-foot i{width:5px;height:5px;border-radius:50%;background:#4a9a70}
.auth-hero-footer{display:flex;justify-content:space-between;color:#65645f;font:500 6px 'DM Sans';letter-spacing:1.5px}
.auth-panel{min-height:100vh;background:#f5f2eb;display:flex;flex-direction:column;padding:34px 8%;position:relative}.auth-panel-top{display:flex;justify-content:space-between;color:#918b83;font:600 7px 'DM Sans';letter-spacing:1.45px}.auth-panel-secure{color:#78736c}.auth-panel-secure::first-letter{color:#4a9a70}
.auth-gate-editorial .auth-card{width:min(460px,100%);margin:auto;background:transparent;border:0;border-radius:0;padding:34px 0;box-shadow:none}.auth-gate-editorial .auth-mobile-brand{display:none}.auth-gate-editorial .auth-card h1{font-size:34px;line-height:1.08;letter-spacing:-1.15px}.auth-gate-editorial .auth-intro{margin:10px 0 0;font-size:11px;line-height:1.55}.auth-gate-editorial .eyebrow{margin-bottom:10px;color:#b06035;letter-spacing:1.8px}.auth-gate-editorial .auth-card form{gap:14px;margin:28px 0 18px}.auth-gate-editorial .auth-card label{font-size:8px;font-weight:600;letter-spacing:.3px;color:#706b64}.auth-gate-editorial .auth-card input{margin-top:7px;padding:13px 14px;border-radius:9px;border-color:#d8d2c8;background:rgba(255,255,255,.72);font-size:11px;transition:border-color .16s,box-shadow .16s,background .16s}.auth-gate-editorial .auth-card input::placeholder{color:#b5afa6}.auth-gate-editorial .auth-card input:focus{background:#fff;border-color:#a79d91;box-shadow:0 0 0 3px rgba(200,106,58,.08)}
.auth-primary{min-height:45px;margin-top:3px;display:flex;align-items:center;justify-content:center;gap:10px;background:#c86a3a;border-color:#c86a3a;color:#fff;font-weight:600;box-shadow:0 8px 20px rgba(168,83,45,.13);transition:transform .16s,background .16s,box-shadow .16s}.auth-primary:hover{background:#b95e32;transform:translateY(-1px);box-shadow:0 10px 24px rgba(168,83,45,.18)}.auth-primary span{font-size:15px;font-weight:400}.auth-divider{display:flex;align-items:center;gap:12px;margin:21px 0 5px;color:#aaa39a;font:600 6px 'DM Sans';letter-spacing:1.5px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#ded8ce;flex:1}.auth-gate-editorial .auth-links{border:0;margin-top:7px;padding-top:0}.auth-gate-editorial .auth-link{font-size:9px;text-decoration:none;color:#393a37}.auth-gate-editorial .auth-link span{color:#8b857d}.auth-gate-editorial .auth-link:hover{text-decoration:underline;text-underline-offset:4px}.auth-privacy{margin:34px 0 0;text-align:center;color:#aaa39a;font:500 7px/1.5 'DM Sans';letter-spacing:.35px}.auth-gate-editorial .login-email-suggestions{top:calc(100% + 5px);border-radius:10px}.auth-gate-editorial .login-error{font-size:9px;padding:10px 12px}.auth-gate-editorial .auth-status-icon{border-color:#d8d2c8;background:rgba(255,255,255,.72)}
@media(max-width:980px){.auth-gate-editorial{grid-template-columns:1fr}.auth-hero{min-height:300px;padding:28px 30px}.auth-hero-copy{margin:70px 0 18px}.auth-hero-copy h2{font-size:44px}.auth-hero-text{display:none}.auth-market-visual{display:none}.auth-hero-footer{display:none}.auth-panel{min-height:auto;padding:26px 8% 40px}.auth-panel-top{display:none}.auth-gate-editorial .auth-card{padding:24px 0}}
@media(max-width:620px){.auth-gate-editorial{display:block;background:#f5f2eb}.auth-hero{min-height:178px;padding:24px 20px;border-radius:0 0 22px 22px}.auth-hero-top{align-items:center}.auth-hero-chip{display:none}.auth-hero-copy{margin:auto 0 4px}.auth-kicker{font-size:6px;margin-bottom:9px}.auth-hero-copy h2{font-size:31px;letter-spacing:-1.5px;line-height:1.02}.auth-feature-row{display:none}.auth-panel{padding:12px 20px 30px}.auth-gate-editorial .auth-card{padding:25px 0}.auth-gate-editorial .auth-card h1{font-size:28px}.auth-gate-editorial .auth-card form{margin-top:22px}.auth-privacy{margin-top:26px}}

/* =========================================================
   GCA 1.7.1 — Premium member app shell + overview
   ========================================================= */
@media (min-width:821px){
  body:not(.community-active){background:#f5f1e9}
  body:not(.community-active) .rail{width:248px;background:linear-gradient(180deg,#151817 0%,#111312 100%);border-right:1px solid rgba(255,255,255,.07);padding:25px 13px 18px;color:#f6f1e9}
  body:not(.community-active) .rail .brand{color:#fff}
  body:not(.community-active) .rail-brand{padding:5px 18px 30px}
  body:not(.community-active) .rail .brand-mark{font-size:38px;font-weight:500}
  body:not(.community-active) .rail .brand-sub{font-size:7px;letter-spacing:3px;color:#d5d0c8}
  body:not(.community-active) .content{margin-left:248px;padding:0 30px 80px;max-width:1600px}
  body:not(.community-active) .premium-rail-nav{gap:5px}
  body:not(.community-active) .rail-item{grid-template-columns:29px 1fr auto;color:#bcbdb8;padding:12px 15px;border-radius:8px}
  body:not(.community-active) .rail-item span{font-size:16px;color:#a9aaa6}
  body:not(.community-active) .rail-item b{font-size:12px;font-weight:400}
  body:not(.community-active) .rail-item:hover{background:rgba(255,255,255,.055);color:#fff}
  body:not(.community-active) .rail-item.is-active{background:linear-gradient(90deg,rgba(200,106,58,.36),rgba(200,106,58,.18));color:#fff;box-shadow:inset 0 0 0 1px rgba(220,158,115,.08)}
  body:not(.community-active) .rail-item.is-active span{color:#f2c6a5}
  body:not(.community-active) .nav-badge{background:#c86a3a;color:#fff}
  body:not(.community-active) .premium-rail-foot{border-top:1px solid rgba(255,255,255,.12);padding:15px 6px 0}
  body:not(.community-active) .rail-profile{width:100%;border:0;background:transparent;color:#fff;display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;text-align:left;padding:6px;border-radius:9px}
  body:not(.community-active) .rail-profile:hover{background:rgba(255,255,255,.055)}
  body:not(.community-active) .rail-profile .avatar{width:38px;height:38px;background:#262927;border-color:rgba(255,255,255,.14);color:#fff}
  body:not(.community-active) .rail-profile-copy strong,body:not(.community-active) .rail-profile-copy small{display:block}
  body:not(.community-active) .rail-profile-copy strong{font-size:11px;font-weight:500}
  body:not(.community-active) .rail-profile-copy small{font-size:6.5px;letter-spacing:1.4px;color:#9d9f9b;margin-top:3px}
  body:not(.community-active) .rail-profile-more{color:#777b77;font-size:10px}
  body:not(.community-active) .rail-foot-actions{display:flex;justify-content:space-between;padding:7px 6px 0}
  body:not(.community-active) .rail-foot .text-btn{color:#7f837f;font-size:7.5px}
  body:not(.community-active) .rail-foot .text-btn:hover{color:#d9d8d4}
  body:not(.community-active) .rail-access-hidden{display:none}
  body:not(.community-active) .topbar{padding:17px 0 13px;margin:0 0 20px;min-height:58px;align-items:center}
  body:not(.community-active) #home + *{}
  body:not(.community-active) .premium-home.is-active ~ *{}
  body:not(.community-active):has(#home.is-active) .topbar{display:none}
}

.premium-home{padding-top:31px}
.home-welcome-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 3px 24px}
.home-date{margin:0 0 7px;font-size:10px;color:#858079;letter-spacing:.2px}
.home-welcome-row h1{font:500 37px/1.05 'Playfair Display',serif;letter-spacing:-1.2px;margin:0;color:#171817}
.home-session{margin:8px 0 0;font-size:12px;color:#77736d}
.home-quote{text-align:right;color:#706b64;padding-bottom:3px}.home-quote em{display:block;font:italic 500 17px/1.25 'Playfair Display',serif}.home-quote small{display:block;font-size:7px;letter-spacing:2px;margin-top:7px;color:#a09a91}
.home-image-header{height:190px;border-radius:12px;background-image:linear-gradient(90deg,rgba(12,14,13,.16),rgba(12,14,13,.02)),url('assets/gca-dashboard-header.jpg');background-size:cover;background-position:center 47%;box-shadow:0 12px 35px rgba(32,28,24,.10);border:1px solid rgba(41,37,31,.14);margin-bottom:18px;overflow:hidden;position:relative}
.home-image-header:after{content:'GCA · MEMBER DESK';position:absolute;left:19px;bottom:16px;color:rgba(255,255,255,.78);font-size:7px;letter-spacing:2.3px;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.premium-home-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.72fr);gap:14px;align-items:start}
.home-main-column,.home-side-column{display:grid;gap:14px}
.premium-panel{background:rgba(255,253,250,.94);border:1px solid #ded8ce;border-radius:12px;box-shadow:0 8px 28px rgba(32,32,31,.045);overflow:hidden}
.premium-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:17px 18px 14px;border-bottom:1px solid #e8e3da}
.premium-panel-head.compact{align-items:flex-start}.premium-panel-head .eyebrow{margin-bottom:4px}.premium-panel-head h2{font:500 20px/1.1 'Playfair Display',serif;margin:0;letter-spacing:-.35px}.premium-panel-head.compact h2{font-size:17px}
.editorial-link{border:0;background:none;color:#a8532d;font-size:8px;padding:2px 0;white-space:nowrap}.editorial-link:hover{color:#c86a3a}
.home-loading{padding:22px 18px;color:#8d8881;font-size:9px}
.home-recent-trades{display:grid}.home-trade-row{display:grid;grid-template-columns:minmax(150px,1.05fr) minmax(150px,1fr) 78px 64px;gap:14px;align-items:center;padding:15px 18px;border-bottom:1px solid #ebe6de;transition:.15s ease}.home-trade-row:last-child{border-bottom:0}.home-trade-row:hover{background:#faf7f1}.home-trade-main strong{font:500 16px 'Playfair Display',serif}.home-trade-main small,.home-trade-thesis small{display:block;font-size:8px;color:#89847d;margin-top:3px}.home-trade-main .home-direction{display:inline-block;margin-left:7px;padding:3px 5px;border-radius:999px;font:600 6px 'DM Sans';letter-spacing:.8px;vertical-align:2px}.home-direction.long{background:#eaf4ed;color:#1e7a4d}.home-direction.short{background:#f9ece9;color:#b94132}.home-trade-thesis strong{display:block;font-size:9px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-trade-levels{font-size:8px;color:#77736d;line-height:1.6}.home-trade-levels b{color:#282925;font-weight:500}.home-trade-result{text-align:right;font:500 18px 'Playfair Display',serif;color:#a8532d}.home-trade-result.win{color:#1e7a4d}.home-trade-result.loss{color:#b94132}
.home-academy-preview{padding:4px 0}.home-course-feature{padding:16px 17px 14px}.home-course-feature .course-number{font:500 25px 'Playfair Display',serif;color:#b56a3e}.home-course-feature h3{font:500 17px 'Playfair Display',serif;margin:5px 0 4px}.home-course-feature p{font-size:8px;color:#827d76;margin:0 0 12px;line-height:1.45}.home-course-progress-line{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center}.home-course-progress-line .progress{margin:0}.home-course-progress-line span:last-child{font-size:8px;color:#77736d}.home-course-list{border-top:1px solid #ebe6de}.home-course-mini{width:100%;display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;border:0;border-bottom:1px solid #eee9e1;background:none;text-align:left;padding:10px 17px}.home-course-mini:last-child{border-bottom:0}.home-course-mini:hover{background:#faf7f1}.home-course-mini>span{font:500 12px 'Playfair Display',serif;color:#aaa39a}.home-course-mini strong{font-size:9px;font-weight:500}.home-course-mini small{font-size:7px;color:#8c867f}
.home-next-call{padding:16px 17px}.home-live-status{display:flex;align-items:center;gap:7px;color:#b94132;font-size:8px;margin-bottom:8px}.home-live-status i{width:6px;height:6px;border-radius:50%;background:#d44b38}.home-next-call h3{font:500 18px 'Playfair Display',serif;margin:0 0 6px}.home-next-call p{font-size:9px;color:#77736d;margin:0 0 13px;line-height:1.5}.home-next-call .outline{width:100%;background:#f8eee5;border-color:#ecd8c6;color:#a8532d}

@media(max-width:1100px) and (min-width:821px){.premium-home-grid{grid-template-columns:1fr}.home-side-column{grid-template-columns:1fr 1fr}.home-trade-row{grid-template-columns:1fr 1fr 70px 60px}}
@media(max-width:820px){
  .premium-home{padding-top:8px}.home-welcome-row{margin:0 2px 16px;align-items:flex-start}.home-welcome-row h1{font-size:30px}.home-date{font-size:9px}.home-session{font-size:10px}.home-quote{display:none}.home-image-header{height:132px;border-radius:10px;margin-bottom:11px}.premium-home-grid{grid-template-columns:1fr;gap:10px}.home-side-column{gap:10px}.premium-panel-head{padding:14px}.home-trade-row{grid-template-columns:1fr auto;padding:13px 14px;gap:7px}.home-trade-thesis,.home-trade-levels{display:none}.home-trade-result{font-size:16px}.premium-panel-head h2{font-size:18px}
}
.home-trade-row{width:100%;border:0;background:transparent;text-align:left;color:inherit;font:inherit;cursor:pointer}

/* GCA 1.7.2 polish */
.nav-icon{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.rail-item .nav-icon{width:17px;height:17px;margin:auto}
.mobile-nav .nav-icon{width:20px;height:20px}
.gca-mobile-menu-nav .nav-icon{width:19px;height:19px}
.home-image-header{height:150px;background-image:linear-gradient(90deg,rgba(12,14,13,.06),rgba(12,14,13,0)),url('assets/gca-dashboard-header-clean.jpg');background-position:center;background-size:cover}
.home-image-header:after{content:none}
body:not(.community-active) .rail-profile .avatar.has-photo{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
@media(max-width:760px){.home-image-header{height:104px;background-position:center}}


/* ==========================================================
   GCA 1.8.0 — ACADEMY V2 / CLASSROOM
   ========================================================== */
.academy-v2-header{display:flex;justify-content:space-between;align-items:flex-end;margin:4px 0 20px}.academy-v2-header h2{font:500 34px 'Playfair Display',serif;margin:2px 0 4px}.academy-v2-header .muted{font-size:10px}.academy-head-actions{display:flex;gap:8px}.academy-library-intro{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding:0 0 12px;margin-bottom:14px}.academy-library-intro span{display:block;font-size:7px;letter-spacing:1.8px;color:#a06a49}.academy-library-intro strong{display:block;font:500 17px 'Playfair Display',serif;margin-top:4px}.academy-library-intro p{font-size:8px;color:var(--muted);margin:0}.academy-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.academy-v2-card{padding:0;overflow:hidden;min-height:260px;border-radius:14px;transition:.2s transform,.2s box-shadow}.academy-v2-card:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(35,27,20,.09)}.academy-card-cover{height:116px;background:linear-gradient(145deg,#171b19,#35271e);background-size:cover;background-position:center;position:relative;padding:13px}.academy-card-cover:after{content:"";position:absolute;inset:auto 14px 15px auto;width:66px;height:38px;background:linear-gradient(90deg,transparent 8%,rgba(215,143,91,.8) 9% 11%,transparent 12% 28%,rgba(215,143,91,.65) 29% 32%,transparent 33% 52%,rgba(215,143,91,.9) 53% 56%,transparent 57%);opacity:.7}.academy-card-index{position:absolute;left:14px;bottom:10px;font:500 30px 'Playfair Display',serif;color:rgba(255,255,255,.9)}.academy-access-pill{position:absolute;right:12px;top:11px;font-size:6px;letter-spacing:1px;color:#f3e6dc;border:1px solid rgba(255,255,255,.25);padding:4px 6px;border-radius:999px;background:rgba(0,0,0,.18)}.academy-card-body{padding:14px 15px 15px;display:flex;flex-direction:column;min-height:142px}.academy-card-body h3{font:500 16px 'Playfair Display',serif;margin:0 0 4px}.academy-card-body p{font-size:8px;line-height:1.45;min-height:24px}.academy-card-meta{display:flex;gap:10px;margin:9px 0;color:#918a82;font-size:7px}.academy-v2-card .course-progress{margin-top:auto}.academy-v2-card small{font-size:6px;letter-spacing:.5px}.academy-grid-hidden{display:none!important}.academy-v2-detail{display:none;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.academy-v2-detail.is-open{display:block}.academy-classroom-head{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:14px}.academy-back{border:0;background:none;font-size:8px;color:#8d6b55;padding:0;cursor:pointer}.academy-classroom-head h2{font:500 25px 'Playfair Display',serif;margin:2px 0}.academy-classroom-head p{font-size:8px;color:var(--muted);margin:0}.academy-course-progress{text-align:right}.academy-course-progress strong{display:block;font:500 24px 'Playfair Display',serif}.academy-course-progress small{font-size:6px;letter-spacing:1px;color:var(--muted)}.academy-classroom{display:grid;grid-template-columns:285px minmax(0,1fr);min-height:520px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 16px 45px rgba(40,31,23,.05)}.academy-curriculum{background:#f7f4ee;border-right:1px solid var(--line);padding:14px}.curriculum-top{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 12px;font-size:7px;letter-spacing:1.3px;color:#7d766e}.outline.mini{padding:4px 7px;font-size:7px}.academy-module-block{border-top:1px solid #e5dfd6;padding:11px 0 3px}.academy-module-head{display:flex;justify-content:space-between;align-items:center;padding:0 2px 7px}.academy-module-head>div span{display:block;font-size:6px;letter-spacing:1.2px;color:#a06a49}.academy-module-head strong{font-size:9px;font-weight:600}.academy-module-head button{border:0;background:none;font-size:15px;color:#9b7258;cursor:pointer}.academy-lesson-row{width:100%;display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center;text-align:left;border:0;background:transparent;border-radius:8px;padding:8px;cursor:pointer}.academy-lesson-row:hover,.academy-lesson-row.is-active{background:#fff}.academy-lesson-row.is-active{box-shadow:inset 2px 0 #c76d38}.lesson-status{width:20px;height:20px;border:1px solid #d7d0c7;border-radius:50%;display:grid;place-items:center;font-size:6px;color:#8f857b}.academy-lesson-row strong,.academy-lesson-row small{display:block}.academy-lesson-row strong{font-size:8px;font-weight:500}.academy-lesson-row small{font-size:6px;color:#999187;margin-top:2px}.academy-no-lessons{font-size:7px;color:#999187;padding:7px 9px}.academy-player-host{min-width:0;background:#fff}.lesson-video-shell{aspect-ratio:16/8.7;background:#111}.lesson-video-shell iframe{width:100%;height:100%;border:0}.lesson-video-placeholder{aspect-ratio:16/7.5;background:radial-gradient(circle at 75% 30%,#4b3425 0,#171b19 38%,#0e1110 100%);display:grid;place-content:center;text-align:center;color:#f5eee6}.lesson-video-placeholder span{font:500 46px 'Playfair Display',serif}.lesson-video-placeholder small{font-size:7px;letter-spacing:4px}.lesson-player-copy{padding:22px 24px 26px}.lesson-kicker{display:flex;gap:10px;font-size:6px;letter-spacing:1.5px;color:#a06a49}.lesson-player-copy h2{font:500 25px 'Playfair Display',serif;margin:7px 0}.lesson-player-copy p{font-size:9px;color:#6f6963;line-height:1.7;max-width:680px}.lesson-resource{display:inline-block;margin:8px 0;color:#a65f37;font-size:8px;text-decoration:none;border-bottom:1px solid #d8b69f}.lesson-player-actions{display:flex;gap:8px;margin-top:17px}.academy-player-empty{padding:70px 35px;text-align:center}.academy-player-empty h3{font:500 24px 'Playfair Display',serif;margin:7px}.academy-player-empty p{font-size:9px;color:var(--muted)}.academy-empty{grid-column:1/-1;border:1px dashed #d7cfc5;border-radius:14px;padding:42px;text-align:center}.academy-empty>span{font-size:7px;letter-spacing:2px;color:#a06a49}.academy-empty h3{font:500 22px 'Playfair Display',serif;margin:7px}.academy-empty p{font-size:9px;color:var(--muted)}.academy-builder-v2{padding:12px 14px!important;border:1px solid var(--line);border-radius:10px;margin-bottom:10px}.academy-builder-v2 .builder-course-head{padding:2px 0 10px}.academy-builder-v2 .module-admin{border-top:1px solid var(--line);padding:9px 0 0 14px}.academy-builder-v2 .module-admin-head{display:flex;justify-content:space-between;align-items:center}.academy-builder-v2 .module-admin-head>div{display:flex;gap:8px;align-items:center}.academy-builder-v2 .module-admin-head span{font:500 11px 'Playfair Display',serif;color:#a99f94}.lesson-admin-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee9e1;padding:7px 0 7px 20px;font-size:8px}.lesson-admin-row b{font:500 9px 'Playfair Display',serif;color:#aaa198;margin-right:5px}.lesson-admin-row small{font-size:6px;color:#9b948b;margin-left:5px}.builder-empty-row{font-size:7px;color:#999187;padding:8px 0 8px 20px}.academy-check{display:flex!important;align-items:center;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px}.academy-check input{width:auto!important;margin:0!important}
@media(max-width:1050px){.academy-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-classroom{grid-template-columns:235px 1fr}}
@media(max-width:720px){.academy-v2-header{align-items:flex-start;gap:12px}.academy-v2-header h2{font-size:28px}.academy-head-actions{flex-direction:column}.academy-library-intro p{display:none}.academy-v2-grid{grid-template-columns:1fr}.academy-classroom-head{grid-template-columns:1fr auto}.academy-classroom-head .academy-back{grid-column:1/-1;text-align:left}.academy-classroom{grid-template-columns:1fr}.academy-curriculum{border-right:0;border-bottom:1px solid var(--line);max-height:310px;overflow:auto}.lesson-player-copy{padding:18px}.lesson-video-placeholder span{font-size:36px}}

/* =========================================================
   GCA 1.8.1 — Classroom editor / Skool-inspired lesson UX
   ========================================================= */
/* Academy now uses the same clean sans-serif language as the main rail. */
.academy-v2-header h2,
.academy-library-intro strong,
.academy-card-index,
.academy-card-body h3,
.academy-classroom-head h2,
.academy-course-progress strong,
.academy-player-empty h3,
.academy-empty h3,
.academy-builder-v2 .module-admin-head span,
.lesson-player-copy h2{font-family:'DM Sans',Arial,sans-serif!important;font-style:normal!important}
.academy-v2-header h2{font-size:29px!important;font-weight:600!important;letter-spacing:-.7px}
.academy-library-intro strong{font-size:15px!important;font-weight:600!important;letter-spacing:-.25px}
.academy-card-body h3{font-size:15px!important;font-weight:600!important;letter-spacing:-.25px}
.academy-card-index{font-size:26px!important;font-weight:500!important}
.academy-classroom-head h2{font-size:22px!important;font-weight:600!important;letter-spacing:-.45px}
.academy-course-progress strong{font-size:22px!important;font-weight:600!important}
.academy-module-head strong,.academy-lesson-row strong{font-family:'DM Sans',Arial,sans-serif;font-weight:500}

.lesson-editor-modal{align-items:center!important;padding:22px!important;background:rgba(22,22,20,.34)!important;backdrop-filter:blur(5px)}
.lesson-editor-card{width:min(1080px,96vw)!important;max-width:1080px!important;max-height:92vh!important;overflow:auto!important;padding:0!important;border-radius:16px!important;background:#fff!important;border:1px solid #d8d8d5!important;box-shadow:0 24px 80px rgba(20,20,18,.18)!important}
.lesson-editor-topline{display:flex;justify-content:space-between;align-items:center;padding:22px 30px 10px}.lesson-editor-topline h2{font:600 16px 'DM Sans',Arial,sans-serif;margin:0}.lesson-editor-topline .eyebrow{margin-bottom:4px}.lesson-editor-close{width:34px;height:34px;border:0;background:#f4f3f0;border-radius:50%;font-size:21px;color:#686863}
#academyItemForm{display:block!important;padding:0 30px 26px!important}.lesson-title-field{padding:8px 0 14px}.lesson-title-field input{border:0!important;background:transparent!important;border-radius:0!important;padding:5px 0!important;font:700 30px/1.15 'DM Sans',Arial,sans-serif!important;letter-spacing:-1px;box-shadow:none!important}.lesson-title-field input::placeholder{color:#272725;opacity:1}
.gca-rich-editor-shell{border:1px solid #d8d8d5;border-radius:13px;overflow:hidden;background:#fff;box-shadow:0 3px 12px rgba(20,20,18,.04)}.gca-rich-toolbar{min-height:62px;display:flex;align-items:center;gap:3px;padding:8px 12px;background:#fafafa;border-bottom:1px solid #ececea;overflow-x:auto}.gca-rich-toolbar button{flex:0 0 42px;height:42px;border:0;background:transparent;border-radius:9px;color:#6f706e;font:600 17px 'DM Sans',Arial,sans-serif;display:grid;place-items:center}.gca-rich-toolbar button:hover{background:#ececeb;color:#20211f}.gca-rich-toolbar button span{font-size:10px;vertical-align:sub}.gca-rich-toolbar button em,.gca-rich-toolbar button s{font-size:19px}.gca-rich-toolbar i{width:1px;height:36px;background:#e0e0de;margin:0 7px;flex:0 0 1px}.gca-rich-editor{min-height:245px;padding:28px 34px;outline:none;font:400 14px/1.75 'DM Sans',Arial,sans-serif;color:#252624}.gca-rich-editor:empty:before{content:attr(data-placeholder);color:#aaa9a5;pointer-events:none}.gca-rich-editor h1,.gca-rich-editor h2,.gca-rich-editor h3,.gca-rich-editor h4{font-family:'DM Sans',Arial,sans-serif;margin:14px 0 7px;line-height:1.2}.gca-rich-editor h1{font-size:28px}.gca-rich-editor h2{font-size:23px}.gca-rich-editor h3{font-size:19px}.gca-rich-editor h4{font-size:16px}.gca-rich-editor p{margin:8px 0}.gca-rich-editor blockquote{border-left:3px solid #c86a3a;margin:12px 0;padding:5px 0 5px 14px;color:#65655f}.gca-rich-editor pre{background:#f4f3f0;padding:12px;border-radius:8px;overflow:auto}.gca-rich-editor code{background:#f1efeb;padding:2px 5px;border-radius:4px}.gca-rich-editor img{max-width:100%;height:auto;border-radius:10px;margin:12px 0}.gca-rich-editor hr{border:0;border-top:1px solid #e1dfda;margin:22px 0}
.lesson-media-panel{margin-top:14px;border:1px solid #e1dfda;border-radius:11px;padding:14px;background:#fbfaf8}.lesson-media-grid{display:grid;grid-template-columns:1fr 160px;gap:12px}.lesson-media-panel label,.lesson-resource-fields label{font-size:8px;font-weight:600;color:#77736d}.lesson-media-panel input,.lesson-resource-fields input{width:100%;margin-top:6px;border:1px solid #d8d5cf;border-radius:8px;background:#fff;padding:10px 11px;font-size:10px;outline:none}.lesson-media-panel input:focus,.lesson-resource-fields input:focus{border-color:#b5a99e;box-shadow:0 0 0 3px rgba(200,106,58,.07)}.academy-video-preview{margin-top:13px}.academy-video-preview.hidden{display:none!important}.academy-video-preview-frame{width:min(560px,100%);aspect-ratio:16/9;background:#111;border-radius:10px;overflow:hidden}.academy-video-preview-frame iframe{width:100%;height:100%;border:0}.academy-video-preview>small{display:block;margin-top:6px;color:#8a8781;font-size:8px}.video-preview-error{padding:11px;border-radius:8px;background:#fff3ef;color:#a8532d;font-size:9px}
.lesson-resource-fields{margin-top:12px}.lesson-editor-footer{position:relative;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:18px;margin-top:20px;padding-top:17px;border-top:1px solid #e5e2dc}.lesson-add-wrap{position:relative}.lesson-add-btn{height:42px;min-width:120px;border:1px solid #d8d8d5;background:#fff;border-radius:8px;color:#777773;font-size:11px;font-weight:700;letter-spacing:.2px}.lesson-add-btn span{font-size:16px;margin-left:15px}.lesson-add-menu{position:absolute;left:0;bottom:50px;width:245px;padding:7px;background:#fff;border:1px solid #d8d8d5;border-radius:10px;box-shadow:0 14px 40px rgba(20,20,18,.14);z-index:4}.lesson-add-menu.hidden{display:none!important}.lesson-add-menu button{width:100%;display:block;text-align:left;border:0;background:#fff;border-radius:7px;padding:9px 10px}.lesson-add-menu button:hover{background:#f4f3f0}.lesson-add-menu strong,.lesson-add-menu small{display:block}.lesson-add-menu strong{font-size:10px;color:#292a28}.lesson-add-menu small{font-size:8px;color:#92908a;margin-top:2px}.lesson-publish-toggle{justify-self:end;display:flex!important;align-items:center;gap:12px!important;font-size:11px!important;font-weight:700!important;color:#3d9a61!important;margin:0!important}.lesson-publish-toggle input{position:absolute;opacity:0;pointer-events:none}.lesson-publish-toggle i{position:relative;width:48px;height:27px;border-radius:999px;background:#d8d8d5;transition:.2s}.lesson-publish-toggle i:after{content:"";position:absolute;width:23px;height:23px;left:2px;top:2px;background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.16);transition:.2s}.lesson-publish-toggle input:checked+i{background:#93d2b2}.lesson-publish-toggle input:checked+i:after{transform:translateX(21px);background:#3fa365}.lesson-cancel-btn,.lesson-save-btn{height:42px;border:0;border-radius:8px;font-size:11px;font-weight:700;padding:0 22px}.lesson-cancel-btn{background:transparent;color:#777773}.lesson-save-btn{background:#c86a3a;color:#fff;min-width:112px}.lesson-save-btn:hover{background:#a8532d}
.lesson-page-title{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 22px;border-bottom:1px solid #ece9e4;background:#fff}.lesson-page-title h2{margin:0;font:600 20px 'DM Sans',Arial,sans-serif;letter-spacing:-.45px}.lesson-page-title>div{display:flex;gap:7px}.lesson-page-icon{width:34px;height:34px;border:1px solid #d8d8d5;background:#fff;border-radius:50%;display:grid;place-items:center;color:#8b8b87;font-size:17px}.lesson-page-icon.done{border-color:#5aae78;color:#3d9a61;background:#f0faf4}.lesson-rich-content{font:400 10px/1.75 'DM Sans',Arial,sans-serif;color:#5f5d58;max-width:720px}.lesson-rich-content p{font-size:10px!important;line-height:1.75!important;max-width:none!important}.lesson-rich-content h1,.lesson-rich-content h2,.lesson-rich-content h3,.lesson-rich-content h4{font-family:'DM Sans',Arial,sans-serif;color:#242522;margin:18px 0 7px}.lesson-rich-content h1{font-size:22px}.lesson-rich-content h2{font-size:18px}.lesson-rich-content h3{font-size:15px}.lesson-rich-content h4{font-size:12px}.lesson-rich-content img{max-width:100%;border-radius:10px;margin:12px 0}.lesson-rich-content blockquote{border-left:2px solid #c86a3a;padding-left:12px;margin-left:0}.lesson-rich-content pre{background:#f5f3ef;padding:12px;border-radius:8px;overflow:auto}

@media(max-width:720px){.lesson-editor-modal{padding:0!important}.lesson-editor-card{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important}.lesson-editor-topline{padding:18px 18px 8px}#academyItemForm{padding:0 18px 24px!important}.lesson-title-field input{font-size:26px!important}.gca-rich-toolbar{min-height:54px;padding:6px 7px}.gca-rich-toolbar button{flex-basis:38px;height:38px}.gca-rich-editor{min-height:220px;padding:22px 18px}.lesson-media-grid{grid-template-columns:1fr}.lesson-editor-footer{grid-template-columns:1fr auto auto;gap:7px}.lesson-add-wrap{grid-column:1/-1}.lesson-add-btn{width:100%}.lesson-publish-toggle{justify-self:start}.lesson-cancel-btn,.lesson-save-btn{padding:0 14px}.lesson-page-title{padding:15px}.lesson-page-title h2{font-size:17px}}

/* =========================================================
   GCA 1.8.2 — Skool-style curriculum polish + media uploads
   ========================================================= */
.course-card.academy-v2-card{position:relative;display:block;background:#fff}.course-card-open{width:100%;height:100%;display:block;border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer}.academy-v2-card>.academy-more-btn{position:absolute;right:11px;bottom:11px;z-index:3}
.academy-more-btn{width:34px;height:30px;border:0;background:transparent;border-radius:8px;color:#777;font:700 14px/1 'DM Sans',sans-serif;letter-spacing:1px;cursor:pointer}.academy-more-btn:hover{background:#ebe9e5;color:#222}.academy-course-head-actions{display:flex;align-items:center;gap:10px}.academy-module-actions{display:flex;align-items:center;gap:2px}.academy-module-actions .academy-more-btn{font-size:12px;width:31px;height:28px}.academy-lesson-row-wrap{position:relative;display:flex;align-items:center;border-radius:10px}.academy-lesson-row-wrap:hover{background:#fff}.academy-lesson-row-wrap .academy-lesson-row{flex:1;min-width:0}.academy-lesson-row-wrap>.academy-more-btn{flex:0 0 32px;opacity:.18}.academy-lesson-row-wrap:hover>.academy-more-btn,.academy-lesson-row-wrap>.academy-more-btn:focus{opacity:1}
/* Make the curriculum readable at normal desktop size, like a real classroom rather than metadata. */
.academy-classroom{grid-template-columns:360px minmax(0,1fr)}.academy-curriculum{padding:18px 15px}.curriculum-top{font-size:10px;padding:2px 7px 14px}.outline.mini{font-size:10px;padding:6px 9px}.academy-module-block{padding:15px 0 6px}.academy-module-head{padding:0 7px 9px}.academy-module-head>div span{font-size:8px;letter-spacing:1.25px;margin-bottom:3px}.academy-module-head strong{font-size:16px!important;font-weight:700!important;letter-spacing:-.2px}.academy-lesson-row{grid-template-columns:28px 1fr;gap:10px;padding:10px 8px}.lesson-status{width:23px;height:23px;font-size:8px}.academy-lesson-row strong{font-size:14px!important;line-height:1.3;font-weight:500!important}.academy-lesson-row small{font-size:9px;margin-top:3px}.academy-no-lessons{font-size:10px;padding:9px}.lesson-video-shell video,.academy-video-preview-frame video{width:100%;height:100%;display:block;background:#111;object-fit:contain}
.academy-youtube-thumb{position:relative;width:min(560px,100%);aspect-ratio:16/9;border-radius:11px;overflow:hidden;background:#111}.academy-youtube-thumb img{width:100%;height:100%;display:block;object-fit:cover}.academy-play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:42px;border-radius:12px;background:rgba(0,0,0,.78);color:#fff;display:grid;place-items:center;font-size:18px;padding-left:3px;box-shadow:0 8px 24px rgba(0,0,0,.2)}
.academy-action-menu{position:fixed;z-index:10050;width:220px;padding:8px;background:#fff;border:1px solid #dedbd5;border-radius:13px;box-shadow:0 18px 50px rgba(20,20,18,.18);font-family:'DM Sans',sans-serif}.academy-action-menu button{display:block;width:100%;border:0;background:#fff;border-radius:8px;text-align:left;padding:11px 13px;font-size:13px;font-weight:600;color:#292a28;cursor:pointer}.academy-action-menu button:hover{background:#f2f1ee}.academy-action-menu button.danger{color:#d54d3f}.academy-action-menu i{display:block;height:1px;background:#ece9e3;margin:5px 7px}
.academy-confirm-overlay{position:fixed;inset:0;z-index:11000;background:rgba(20,20,18,.34);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px}.academy-confirm-card{width:min(430px,94vw);background:#fff;border:1px solid #ddd9d2;border-radius:16px;box-shadow:0 24px 70px rgba(20,20,18,.2);padding:25px}.academy-confirm-card h3{font:700 20px 'DM Sans',sans-serif;margin:0 0 8px}.academy-confirm-card p{font:400 13px/1.55 'DM Sans',sans-serif;color:#77736d;margin:0 0 22px}.academy-confirm-card>div:last-child{display:flex;justify-content:flex-end;gap:8px}.academy-danger-btn{height:42px;border:0;border-radius:8px;padding:0 18px;background:#d84f40;color:#fff;font:700 11px 'DM Sans',sans-serif}.academy-choice-list{display:grid;gap:6px;margin:15px 0 20px}.academy-choice-list button{border:1px solid #dedbd5;background:#fff;border-radius:9px;padding:11px 12px;text-align:left;font:600 12px 'DM Sans',sans-serif}.academy-choice-list button:hover{background:#f4f2ee}
.academy-media-modal{z-index:10500!important;background:rgba(22,22,20,.42)!important;backdrop-filter:blur(5px)}.academy-media-card{width:min(620px,94vw)!important;max-width:620px!important;padding:25px!important;border-radius:16px!important}.academy-media-card .modal-head{margin-bottom:18px}.academy-media-card .modal-head h2{font:700 24px 'DM Sans',sans-serif}.media-url-label{display:block;font:600 10px 'DM Sans',sans-serif;color:#686761}.media-url-label input{width:100%;margin-top:7px;border:1px solid #cbc9c4;border-radius:9px;padding:13px 14px;font:400 13px 'DM Sans',sans-serif;outline:none}.media-url-label input:focus{border-color:#a9a49b;box-shadow:0 0 0 3px rgba(200,106,58,.07)}.media-or{display:flex;align-items:center;gap:10px;margin:15px 0;color:#aaa;font:700 9px 'DM Sans',sans-serif}.media-or:before,.media-or:after{content:"";height:1px;background:#e4e1db;flex:1}.academy-upload-zone{min-height:190px;border:2px dashed #aaa8a2;border-radius:12px;background:#fbfbfa;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;text-align:center;color:#85837e}.academy-upload-zone:hover{background:#f6f4f0;border-color:#8e8a82}.academy-upload-zone .upload-icon{font-size:30px;line-height:1}.academy-upload-zone strong{font:600 14px 'DM Sans',sans-serif;color:#66645f}.academy-upload-zone small{font:500 12px 'DM Sans',sans-serif;text-decoration:underline}.academy-upload-zone em{font:400 9px 'DM Sans',sans-serif;color:#aaa;font-style:normal;margin-top:4px}.academy-media-modal-preview{margin-top:14px;border:1px solid #e2dfd9;border-radius:11px;padding:10px;background:#faf9f7}.academy-media-modal-preview.hidden{display:none}.academy-media-modal-preview video,.academy-media-modal-preview img{display:block;max-width:100%;max-height:300px;margin:auto;border-radius:8px}.academy-media-modal-preview>small,.academy-media-modal-preview>strong{display:block;font:500 10px 'DM Sans',sans-serif;color:#777;margin-top:7px}.academy-media-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.academy-builder-v2 .builder-course-head h4{font:700 17px 'DM Sans',sans-serif!important}.academy-builder-v2 .builder-course-head small{font-size:10px}.academy-builder-v2 .module-admin{padding-top:12px}.academy-builder-v2 .module-admin-head strong{font:700 14px 'DM Sans',sans-serif}.lesson-admin-row{font-size:12px;padding:10px 0 10px 24px}.lesson-admin-row small{font-size:9px}
@media(max-width:1050px){.academy-classroom{grid-template-columns:300px 1fr}.academy-module-head strong{font-size:14px!important}.academy-lesson-row strong{font-size:12px!important}}
@media(max-width:720px){.academy-classroom{grid-template-columns:1fr}.academy-curriculum{max-height:390px}.academy-module-head strong{font-size:15px!important}.academy-lesson-row strong{font-size:13px!important}.academy-lesson-row-wrap>.academy-more-btn{opacity:.7}.academy-media-card{padding:18px!important}.academy-upload-zone{min-height:150px}}
.academy-upload-zone.is-dragging{background:#f2ece6;border-color:#c86a3a;box-shadow:0 0 0 4px rgba(200,106,58,.08)}

/* =========================================================
   GCA 1.8.3 — SKOOL-LIKE CLASSROOM INTERACTION POLISH
   ========================================================= */
/* Keep section/classroom typography aligned with the clean DM Sans sidebar. */
.academy-v2-header h2,.academy-library-intro strong,.academy-card-body h3,
.academy-classroom-head h2,.academy-course-progress strong,.academy-player-empty h3{
  font-family:'DM Sans',Arial,sans-serif!important;
  font-weight:600!important;
  letter-spacing:-.45px;
}
.academy-v2-header h2{font-size:31px!important}.academy-library-intro strong{font-size:17px!important}.academy-card-body h3{font-size:16px!important}
.academy-classroom-head h2{font-size:24px!important}.academy-course-progress strong{font-size:23px!important}

/* Folder rows: no + shortcut. Admin actions live in the ••• menu, like Skool. */
.academy-module-actions{min-width:34px;justify-content:flex-end}.academy-module-actions>.academy-more-btn{opacity:.72;background:#ebeae7;border-radius:50%;width:38px;height:38px}
.academy-module-actions>.academy-more-btn:hover{opacity:1;background:#deddda}.academy-module-head{min-height:46px}.academy-module-head strong{font-size:17px!important}.academy-module-head>div span{font-size:7px}

/* Completed state: one consistent green circle/check in title + curriculum. */
.lesson-status.is-complete{border:0;background:#08a866;color:#fff;width:25px;height:25px;font-size:15px;font-weight:800;box-shadow:none}
.lesson-status.is-complete b{font:800 15px/1 'DM Sans',sans-serif;transform:translateY(-.5px)}
.lesson-complete-check{width:39px;height:39px;border:2px solid #d6d6d3;background:#fff;border-radius:50%;display:grid;place-items:center;color:transparent;padding:0;transition:.15s ease}
.lesson-complete-check span{font:800 21px/1 'DM Sans',sans-serif}.lesson-complete-check:hover{border-color:#08a866;color:#08a866}.lesson-complete-check.done{border-color:#08a866;background:#08a866;color:#fff}
.lesson-complete-text{border:0;background:transparent;color:#77736d;font-size:10px;font-weight:600;padding:7px 0}.lesson-complete-text:hover{color:#08a866}.lesson-page-title>div{align-items:center}

/* YouTube preview should be impossible to miss in the editor/modal. */
.academy-video-preview:not(.hidden){display:block!important;background:#f7f6f3;border:1px solid #dedbd5;border-radius:12px;padding:11px}
.academy-youtube-thumb{width:min(620px,100%)!important;background:#151515}.academy-youtube-thumb img{background:#202020}

/* Real upload feedback. Supabase's browser upload API doesn't expose byte progress,
   so this is intentionally an indeterminate upload state rather than fake percentages. */
.academy-upload-status{position:fixed;inset:0;z-index:20000;background:rgba(24,24,22,.48);backdrop-filter:blur(5px);display:none;place-items:center;padding:24px}
.academy-upload-status.show{display:grid}.academy-upload-status-card{width:min(640px,94vw);min-height:410px;background:#e8e8e8;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:38px;color:#232323;box-shadow:0 30px 90px rgba(0,0,0,.2)}
.academy-upload-status-card strong{font:600 25px 'DM Sans',sans-serif;margin-top:24px}.academy-upload-status-card span{font:500 12px 'DM Sans',sans-serif;color:#555;margin-top:8px;max-width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.academy-upload-status-card small{font:400 11px 'DM Sans',sans-serif;color:#777;margin-top:9px}
.academy-upload-spinner{width:90px;height:90px;border:10px solid #fff;border-radius:50%;position:relative;animation:gcaUploadSpin 1s linear infinite}.academy-upload-spinner i{position:absolute;width:16px;height:16px;border-radius:50%;background:#c86a3a;left:50%;top:-13px;transform:translateX(-50%)}
.academy-upload-done{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#08a866;color:#fff;font:800 42px/1 'DM Sans',sans-serif}
@keyframes gcaUploadSpin{to{transform:rotate(360deg)}}

/* Menus closer to the Skool references: larger and easier to scan. */
.academy-action-menu{width:250px;padding:10px;border-radius:15px}.academy-action-menu button{padding:13px 15px;font-size:14px}.academy-action-menu button.danger{color:#ef5143}

@media(max-width:720px){.academy-v2-header h2{font-size:27px!important}.academy-module-head strong{font-size:16px!important}.academy-upload-status-card{min-height:330px}.academy-upload-status-card strong{font-size:21px}}

/* =========================================================
   GCA 1.8.4 — Classroom scale + Skool-inspired readability
   ========================================================= */
/* The classroom now reads like a learning product, not a compact admin dashboard. */
.academy-library-intro{padding-bottom:18px;margin-bottom:22px}
.academy-library-intro span{font-size:10px!important;letter-spacing:2px}
.academy-library-intro strong{font-size:23px!important;margin-top:7px}
.academy-library-intro p{font-size:12px!important}

.academy-classroom-head{grid-template-columns:120px minmax(0,1fr) auto;gap:24px;padding:8px 0 24px;margin-bottom:22px;align-items:end}
.academy-back{font:600 13px 'DM Sans',sans-serif!important;color:#7d6c61!important;align-self:center}
.academy-classroom-head .eyebrow{font-size:9px!important;letter-spacing:2px}
.academy-classroom-head h2{font-size:34px!important;line-height:1.08;margin:6px 0 7px!important}
.academy-classroom-head p{font:400 14px/1.45 'DM Sans',sans-serif!important;color:#807a73!important}
.academy-course-progress strong{font-size:31px!important}.academy-course-progress small{font-size:8px!important}

/* Wider curriculum, larger type, active cream row, checks on the RIGHT like the reference. */
.academy-classroom{grid-template-columns:400px minmax(0,1fr);border-radius:18px;min-height:650px;background:#fff}
.academy-curriculum{background:#fbfaf8;padding:26px 20px 30px}
.curriculum-top{font:600 11px 'DM Sans',sans-serif;letter-spacing:1.5px;padding:0 4px 18px;color:#8b837b}
.academy-module-block{border-top:0;padding:12px 0 15px}
.academy-module-head{padding:0 5px 11px;min-height:48px}
.academy-module-head>div span{font:600 8px 'DM Sans',sans-serif;letter-spacing:1.5px;color:#b07a5c;margin-bottom:6px}
.academy-module-head strong{font:700 18px/1.25 'DM Sans',sans-serif!important;color:#252624}
.academy-module-actions{gap:6px}.folder-chevron{font:700 18px/1 'DM Sans',sans-serif;color:#92918d;transform:translateY(-1px)}
.academy-module-actions>.academy-more-btn{width:38px;height:38px;background:#ededeb;color:#3a3a38;opacity:1}
.academy-lesson-list{display:grid;gap:4px}
.academy-lesson-row-wrap{min-width:0}
.academy-lesson-row{display:grid!important;grid-template-columns:minmax(0,1fr) 30px!important;gap:12px!important;padding:13px 12px!important;border-radius:11px!important;min-height:51px}
.academy-lesson-row:hover{background:#f5f3ef!important}.academy-lesson-row.is-active{background:#f9dda0!important;box-shadow:none!important}
.academy-lesson-label{min-width:0;display:block}.academy-lesson-label strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 16px/1.35 'DM Sans',sans-serif!important;color:#292a28}
.academy-lesson-label small{display:block;font:600 9px 'DM Sans',sans-serif!important;color:#b06443;margin-top:3px}
.lesson-status{justify-self:end;align-self:center}.lesson-status.is-empty{border:0;background:transparent;width:25px;height:25px}
.lesson-status.is-complete{width:26px;height:26px!important;font-size:16px!important}.lesson-status.is-complete b{font-size:16px!important}
.academy-lesson-row-wrap>.academy-more-btn{position:absolute;right:-5px;top:50%;transform:translate(100%,-50%);z-index:2;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.07);opacity:0}
.academy-lesson-row-wrap:hover>.academy-more-btn{opacity:1}

/* Player card mirrors the visual weight of the reference. */
.academy-player-host{padding:24px;background:#f7f6f3}
.academy-lesson-player{background:#fff;border:1px solid #dfddd8;border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(20,20,18,.02)}
.lesson-page-title{padding:24px 28px 20px!important;display:flex;justify-content:space-between;align-items:center;gap:20px}
.lesson-page-title h2{font:700 26px/1.2 'DM Sans',sans-serif!important;letter-spacing:-.45px;margin:0!important;color:#252624}
.lesson-page-title>div{display:flex;gap:12px}.lesson-page-icon{font-size:23px!important}
.lesson-video-shell{aspect-ratio:16/9!important;margin:0 28px;border-radius:13px;overflow:hidden;background:#111;position:relative}
.lesson-youtube-shell .academy-youtube-thumb{width:100%!important;height:100%;border-radius:0!important;cursor:pointer}
.lesson-youtube-shell .academy-youtube-thumb img{object-fit:cover}
.lesson-youtube-shell iframe{width:100%;height:100%;border:0;display:block}
.academy-youtube-thumb.is-interactive:hover img{transform:scale(1.01);filter:brightness(.94)}.academy-youtube-thumb img{transition:.18s ease}
.academy-play-badge{width:84px!important;height:58px!important;border-radius:17px!important;font-size:25px!important;background:#202124!important}
.academy-youtube-hint{position:absolute;left:50%;top:calc(50% + 54px);transform:translateX(-50%);font:600 11px 'DM Sans',sans-serif;color:#fff;background:rgba(0,0,0,.62);padding:5px 9px;border-radius:999px;opacity:0;transition:.15s}.academy-youtube-thumb:hover .academy-youtube-hint{opacity:1}
.youtube-fallback-link{position:absolute;right:12px;bottom:10px;z-index:3;background:rgba(20,20,20,.82);color:#fff;text-decoration:none;padding:7px 10px;border-radius:8px;font:600 10px 'DM Sans',sans-serif}

.lesson-player-copy{padding:26px 30px 30px!important}.lesson-kicker{font:600 9px 'DM Sans',sans-serif!important;letter-spacing:1.7px!important;margin-bottom:10px}
.lesson-rich-content,.lesson-rich-content p,.lesson-player-copy p{font:400 16px/1.65 'DM Sans',sans-serif!important;color:#393a38!important;max-width:820px!important}
.lesson-rich-content h1{font-size:28px}.lesson-rich-content h2{font-size:24px}.lesson-rich-content h3{font-size:20px}.lesson-rich-content h4{font-size:17px}
.lesson-resource{font:600 14px 'DM Sans',sans-serif!important;margin:14px 0!important}.lesson-player-actions{margin-top:20px!important}.lesson-complete-text{font-size:13px!important}

/* Course cards also get readable supporting copy. */
.academy-card-body h3{font-size:20px!important}.academy-card-body p{font:400 12px/1.5 'DM Sans',sans-serif!important}.academy-card-meta{font-size:10px!important}.academy-v2-card small{font-size:8px!important}

@media(max-width:1180px){.academy-classroom{grid-template-columns:340px minmax(0,1fr)}.academy-lesson-label strong{font-size:14px!important}.lesson-page-title h2{font-size:23px!important}}
@media(max-width:720px){.academy-classroom-head{grid-template-columns:1fr auto}.academy-classroom-head .academy-back{grid-column:1/-1}.academy-classroom-head h2{font-size:29px!important}.academy-classroom-head p{font-size:13px!important}.academy-classroom{grid-template-columns:1fr}.academy-curriculum{max-height:440px}.academy-player-host{padding:12px}.lesson-page-title{padding:19px!important}.lesson-page-title h2{font-size:21px!important}.lesson-video-shell{margin:0 14px}.lesson-player-copy{padding:20px!important}.lesson-rich-content,.lesson-rich-content p,.lesson-player-copy p{font-size:15px!important}.academy-lesson-row-wrap>.academy-more-btn{right:3px;transform:translate(0,-50%);opacity:.65}.academy-lesson-row{padding-right:42px!important}}

/* =========================================================
   GCA 1.8.5 — Classroom alignment pass
   Skool-inspired spacing/alignment, while retaining GCA styling.
   ========================================================= */

/* Use a neutral off-white workspace instead of the previous cream cast. */
.app{background:#f7f7f5}
.content{background:#f7f7f5}
.rail{background:#fafaf8;border-right-color:#e4e4e1}

/* Course title now belongs to the curriculum as well, just above folders. */
.academy-curriculum{background:#f8f8f6!important;padding:24px 22px 30px!important}
.academy-curriculum-course{padding:0 5px 22px;margin-bottom:8px;border-bottom:1px solid #e5e5e2}
.academy-curriculum-course-line{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:10px;align-items:center;min-height:42px}
.academy-curriculum-course-line h3{min-width:0;margin:0;font:700 19px/1.25 'DM Sans',Arial,sans-serif;color:#252624;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.academy-curriculum-course-line>.academy-more-btn{position:static!important;transform:none!important;width:38px;height:38px;border:0;background:#ededeb;border-radius:50%;opacity:1;color:#393a38}
.academy-curriculum-progress{height:8px;background:#e1e2df;border-radius:999px;overflow:hidden;margin:8px 0 7px}
.academy-curriculum-progress span{display:block;height:100%;border-radius:inherit;background:#08a866}
.academy-curriculum-course>small{font:600 10px 'DM Sans',Arial,sans-serif;color:#8b8c88}

/* Folder: title, ••• and collapse chevron all share one horizontal line. */
.academy-module-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:7px 5px 9px!important;min-height:52px!important}
.academy-folder-title{min-width:0}
.academy-folder-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.academy-module-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important;min-width:auto!important;white-space:nowrap}
.academy-module-actions>.academy-more-btn{position:static!important;transform:none!important;flex:0 0 38px}
.folder-toggle{width:32px;height:38px;display:grid;place-items:center;border:0;background:transparent;border-radius:8px;color:#8d8e8a;padding:0}
.folder-toggle:hover{background:#ececea;color:#2f302e}
.folder-chevron{display:block!important;font:700 18px/1 'DM Sans',sans-serif!important;transition:transform .18s ease;transform:translateY(-1px)!important}
.academy-module-block.is-collapsed .folder-chevron{transform:rotate(180deg) translateY(1px)!important}
.academy-module-block.is-collapsed .academy-lesson-list{display:none}

/* Lesson/page: content and its admin ••• occupy the same row, never float outside. */
.academy-lesson-row-wrap{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) 34px!important;gap:3px!important;align-items:center!important}
.academy-lesson-row-wrap>.academy-more-btn{position:static!important;right:auto!important;top:auto!important;transform:none!important;width:32px!important;height:38px!important;opacity:.58!important;background:transparent!important;box-shadow:none!important;border-radius:8px!important;color:#777874!important}
.academy-lesson-row-wrap:hover>.academy-more-btn{opacity:1!important;background:#ececea!important}
.academy-lesson-row{min-width:0!important;width:100%!important;padding:13px 12px!important}
.academy-lesson-row.is-active{background:#f8dda2!important}

/* Keep the lesson pane crisp white against the neutral workspace. */
.academy-player-host{background:#f7f7f5!important}
.academy-classroom{background:#fff!important;border-color:#e2e2df!important}
.academy-lesson-player{border-color:#dededb!important}

@media(max-width:720px){
  .academy-curriculum-course-line h3{font-size:18px}
  .academy-lesson-row-wrap{grid-template-columns:minmax(0,1fr) 34px!important}
  .academy-lesson-row-wrap>.academy-more-btn{opacity:.72!important}
}

/* =========================================================
   GCA 1.8.6 — focused subpages + flexible classroom flow
   ========================================================= */
@media (min-width:821px){
  body:not(.community-active).subpage-immersive .rail{
    transform:translateX(calc(-100% - 2px));
    transition:transform .28s cubic-bezier(.22,.8,.25,1),box-shadow .28s ease;
    box-shadow:none;
  }
  body:not(.community-active).subpage-immersive .content{
    margin-left:0!important;
    max-width:100%!important;
    transition:margin-left .28s cubic-bezier(.22,.8,.25,1),padding .28s ease;
  }
  body:not(.community-active).subpage-immersive.sidebar-revealed .rail{
    transform:translateX(0);
    box-shadow:18px 0 48px rgba(8,10,9,.18);
  }
  body:not(.community-active).subpage-immersive.sidebar-revealed .content{margin-left:248px!important}
  .rail-reveal-zone{display:none}
  body:not(.community-active).subpage-immersive .rail-reveal-zone{
    display:block;position:fixed;z-index:89;left:0;top:0;bottom:0;width:18px;background:transparent;
  }
  body:not(.community-active).subpage-immersive.sidebar-revealed .rail-reveal-zone{width:0}
}

/* Once a course is open, the library masthead gets out of the way. */
#academy.course-open .academy-v2-header,
#academy.course-open .academy-library-intro,
#academy.course-open #academyGrid{display:none!important}
#academy.course-open .academy-v2-detail{margin-top:0!important}

/* Root-level pages: pages may live directly in a course, without a visible folder. */
.academy-root-pages{padding:4px 0 10px;margin-bottom:4px}
.academy-root-drop{min-height:10px;border-radius:10px;transition:background .16s,border-color .16s}
.academy-root-drop.is-drag-over,.academy-module-block.is-drag-over{background:#f4f5f2;box-shadow:inset 0 0 0 1px #d7d9d3}
.academy-lesson-row-wrap[draggable="true"]{cursor:grab}
.academy-lesson-row-wrap.is-dragging{opacity:.38}
.academy-drop-hint{display:none;margin:6px 7px 9px;padding:10px 12px;border:1px dashed #cfd2cc;border-radius:9px;color:#888d86;font-size:11px;text-align:center}
body.academy-dragging .academy-drop-hint{display:block}
.academy-curriculum-course{padding-bottom:14px}


/* GCA 1.8.7 — Academy header cleanup + course detail visibility */
#academy > .academy-v2-header{display:none!important}
.academy-library-actions{display:flex;align-items:center;gap:14px}
.academy-library-new-course{border:1px solid #d8d8d4;background:#fff;color:#202321;border-radius:9px;padding:8px 12px;font:600 12px/1 'DM Sans',sans-serif;cursor:pointer;white-space:nowrap;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.academy-library-new-course:hover{background:#f5f5f2;border-color:#c9c9c4;transform:translateY(-1px)}
#academy.course-open .academy-library-intro{display:none!important}
#academyCourseDetail.is-open{display:block!important}
@media(max-width:720px){.academy-library-actions p{display:none}.academy-library-intro{align-items:center}.academy-library-new-course{font-size:11px;padding:8px 10px}}

/* =========================================================
   GCA 1.8.8 — Skool-scale classroom + overview polish
   ========================================================= */

/* Classroom should feel focused, not stretched edge-to-edge. */
#academy.course-open .academy-v2-detail{
  width:min(1040px,calc(100vw - 56px));
  max-width:1040px;
  margin:0 auto!important;
}
#academy.course-open .academy-classroom-head{max-width:1040px;margin-left:auto;margin-right:auto}
#academy.course-open .academy-classroom{
  grid-template-columns:300px minmax(0,1fr)!important;
  width:100%;
  min-height:0!important;
  border:0!important;
  background:transparent!important;
  gap:24px;
  align-items:start;
}
#academy.course-open .academy-curriculum{
  background:transparent!important;
  border:0!important;
  padding:0 4px 26px!important;
  max-height:none!important;
}
#academy.course-open .academy-player-host{background:transparent!important;padding:0!important}
#academy.course-open .academy-lesson-player{
  background:#fff;
  border:1px solid #dedfdb!important;
  border-radius:14px!important;
  overflow:hidden;
  box-shadow:none!important;
}
#academy.course-open .lesson-video-shell{margin:0 24px 0;border-radius:10px;overflow:hidden}
#academy.course-open .lesson-page-title{padding:24px!important}
#academy.course-open .lesson-player-copy{padding:22px 24px 28px!important}

/* Folder headings: only the real folder name, no FOLDER 01/02/03 metadata. */
.academy-folder-title>span{display:none!important}
.academy-folder-title strong{font:700 15px/1.3 'DM Sans',Arial,sans-serif!important;color:#262725!important}
.academy-module-head{min-height:44px!important;padding:6px 5px 7px!important}
.academy-no-lessons{display:none!important}

/* Progress percentage sits inside the green progress line, Skool-style. */
.academy-curriculum-progress{
  position:relative;height:24px!important;margin:8px 0 14px!important;
  background:#e4e5e2!important;border-radius:999px!important;overflow:hidden!important;
}
.academy-curriculum-progress span{position:absolute;inset:0 auto 0 0;background:#08a866!important;min-width:0;z-index:1}
.academy-curriculum-progress b{
  position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:2;
  font:700 12px/1 'DM Sans',Arial,sans-serif;color:#fff;letter-spacing:.1px;
  text-shadow:0 1px 2px rgba(0,0,0,.12)
}
.academy-curriculum-course>small{display:none!important}
.academy-curriculum-course{padding:0 5px 10px!important;border-bottom:0!important;margin-bottom:8px!important}
.academy-curriculum-course-line h3{font-size:17px!important}

/* Slightly more Skool-like page list density. */
.academy-lesson-row{padding:10px 10px!important;border-radius:9px!important}
.academy-lesson-label strong{font-size:13px!important;line-height:1.35!important;font-weight:500!important}
.academy-lesson-row.is-active{background:#f7dda1!important;box-shadow:none!important}
.lesson-status.is-complete{width:22px!important;height:22px!important;font-size:13px!important}
.lesson-status.is-complete b{font-size:13px!important}

/* Overview: same neutral typography/palette as the Academy, with readable supporting copy. */
.premium-home{font-family:'DM Sans',Arial,sans-serif;color:#252624}
.premium-home .premium-panel{background:#fff!important;border-color:#dedfdb!important;box-shadow:none!important}
.premium-home .premium-panel-head{border-bottom-color:#e5e6e2!important;padding:18px 19px 15px!important}
.premium-home .premium-panel-head h2{font-family:'DM Sans',Arial,sans-serif!important;font-size:18px!important;font-weight:650!important;letter-spacing:-.25px!important}
.premium-home .premium-panel-head.compact h2{font-size:17px!important}
.premium-home .premium-panel-head .eyebrow{font-size:9px!important;letter-spacing:1.7px!important;color:#7c827d!important}
.premium-home .editorial-link{font:600 11px/1.2 'DM Sans',Arial,sans-serif!important;color:#566b60!important}
.premium-home .editorial-link:hover{color:#263c31!important}
.premium-home .home-loading{font-size:12px!important;line-height:1.5!important;color:#777b76!important}
.premium-home .home-course-feature .course-number{font-family:'DM Sans',Arial,sans-serif!important;font-size:17px!important;font-weight:700!important;color:#657169!important}
.premium-home .home-course-feature h3{font-family:'DM Sans',Arial,sans-serif!important;font-size:16px!important;font-weight:650!important}
.premium-home .home-course-feature p{font-size:12px!important;line-height:1.5!important;color:#737873!important}
.premium-home .home-course-progress-line span:last-child{font-size:11px!important;font-weight:650!important}
.premium-home .progress span{background:#08a866!important}
.premium-home .home-course-mini strong{font-size:12px!important}.premium-home .home-course-mini small{font-size:10px!important}
.premium-home .home-next-call{padding:18px 19px!important}
.premium-home .home-live-status{font-size:11px!important;color:#557064!important;margin-bottom:10px!important}
.premium-home .home-live-status i{background:#08a866!important}
.premium-home .home-next-call h3{font-family:'DM Sans',Arial,sans-serif!important;font-size:17px!important;font-weight:650!important;margin-bottom:8px!important}
.premium-home .home-next-call p{font-size:12px!important;line-height:1.55!important;color:#6f746f!important;margin-bottom:15px!important}
.premium-home .home-next-call .outline{
  min-height:38px;font:650 11px/1 'DM Sans',Arial,sans-serif!important;
  background:#f1f5f2!important;border-color:#ccd8d1!important;color:#385446!important;
}
.premium-home .home-next-call .outline:hover{background:#e8efeb!important;border-color:#b8c9bf!important}
.premium-home .home-trade-main strong{font-family:'DM Sans',Arial,sans-serif!important;font-size:14px!important;font-weight:650!important}
.premium-home .home-trade-main small,.premium-home .home-trade-thesis small{font-size:10px!important}
.premium-home .home-trade-thesis strong{font-size:11px!important}.premium-home .home-trade-levels{font-size:10px!important}

@media(max-width:1180px) and (min-width:721px){
  #academy.course-open .academy-v2-detail{width:min(960px,calc(100vw - 36px))}
  #academy.course-open .academy-classroom{grid-template-columns:270px minmax(0,1fr)!important;gap:18px}
}
@media(max-width:720px){
  #academy.course-open .academy-v2-detail{width:100%;max-width:none}
  #academy.course-open .academy-classroom{grid-template-columns:1fr!important;gap:12px}
  #academy.course-open .academy-curriculum{padding:0 0 12px!important}
  #academy.course-open .lesson-video-shell{margin:0 14px}
}

/* GCA 1.8.9 — personal Home + cleaner Academy authoring */
.home-welcome-row{align-items:flex-end}
.home-welcome-row h1{font-family:'DM Sans',Arial,sans-serif!important;font-weight:650!important;letter-spacing:-1.1px!important;font-size:36px!important}
.home-date{font-family:'DM Sans',Arial,sans-serif!important;font-size:11px!important;color:#777c77!important}
.home-image-header{position:relative;background-image:linear-gradient(90deg,rgba(12,14,13,.06),rgba(12,14,13,0)),url('assets/gca-dashboard-header-clean.jpg')}
.home-image-header.has-custom-cover{background-size:cover!important;background-position:center!important}
.home-header-edit{position:absolute;right:14px;bottom:14px;z-index:3;min-height:36px;padding:0 13px;border:1px solid rgba(255,255,255,.5);border-radius:9px;background:rgba(20,22,20,.58);backdrop-filter:blur(10px);color:#fff;font:650 11px/1 'DM Sans',Arial,sans-serif;opacity:.88;transform:none;transition:.18s ease;cursor:pointer;box-shadow:0 8px 25px rgba(0,0,0,.12)}
.home-image-header:hover .home-header-edit,.home-header-edit:focus{opacity:1;transform:none}.home-header-edit:hover{background:rgba(20,22,20,.78)}
.topbar>div:first-child{display:flex;align-items:center}.topbar .top-subtitle{display:none!important}

#academy:not(.course-open){padding-top:8px}
.academy-library-toolbar{display:flex;justify-content:flex-end;align-items:center;margin:0 auto 18px;max-width:1180px}
.academy-library-new-course{min-height:38px;border:1px solid #d9dcd8!important;background:#fff!important;color:#2d3932!important;border-radius:9px!important;padding:0 14px!important;font:650 11px/1 'DM Sans',Arial,sans-serif!important;box-shadow:none!important}.academy-library-new-course:hover{background:#f4f6f4!important;border-color:#c8cec9!important}

.course-card.academy-v2-card.is-sortable{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.course-card.academy-v2-card.is-sortable.is-dragging{opacity:.55;transform:scale(.985)}.course-card.academy-v2-card.is-sortable.drag-over{border-color:#8ca397!important;box-shadow:0 0 0 3px rgba(73,105,88,.10)!important}
.course-drag-handle{position:absolute;left:10px;bottom:11px;z-index:5;width:34px;height:30px;display:grid;place-items:center;border-radius:8px;color:#8a8e89;background:rgba(255,255,255,.88);font:800 12px/1 'DM Sans',sans-serif;letter-spacing:-2px;cursor:grab;user-select:none}.course-drag-handle:active{cursor:grabbing}.course-drag-handle:hover{background:#eef1ee;color:#40564a}

.course-cover-field{display:block;margin:3px 0 16px;font-family:'DM Sans',Arial,sans-serif}.course-cover-field>span{display:block;margin-bottom:8px;font-size:11px;font-weight:650;color:#4c504d}.course-cover-upload{display:block!important;margin:0!important;cursor:pointer}.course-cover-preview{min-height:190px;border:1.5px dashed #b9bdb9;border-radius:12px;background:#f7f8f6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;background-size:cover;background-position:center;overflow:hidden;transition:.15s ease}.course-cover-preview:hover{border-color:#7e9186;background-color:#f1f4f1}.course-cover-preview b{font:400 30px/1 'DM Sans',sans-serif;color:#66736c}.course-cover-preview strong{font:650 13px 'DM Sans',sans-serif;color:#454b47}.course-cover-preview small{font:500 10px 'DM Sans',sans-serif;color:#8a8f8b}.course-cover-preview.has-image{min-height:220px;border-style:solid;justify-content:flex-end;align-items:flex-end;padding:12px}.course-cover-preview.has-image span{padding:8px 11px;border-radius:8px;background:rgba(20,22,20,.7);color:#fff;font:650 10px 'DM Sans',sans-serif;backdrop-filter:blur(8px)}
.course-cover-url-option{margin-top:8px}.course-cover-url-option summary{cursor:pointer;color:#747a75;font:600 10px 'DM Sans',sans-serif}.course-cover-url-option input{width:100%;margin-top:8px;border:1px solid #d6d9d5;border-radius:9px;padding:11px 12px;font:500 12px 'DM Sans',sans-serif}

@media(max-width:720px){.home-welcome-row h1{font-size:29px!important}.home-header-edit{opacity:1;transform:none;right:9px;bottom:9px;min-height:32px;font-size:10px}.academy-library-toolbar{margin-bottom:12px}.course-cover-preview{min-height:145px}}

.course-cover-upload.is-dragging .course-cover-preview{border-color:#6f897b;background-color:#eef3ef;box-shadow:0 0 0 4px rgba(73,105,88,.08)}
.home-header-edit:disabled{opacity:.7;cursor:wait}


/* =========================================================
   GCA 1.9.0 — Home cover library + compact Academy library
   ========================================================= */

/* Home cover chooser */
.home-cover-modal-card{width:min(900px,94vw)!important;max-width:900px!important}
.home-cover-help{margin:-2px 0 18px;font:500 12px/1.55 'DM Sans',Arial,sans-serif;color:#747a75}
.home-cover-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:58vh;overflow:auto;padding:2px}
.home-cover-choice{position:relative;display:block;padding:0;border:1px solid #dedfdb;background:#f5f6f4;border-radius:11px;overflow:hidden;cursor:pointer;aspect-ratio:1600/420;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.home-cover-choice:hover{transform:translateY(-1px);border-color:#aab5ae;box-shadow:0 8px 22px rgba(25,32,28,.08)}
.home-cover-choice.is-selected{border-color:#08a866;box-shadow:0 0 0 3px rgba(8,168,102,.12)}
.home-cover-choice img{width:100%;height:100%;display:block;object-fit:cover}
.home-cover-choice span{position:absolute;right:8px;bottom:7px;min-width:25px;height:22px;padding:0 6px;display:grid;place-items:center;border-radius:999px;background:rgba(15,18,16,.66);backdrop-filter:blur(8px);color:#fff;font:700 9px/1 'DM Sans',sans-serif}
.home-cover-choice.is-selected:after{content:"✓";position:absolute;left:8px;top:8px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#08a866;color:#fff;font:800 13px/1 'DM Sans',sans-serif}
.home-cover-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #e4e5e1}
.home-cover-actions .outline,.home-cover-actions .cta{min-height:40px;font-family:'DM Sans',Arial,sans-serif!important;font-size:11px!important}

/* The Academy overview uses the same focused width as an opened course. */
#academy:not(.course-open){
  width:min(1040px,calc(100vw - 56px));
  max-width:1040px;
  margin:0 auto;
  padding-top:8px!important;
}
#academy:not(.course-open) .academy-v2-grid{
  width:100%;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

/* Skool-like course cards: show the complete uploaded artwork, never crop it. */
#academy:not(.course-open) .academy-v2-card{
  min-height:0!important;
  border-radius:12px!important;
  border:1px solid #dedfdb!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:none!important;
}
#academy:not(.course-open) .academy-v2-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(25,28,26,.06)!important}
#academy:not(.course-open) .academy-card-cover{
  height:auto!important;
  aspect-ratio:16/8.6;
  padding:0!important;
  display:grid;
  place-items:center;
  background:#f7f7f5!important;
  border-bottom:1px solid #e5e5e2;
  overflow:hidden;
}
#academy:not(.course-open) .academy-card-cover:after{display:none!important}
#academy:not(.course-open) .academy-card-cover img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  object-position:center;
  background:#fff;
}
.academy-card-cover-fallback{width:100%;height:100%;display:grid;place-content:center;text-align:center;background:linear-gradient(145deg,#f7f7f3,#ecece7);color:#262824}
.academy-card-cover-fallback span{font:700 31px/1 'DM Sans',Arial,sans-serif;letter-spacing:-1px}
.academy-card-cover-fallback small{margin-top:7px;font:600 8px/1 'DM Sans',Arial,sans-serif;letter-spacing:2.2px;color:#777c77}
#academy:not(.course-open) .academy-card-body{min-height:154px!important;padding:17px 16px 15px!important}
#academy:not(.course-open) .academy-card-body h3{margin:0 0 14px!important;font:650 18px/1.25 'DM Sans',Arial,sans-serif!important;color:#272926}
#academy:not(.course-open) .academy-card-body p,
#academy:not(.course-open) .academy-card-meta{display:none!important}
#academy:not(.course-open) .academy-v2-card .course-progress{
  position:relative;
  height:24px!important;
  margin-top:auto!important;
  background:#e3e4e1!important;
  border-radius:999px!important;
  overflow:hidden!important;
}
#academy:not(.course-open) .academy-v2-card .course-progress>span{
  display:block;height:100%;background:#08a866!important;border-radius:inherit
}
#academy:not(.course-open) .academy-v2-card .course-progress>b{
  position:absolute;left:12px;top:50%;transform:translateY(-50%);
  font:750 11px/1 'DM Sans',Arial,sans-serif;color:#fff;z-index:2
}
#academy:not(.course-open) .academy-v2-card .course-progress>span[style*="width:0%"]+b{color:#242724}

/* Admin actions remain unobtrusive. Dragging is armed by the handle and the
   whole card then moves through native drag/drop. */
#academy:not(.course-open) .academy-v2-card>.academy-more-btn{
  right:8px!important;bottom:8px!important;width:30px!important;height:30px!important;
  background:rgba(255,255,255,.9)!important;border-radius:8px!important;box-shadow:0 2px 9px rgba(0,0,0,.06)
}
#academy:not(.course-open) .course-drag-handle{
  position:absolute!important;left:8px!important;bottom:8px!important;z-index:6!important;
  width:30px!important;height:30px!important;border:0!important;border-radius:8px!important;
  display:grid!important;place-items:center!important;background:rgba(255,255,255,.92)!important;
  color:#777d78!important;font:700 18px/1 'DM Sans',sans-serif!important;letter-spacing:0!important;
  cursor:grab!important;box-shadow:0 2px 9px rgba(0,0,0,.06)
}
#academy:not(.course-open) .course-drag-handle:active{cursor:grabbing!important}
#academy:not(.course-open) .academy-v2-card.is-dragging{opacity:.42!important;transform:scale(.985)!important}
#academy:not(.course-open) .academy-v2-card.drag-over{border-color:#6f897b!important;box-shadow:0 0 0 3px rgba(73,105,88,.12)!important}

/* "+ New course" lives in the grid like Skool rather than above it. */
.academy-new-course-tile{
  min-height:315px;border:1.5px dashed #d9dbd7;border-radius:12px;background:transparent;
  display:flex;align-items:center;justify-content:center;gap:9px;color:#a3a7a2;
  font-family:'DM Sans',Arial,sans-serif;cursor:pointer;transition:.16s ease
}
.academy-new-course-tile span{font:400 26px/1 'DM Sans',sans-serif}
.academy-new-course-tile strong{font:600 13px/1 'DM Sans',sans-serif}
.academy-new-course-tile:hover{background:#fafbf9;border-color:#aeb7b1;color:#65746b}

/* The course editor also shows the entire image rather than cropping it. */
.course-cover-preview{
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-color:#f7f8f6!important;
}
.course-cover-preview.has-image{aspect-ratio:16/8.6;min-height:0!important}

/* Old top-of-library authoring control is intentionally gone. */
.academy-library-toolbar{display:none!important}

@media(max-width:1050px) and (min-width:721px){
  #academy:not(.course-open){width:min(900px,calc(100vw - 36px))}
  #academy:not(.course-open) .academy-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .home-cover-library{grid-template-columns:1fr}
  .home-cover-actions{flex-direction:column-reverse}
  #academy:not(.course-open){width:100%;max-width:none}
  #academy:not(.course-open) .academy-v2-grid{grid-template-columns:1fr}
  .academy-new-course-tile{min-height:180px}
}


/* =========================================================
   GCA 1.9.1 — direct course sorting + mobile classroom polish
   ========================================================= */

/* Course sorting: grab the card itself. No six-dot drag handle. */
#academy:not(.course-open) .course-drag-handle{display:none!important}
#academy:not(.course-open) .academy-v2-card.is-sortable{cursor:grab;user-select:none;transition:transform .22s cubic-bezier(.2,.75,.25,1),box-shadow .18s ease,opacity .18s ease}
#academy:not(.course-open) .academy-v2-card.is-sortable:active{cursor:grabbing}
#academy:not(.course-open) .academy-v2-card.is-sortable .course-card-open{cursor:inherit}
#academy:not(.course-open) .academy-v2-grid.is-course-sorting .academy-v2-card{transition:transform .22s cubic-bezier(.2,.75,.25,1),box-shadow .18s ease}
#academy:not(.course-open) .academy-v2-card.is-dragging{opacity:.5!important;box-shadow:0 18px 44px rgba(22,30,25,.16)!important;transform:scale(.985)!important}

/* More now owns the account destinations on mobile as well. */
.more-grid .more-tile[data-open-self-profile],.more-grid .more-tile[data-open-account-settings]{font-family:'DM Sans',Arial,sans-serif}

.academy-mobile-coursebar,.academy-mobile-lesson-nav{display:none}

@media(max-width:720px){
  /* Academy library: mobile cards read like the Skool classroom feed. */
  #academy:not(.course-open){width:100%!important;max-width:none!important;padding:0 0 82px!important}
  #academy:not(.course-open) .academy-v2-grid{display:block!important}
  #academy:not(.course-open) .academy-v2-card{border:0!important;border-bottom:1px solid #e7e7e4!important;border-radius:0!important;margin:0!important;box-shadow:none!important;background:#fff!important}
  #academy:not(.course-open) .academy-card-cover{aspect-ratio:16/7.8!important;border:0!important;border-bottom:1px solid #efefed!important;background:#fff!important}
  #academy:not(.course-open) .academy-card-cover img{object-fit:contain!important}
  #academy:not(.course-open) .academy-card-body{min-height:150px!important;padding:22px 24px 28px!important}
  #academy:not(.course-open) .academy-card-body h3{font-size:23px!important;margin-bottom:28px!important}
  #academy:not(.course-open) .academy-v2-card .course-progress{height:46px!important;margin-top:0!important}
  #academy:not(.course-open) .academy-v2-card .course-progress>b{font-size:18px!important;left:28px!important}
  #academy:not(.course-open) .academy-v2-card>.academy-more-btn{top:18px!important;right:18px!important;bottom:auto!important;width:48px!important;height:48px!important;border-radius:50%!important;background:rgba(255,255,255,.94)!important;font-size:18px!important}
  #academy:not(.course-open) .academy-new-course-tile{margin:20px 22px!important;min-height:180px!important;width:calc(100% - 44px)!important}

  /* Open course starts as a clean curriculum/menu screen. */
  #academy.course-open{width:100%!important;max-width:none!important;padding:0 0 76px!important;background:#fff!important}
  #academy.course-open .academy-v2-detail{width:100%!important;max-width:none!important;margin:0!important}
  #academy.course-open .academy-mobile-coursebar{display:grid;grid-template-columns:46px 1fr 42px 42px;align-items:center;min-height:72px;padding:8px 18px;border-bottom:1px solid #e5e5e3;background:#fff;position:sticky;top:0;z-index:20}
  .academy-mobile-coursebar>button{border:0;background:transparent;color:#8a8d8a;font:600 26px/1 'DM Sans',sans-serif}.academy-mobile-coursebar>strong{font:700 18px/1.2 'DM Sans',sans-serif;color:#242624}.academy-mobile-coursebar>span{font:800 20px/1 'DM Sans',sans-serif;color:#08a866;text-align:center}.academy-mobile-coursebar .academy-mobile-more{font-size:18px!important;letter-spacing:2px!important}
  #academy.course-open .academy-classroom-head{display:none!important}
  #academy.course-open .academy-classroom{display:block!important;width:100%!important;max-width:none!important;margin:0!important}
  #academy.course-open .academy-curriculum{display:block!important;max-height:none!important;border:0!important;padding:28px 24px 36px!important;background:#fff!important}
  #academy.course-open .academy-curriculum-course{padding:0 0 22px!important;border:0!important}
  #academy.course-open .academy-curriculum-course-line h3{font-size:25px!important;line-height:1.2!important}
  #academy.course-open .academy-curriculum-progress{height:46px!important;margin-top:22px!important}
  #academy.course-open .academy-curriculum-progress b{font-size:18px!important;left:28px!important}
  #academy.course-open .academy-module-block{padding:19px 0 7px!important}
  #academy.course-open .academy-module-head{padding:0 8px 10px!important;min-height:48px!important}
  #academy.course-open .academy-module-head strong{font-size:20px!important}
  #academy.course-open .academy-lesson-row-wrap{min-height:62px!important}
  #academy.course-open .academy-lesson-row{padding:15px 8px!important;grid-template-columns:1fr auto!important;gap:12px!important}
  #academy.course-open .academy-lesson-row strong{font-size:18px!important;font-weight:500!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
  #academy.course-open .academy-lesson-row .lesson-status{grid-column:2;width:34px!important;height:34px!important;background:#08a866!important;color:#fff!important;border:0!important}
  #academy.course-open .academy-lesson-row-wrap>.academy-more-btn{position:static!important;transform:none!important;opacity:.7!important;width:38px!important;height:44px!important;font-size:17px!important;order:2}
  #academy.course-open .folder-toggle{width:38px!important;height:38px!important}
  #academy.course-open .academy-player-host{display:none!important}

  /* Selecting a lesson switches from the menu to a focused lesson player. */
  #academy.course-open.mobile-lesson-open .academy-curriculum{display:none!important}
  #academy.course-open.mobile-lesson-open .academy-player-host{display:block!important;padding:0 0 30px!important}
  #academy.course-open.mobile-lesson-open .academy-lesson-player{border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}
  #academy.course-open.mobile-lesson-open .lesson-page-title{padding:28px 24px 20px!important;border:0!important}
  #academy.course-open.mobile-lesson-open .lesson-page-title h2{font-size:26px!important;line-height:1.2!important}
  #academy.course-open.mobile-lesson-open .lesson-video-shell{margin:0 24px!important;border-radius:12px!important}
  #academy.course-open.mobile-lesson-open .lesson-player-copy{padding:22px 24px!important}
  #academy.course-open.mobile-lesson-open .academy-mobile-lesson-nav{display:flex;justify-content:space-between;align-items:center;padding:18px 28px 6px}
  .academy-mobile-lesson-nav button{border:0;background:transparent;color:#1769e0;font:500 18px/1 'DM Sans',sans-serif;padding:8px 0}
  #academy.course-open.mobile-lesson-open .academy-mobile-coursebar{grid-template-columns:46px 1fr 42px 42px}

  /* Mobile bottom navigation stays available everywhere except the immersive Community chat. */
  body:not(.community-active) .mobile-nav{display:grid!important}
  #more .more-grid{grid-template-columns:1fr!important;gap:10px!important}
  #more .more-tile{min-height:76px!important;padding:14px 16px!important}
  #more .more-tile strong{font-size:15px!important}
  #more .more-tile small{font-size:11px!important;line-height:1.35!important}
}


/* 1.9.2 — mobile Academy navigation + tighter Skool-like scale */
.academy-mobile-librarybar{display:none}
.youtube-local-notice{width:100%;height:100%;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;background:#111;color:#fff;font-family:'DM Sans',Arial,sans-serif}.youtube-local-notice strong{font-size:18px}.youtube-local-notice p{max-width:520px;margin:10px auto 18px;color:#c9c9c9;font-size:13px;line-height:1.55}.youtube-local-notice a{color:#111;background:#fff;text-decoration:none;border-radius:999px;padding:10px 16px;font-weight:700;font-size:12px}
@media(max-width:720px){
  #academy .academy-mobile-librarybar{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;min-height:62px;padding:6px 16px;border-bottom:1px solid #e7e7e4;background:#fff;position:sticky;top:0;z-index:21}
  #academy.course-open .academy-mobile-librarybar{display:none!important}
  .academy-mobile-librarybar button{border:0;background:transparent;color:#7d817d;font:600 24px/1 'DM Sans',sans-serif;text-align:left;padding:8px 0}
  .academy-mobile-librarybar strong{font:700 17px/1.2 'DM Sans',sans-serif;color:#242624;text-align:center}
  #academy:not(.course-open) .academy-card-body{min-height:126px!important;padding:17px 20px 22px!important}
  #academy:not(.course-open) .academy-card-body h3{font-size:19px!important;margin-bottom:20px!important}
  #academy:not(.course-open) .academy-v2-card .course-progress{height:38px!important}
  #academy:not(.course-open) .academy-v2-card .course-progress>b{font-size:15px!important;left:22px!important}
  #academy.course-open .academy-mobile-coursebar{min-height:62px!important;padding:6px 16px!important;grid-template-columns:42px 1fr 38px 38px!important}
  .academy-mobile-coursebar>button{font-size:23px!important}.academy-mobile-coursebar>strong{font-size:17px!important}.academy-mobile-coursebar>span{font-size:18px!important}
  #academy.course-open .academy-curriculum{padding:22px 20px 30px!important}
  #academy.course-open .academy-curriculum-course{padding-bottom:18px!important}
  #academy.course-open .academy-curriculum-course-line h3{font-size:21px!important}
  #academy.course-open .academy-curriculum-progress{height:38px!important;margin-top:18px!important}
  #academy.course-open .academy-curriculum-progress b{font-size:15px!important;left:22px!important}
  #academy.course-open .academy-module-block{padding:15px 0 5px!important}
  #academy.course-open .academy-module-head{min-height:42px!important;padding:0 6px 8px!important}
  #academy.course-open .academy-module-head strong{font-size:17px!important}
  #academy.course-open .academy-lesson-row-wrap{min-height:54px!important}
  #academy.course-open .academy-lesson-row{padding:12px 6px!important;gap:9px!important}
  #academy.course-open .academy-lesson-row strong{font-size:15.5px!important}
  #academy.course-open .academy-lesson-row .lesson-status{width:29px!important;height:29px!important;font-size:13px!important}
  #academy.course-open .academy-lesson-row-wrap>.academy-more-btn{width:34px!important;height:38px!important;font-size:15px!important}
  #academy.course-open .folder-toggle{width:34px!important;height:34px!important}
  #academy.course-open.mobile-lesson-open .lesson-page-title{padding:22px 20px 16px!important}
  #academy.course-open.mobile-lesson-open .lesson-page-title h2{font-size:22px!important}
  #academy.course-open.mobile-lesson-open .lesson-video-shell{margin:0 20px!important}
  #academy.course-open.mobile-lesson-open .lesson-player-copy{padding:18px 20px!important}
  #academy.course-open.mobile-lesson-open .academy-mobile-lesson-nav{padding:14px 22px 5px!important}
  .academy-mobile-lesson-nav button{font-size:16px!important}
  #academy.academy-swipe-dragging{overflow:hidden;touch-action:pan-y}
  #academy.academy-swipe-dragging #academyCourseDetail{will-change:transform;box-shadow:-12px 0 30px rgba(0,0,0,.08)}
}


/* =========================================================
   GCA 1.9.3 — mobile Academy swipe reliability + progress scale
   ========================================================= */
@media(max-width:720px){
  /* Tell mobile browsers that vertical scrolling stays native while horizontal
     movement belongs to the Academy page stack. This is what makes the drag
     follow the finger instead of Safari swallowing it as a page scroll. */
  #academy.course-open #academyCourseDetail{touch-action:pan-y!important;overscroll-behavior-x:none}
  #academy.course-open #academyCourseDetail iframe,
  #academy.course-open #academyCourseDetail video{touch-action:auto!important}

  /* Course-library progress bars were still visually heavier than Skool. */
  #academy:not(.course-open) .academy-v2-card .course-progress{height:26px!important;border-radius:999px!important}
  #academy:not(.course-open) .academy-v2-card .course-progress>b{font-size:12.5px!important;left:17px!important;line-height:26px!important}
}


/* 1.9.5 — full-screen mobile Academy back swipe */
@media (max-width:720px){
  body.academy-mobile-swipe,
  body.academy-mobile-swipe #app,
  body.academy-mobile-swipe .app-shell{touch-action:pan-y;overscroll-behavior-x:none}
  body.academy-mobile-swipe #academy.course-open{touch-action:pan-y!important}
}


/* =========================================================
   COMMUNITY 2.0 — GCA social layer: Telegram warmth + Skool clarity
   ========================================================= */
body.community-active{--community-accent:#b85f38;--community-soft:#f7f5f1;--community-line:#e7e5e1}
body.community-active .community-v1-shell{border-color:#e5e3df!important;border-radius:16px!important;box-shadow:0 8px 28px rgba(22,24,27,.035)!important;background:#fff!important}
body.community-active .community-left{background:#f8f8f7!important;border-right-color:#e8e7e4!important}
body.community-active .community-server-head{background:#fbfbfa!important;border-bottom-color:#e8e7e4!important}
body.community-active .community-channel-search{background:#fff!important;border:1px solid #deddd9!important;border-radius:10px!important;color:#6f737a!important;box-shadow:0 1px 2px rgba(0,0,0,.02)!important}
body.community-active .channel-category{margin-top:16px!important}
body.community-active .channel-category-head{height:28px!important;padding:0 7px!important}
body.community-active .category-toggle strong,body.community-active .category-label{font-size:10px!important;letter-spacing:.9px!important;color:#777b81!important}
body.community-active .channel-row-wrap{margin:2px 0!important;padding:0 3px!important}
body.community-active .channel{height:39px!important;border-radius:10px!important;padding:0 9px!important;font-size:13px!important;gap:9px!important;color:#5f646c!important}
body.community-active .channel:hover{background:#efefed!important}
body.community-active .channel.is-active{background:#e9e8e5!important;color:#202226!important;font-weight:600!important;box-shadow:inset 3px 0 0 #b85f38!important}
body.community-active .channel-type-icon{font-size:15px!important;width:20px;text-align:center;filter:saturate(.9)}
body.community-active .channel-name{letter-spacing:-.1px}
body.community-active .channel-unread-badge{background:#b85f38!important;color:#fff!important}
body.community-active .community-center{background:#fff!important}
body.community-active .community-channel-head{height:72px!important;padding:0 18px!important;border-bottom-color:#ebe9e5!important;background:rgba(255,255,255,.98)!important}
body.community-active .community-title-line h2{font-size:20px!important;line-height:1.15!important;letter-spacing:-.35px!important;color:#222428!important}
body.community-active .permission-chip{font-size:8px!important;letter-spacing:.75px!important;border-radius:999px!important;padding:4px 7px!important;background:#f3eee9!important;color:#9c512f!important;border:1px solid #ead8ce!important}
body.community-active .community-channel-title p{display:block!important;margin-top:5px!important;font-size:13px!important;line-height:1.25!important;color:#72767d!important;max-width:650px!important}
body.community-active .community-head-actions button{width:36px!important;height:36px!important;border-radius:10px!important;font-size:17px!important;color:#6b7077!important}
body.community-active .community-head-actions button:hover{background:#f2f1ef!important}
body.community-active .community-messages{padding:18px 0 24px!important;background:linear-gradient(#fff,#fff)!important}
body.community-active .discord-message{grid-template-columns:46px minmax(0,1fr)!important;gap:11px!important;padding:8px 20px 9px!important;margin:0!important}
body.community-active .discord-message:hover{background:#faf9f7!important}
body.community-active .discord-message .avatar{width:42px!important;height:42px!important}
body.community-active .message-meta{gap:8px!important;align-items:center!important}
body.community-active .message-author-link{font-size:14px!important;font-weight:700!important;color:#292b2f!important}
body.community-active .message-meta small{font-size:10px!important;color:#999b9f!important}
body.community-active .message-text{font-size:14px!important;line-height:1.48!important;color:#33363a!important;margin-top:3px!important;max-width:760px}
body.community-active .message-link{color:#3d6fa8;text-decoration:none}.message-link:hover{text-decoration:underline}
body.community-active .reply-reference{border-left:2px solid #d4d0ca!important;padding-left:8px!important;color:#777b81!important}
body.community-active .discord-attachment{margin-top:9px!important;max-width:min(650px,92%)!important}
body.community-active .image-attachment img,body.community-active .video-attachment video{border-radius:14px!important;border-color:#e3e1dc!important}
body.community-active .reaction-chip,body.community-active .reaction-add{background:#f5f4f2!important;border-color:#e3e1dd!important;border-radius:999px!important;font-size:12px!important;padding:4px 9px!important;min-height:28px!important}
body.community-active .reaction-chip:hover,body.community-active .reaction-add:hover{background:#ece9e5!important;border-color:#d6d2cc!important}
body.community-active .community-composer-wrap{padding:4px 18px 18px!important;background:#fff!important}
body.community-active .community-composer{min-height:50px!important;background:#f4f3f1!important;border:1px solid #ebe8e3!important;border-radius:16px!important;padding:6px 8px!important;box-shadow:0 1px 2px rgba(0,0,0,.02)!important}
body.community-active .community-composer textarea{font-size:14px!important;min-height:36px!important;color:#303236!important}
body.community-active .composer-right .send-btn{background:#b85f38!important;border-radius:11px!important}
body.community-active .composer-plus{color:#777b81!important}
body.community-active .community-members{background:#fafafa!important;border-left-color:#e8e7e4!important;padding-left:12px!important;padding-right:12px!important}
body.community-active .members-head{height:72px!important;border-bottom-color:#e8e7e4!important}
body.community-active .members-head strong{font-size:13px!important}
body.community-active .member-role-group>p{font-size:9px!important;letter-spacing:1px!important;margin-top:18px!important}
body.community-active .community-member-row{grid-template-columns:38px 1fr!important;gap:9px!important;padding:7px!important;border-radius:10px!important}
body.community-active .community-member-row strong{font-size:12px!important;color:#4d5157!important}.community-member-row small{font-size:9px!important}
.channel-empty{text-align:center;max-width:520px;margin:9vh auto 0!important;padding:28px!important}.channel-empty-icon{width:68px;height:68px;border-radius:22px;background:#f2efeb;display:grid;place-items:center;font-size:30px;margin:0 auto 16px}.channel-empty h3{font-size:24px!important;letter-spacing:-.4px;margin:0 0 8px!important}.channel-empty p{font-size:13px!important;line-height:1.45!important;color:#777b81!important}

/* Channel-specific personality without turning the shell into a rainbow. */
.community-center[data-channel-type="announcement"] .discord-message{margin:8px 18px!important;padding:16px!important;border:1px solid #e8e3dc!important;border-radius:15px!important;background:#fffdf9!important;grid-template-columns:46px minmax(0,1fr)!important}
.community-center[data-channel-type="announcement"] .discord-message:hover{background:#fffaf3!important}.community-center[data-channel-type="announcement"] .message-text{font-size:15px!important}
.community-center[data-channel-type="forum"] .discord-message{margin:9px 18px!important;padding:15px!important;border:1px solid #e6e5e2!important;border-radius:14px!important;background:#fff!important;box-shadow:0 2px 7px rgba(0,0,0,.025)!important}
.community-center[data-channel-type="forum"] .thread-summary{margin-top:10px!important;padding:7px 10px!important;border-radius:9px!important;background:#f6f5f3!important}
.community-center[data-channel-type="media"] .community-messages{padding-left:14px!important;padding-right:14px!important}.community-center[data-channel-type="media"] .discord-message{margin:8px 0!important;padding:14px!important;border:1px solid #e7e5e1!important;border-radius:15px!important}

/* Rich link cards */
.rich-link-card{display:grid;gap:3px;max-width:560px;margin-top:8px;padding:12px 14px;border:1px solid #e3e1dd;border-left:3px solid #b85f38;border-radius:10px;background:#faf9f7;text-decoration:none;color:#34363a}.rich-link-card:hover{background:#f5f3ef}.rich-link-domain{font-size:9px;letter-spacing:.7px;text-transform:uppercase;color:#a05b3b}.rich-link-card strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rich-link-card>span:last-child{font-size:10px;color:#777b81}

/* Polls */
.community-poll{max-width:560px;margin-top:8px;padding:15px;border:1px solid #e4e1dc;border-radius:14px;background:#fcfbf9}.poll-kicker{font-size:8px;letter-spacing:1.3px;color:#a05b3b;font-weight:700}.community-poll h4{font-size:15px;margin:5px 0 12px}.poll-options{display:grid;gap:7px}.poll-option{position:relative;overflow:hidden;min-height:39px;border:1px solid #dedbd6;border-radius:10px;background:#fff;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:0 11px;text-align:left;color:#34363a}.poll-option:hover{border-color:#c7b6aa}.poll-fill{position:absolute;inset:0 auto 0 0;background:#f1e6df;z-index:0}.poll-option strong,.poll-option small{position:relative;z-index:1}.poll-option strong{font-size:12px}.poll-option small{font-size:9px;color:#777b81}.poll-total{font-size:9px;color:#85888d;margin-top:9px}
.poll-composer-card{width:min(520px,94vw)!important}.poll-composer-card form{display:grid;gap:12px}.poll-composer-card label{font-size:10px;color:#6f7379}.poll-composer-card input{width:100%;margin-top:5px;padding:11px 12px;border:1px solid #ddd9d3;border-radius:10px;background:#fff}.poll-compose-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}

/* Create/edit channel — native-feeling type selector */
.community-modal-card{width:min(610px,95vw)!important}.community-modal-card #channelCreateFields{display:grid;gap:13px}.community-modal-card label{font-size:10px!important;color:#5f6369!important;font-weight:600}.community-modal-card input,.community-modal-card select,.community-modal-card textarea{font-size:13px!important;padding:11px 12px!important;border-radius:10px!important;border:1px solid #dcd9d3!important;outline:none!important}.community-modal-card input:focus,.community-modal-card textarea:focus,.community-modal-card select:focus{border-color:#a96547!important;box-shadow:0 0 0 3px rgba(184,95,56,.10)!important}.field-help{display:block;margin-top:5px;font-size:9px!important;font-weight:400;color:#8a8d92}.channel-type-picker-label{font-size:10px;color:#5f6369;font-weight:600}.channel-type-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.channel-type-card{position:relative;display:grid!important;grid-template-columns:34px 1fr 18px;gap:9px;align-items:center;padding:11px!important;border:1px solid #e1dfdb;border-radius:12px;background:#fafafa;cursor:pointer}.channel-type-card:hover{background:#f6f4f1}.channel-type-card.is-selected{border-color:#b85f38;background:#fff9f5;box-shadow:0 0 0 2px rgba(184,95,56,.08)}.channel-type-card input{position:absolute;opacity:0;pointer-events:none}.channel-type-card>span{font-size:22px}.channel-type-card strong,.channel-type-card small{display:block}.channel-type-card strong{font-size:12px;color:#303236}.channel-type-card small{font-size:9px;color:#81858b;margin-top:2px;font-weight:400}.channel-type-card i{width:15px;height:15px;border:1.5px solid #aaa;border-radius:50%}.channel-type-card.is-selected i{border:5px solid #b85f38}

/* Mobile: channels become a clean full-screen list; server menu becomes a bottom sheet. */
@media(max-width:820px){
 body.community-active .community-channel-head{height:68px!important;padding:0 13px!important}
 body.community-active .community-title-line h2{font-size:17px!important;max-width:56vw!important}
 body.community-active .community-channel-title p{display:none!important}
 body.community-active .permission-chip{font-size:7px!important;padding:3px 6px!important}
 body.community-active .discord-message{grid-template-columns:40px minmax(0,1fr)!important;padding:8px 12px 9px!important;gap:10px!important}
 body.community-active .discord-message .avatar{width:38px!important;height:38px!important}
 body.community-active .message-author-link{font-size:14px!important}
 body.community-active .message-text{font-size:15px!important}
 body.community-active .community-composer-wrap{padding:5px 9px calc(9px + env(safe-area-inset-bottom))!important}
 body.community-active .community-composer{border-radius:18px!important}
 body.community-active .channel{height:48px!important;font-size:16px!important;border-radius:12px!important;padding:0 12px!important}
 body.community-active .channel-type-icon{font-size:18px!important;width:24px}
 body.community-active .category-toggle strong,body.community-active .category-label{font-size:11px!important}
 body.community-active .community-channel-search{height:44px!important;font-size:14px!important;border-radius:12px!important}
 body.community-active .server-menu{position:fixed!important;left:0!important;right:0!important;top:auto!important;bottom:0!important;width:100%!important;max-height:78dvh!important;border-radius:24px 24px 0 0!important;padding:14px 14px calc(18px + env(safe-area-inset-bottom))!important;box-shadow:0 -16px 50px rgba(0,0,0,.18)!important;z-index:160!important}
 body.community-active .server-menu:before{content:"";display:block;width:38px;height:4px;border-radius:99px;background:#d9d9d9;margin:0 auto 12px}
 body.community-active .server-menu button{height:52px!important;font-size:15px!important;grid-template-columns:34px 1fr!important;border-radius:12px!important}
 .community-center[data-channel-type="announcement"] .discord-message,.community-center[data-channel-type="forum"] .discord-message{margin:7px 10px!important;padding:12px!important}
 .channel-type-picker{grid-template-columns:1fr}.poll-compose-options{grid-template-columns:1fr}
 .rich-link-card{max-width:100%}.community-poll{max-width:100%}
}


/* =========================================================
   GCA COMMUNITY 2.0.1 — channel language, context menu, voice
   ========================================================= */
body.community-active .channel-type-icon{font-family:Arial,sans-serif!important;font-size:15px!important;font-weight:650!important;letter-spacing:-1px!important;width:24px!important;color:#777b84!important;filter:none!important}
body.community-active .channel.is-active .channel-type-icon{color:#4f535b!important}
body.community-active .channel-row-actions{margin-left:auto}
body.community-active .channel-bell{display:none!important}
body.community-active .community-head-actions #toggleMembersBtn,
body.community-active .community-head-actions #pinnedMessagesBtn{display:none!important}
.channel-type-picker{grid-template-columns:1fr 1fr 1fr!important}
.channel-type-card>span.type-symbol{font-family:Arial,sans-serif;font-size:22px!important;font-weight:650;color:#666b73;letter-spacing:-1.5px;text-align:center}
.channel-type-card>span.voice-symbol{font-size:14px!important;letter-spacing:-2px}
.community-center[data-channel-type="voice"] .community-composer-wrap,
.community-center[data-channel-type="voice"] #attachmentPreview{display:none!important}
.community-center[data-channel-type="voice"] .community-messages{display:grid;place-items:center;padding:28px!important}
.voice-room-card{width:min(560px,94%);background:#fff;border:1px solid #dedfe2;border-radius:18px;padding:34px;text-align:center;box-shadow:0 10px 30px rgba(25,25,25,.05)}
.voice-room-symbol{width:62px;height:62px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;background:#f0f1f3;color:#34373c;font:700 17px Arial;letter-spacing:-2px}.voice-room-card h3{font-size:22px;margin:4px 0 7px}.voice-room-card>p:not(.eyebrow){font-size:13px;color:#72767d;line-height:1.5;margin:0 auto 22px;max-width:420px}.voice-participants{display:grid;gap:8px;margin:18px 0;text-align:left}.voice-person{display:grid;grid-template-columns:40px 1fr 10px;align-items:center;gap:10px;padding:9px 11px;background:#f6f7f8;border-radius:11px}.voice-person .avatar{width:40px;height:40px}.voice-person strong,.voice-person small{display:block}.voice-person strong{font-size:12px}.voice-person small{font-size:10px;color:#858991;margin-top:2px}.voice-person i{width:8px;height:8px;background:#22a06b;border-radius:50%}.voice-empty{padding:14px;border:1px dashed #d9dadd;border-radius:10px;color:#858991;font-size:11px}.voice-room-actions{display:flex;justify-content:center;gap:8px;margin-top:16px}.voice-room-actions button{min-width:120px}.voice-privacy-note{display:block;margin-top:14px;color:#999da4;font-size:9px}
.channel-context-menu{position:fixed;z-index:400;width:270px;padding:8px;background:#fff;border:1px solid #dedfe2;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.18)}.channel-context-title{display:flex;align-items:center;gap:8px;padding:9px 10px 11px;border-bottom:1px solid #ececef;margin-bottom:5px}.channel-context-title strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-context-menu button{width:100%;display:grid;grid-template-columns:30px 1fr;align-items:center;border:0;background:transparent;border-radius:8px;padding:9px 8px;text-align:left;color:#292b2f}.channel-context-menu button:hover{background:#f1f2f4}.channel-context-menu button span{font-size:18px;text-align:center;color:#555a63}.channel-context-menu button strong{font-size:12px;font-weight:500}.channel-context-group{border-top:1px solid #ececef;padding-top:5px;margin-top:5px}.channel-context-handle{display:none}
@media(max-width:820px){.channel-type-picker{grid-template-columns:1fr!important}.channel-context-menu{width:100%!important;max-height:78vh;overflow:auto;border-radius:24px 24px 0 0!important;padding:8px 16px calc(18px + env(safe-area-inset-bottom))!important;box-shadow:0 -18px 60px rgba(0,0,0,.25)!important;animation:channelSheetIn .2s ease-out}.channel-context-handle{display:block;width:42px;height:5px;border-radius:99px;background:#d9dade;margin:2px auto 12px}.channel-context-title{padding:8px 8px 15px}.channel-context-menu button{padding:13px 9px;border-radius:10px}.channel-context-menu button strong{font-size:15px}.channel-context-menu button span{font-size:21px}.channel-context-group{padding-top:7px;margin-top:7px}body.channel-context-open:after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:399}.voice-room-card{padding:24px 18px;border-radius:15px}.community-center[data-channel-type="voice"] .community-messages{padding:16px!important}@keyframes channelSheetIn{from{transform:translateY(100%)}to{transform:translateY(0)}}}

body.community-active .channel-type-icon svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.channel-type-card .type-symbol svg{width:22px;height:22px;display:block;margin:auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.voice-person .voice-avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#e6e7e9;background-size:cover;background-position:center}

/* =========================================================
   COMMUNITY 2.0.2 — Forum, channel info and interaction polish
   ========================================================= */
body.community-active .channel-type-icon{display:grid;place-items:center;flex:0 0 20px!important;width:20px!important;height:20px!important;filter:none!important}
body.community-active .channel-type-icon svg,.channel-info-type svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.community-active .channel-heading-copy{cursor:pointer;border-radius:9px;padding:5px 7px;margin-left:-7px;transition:background .16s ease}
body.community-active .channel-heading-copy:hover{background:#f5f4f2}
body.community-active .community-channel-head{height:86px!important;padding:13px 18px 0!important;align-items:flex-start!important}
body.community-active .community-head-actions{padding-top:7px}
.channel-composer-hidden{display:none!important}
.channel-long-pressing{background:#e4e3e0!important;transform:scale(.992);transition:transform .15s ease,background .15s ease}

/* Context actions: only useful actions, one coherent icon language. */
.channel-context-menu{width:286px!important;padding:9px!important;border-color:#e4e3df!important;border-radius:16px!important;box-shadow:0 20px 55px rgba(24,25,27,.16)!important}
.channel-context-title{gap:10px!important;padding:10px 10px 13px!important}.channel-context-title>div{min-width:0}.channel-context-title strong,.channel-context-title small{display:block}.channel-context-title small{font-size:9px;color:#8a8d92;margin-top:2px}.channel-context-menu button{grid-template-columns:34px 1fr!important;min-height:43px!important;padding:8px 9px!important}.channel-context-menu button strong{font-size:12px!important;font-weight:550!important}.context-action-icon{width:30px!important;height:30px!important;border-radius:8px;background:#f4f3f1;display:grid!important;place-items:center!important;color:#4d5158!important}.context-action-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.channel-context-group{border-top-color:#eceae6!important}

/* Forum = topics first, replies inside threads. */
.community-center[data-channel-type="forum"] .community-messages{padding:0!important;background:#fafafa!important;overflow:auto!important}
.forum-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid #ebeae7;background:rgba(250,250,250,.96);backdrop-filter:blur(12px)}
.forum-sort-btn,.forum-new-btn{height:38px;border:1px solid #deddd9;border-radius:10px;background:#fff;padding:0 13px;font:600 11px 'DM Sans',sans-serif;color:#4e5258}.forum-new-btn{background:#222428;color:#fff;border-color:#222428}.forum-topic-list{display:grid;gap:12px;padding:18px;max-width:900px;margin:0 auto}.forum-topic-card{width:100%;display:block;text-align:left;border:1px solid #e1e0dc;border-radius:16px;background:#fff;padding:17px 18px;box-shadow:0 2px 7px rgba(0,0,0,.02);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.forum-topic-card:hover{transform:translateY(-1px);border-color:#d4d2cd;box-shadow:0 7px 18px rgba(0,0,0,.045)}.forum-topic-meta{display:flex;align-items:center;gap:8px;color:#777b82}.forum-topic-avatar{width:25px;height:25px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#f0efec}.forum-topic-avatar img,.forum-avatar-inner{width:100%;height:100%;object-fit:cover;border-radius:50%}.forum-topic-meta strong{font-size:11px;color:#4d5056}.forum-topic-meta small{font-size:9px;color:#8a8d92}.forum-topic-card h3{font-size:16px;line-height:1.25;letter-spacing:-.25px;color:#303238;margin:12px 0 5px}.forum-topic-card p{font-size:12px;line-height:1.5;color:#6f737a;margin:0;white-space:pre-line}.forum-topic-foot{display:flex;align-items:center;gap:5px;margin-top:14px;color:#777b82}.forum-topic-foot span{width:18px;height:18px;display:grid;place-items:center}.forum-topic-foot svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.forum-topic-foot strong{font-size:11px}.forum-topic-foot small{font-size:9px}.forum-fab{display:none}.forum-empty{text-align:center;padding:70px 20px;color:#777b82}.forum-empty h3{font-size:16px;color:#33363a;margin:0 0 5px}.forum-empty p{font-size:11px}.forum-thread-root-copy h3{font-size:16px;margin:0 0 7px;color:#27292d}

/* New forum topic composer. */
.forum-composer-modal{position:fixed;inset:0;z-index:430;display:grid;place-items:center}.forum-composer-modal.hidden{display:none}.forum-composer-backdrop{position:absolute;inset:0;background:rgba(20,21,23,.46);backdrop-filter:blur(2px)}.forum-composer-card{position:relative;width:min(560px,calc(100vw - 32px));background:#fff;border:1px solid #e2e1dd;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.18);overflow:hidden}.forum-composer-card header{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;padding:14px 16px;border-bottom:1px solid #eceae6}.forum-composer-card header button{width:36px;height:36px;border:0;border-radius:9px;background:#f4f3f1;font-size:20px}.forum-composer-card header small{font-size:8px;letter-spacing:1px;color:#9a633f}.forum-composer-card header h3{font-size:17px;margin:2px 0 0}.forum-composer-card form{display:grid;gap:14px;padding:18px}.forum-composer-card label{font-size:9px;font-weight:650;color:#696d73}.forum-composer-card input,.forum-composer-card textarea{display:block;width:100%;margin-top:6px;border:1px solid #deddd9;border-radius:11px;background:#fff;padding:11px 12px;font:12px/1.45 'DM Sans',sans-serif;color:#292b2f;outline:none}.forum-composer-card input:focus,.forum-composer-card textarea:focus{border-color:#a7a49d;box-shadow:0 0 0 3px rgba(50,50,50,.05)}

/* Telegram/Discord-inspired channel detail surface. */
.channel-info-panel{position:fixed;inset:0;z-index:420;display:grid;place-items:center}.channel-info-panel.hidden{display:none}.channel-info-backdrop{position:absolute;inset:0;background:rgba(20,21,23,.43);backdrop-filter:blur(2px)}.channel-info-card{position:relative;width:min(780px,calc(100vw - 42px));height:min(720px,calc(100vh - 60px));display:grid;grid-template-rows:auto auto 1fr;background:#fff;border:1px solid #e1e0dc;border-radius:20px;overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,.18)}.channel-info-card>header{display:grid;grid-template-columns:42px 1fr 42px;gap:12px;align-items:center;padding:18px 20px 14px}.channel-info-card>header>button{width:38px;height:38px;border:0;border-radius:10px;background:#f4f3f1;color:#44484e;display:grid;place-items:center}.channel-info-card>header>button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.channel-info-heading{display:flex;align-items:center;gap:12px;min-width:0}.channel-info-type{width:44px;height:44px;border-radius:12px;background:#f2f1ee;display:grid;place-items:center;color:#3e4248;flex:0 0 auto}.channel-info-heading h3{font-size:18px;line-height:1.15;margin:0;color:#26282c}.channel-info-heading p{font-size:11px;line-height:1.35;color:#777b82;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-info-tabs{display:flex;gap:4px;overflow:auto;padding:0 20px;border-bottom:1px solid #ebeae7}.channel-info-tabs button{height:43px;border:0;border-bottom:2px solid transparent;background:transparent;padding:0 12px;font:600 11px 'DM Sans',sans-serif;color:#777b82;white-space:nowrap}.channel-info-tabs button.active{color:#282a2e;border-bottom-color:#282a2e}.channel-info-content{overflow:auto;padding:20px;background:#fafafa}.channel-info-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:650px;margin:0 auto}.channel-info-stat,.channel-info-description{border:1px solid #e4e2de;border-radius:14px;background:#fff;padding:17px}.channel-info-stat strong,.channel-info-stat span{display:block}.channel-info-stat strong{font-size:26px}.channel-info-stat span{font-size:10px;color:#7c8086;margin-top:3px}.channel-info-description{grid-column:1/-1}.channel-info-description small{font-size:8px;letter-spacing:1px;color:#8b8e94}.channel-info-description p{font-size:12px;line-height:1.55;color:#555960;margin:8px 0 0}.channel-media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.channel-media-grid a{aspect-ratio:1;border-radius:8px;overflow:hidden;background:#ececea}.channel-media-grid img,.channel-media-grid video{width:100%;height:100%;object-fit:cover}.channel-info-list{display:grid;gap:7px;max-width:650px;margin:0 auto}.channel-info-list>a,.channel-info-list>button{width:100%;display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;border:1px solid #e4e2de;border-radius:12px;background:#fff;padding:11px 12px;text-decoration:none;text-align:left;color:#33363b}.channel-info-list>a>span,.channel-info-list>button>span{width:34px;height:34px;border-radius:9px;background:#f3f2ef;display:grid;place-items:center}.channel-info-list strong,.channel-info-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-info-list strong{font-size:11px}.channel-info-list small{font-size:9px;color:#85898f;margin-top:3px}.channel-info-empty{display:grid;place-items:center;min-height:240px;font-size:11px;color:#85898f}

@media(max-width:820px){
  body.community-active .community-channel-head{height:68px!important;padding:0 13px!important;align-items:center!important}
  body.community-active .community-head-actions{padding-top:0}
  body.community-active .channel-heading-copy{padding:3px 5px;margin-left:-5px}
  .channel-context-menu{width:100%!important;padding:8px 16px calc(18px + env(safe-area-inset-bottom))!important;border-radius:24px 24px 0 0!important}.channel-context-menu button{min-height:54px!important}.channel-context-menu button strong{font-size:15px!important}.context-action-icon{width:36px!important;height:36px!important;border-radius:10px}.context-action-icon svg{width:19px;height:19px}
  .community-center[data-channel-type="forum"] .community-messages{padding-bottom:88px!important}
  .forum-toolbar{padding:10px 12px}.forum-toolbar .forum-new-btn{display:none}.forum-sort-btn{height:36px;font-size:11px}.forum-topic-list{gap:10px;padding:12px}.forum-topic-card{padding:15px 14px;border-radius:15px}.forum-topic-card h3{font-size:15px;margin-top:10px}.forum-topic-card p{font-size:11px}.forum-fab{position:fixed;right:20px;bottom:84px;z-index:12;width:58px;height:58px;border:0;border-radius:18px;background:#222428;color:#fff;display:grid;place-items:center;font-size:28px;box-shadow:0 12px 30px rgba(0,0,0,.18)}
  .forum-composer-modal{place-items:end center}.forum-composer-card{width:100%;max-height:88vh;border-radius:24px 24px 0 0;border-bottom:0}.forum-composer-card form{padding:17px 16px calc(18px + env(safe-area-inset-bottom))}.forum-composer-card input{font-size:16px}.forum-composer-card textarea{font-size:15px}
  .channel-info-panel{place-items:end center}.channel-info-backdrop{background:rgba(20,21,23,.5)}.channel-info-card{width:100%;height:92vh;border-radius:24px 24px 0 0;border-bottom:0}.channel-info-card>header{padding:16px 14px 12px;grid-template-columns:42px 1fr 42px}.channel-info-heading{gap:10px}.channel-info-type{width:40px;height:40px}.channel-info-heading h3{font-size:16px}.channel-info-heading p{font-size:10px;max-width:54vw}.channel-info-tabs{padding:0 10px}.channel-info-tabs button{height:42px;padding:0 10px;font-size:11px}.channel-info-content{padding:14px 12px calc(20px + env(safe-area-inset-bottom))}.channel-info-overview{grid-template-columns:1fr 1fr}.channel-media-grid{grid-template-columns:repeat(3,1fr)}
}
.channel-member-directory{display:grid;gap:6px;max-width:650px;margin:0 auto}.channel-member-directory>button{width:100%;display:grid;grid-template-columns:44px 1fr;gap:11px;align-items:center;border:0;border-bottom:1px solid #eceae6;background:transparent;padding:10px 7px;text-align:left}.channel-member-directory>button:hover{background:#f4f3f1;border-radius:10px}.channel-info-member-avatar{position:relative;width:40px;height:40px}.channel-info-member-avatar img,.channel-info-member-img{width:40px;height:40px;border-radius:50%;object-fit:cover}.channel-info-member-avatar i{position:absolute;right:-1px;bottom:1px;width:10px;height:10px;border-radius:50%;border:2px solid #fafafa;background:#a8abb0}.channel-info-member-avatar i.online{background:#19a765}.channel-member-directory strong,.channel-member-directory small{display:block}.channel-member-directory strong{font-size:12px;color:#303238}.channel-member-directory small{font-size:9px;color:#85898f;margin-top:3px}

/* =========================================================
   COMMUNITY 2.0.3 — compact settings list + stable header +
   Discord-style empty channel start state
   ========================================================= */

/* The channel settings navigation is a compact list, not a card canvas. */
.community-manage-list{
  align-self:stretch;
}
.manage-category{
  margin:0 0 16px!important;
}
.manage-category-title{
  padding:7px 9px 5px!important;
  font-size:9px!important;
  line-height:1.2!important;
}
.manage-category button{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:36px!important;
  padding:7px 9px!important;
  margin:1px 0!important;
  font-size:11px!important;
  line-height:1.2!important;
  overflow:hidden!important;
}
.manage-channel-type-icon{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  display:grid!important;
  place-items:center!important;
  color:#6e7279!important;
}
.manage-channel-type-icon svg{
  width:16px!important;
  height:16px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.manage-channel-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Keep the CSS grid row equal to the real header height. The previous 52px
   grid track was clipping the title/online line after the header became taller. */
body.community-active .community-center{
  grid-template-rows:86px minmax(0,1fr) auto auto!important;
}
body.community-active .community-channel-head{
  min-height:86px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body.community-active .community-channel-title,
body.community-active .channel-heading-copy{
  min-width:0!important;
}
body.community-active .community-title-line{
  min-width:0!important;
}
body.community-active .community-title-line h2{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* Empty text channel: familiar Discord-style beginning-of-channel marker,
   while using GCA's own channel-type symbol instead of a generic decorative shape. */
body.community-active .channel-empty{
  max-width:none!important;
  margin:0!important;
  padding:56px 28px 34px!important;
  text-align:left!important;
}
body.community-active .channel-empty-icon{
  width:66px!important;
  height:66px!important;
  margin:0 0 18px!important;
  border-radius:50%!important;
  background:#f2f2f2!important;
  color:#292b30!important;
  display:grid!important;
  place-items:center!important;
}
body.community-active .channel-empty-icon svg{
  width:34px!important;
  height:34px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.community-active .channel-empty h3{
  margin:0 0 8px!important;
  font-size:28px!important;
  line-height:1.12!important;
  letter-spacing:-.65px!important;
  color:#24262b!important;
}
body.community-active .channel-empty p{
  margin:0!important;
  font-size:14px!important;
  line-height:1.45!important;
  color:#686c73!important;
}
body.community-active .channel-empty p strong{color:#41444a;font-weight:600}
.channel-empty-edit{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  margin-top:18px;
  padding:0 12px;
  border:1px solid #d9d9d7;
  border-radius:9px;
  background:#f5f5f4;
  color:#373a40;
  font:600 11px 'DM Sans',sans-serif;
}
.channel-empty-edit:hover{background:#ececea}

@media(max-width:820px){
  body.community-active .community-center{
    grid-template-rows:68px minmax(0,1fr) auto auto!important;
  }
  body.community-active .community-channel-head{
    min-height:68px!important;
  }
  body.community-active .channel-empty{
    padding:42px 20px 28px!important;
  }
  body.community-active .channel-empty-icon{
    width:58px!important;
    height:58px!important;
    margin-bottom:15px!important;
  }
  body.community-active .channel-empty-icon svg{width:29px!important;height:29px!important}
  body.community-active .channel-empty h3{font-size:23px!important}
  body.community-active .channel-empty p{font-size:13px!important}
}


/* =========================================================
   COMMUNITY 2.0.4 — mobile channel actions
   ========================================================= */
@media(max-width:820px){
  /* Channel actions live behind long-press on mobile; no per-row gear. */
  body.community-active .channel-row-actions,
  body.community-active .channel-gear{display:none!important}
  body.community-active .channel-row-wrap{grid-template-columns:minmax(0,1fr)!important}
  body.community-active .channel{
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    user-select:none;
    touch-action:pan-y;
  }
  body.community-active .channel.channel-long-pressing{background:#d7d9dd!important;color:#202124!important}

  /* Editing from a long-press is about one channel only. */
  #communityManageModal.single-channel-mobile .community-manage-modal{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;border-radius:0!important;margin:0!important}
  #communityManageModal.single-channel-mobile .community-manage-layout{display:block!important;min-height:0!important;margin-top:8px!important}
  #communityManageModal.single-channel-mobile .community-manage-list{display:none!important}
  #communityManageModal.single-channel-mobile .community-channel-settings{width:100%!important}
  #communityManageModal.single-channel-mobile .modal-head h2{font-size:20px!important}
  #communityManageModal.single-channel-mobile .modal-head .eyebrow{display:none!important}
  #communityManageModal.single-channel-mobile .modal-card{overflow:auto!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
}


/* =========================================================
   GCA 2.0.7 — LIGHT COLOR SYSTEM
   coral = brand/action; blue = navigation/community; green = performance.
   ========================================================= */
:root{
  --gca-bg:#fcfbf9;--gca-surface:#ffffff;--gca-surface-soft:#f6f7f9;
  --gca-text:#20242c;--gca-muted:#737985;--gca-line:#e6e8ec;
  --gca-coral:#ef5b3f;--gca-coral-deep:#c9472f;--gca-coral-soft:#fff0eb;
  --gca-blue:#4968e8;--gca-blue-deep:#334fc6;--gca-blue-soft:#eef2ff;
  --gca-green:#16a36f;--gca-green-deep:#0f7d55;--gca-green-soft:#eaf8f1;
  --gca-violet:#6b63d9;--gca-violet-soft:#f1efff;
}
html{color-scheme:light!important;background:var(--gca-bg)!important}
html,body,.content{background:var(--gca-bg)!important;color:var(--gca-text)}
.rail{background:#fff!important;border-color:var(--gca-line)!important}
.topbar,.rail-foot,.admin-nav{border-color:var(--gca-line)!important}
.hero-card,.live-card,.panel,.stats-grid article,.trade-card,.course-card,.profile-card,.menu-card,.members-table,.permission-matrix,.academy-builder,.icon-btn,.avatar{border-color:var(--gca-line)!important;box-shadow:0 8px 28px rgba(35,42,55,.045)}
/* Blue: navigation / interaction / community */
.rail-item:hover{background:#f6f7fa!important}
.rail-item.is-active{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important}
.rail-item.is-active span,.rail-item.is-active svg{color:var(--gca-blue)!important}
.mobile-nav button.is-active{color:var(--gca-blue)!important}
.settings-nav-btn.active{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important}
.settings-nav-btn:hover{background:#f4f6fb!important}
a:not(.brand):not(.cta){color:var(--gca-blue-deep)}
.filters .active{background:var(--gca-blue)!important;border-color:var(--gca-blue)!important;color:#fff!important}
.status-active,.pill.active{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important}
/* Coral: brand / primary action / attention */
.cta,.nav-badge{background:var(--gca-coral)!important}.cta:hover{background:var(--gca-coral-deep)!important}
.access-pill i,.activity-list i{background:var(--gca-coral)!important}.activity-list i.red{background:var(--gca-violet)!important}
.rr,.tool-output strong{color:var(--gca-coral-deep)!important}
.more-icon{background:var(--gca-coral-soft)!important;color:var(--gca-coral-deep)!important}
.more-tile:hover{border-color:#f2b6a8!important;box-shadow:0 10px 28px rgba(239,91,63,.08)!important}
/* Green: performance / completion / success */
.progress span,.course-progress>span,.academy-curriculum-progress span{background:var(--gca-green)!important}
.stats-grid .green{color:var(--gca-green)!important}
.pill.long,.status-win{background:var(--gca-green-soft)!important;color:var(--gca-green-deep)!important}
/* Community visibly owns the blue interaction layer. */
body.community-active{--community-accent:var(--gca-blue);--community-soft:#f7f8fb;--community-line:var(--gca-line);background:var(--gca-bg)!important}
body.community-active .community-left,body.community-active .community-server-head,body.community-active .community-userbar{background:#f8f9fb!important;border-color:var(--gca-line)!important}
body.community-active .community-channel-search{background:#fff!important;border:1px solid var(--gca-line)!important}
body.community-active .channel:hover{background:#f1f3f8!important}
body.community-active .channel.is-active{background:var(--gca-blue-soft)!important;color:#252b3b!important;box-shadow:inset 3px 0 0 var(--gca-blue)!important}
body.community-active .channel.is-active .channel-type-icon{color:var(--gca-blue)!important}
body.community-active .channel-unread-badge{background:var(--gca-coral)!important}
body.community-active .composer-right .send-btn,body.community-active .send-btn,body.community-active .send-btn.has-content{background:var(--gca-blue)!important;color:#fff!important}
body.community-active .send-btn:hover{background:var(--gca-blue-deep)!important}
body.community-active .permission-chip{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important;border-color:#d8e0ff!important}
body.community-active .rich-link-card{border-left-color:var(--gca-blue)!important}
body.community-active .rich-link-domain{color:var(--gca-blue-deep)!important}
body.community-active .poll-kicker{color:var(--gca-coral-deep)!important}
body.community-active .reaction-chip.is-mine{background:var(--gca-blue-soft)!important;border-color:#cfd8ff!important;color:var(--gca-blue-deep)!important}
body.community-active .community-head-actions button:hover{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important}
body.community-active .channel.channel-long-pressing{background:#e8edff!important;color:#20242c!important}
/* Forms: blue focus, coral save/publish. */
.community-modal-card input:focus,.community-modal-card textarea:focus,.community-modal-card select:focus,.modal input:focus,.modal textarea:focus,.modal select:focus{border-color:var(--gca-blue)!important;box-shadow:0 0 0 3px rgba(73,104,232,.11)!important;outline:none}
.channel-type-card.is-selected{border-color:var(--gca-blue)!important;background:var(--gca-blue-soft)!important;box-shadow:0 0 0 2px rgba(73,104,232,.08)!important}
.channel-type-card.is-selected i{border-color:var(--gca-blue)!important;color:var(--gca-blue)!important}
/* Academy: green progress, blue navigation. */
#academy .academy-back,#academy .lesson-resource{color:var(--gca-blue-deep)!important}
#academy.course-open .academy-lesson-row.is-active{background:var(--gca-blue-soft)!important;box-shadow:inset 3px 0 var(--gca-blue)!important}
#academy .lesson-status.is-complete{background:var(--gca-green-soft)!important;border-color:#bce8d2!important;color:var(--gca-green-deep)!important}
#academy:not(.course-open) .academy-new-course-tile:hover{background:var(--gca-blue-soft)!important;border-color:#ccd6ff!important}
/* Rare secondary accent only. */
.role-badge[data-role="inner_circle"],.inner-circle-badge{background:var(--gca-violet-soft)!important;color:#554bb9!important;border-color:#ddd8ff!important}

/* =========================================================
   GCA 2.0.8 — COLOR COMPOSITION
   Brand identity: coral + cobalt. Green remains semantic only.
   ========================================================= */
:root{
  --gca-bg:#faf8f5;
  --gca-surface:#ffffff;
  --gca-surface-warm:#fff9f6;
  --gca-surface-cool:#f3f6fd;
  --gca-surface-cloud:#f5f7fb;
  --gca-text:#182033;
  --gca-muted:#707887;
  --gca-line:#e3e6ec;
  --gca-coral:#f05a3c;
  --gca-coral-deep:#d8472c;
  --gca-coral-soft:#fff0eb;
  --gca-blue:#4664e8;
  --gca-blue-deep:#3149b9;
  --gca-blue-soft:#edf1ff;
  --gca-green:#15966a;
  --gca-green-deep:#0d7652;
  --gca-green-soft:#e9f7f1;
  --cream:var(--gca-bg);
  --paper:var(--gca-surface);
  --paper2:var(--gca-surface-cloud);
  --ink:var(--gca-text);
  --muted:var(--gca-muted);
  --line:var(--gca-line);
  --community:var(--gca-coral);
  --communityDeep:var(--gca-coral-deep);
  --blue:var(--gca-blue);
  --green:var(--gca-green);
  --gold:var(--gca-coral);
  --mentor:var(--gca-blue);
}
html,body,.content{background:var(--gca-bg)!important;color:var(--gca-text)!important}

/* Sidebar: quiet cool surface, stronger legibility, branded active marker. */
.rail{background:#f6f7fa!important;border-right:1px solid #e2e5eb!important}
.rail-brand{background:linear-gradient(145deg,#fff 0%,#f7f8fc 100%);border:1px solid #e7e9ef;border-radius:12px;margin-bottom:13px;padding:15px 12px!important}
.brand,.brand-mark,.brand-sub{color:var(--gca-text)!important}
.rail-item{color:#687181!important}
.rail-item span,.rail-item svg{color:#8b93a1!important}
.rail-item:hover{background:#fff!important;color:var(--gca-text)!important}
.rail-item.is-active{position:relative;background:#fff!important;color:var(--gca-text)!important;box-shadow:0 5px 18px rgba(24,32,51,.055)!important}
.rail-item.is-active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,var(--gca-coral),var(--gca-blue))}
.rail-item.is-active span,.rail-item.is-active svg{color:var(--gca-blue)!important}
.rail-item.is-active b{color:var(--gca-text)!important}
.nav-badge{background:var(--gca-coral)!important;box-shadow:0 0 0 3px var(--gca-coral-soft)}
.rail-foot{background:transparent!important}

/* Dashboard canvas: visible surface hierarchy instead of white-on-white. */
.premium-home{position:relative}
.premium-home:before{content:"";position:absolute;z-index:-1;left:-22px;right:-22px;top:-18px;height:260px;background:radial-gradient(circle at 86% 8%,rgba(70,100,232,.075),transparent 32%),radial-gradient(circle at 18% 20%,rgba(240,90,60,.055),transparent 30%);pointer-events:none}
.home-date{color:#7d8490!important}
.home-welcome-row h1{color:var(--gca-text)!important}
.home-image-header{border-color:rgba(24,32,51,.13)!important;box-shadow:0 14px 36px rgba(24,32,51,.10)!important}
.premium-panel{border:1px solid var(--gca-line)!important;box-shadow:0 8px 24px rgba(24,32,51,.045)!important;background:#fff!important}
.premium-panel-head{border-bottom-color:#e7e9ef!important}
.premium-panel-head .eyebrow{color:#8b91a0!important}
.premium-panel-head h2{color:var(--gca-text)!important}
.editorial-link{color:var(--gca-blue-deep)!important;font-weight:600}.editorial-link:hover{color:var(--gca-coral-deep)!important}

/* Each dashboard zone gets a deliberate, very light tint. */
.home-main-column .premium-panel:first-child{background:linear-gradient(180deg,#fff 0%,#fffaf8 100%)!important;border-top:2px solid rgba(240,90,60,.72)!important}
.home-side-column .premium-panel:first-child{background:linear-gradient(180deg,#f8faff 0%,#fff 72%)!important;border-top:2px solid rgba(70,100,232,.72)!important}
.home-side-column .premium-panel:last-child{background:linear-gradient(180deg,#fff8f5 0%,#fff 74%)!important;border-top:2px solid rgba(240,90,60,.58)!important}
.home-trade-row{border-bottom-color:#eceef2!important}.home-trade-row:hover{background:#fff4f0!important}
.home-trade-main strong,.home-trade-thesis strong,.home-trade-levels b{color:var(--gca-text)!important}
.home-trade-main small,.home-trade-thesis small,.home-trade-levels{color:var(--gca-muted)!important}
.home-trade-result{color:var(--gca-coral-deep)!important}.home-trade-result.win{color:var(--gca-green-deep)!important}.home-trade-result.loss{color:#c94747!important}
.home-course-feature .course-number{color:var(--gca-blue)!important}
.home-course-feature h3{color:var(--gca-text)!important}
.home-course-feature p,.home-course-progress-line span:last-child,.home-course-mini small{color:var(--gca-muted)!important}
.home-course-list,.home-course-mini{border-color:#e6eaf3!important}.home-course-mini:hover{background:var(--gca-blue-soft)!important}.home-course-mini>span{color:#8c9ad0!important}
.home-next-call .outline{background:var(--gca-coral-soft)!important;border-color:#f5c9bd!important;color:var(--gca-coral-deep)!important}
.home-next-call .outline:hover{background:#ffe6de!important}
.home-live-status{color:var(--gca-coral-deep)!important}.home-live-status i{background:var(--gca-coral)!important}

/* Progress is semantic green everywhere; track is cool-neutral, never beige. */
.progress,.course-progress,.academy-curriculum-progress{background:#e7ebf0!important}
.progress span,.course-progress>span,.academy-curriculum-progress span{background:var(--gca-green)!important}

/* General product surfaces now sit on porcelain instead of disappearing into white. */
.hero-card,.live-card,.panel,.stats-grid article,.trade-card,.course-card,.profile-card,.menu-card,.members-table,.permission-matrix,.academy-builder,.calendar-card,.weekly-summary article,.weekly-trade-list,.tool-card,.journal-table-wrap,.academy-course-detail{border-color:var(--gca-line)!important;box-shadow:0 7px 22px rgba(24,32,51,.04)!important}
.eyebrow{color:#8b91a0!important}
.filters button{border-color:var(--gca-line)!important}.filters .active{background:var(--gca-blue)!important;border-color:var(--gca-blue)!important}
.cta{background:var(--gca-coral)!important}.cta:hover{background:var(--gca-coral-deep)!important}
.status-active,.pill.active{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important}
.pill.long,.status-win{background:var(--gca-green-soft)!important;color:var(--gca-green-deep)!important}

/* Academy: clean neutral cards with blue navigation + green completion. */
#academy:not(.course-open){background:transparent!important}
#academy:not(.course-open) .course-card{background:#fff!important;border-color:#e1e5ed!important}
#academy:not(.course-open) .course-card:hover{border-color:#cbd4f7!important;box-shadow:0 10px 28px rgba(70,100,232,.08)!important}
#academy .academy-back,#academy .lesson-resource{color:var(--gca-blue-deep)!important}
#academy.course-open .academy-lesson-row.is-active{background:var(--gca-blue-soft)!important;box-shadow:inset 3px 0 var(--gca-blue)!important}

/* Community: blue owns interaction; coral is attention only. */
body.community-active{--community-accent:var(--gca-blue)!important;--community-soft:#f5f7fc!important;--community-line:var(--gca-line)!important;background:var(--gca-bg)!important}
body.community-active .community-left,body.community-active .community-server-head,body.community-active .community-userbar{background:#f4f6fa!important}
body.community-active .channel.is-active{background:#fff!important;color:var(--gca-text)!important;box-shadow:inset 3px 0 0 var(--gca-blue),0 4px 14px rgba(24,32,51,.04)!important}
body.community-active .channel:hover{background:#fff!important}
body.community-active .channel-unread-badge{background:var(--gca-coral)!important}
body.community-active .send-btn,body.community-active .send-btn.has-content{background:var(--gca-blue)!important}
body.community-active .send-btn:hover{background:var(--gca-blue-deep)!important}

/* Remove the experimental violet identity completely. */
.role-badge[data-role="inner_circle"],.inner-circle-badge{background:var(--gca-blue-soft)!important;color:var(--gca-blue-deep)!important;border-color:#cfd8ff!important}
.activity-list i.red{background:var(--gca-blue)!important}

/* Mobile keeps the same hierarchy, with a calmer nav surface. */
@media(max-width:820px){
  body{background:var(--gca-bg)!important}
  .mobile-nav{background:rgba(250,248,245,.96)!important;border-top-color:var(--gca-line)!important}
  .mobile-nav button{color:#7c8491!important}.mobile-nav button.is-active{color:var(--gca-blue)!important}
  .premium-home:before{left:-11px;right:-11px;top:-13px;height:190px}
  .home-main-column .premium-panel:first-child,.home-side-column .premium-panel:first-child,.home-side-column .premium-panel:last-child{border-top-width:1px!important}
}

/* =========================================================
   GCA 2.0.9 — COOL CANVAS / SLATE RAIL
   Move the former sidebar blue-grey onto the product canvas.
   Give navigation a deeper complementary slate — no brown.
   ========================================================= */
:root{
  --gca-bg:#f6f7fa;
  --gca-rail:#e9edf4;
  --gca-rail-hover:#f1f3f8;
  --gca-rail-line:#d8dee9;
  --gca-surface-cloud:#f2f4f8;
  --cream:var(--gca-bg);
  --paper2:var(--gca-surface-cloud);
}
html,body,.content{background:var(--gca-bg)!important}

/* The canvas now carries the cool blue-grey tone. */
.content{background:var(--gca-bg)!important}

/* Sidebar becomes a distinctly darker, cool slate companion. */
.rail{
  background:linear-gradient(180deg,#ebeff6 0%,var(--gca-rail) 100%)!important;
  border-right:1px solid var(--gca-rail-line)!important;
}
.rail-brand{
  background:rgba(255,255,255,.70)!important;
  border-color:#dce2ec!important;
  box-shadow:0 5px 18px rgba(35,48,76,.035)!important;
}
.rail-item{color:#5f6879!important}
.rail-item span,.rail-item svg{color:#7d8799!important}
.rail-item:hover{background:rgba(255,255,255,.58)!important}
.rail-item.is-active{
  background:#fff!important;
  box-shadow:0 5px 18px rgba(35,48,76,.07)!important;
}
.rail-foot{border-top-color:#d7dde8!important}

/* Keep cards crisp against the cool canvas. */
.premium-panel,.hero-card,.live-card,.panel,.stats-grid article,.trade-card,.course-card,.profile-card,.menu-card,.members-table,.permission-matrix,.academy-builder,.calendar-card,.weekly-summary article,.weekly-trade-list,.tool-card,.journal-table-wrap,.academy-course-detail{
  background-color:#fff!important;
}

/* The ambient home wash should now blend into the cool canvas, not warm it up. */
.premium-home:before{
  background:radial-gradient(circle at 86% 8%,rgba(70,100,232,.075),transparent 32%),radial-gradient(circle at 18% 20%,rgba(240,90,60,.035),transparent 30%)!important;
}

@media(max-width:820px){
  body,.content{background:var(--gca-bg)!important}
  .mobile-nav{background:rgba(246,247,250,.97)!important}
}

/* =========================================================
   GCA 2.1.0 — DARK SLATE RAIL / UNIFIED WORDMARK
   High-contrast navigation against the cool product canvas.
   ========================================================= */
:root{
  --gca-rail-dark:#20283a;
  --gca-rail-dark-2:#182033;
  --gca-rail-text:#eef2f8;
  --gca-rail-muted:#9fa9ba;
  --gca-rail-hover:rgba(255,255,255,.075);
  --gca-rail-line:rgba(255,255,255,.10);
}

/* Desktop navigation is intentionally dark; the workspace remains cool/light. */
.rail{
  background:linear-gradient(180deg,var(--gca-rail-dark) 0%,var(--gca-rail-dark-2) 100%)!important;
  border-right:1px solid rgba(24,32,51,.28)!important;
  box-shadow:10px 0 28px rgba(24,32,51,.055)!important;
}

/* Replace the editorial serif logo with the same sans language as the product. */
.brand-mark{
  font-family:'DM Sans',Arial,sans-serif!important;
  font-size:27px!important;
  font-weight:700!important;
  letter-spacing:-1.35px!important;
  line-height:.92!important;
}
.brand-sub{
  font-family:'DM Sans',Arial,sans-serif!important;
  font-size:6px!important;
  font-weight:600!important;
  letter-spacing:2.15px!important;
  margin-top:7px!important;
}
.rail-brand{
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:none!important;
}
.rail .brand-mark,.rail .brand-sub{color:#fff!important}
.rail .brand-sub{color:#aeb8c9!important}

.rail-item{color:var(--gca-rail-muted)!important}
.rail-item b{color:inherit!important}
.rail-item span,.rail-item svg{color:#8995a9!important}
.rail-item:hover{
  background:var(--gca-rail-hover)!important;
  color:#fff!important;
}
.rail-item:hover span,.rail-item:hover svg{color:#c7d0df!important}
.rail-item.is-active{
  background:rgba(255,255,255,.105)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.rail-item.is-active b{color:#fff!important}
.rail-item.is-active span,.rail-item.is-active svg{color:#fff!important}
.rail-item.is-active:before{
  width:3px!important;
  top:7px!important;
  bottom:7px!important;
  background:linear-gradient(180deg,var(--gca-coral),#7088ff)!important;
}
.rail .nav-badge{box-shadow:0 0 0 3px rgba(240,90,60,.13)!important}
.rail-foot,.rail .admin-nav{border-color:var(--gca-rail-line)!important}
.rail-foot .access-pill strong,.rail-foot .rail-profile-copy strong{color:#f4f6fa!important}
.rail-foot .access-pill small,.rail-foot .rail-profile-copy small,.rail-foot .text-btn{color:#8995a9!important}
.rail-foot .text-btn:hover{color:#fff!important}
.rail-foot .avatar{border-color:rgba(255,255,255,.14)!important;background:rgba(255,255,255,.08)!important;color:#fff!important}

/* Keep non-rail wordmarks dark and typographically consistent. */
.brand:not(.rail-brand) .brand-mark{color:var(--gca-text)!important}
.brand:not(.rail-brand) .brand-sub{color:var(--gca-muted)!important}

/* On mobile there is no desktop rail; retain the light product hierarchy. */
@media(max-width:820px){
  .mobile-nav{background:rgba(246,247,250,.97)!important}
}

/* =========================================================
   GCA 2.1.1 — HYBRID WORDMARK
   Bring back some of the original editorial character without
   making the logo feel detached from the modern product UI.
   ========================================================= */
.brand-mark{
  font-family:'Playfair Display',Georgia,serif!important;
  font-size:30px!important;
  font-weight:500!important;
  letter-spacing:-.8px!important;
  line-height:.94!important;
}
.brand-sub{
  font-family:'DM Sans',Arial,sans-serif!important;
  font-size:6px!important;
  font-weight:600!important;
  letter-spacing:2.05px!important;
  margin-top:7px!important;
}
/* Keep the sidebar mark elegant but restrained inside the modern rail. */
.rail-brand{padding-top:14px!important;padding-bottom:14px!important}
.rail .brand-mark{color:#f7f8fb!important}
.rail .brand-sub{color:#aeb8c9!important}

/* =========================================================
   GCA 2.2.0 — Live Calls / Calendar workspace
   ========================================================= */
.gca-calendar-shell{background:var(--paper);border:1px solid var(--gca-line,var(--line));border-radius:14px;overflow:hidden;box-shadow:0 8px 26px rgba(24,32,51,.035)}
.gca-calendar-toolbar{min-height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:12px 16px;border-bottom:1px solid var(--gca-line,var(--line));background:rgba(255,255,255,.86)}
.calendar-today{justify-self:start;border:1px solid var(--gca-line,var(--line));background:#fff;border-radius:999px;padding:8px 13px;font-size:10px;color:var(--muted)}
.calendar-period-nav{display:flex;align-items:center;gap:18px;text-align:center}.calendar-period-nav>button{border:0;background:transparent;font-size:24px;color:#8b919d;width:32px;height:32px}.calendar-period-nav strong,.calendar-period-nav small{display:block}.calendar-period-nav strong{font-size:13px}.calendar-period-nav small{font-size:8px;color:var(--muted);margin-top:3px}
.calendar-view-actions{justify-self:end;display:flex;gap:5px}.calendar-view-actions button{width:34px;height:34px;border:1px solid var(--gca-line,var(--line));background:#fff;border-radius:8px;color:#717784}.calendar-view-actions .calendar-add{border-radius:50%;font-size:20px;background:var(--ink);color:#fff;border-color:var(--ink)}.calendar-view-actions .active{background:#edf1f8;color:var(--blue);border-color:#cfd8ec}
.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);height:36px;border-bottom:1px solid var(--gca-line,var(--line))}.calendar-weekdays span{display:grid;place-items:center;font-size:8px;font-weight:700;color:#555d6b;border-right:1px solid var(--gca-line,var(--line))}.calendar-weekdays span:last-child{border-right:0}
.calendar-month-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,minmax(104px,1fr));min-height:630px}.calendar-day{position:relative;min-width:0;padding:9px;border-right:1px solid var(--gca-line,var(--line));border-bottom:1px solid var(--gca-line,var(--line));background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#fafbfc}.calendar-day.outside .calendar-day-number{color:#b7bbc4}.calendar-day-number{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;font-size:9px;color:#4e5562}.calendar-day.today .calendar-day-number{background:var(--community);color:#fff;font-weight:700}
.calendar-day-events{display:grid;gap:3px;margin-top:4px}.calendar-mini-event{display:grid;grid-template-columns:5px auto 1fr;gap:4px;align-items:center;min-width:0;border:0;background:#f4f6fa;border-radius:5px;padding:4px 5px;text-align:left;color:#343b48}.calendar-mini-event:hover{background:#e9eef8}.calendar-mini-event i{width:5px;height:5px;border-radius:50%;background:var(--blue)}.calendar-mini-event span{font-size:6px;color:#7b8290}.calendar-mini-event strong{font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-day-events>small{font-size:6px;color:var(--muted);padding-left:5px}
.gca-calendar-list{padding:14px;display:grid;gap:9px}.gca-event-card{display:grid;grid-template-columns:118px 52px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--gca-line,var(--line));border-radius:12px;padding:10px;background:#fff}.gca-event-cover{height:72px;border-radius:9px;background-size:cover;background-position:center}.gca-event-cover.placeholder{display:grid;place-items:center;background:#eef1f6;color:#77808e;font-size:25px}.gca-event-date{text-align:center;border-right:1px solid var(--gca-line,var(--line));padding-right:12px}.gca-event-date strong,.gca-event-date span{display:block}.gca-event-date strong{font-size:22px}.gca-event-date span{font-size:7px;letter-spacing:1.3px;color:var(--muted)}.calendar-event-kind{font-size:6px;letter-spacing:1.1px;color:var(--blue);font-weight:700}.gca-event-copy h3{font-size:13px;margin:3px 0}.gca-event-copy p{font-size:8px;margin:0;color:#535b69}.gca-event-copy small{display:block;font-size:8px;color:var(--muted);margin-top:5px}.gca-event-actions{display:flex;gap:6px;align-items:center}.calendar-address{font-size:8px;color:var(--muted);max-width:150px}.calendar-empty{text-align:center;padding:70px 20px}.calendar-empty>span{font-size:30px;color:#9ba2ad}.calendar-empty h3{margin:8px 0 3px}.calendar-empty p{font-size:9px;color:var(--muted)}
.calendar-event-card{width:min(760px,calc(100vw - 28px));max-height:92vh;overflow:auto;padding:24px}.calendar-event-form{display:grid;gap:14px}.calendar-event-form label>span{display:block;font-size:8px;color:var(--muted);margin:0 0 5px}.calendar-event-form input,.calendar-event-form select,.calendar-event-form textarea{width:100%;border:1px solid var(--gca-line,var(--line));background:#fff;border-radius:8px;padding:10px;font-size:10px;outline:none}.calendar-event-form input:focus,.calendar-event-form select:focus,.calendar-event-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px rgba(73,104,232,.08)}.calendar-title-field{position:relative}.calendar-title-field input{font-size:12px;padding-right:62px}.calendar-title-field>small{position:absolute;right:10px;bottom:11px;font-size:7px;color:#9aa0aa}.calendar-datetime-grid{display:grid;grid-template-columns:1.1fr .8fr .9fr 1.4fr;gap:8px}.calendar-check{display:flex!important;align-items:center;gap:8px}.calendar-check input{width:16px!important;height:16px}.calendar-check span{margin:0!important;font-size:9px!important;color:var(--ink)!important}.calendar-recurrence,.calendar-location-row{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}.calendar-event-form textarea{min-height:88px;resize:vertical}.calendar-event-lower{display:grid;grid-template-columns:1fr 1fr;gap:14px}.calendar-cover-upload input{display:none}.calendar-cover-upload>span{margin-bottom:5px}.calendar-cover-upload>div{height:150px;border:1px dashed #cfd4de;border-radius:10px;background:#f8f9fb;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.calendar-cover-upload b{font-size:24px;font-weight:400}.calendar-cover-upload strong{font-size:9px;color:var(--blue)}.calendar-cover-upload small{font-size:7px;color:var(--muted);margin-top:4px}.calendar-cover-upload img{width:100%;height:120px;object-fit:cover}.calendar-access-box{display:grid;align-content:start;gap:10px;padding:6px 0}.calendar-access-box>strong{font-size:9px}.calendar-access-box label{display:flex;align-items:center;gap:8px;font-size:9px}.calendar-access-box input{width:16px;height:16px}.calendar-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.calendar-modal-actions button{min-width:90px}.hidden{display:none!important}
@media(max-width:820px){.gca-calendar-shell{border-radius:11px}.gca-calendar-toolbar{grid-template-columns:auto 1fr auto;padding:9px;min-height:60px}.calendar-period-nav{gap:2px}.calendar-period-nav>button{font-size:20px;width:26px}.calendar-period-nav strong{font-size:11px}.calendar-today{padding:6px 8px;font-size:8px}.calendar-view-actions button{width:30px;height:30px}.calendar-view-actions [data-calendar-view="list"]{display:none}.calendar-weekdays{height:30px}.calendar-weekdays span{font-size:7px}.calendar-month-grid{grid-template-rows:repeat(6,minmax(74px,1fr));min-height:470px}.calendar-day{padding:4px}.calendar-day-number{width:20px;height:20px;font-size:8px}.calendar-mini-event{grid-template-columns:4px 1fr;padding:3px}.calendar-mini-event span{display:none}.calendar-mini-event strong{font-size:6px}.calendar-datetime-grid{grid-template-columns:1fr 1fr}.calendar-location-row,.calendar-recurrence,.calendar-event-lower{grid-template-columns:1fr}.calendar-event-card{padding:17px}.gca-event-card{grid-template-columns:45px minmax(0,1fr);padding:10px}.gca-event-cover{display:none}.gca-event-date{grid-row:1/3}.gca-event-actions{grid-column:2}.gca-calendar-list{padding:8px}}

.calendar-detail-card{width:min(560px,calc(100vw - 28px));padding:0;overflow:hidden;position:relative}.calendar-detail-close{position:absolute;right:12px;top:12px;z-index:2;width:32px;height:32px;border:1px solid rgba(255,255,255,.5);background:rgba(20,27,39,.62);color:#fff;border-radius:50%;font-size:18px}.calendar-detail-cover{height:190px;background-size:cover;background-position:center;background-color:#e9edf4}.calendar-detail-cover.empty{height:72px;background:linear-gradient(135deg,#1e2a3e,#334563)}#calendarDetailBody{padding:22px}.calendar-detail-kind{font-size:7px}.calendar-detail-card h2{font-size:23px;margin:5px 0 10px}.calendar-detail-when{font-size:10px;line-height:1.6;color:#4e5665}.calendar-detail-description{font-size:10px;line-height:1.65;color:var(--muted);border-top:1px solid var(--gca-line,var(--line));padding-top:14px;margin-top:14px}.calendar-detail-actions{display:flex;gap:8px;margin-top:18px}.calendar-detail-actions .cta,.calendar-detail-actions .outline{min-width:110px;text-align:center}.calendar-day{cursor:pointer}

/* GCA 2.3.0 — role targeting + compact calendar + native live rooms */
#calendar.screen{padding-inline:clamp(14px,3vw,42px)}
.gca-calendar-shell{width:min(1080px,100%);margin:0 auto;background:rgba(255,255,255,.96)}
.calendar-month-grid{grid-template-rows:repeat(6,minmax(88px,1fr));min-height:548px}
.calendar-day{padding:8px 9px}.calendar-day.selected{box-shadow:inset 0 0 0 1.5px rgba(73,104,232,.45);background:#f7f9ff}
.calendar-mini-event{grid-template-columns:6px auto minmax(0,1fr);gap:5px;padding:6px 7px;border-radius:7px;min-height:27px}
.calendar-mini-event i{width:6px;height:6px}.calendar-mini-event span{font-size:8px}.calendar-mini-event strong{font-size:9px;line-height:1.15}
.calendar-day-events>small{font-size:8px}
.calendar-mobile-agenda{display:none}
.event-custom-roles{display:grid;gap:7px;margin-top:6px;padding-top:10px;border-top:1px solid var(--gca-line,var(--line))}.event-custom-roles>small{font-size:6px;letter-spacing:1.1px;color:var(--muted);font-weight:700}.event-custom-roles label{font-size:9px}.calendar-role-chips{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.calendar-role-chips span{font-size:8px;padding:5px 8px;border-radius:999px;background:#edf1ff;color:#334fa8;border:1px solid #dce4ff}
.custom-roles-admin{display:grid;gap:8px}.custom-role-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid var(--gca-line,var(--line));background:#fff;border-radius:11px}.custom-role-row>div:first-child{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.custom-role-row strong{font-size:11px}.custom-role-row small{grid-column:2;font-size:8px;color:var(--muted);margin-top:2px}.custom-role-row>div:last-child{display:flex;gap:6px}.custom-role-dot{width:9px;height:9px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px rgba(73,104,232,.09)}.custom-role-card{width:min(520px,calc(100vw - 28px))}.custom-role-card form{display:grid;gap:14px}.custom-role-card label{display:grid;gap:6px;font-size:9px;color:var(--muted)}.custom-role-card input,.custom-role-card textarea{border:1px solid var(--gca-line,var(--line));border-radius:9px;padding:11px;background:#fff;font:inherit}.custom-role-card textarea{min-height:92px;resize:vertical}.admin-empty{padding:35px;text-align:center;border:1px dashed var(--gca-line,var(--line));border-radius:12px}.admin-empty strong{font-size:13px}.admin-empty p{font-size:9px;color:var(--muted)}
.member-row{grid-template-columns:minmax(190px,1.4fr) auto 120px auto minmax(220px,1.2fr)!important}.member-custom-role-pills{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.member-role-toggle{cursor:pointer}.member-role-toggle input{position:absolute;opacity:0;pointer-events:none}.member-role-toggle span{display:inline-flex;padding:5px 8px;border-radius:999px;border:1px solid var(--gca-line,var(--line));font-size:7px;color:var(--muted);background:#fff}.member-role-toggle.on span{background:#edf1ff;border-color:#cfd9ff;color:#334fa8;font-weight:700}.member-approval-actions{grid-column:1/-1}

.gca-live-call-window{position:fixed;inset:0;z-index:10050;background:#11151d;color:#fff;display:grid;grid-template-rows:auto 1fr auto}.gca-live-call-window.hidden{display:none!important}.gca-live-call-topbar{height:64px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.09);background:#0d1118}.gca-live-call-topbar>div{display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:center}.gca-live-call-topbar strong{font-size:13px}.gca-live-call-topbar small{grid-column:2;font-size:8px;color:#8e98a8}.gca-live-call-topbar button{width:36px;height:36px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:22px}.live-dot{width:8px;height:8px;border-radius:50%;background:#37c977;box-shadow:0 0 0 4px rgba(55,201,119,.12)}.gca-live-call-stage{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0}.gca-live-video-grid{padding:22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;align-content:center;background:#171c25;overflow:auto}.gca-live-video-tile{position:relative;min-height:260px;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#262c36;border:1px solid rgba(255,255,255,.08)}.gca-live-video-tile video{width:100%;height:100%;object-fit:cover;background:#262c36}.gca-live-video-tile>span{position:absolute;left:12px;bottom:10px;padding:5px 7px;border-radius:6px;background:rgba(0,0,0,.55);font-size:9px}.gca-live-avatar-fallback{position:absolute;inset:0;display:grid;place-items:center;background:#2a303a}.live-stage-avatar{width:82px;height:82px;border-radius:50%;object-fit:cover}.gca-live-waiting{margin:auto;text-align:center;max-width:360px;color:#c9d0dc}.gca-live-waiting h3{font-size:22px;margin:14px 0 5px;color:#fff}.gca-live-waiting p{font-size:10px;color:#8e98a8}.live-room-mark{display:grid;place-items:center;width:78px;height:78px;margin:auto;border-radius:22px;background:#202838;border:1px solid rgba(255,255,255,.09);font-weight:800;letter-spacing:2px}.gca-live-call-side{background:#f7f8fb;color:#171b24;padding:30px 26px;display:flex;flex-direction:column;gap:28px}.gca-live-call-side h2{font-size:21px;margin:5px 0 8px}.gca-live-call-side p{font-size:10px;line-height:1.6;color:#6c7482}.gca-live-participants{display:grid;gap:9px}.gca-live-participants>strong{font-size:10px;margin-bottom:4px}.gca-live-participants>small{font-size:9px;color:#8b919c}.gca-live-participants>span{display:flex;align-items:center;gap:8px;font-size:9px}.live-participant-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.gca-live-call-side>.cta{margin-top:auto;min-height:42px}.gca-live-controls{height:74px;display:flex;align-items:center;justify-content:center;gap:9px;background:#0d1118;border-top:1px solid rgba(255,255,255,.09)}.gca-live-controls button{min-width:72px;height:38px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:#202735;color:#fff;font-size:9px}.gca-live-controls button.off{background:#c7433f}.gca-live-controls button.active{background:#315bc4}.gca-live-controls .hangup{background:#d94a43}.live-call-open{overflow:hidden}

@media(max-width:820px){
  #calendar.screen{padding:0!important;background:#fff}.gca-calendar-shell{width:100%;border:0;border-radius:0;box-shadow:none;margin:0}.gca-calendar-toolbar{grid-template-columns:auto 1fr auto;min-height:118px;padding:14px 16px 8px;align-items:start;border-bottom:1px solid var(--gca-line,var(--line))}.calendar-today{font-size:11px;padding:10px 14px;border-radius:999px}.calendar-period-nav{grid-column:1/-1;grid-row:2;justify-content:space-between;width:100%;padding-top:12px}.calendar-period-nav strong{font-size:15px}.calendar-period-nav small{font-size:9px;margin-top:3px}.calendar-period-nav>button{font-size:28px;width:34px}.calendar-view-actions button{width:38px;height:38px;font-size:17px}.calendar-view-actions [data-calendar-view="list"]{display:grid}.calendar-weekdays{height:34px}.calendar-weekdays span{font-size:9px;font-weight:700}.calendar-month-grid{grid-template-rows:repeat(6,58px);min-height:348px}.calendar-day{padding:5px 3px;text-align:center}.calendar-day-number{margin:0 auto;width:25px;height:25px;font-size:10px}.calendar-day-events{margin-top:3px;display:flex;justify-content:center}.calendar-mini-event{width:6px;height:6px;min-height:0;padding:0;border-radius:50%;background:var(--blue)}.calendar-mini-event i,.calendar-mini-event span,.calendar-mini-event strong{display:none}.calendar-day-events>small{display:none}.calendar-day.selected{box-shadow:none;background:#f7f9ff}.calendar-day.selected .calendar-day-number{outline:1px solid #d9e1ff}.calendar-mobile-agenda{display:block;border-top:1px solid var(--gca-line,var(--line));padding:17px 14px 100px;background:#fff;min-height:260px}.calendar-mobile-agenda>h3{font-size:13px;color:#737b87;margin:0 0 16px}.calendar-mobile-agenda>div{display:grid;gap:10px}.calendar-mobile-event{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--gca-line,var(--line))}.calendar-mobile-event-icon{height:74px;border-radius:10px;background:#f3f5f8;display:grid;place-items:center;font-size:25px;color:#8a919c}.calendar-mobile-event>div:nth-child(2){display:grid;gap:4px}.calendar-mobile-event small{font-size:10px}.calendar-mobile-event strong{font-size:13px}.calendar-mobile-event span{font-size:9px;color:var(--muted)}.calendar-mobile-event .cta{padding:7px 9px;font-size:8px}.calendar-mobile-empty{padding:30px 0;color:var(--muted);font-size:10px}.gca-calendar-list{padding-bottom:100px}.member-row{grid-template-columns:1fr!important;gap:8px}.member-custom-role-pills{grid-column:1}.custom-role-row{align-items:flex-start}.custom-role-row>div:last-child{flex-direction:column}.calendar-event-card{max-height:96vh}.event-custom-roles{max-height:150px;overflow:auto}
  .gca-live-call-topbar{height:56px;padding:0 14px}.gca-live-call-stage{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto}.gca-live-video-grid{padding:10px;grid-template-columns:1fr;align-content:start}.gca-live-video-tile{min-height:190px}.gca-live-call-side{padding:14px 16px;gap:10px;max-height:210px;overflow:auto}.gca-live-call-side>div:first-child p,.gca-live-call-side>div:first-child .eyebrow{display:none}.gca-live-call-side h2{font-size:15px;margin:0}.gca-live-participants{display:flex;align-items:center;gap:7px;overflow:auto}.gca-live-participants>strong{white-space:nowrap;margin:0}.gca-live-participants>span b{display:none}.gca-live-call-side>.cta{margin:0;min-height:36px}.gca-live-controls{height:68px;gap:6px;padding:0 8px}.gca-live-controls button{min-width:62px;height:36px}
}

/* GCA 2.3.1 — event-native live calls + Skool-inspired call controls */
.calendar-location-row:has(#eventLocationValueWrap.hidden){grid-template-columns:minmax(220px,360px)}
.gca-live-controls button{min-width:58px;height:48px;padding:5px 10px;display:grid;place-items:center;align-content:center;gap:2px;border-radius:12px}
.gca-live-controls button>span{font-size:15px;line-height:1}.gca-live-controls button>small{font-size:7px;color:inherit;line-height:1}
.gca-live-video-tile video.mirrored{transform:scaleX(-1)}
.gca-live-settings{position:fixed;inset:0;z-index:10070;background:rgba(0,0,0,.56);display:grid;place-items:center;padding:18px}.gca-live-settings.hidden{display:none!important}
.gca-live-settings-card{width:min(680px,calc(100vw - 28px));max-height:min(620px,calc(100vh - 36px));overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:#2b2d31;color:#fff;box-shadow:0 28px 90px rgba(0,0,0,.45)}
.gca-live-settings-card header{height:62px;padding:0 18px 0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.09)}.gca-live-settings-card header h2{margin:0;font-size:19px}.gca-live-settings-card header button{width:34px;height:34px;border:0;background:none;color:#aeb3bb;font-size:24px}
.gca-live-settings-body{display:grid;grid-template-columns:180px minmax(0,1fr);min-height:390px}.gca-live-settings-body nav{padding:20px 14px;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:5px}.gca-live-settings-body nav button{border:0;border-radius:8px;background:transparent;color:#d8dbe0;text-align:left;padding:11px 12px;font-size:10px;font-weight:600}.gca-live-settings-body nav button.active{background:#f0b95b;color:#1f2228}.gca-live-settings-body nav button:disabled{opacity:.38}
.gca-live-settings-body section{padding:24px 28px;display:grid;align-content:start;gap:19px}.gca-live-settings-body section>label:not(.live-setting-toggle){display:grid;gap:7px;font-size:10px;font-weight:600;color:#e8e9ec}.gca-live-settings-body select{width:100%;height:39px;border:1px solid #17191d;border-radius:9px;background:#111317;color:#fff;padding:0 11px;font-size:10px}.gca-live-settings-body label>small{font-size:8px;color:#8f969f;font-weight:400}.live-setting-toggle{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-top:5px}.live-setting-toggle span{display:grid;gap:3px}.live-setting-toggle strong{font-size:10px}.live-setting-toggle small{font-size:8px;color:#8f969f}.live-setting-toggle input{width:38px;height:20px;accent-color:#2dbb86}
.migration-needed{background:#fff9f5;border-color:#efc7b3!important}.migration-needed b{font-weight:700;color:#a34d2e}
@media(max-width:820px){.calendar-location-row:has(#eventLocationValueWrap.hidden){grid-template-columns:1fr}.gca-live-settings-body{grid-template-columns:1fr}.gca-live-settings-body nav{display:none}.gca-live-settings-body section{padding:20px}.gca-live-controls button{min-width:52px;height:46px;padding:4px 7px}.gca-live-controls{overflow-x:auto;justify-content:flex-start;padding-left:12px;padding-right:12px}}

/* =========================================================
   GCA 2.3.2 — role-gated community + live call chat
   ========================================================= */
.custom-role-access-editor{margin-top:4px;padding:14px;border:1px solid var(--gca-line,var(--line));border-radius:11px;background:#f8f9fb}.custom-role-access-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.9fr);gap:18px;align-items:start;margin-bottom:10px}.custom-role-access-head .eyebrow{margin-bottom:3px}.custom-role-access-head strong{font-size:11px}.custom-role-access-head>small{font-size:8px;line-height:1.5;color:var(--muted)}.custom-role-permission-list{display:grid;gap:6px}.custom-role-permission-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:12px;align-items:center;padding:8px 9px;border:1px solid #e4e7ed;border-radius:9px;background:#fff}.custom-role-permission-row>div{display:grid;gap:2px}.custom-role-permission-row strong{font-size:9px}.custom-role-permission-row small{font-size:7px;color:var(--muted)}.custom-role-permission-row select{margin:0!important;padding:7px 9px!important;font-size:8px!important}.custom-role-access-empty{padding:10px;font-size:8px;color:var(--muted);text-align:center}.settings-custom-role-access{margin:4px 0 2px}.manage-category-title button{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;padding:0;color:inherit;text-align:left}.manage-category-title button span{font-size:7px;color:var(--gca-blue-deep);opacity:.72}.manage-category-title button:hover span{opacity:1}#categorySettingsForm{display:grid;gap:12px;margin-top:0}

.gca-live-call-side{gap:16px!important}.gca-live-side-intro{flex:0 0 auto}.gca-live-side-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #dfe3ea}.gca-live-side-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:9px 5px;color:#7a8290;font-size:9px;font-weight:700}.gca-live-side-tabs button.active{color:#20283a;border-bottom-color:#4968e8}.gca-live-side-tabs button span{display:inline-grid;min-width:15px;height:15px;place-items:center;border-radius:999px;background:#e9edf7;color:#53627a;font-size:6px;margin-left:3px}.gca-live-side-pane{min-height:0;flex:1;display:flex;flex-direction:column}.gca-live-side-pane.hidden{display:none!important}#gcaLivePeoplePane .cta{margin-top:auto;min-height:42px}.gca-live-chat-messages{min-height:0;flex:1;overflow:auto;display:flex;flex-direction:column;gap:11px;padding:2px 2px 10px}.gca-live-chat-message{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start}.gca-live-chat-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#e8ebf1}.gca-live-chat-message header{display:flex;gap:6px;align-items:baseline}.gca-live-chat-message header strong{font-size:9px;color:#20242c}.gca-live-chat-message header small{font-size:7px;color:#9aa1ad}.gca-live-chat-message p{margin:3px 0 0!important;font-size:9px!important;line-height:1.45!important;color:#4e5663!important;white-space:pre-wrap;overflow-wrap:anywhere}.gca-live-chat-message.mine p{color:#263752!important}.gca-live-chat-empty{margin:auto;padding:22px 8px;text-align:center;color:#8d95a2;font-size:9px}.gca-live-chat-form{display:grid;grid-template-columns:1fr 36px;gap:6px;padding-top:10px;border-top:1px solid #dfe3ea}.gca-live-chat-form input{min-width:0;height:38px;border:1px solid #d8dde6;border-radius:9px;background:#fff;padding:0 10px;font-size:9px;outline:none}.gca-live-chat-form input:focus{border-color:#8ea1f3;box-shadow:0 0 0 3px rgba(73,104,232,.09)}.gca-live-chat-form button{width:36px;height:36px;border:0;border-radius:9px;background:#20283a;color:#fff;font-size:17px}.gca-live-chat-form button:hover{background:#182033}

/* Academy completion now uses the product's dark blue instead of success green. */
#academy .course-progress span,#academy .academy-curriculum-progress span{background:var(--gca-rail-dark,#20283a)!important}#academy .lesson-status.is-complete,#academy .lesson-complete-check.done,#academy .academy-upload-done{background:var(--gca-rail-dark,#20283a)!important;color:#fff!important;border-color:var(--gca-rail-dark,#20283a)!important}#academy .lesson-complete-check:hover{border-color:var(--gca-rail-dark,#20283a)!important;color:var(--gca-rail-dark,#20283a)!important}#academy .lesson-page-icon.done{border-color:#8792a8!important;color:var(--gca-rail-dark,#20283a)!important;background:#eef1f6!important}#academy .academy-mobile-coursebar>span{color:var(--gca-rail-dark,#20283a)!important}

@media(max-width:820px){.custom-role-access-head{grid-template-columns:1fr;gap:5px}.custom-role-permission-row{grid-template-columns:1fr 120px}.gca-live-call-side{max-height:42vh!important;padding:12px 14px!important}.gca-live-side-intro p,.gca-live-side-intro .eyebrow{display:none!important}.gca-live-chat-messages{min-height:120px;max-height:220px}.gca-live-chat-form{position:sticky;bottom:0;background:#f7f8fb;padding-bottom:2px}}

/* =========================================================
   GCA 2.3.3 — Academy completion + live host controls
   ========================================================= */
:root{--academy-progress-blue:#52698f;--academy-progress-blue-deep:#415675;--academy-progress-blue-soft:#e9eef6}
/* Override the older high-specificity green course-card rule as well as the classroom bar. */
#academy:not(.course-open) .academy-v2-card .course-progress>span,
#academy .course-progress>span,
#academy .academy-curriculum-progress>span{background:var(--academy-progress-blue)!important}
#academy .lesson-status.is-complete,
#academy .lesson-complete-check.done,
#academy .academy-upload-done{background:var(--academy-progress-blue)!important;border-color:var(--academy-progress-blue)!important;color:#fff!important}
#academy .lesson-complete-check{cursor:pointer;position:relative;z-index:3}
#academy .lesson-complete-check:hover{border-color:var(--academy-progress-blue)!important;color:var(--academy-progress-blue)!important}
#academy .lesson-complete-check.done:hover{background:var(--academy-progress-blue-deep)!important;color:#fff!important}
#academy .lesson-complete-text{cursor:pointer;color:var(--academy-progress-blue-deep)!important}
#academy .lesson-complete-text:hover{color:var(--gca-blue,#4968e8)!important;text-decoration:underline}
#academy .lesson-complete-check:disabled,#academy .lesson-complete-text:disabled{opacity:.55;cursor:wait}
#academy .lesson-page-icon.done{border-color:#aab6ca!important;color:var(--academy-progress-blue-deep)!important;background:var(--academy-progress-blue-soft)!important}
#academy .academy-mobile-coursebar>span{color:var(--academy-progress-blue)!important}

.gca-live-host-tools{margin-top:5px;padding-top:18px;border-top:1px solid rgba(255,255,255,.09);display:grid;gap:14px}
.gca-live-host-tools-head{display:grid;gap:4px}.gca-live-host-tools-head .eyebrow{margin:0;color:#9aa3b2!important}.gca-live-host-tools-head>strong{font-size:12px}.gca-live-host-tools-head>small{font-size:8px;line-height:1.5;color:#9aa1ad}
.gca-live-host-quick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gca-live-host-quick button{height:36px;border:1px solid rgba(255,255,255,.13);border-radius:9px;background:#202329;color:#eef0f4;font-size:9px;font-weight:700}.gca-live-host-quick button:hover{background:#171a1f}
.gca-live-participants{gap:8px!important}.gca-live-participant-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 0;border-bottom:1px solid #e6e9ef}.gca-live-participant-row:last-child{border-bottom:0}.gca-live-participant-copy{min-width:0;display:grid;gap:2px}.gca-live-participant-copy b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gca-live-participant-copy small{font-size:7px;color:#8a929f}.gca-live-participant-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.gca-live-participant-actions button{border:1px solid #d9dee7;background:#fff;border-radius:7px;padding:5px 7px;font-size:7px;font-weight:700;color:#44516a}.gca-live-participant-actions button:hover{background:#f0f3f8;border-color:#c7cfdd}.gca-live-controls button.host-locked{opacity:.62;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
@media(max-width:820px){.gca-live-host-quick{grid-template-columns:1fr}.gca-live-participant-row{grid-template-columns:30px minmax(0,1fr)}.gca-live-participant-actions{grid-column:2;justify-content:flex-start}.gca-live-participant-actions button{font-size:8px;padding:6px 8px}}

/* =========================================================
   GCA 2.3.4 — Academy moves + occurrence rooms + speaker view
   ========================================================= */
/* Academy: make every folder a clear, independent drop target. */
#academy .academy-lesson-list[data-drop-module],#academy .academy-root-drop[data-drop-module]{position:relative;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease}
#academy .academy-lesson-list.is-drag-over,#academy .academy-root-drop.is-drag-over{background:#eef3fb!important;box-shadow:inset 0 0 0 2px var(--academy-progress-blue,#52698f);border-radius:9px}
#academy .academy-lesson-row-wrap[draggable="true"]{cursor:grab}#academy .academy-lesson-row-wrap.is-dragging{opacity:.42;cursor:grabbing}

/* Live settings: use the GCA blue system rather than the old muted-gold Skool reference. */
.gca-live-settings-body nav button.active{background:#52698f!important;color:#fff!important}.live-setting-toggle input{accent-color:#607aa5!important}
.gca-live-settings-body select:focus{outline:2px solid rgba(96,122,165,.38);outline-offset:1px}

/* Active-speaker layout: one stage + a horizontally scrollable participant filmstrip. */
.gca-live-video-grid.speaker-view{position:relative;display:block!important;padding:18px 18px 122px!important;overflow:hidden;background:#171c25}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-active-speaker{width:100%;height:100%;min-height:0;aspect-ratio:auto;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.22)}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-filmstrip{position:relative;display:inline-block;width:150px;height:88px;min-height:88px;aspect-ratio:auto;margin-right:8px;border-radius:10px;vertical-align:top}
.gca-live-video-grid.speaker-view:after{content:"";position:absolute;left:0;right:0;bottom:0;height:112px;background:#111720;border-top:1px solid rgba(255,255,255,.08);z-index:0}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-filmstrip{z-index:1;transform:translateY(18px)}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-filmstrip:first-of-type{margin-left:2px}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-filmstrip>span{font-size:7px;left:6px;bottom:5px;padding:3px 5px}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-active-speaker>span{font-size:9px}
.gca-live-video-grid.grid-view{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-content:center;overflow:auto}
.gca-live-video-grid.grid-view .gca-live-video-tile{min-height:210px}

/* Put filmstrip tiles into a horizontal strip visually while keeping the active tile dominant. */
.gca-live-video-grid.speaker-view{white-space:nowrap;overflow-x:auto;overflow-y:hidden}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-active-speaker{display:block;position:sticky;left:18px;right:18px;top:18px;z-index:2;margin-bottom:18px;white-space:normal}
.gca-live-video-grid.speaker-view .gca-live-video-tile.is-filmstrip{white-space:normal}

@media(max-width:820px){
  .gca-live-video-grid.speaker-view{padding:8px 8px 92px!important;min-height:0}
  .gca-live-video-grid.speaker-view:after{height:84px}
  .gca-live-video-grid.speaker-view .gca-live-video-tile.is-active-speaker{position:sticky;left:8px;top:8px;height:min(48vh,360px);min-height:220px;margin-bottom:10px;border-radius:12px}
  .gca-live-video-grid.speaker-view .gca-live-video-tile.is-filmstrip{width:112px;height:66px;min-height:66px;transform:translateY(10px);margin-right:6px}
  .gca-live-video-grid.grid-view{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .gca-live-video-grid.grid-view .gca-live-video-tile{min-height:120px!important}
}
/* 2.3.4 speaker-stage wrapper correction */
.gca-live-video-grid.speaker-view{display:grid!important;grid-template-rows:minmax(0,1fr) 104px;gap:10px;padding:14px!important;overflow:hidden;white-space:normal}
.gca-live-video-grid.speaker-view:after{display:none!important}
.gca-live-speaker-main{min-height:0;display:grid;place-items:stretch}.gca-live-speaker-main .gca-live-video-tile{width:100%!important;height:100%!important;min-height:0!important;aspect-ratio:auto!important;position:relative!important;inset:auto!important;margin:0!important;transform:none!important}
.gca-live-filmstrip{min-width:0;display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:1px 1px 5px;scrollbar-width:thin}.gca-live-filmstrip .gca-live-video-tile{flex:0 0 158px!important;width:158px!important;height:92px!important;min-height:92px!important;aspect-ratio:auto!important;position:relative!important;margin:0!important;transform:none!important}
@media(max-width:820px){.gca-live-video-grid.speaker-view{grid-template-rows:minmax(210px,1fr) 76px;padding:8px!important;gap:7px}.gca-live-filmstrip .gca-live-video-tile{flex-basis:116px!important;width:116px!important;height:68px!important;min-height:68px!important}.gca-live-speaker-main .gca-live-video-tile{min-height:210px!important}}

/* =========================================================
   GCA 2.3.5 — Community unread state
   ========================================================= */
/* Unread should read as information, not as another decorative accent. */
body.community-active .channel.has-unread:not(.is-active) .channel-name{font-weight:750!important;color:#1f2a3d!important}
body.community-active .channel.has-unread:not(.is-active) .channel-type-icon{color:#52698f!important;opacity:1!important}
.channel-unread-dot{display:none;width:6px;height:6px;flex:0 0 6px;border-radius:999px;background:#607aa5;box-shadow:0 0 0 3px rgba(96,122,165,.11)}
.channel.has-unread:not(.is-active) .channel-unread-dot{display:block}
body.community-active .channel-unread-badge{min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:var(--gca-coral,#ef6648)!important;color:#fff!important;font-size:7px!important;font-weight:800!important;line-height:1!important;box-shadow:none!important}
.category-toggle{min-width:0}.category-toggle strong{min-width:0}.category-unread-count{font-style:normal;margin-left:auto;min-width:18px;height:17px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:#e7ecf4;color:#445b7e;font-size:7px;font-weight:800;letter-spacing:0;text-transform:none}
.category-toggle:hover .category-unread-count{background:#dce4f0}
.mobile-nav .mobile-nav-icon-wrap{position:relative;display:inline-grid;place-items:center}
.mobile-community-unread{position:absolute;right:-10px;top:-7px;min-width:16px;height:16px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:var(--gca-coral,#ef6648);color:#fff;font-style:normal;font-size:6px;font-weight:800;line-height:12px;text-align:center;z-index:2}
#communityUnreadBadge.hidden,#mobileCommunityUnreadBadge.hidden{display:none!important}
/* The main app badge is now data-driven; keep it compact when the total reaches two digits. */
#communityUnreadBadge{padding:0 5px;min-width:18px;width:auto!important;font-variant-numeric:tabular-nums}
@media(max-width:820px){
  body.community-active .channel.has-unread:not(.is-active) .channel-name{font-weight:800!important}
  .channel-unread-dot{width:7px;height:7px;flex-basis:7px}
  .category-unread-count{height:18px;min-width:19px;font-size:7px}
}

/* =========================================================
   GCA 2.3.6 — Community inbox, mentions & replies
   ========================================================= */
.rail-notification-btn{display:inline-flex!important;align-items:center;gap:5px;position:relative}
.rail-notification-badge,.community-notification-badge,.server-notification-badge{font-style:normal;font-variant-numeric:tabular-nums}
.rail-notification-badge{min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:var(--gca-coral,#ef6648);color:#fff;display:inline-grid;place-items:center;font-size:6px;font-weight:800}
.community-inbox-btn{position:relative!important;font-weight:750!important;font-size:16px!important}
.community-notification-badge{position:absolute;right:-1px;top:-2px;min-width:15px;height:15px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:var(--gca-coral,#ef6648);color:#fff;display:grid;place-items:center;font-size:6px;font-weight:800;line-height:1}
.server-notification-badge{margin-left:auto;min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:#e7ecf4;color:#445b7e;display:grid;place-items:center;font-size:7px;font-weight:800}
#globalNotificationBadge.hidden,#communityNotificationBadge.hidden,#serverNotificationBadge.hidden{display:none!important}
.notification-drawer{width:min(430px,94vw);grid-template-rows:auto auto 1fr!important}
.notification-drawer-head strong{font-size:17px!important;font-weight:650!important;color:#1f2a3d}
.notification-drawer-actions{display:flex;align-items:center;gap:8px}
.notification-drawer-actions #markAllNotificationsRead{font-size:9px!important;font-weight:650;color:#52698f;border:1px solid #d8deea;background:#f7f9fc;border-radius:8px;padding:7px 9px;white-space:nowrap}
.notification-drawer-actions [data-close-drawer]{font-size:21px!important;width:32px;height:32px;border-radius:8px}
.notification-filter-tabs{display:flex;gap:5px;padding:9px 12px;border-bottom:1px solid #e7e9ed;background:#fbfcfd}
.notification-filter-tabs button{border:0;border-radius:999px;background:transparent;color:#6c7380;padding:6px 11px;font-size:9px;font-weight:650}
.notification-filter-tabs button.active{background:#e9eef7;color:#3f567a}
.notification-results{padding:0!important}
.community-notification-item{position:relative;width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) 8px;gap:10px;align-items:start;border:0;border-bottom:1px solid #edf0f3;background:#fff;padding:13px 14px;text-align:left;color:#202633}
.community-notification-item:hover{background:#f7f9fc}.community-notification-item.is-unread{background:#f4f7fc}
.notification-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#e8edf5;color:#42587b;font-size:10px;font-weight:800}.notification-avatar .avatar-image{width:100%;height:100%;display:block;background-position:center;background-size:cover}
.notification-copy{min-width:0;display:block}.notification-copy>span{display:block;font-size:10px;line-height:1.35}.notification-copy>span strong{font-weight:750}.notification-copy small{display:block;margin-top:3px;color:#7d8490;font-size:7.5px}.notification-copy p{margin:6px 0 0;color:#4d5562;font-size:9px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notification-unread-dot{align-self:center;width:7px;height:7px;border-radius:50%;background:#607aa5;box-shadow:0 0 0 3px rgba(96,122,165,.12)}
/* Keep the first unread boundary visible instead of always dropping the member at the bottom. */
.new-message-divider{scroll-margin-top:12px}
@media(max-width:820px){
  .notification-drawer{width:100vw;max-width:none}
  .notification-drawer-head{padding-top:calc(12px + env(safe-area-inset-top))!important}
  .community-notification-item{grid-template-columns:42px minmax(0,1fr) 8px;padding:14px 15px}.notification-avatar{width:40px;height:40px}.notification-copy>span{font-size:12px}.notification-copy small{font-size:9px}.notification-copy p{font-size:10px}
  .community-inbox-btn{display:grid!important}
}

/* GCA 2.3.7 — Community navigation, pins, thread attention & member actions */
body.community-active .community-head-actions #pinnedMessagesBtn{
  display:grid!important;place-items:center!important;
}
.jump-unread-btn{position:relative;min-width:38px!important;width:auto!important;padding:0 9px!important;gap:4px!important;color:#52698f!important}
.jump-unread-btn i{font-style:normal;font-size:7px;font-weight:800;letter-spacing:.08em}
.jump-unread-btn.hidden{display:none!important}
.thread-summary{display:flex;align-items:center;gap:7px}
.thread-summary.has-unread{color:#415a82!important;font-weight:700}
.thread-summary i{font-style:normal;margin-left:auto;padding:2px 6px;border-radius:999px;background:#e9eef8;color:#415a82;font-size:8px;font-weight:800;white-space:nowrap}
.pinned-result-card{position:relative;border-bottom:1px solid #eceef1}
.pinned-result-card .drawer-message-result{border-bottom:0!important;padding-right:42px!important}
.pin-remove-btn{position:absolute;right:12px;top:12px;width:26px;height:26px;border:1px solid #dfe2e7;border-radius:7px;background:#fff;color:#737982;cursor:pointer;font-size:17px;line-height:1}
.pin-remove-btn:hover{background:#f3f5f8;color:#1f2a3d}
.profile-member-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.profile-member-actions .profile-primary,.profile-member-actions .profile-secondary{min-height:38px;padding:0 14px}
.member-row.member-row-focus{outline:2px solid #7188ad;outline-offset:2px;background:#f2f5fa!important;transition:.2s}
@media(max-width:820px){
  body.community-active .community-head-actions #pinnedMessagesBtn{display:none!important}
  .jump-unread-btn i{display:none}
  .jump-unread-btn{min-width:34px!important;padding:0!important}
  .profile-member-actions{display:grid!important;grid-template-columns:1fr 1fr}
  .profile-member-actions[style*="none"]{display:none!important}
  .profile-member-actions .profile-primary{grid-column:1/-1}
}


/* GCA 2.3.8 — Community moderation & admin usability */
.admin-tab-count{display:inline-flex;min-width:20px;height:20px;padding:0 6px;border-radius:999px;align-items:center;justify-content:center;margin-left:5px;background:#e85d43;color:#fff;font-size:10px;font-weight:700}.admin-tab-count.hidden{display:none}.member-row.search-hidden{display:none!important}
.moderation-filter{display:flex;gap:5px;padding:4px;background:#eef2f8;border:1px solid #dbe2ed;border-radius:10px}.moderation-filter button{border:0;background:transparent;padding:7px 12px;border-radius:7px;color:#61708a;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.moderation-filter button.active{background:#fff;color:#17233b;box-shadow:0 1px 4px rgba(23,35,59,.08)}
.moderation-queue{display:grid;gap:12px}.moderation-report{background:#fff;border:1px solid #dce3ed;border-radius:14px;padding:16px;box-shadow:0 6px 24px rgba(26,39,64,.035)}.moderation-report.is-resolved{opacity:.68}.moderation-report-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.moderation-report-top>div{display:grid;gap:3px}.moderation-report-top strong{font-size:15px;color:#18233a}.moderation-report-top small{color:#7b8596}.report-reason,.report-status{display:inline-flex;width:max-content;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.report-reason{color:#e05f46}.report-status{padding:5px 8px;border-radius:999px;background:#eef2f8;color:#52698f}.moderation-report blockquote{margin:14px 0 8px;padding:12px 14px;border-left:3px solid #7186aa;background:#f7f9fc;border-radius:0 10px 10px 0;color:#26344e;font-size:13px}.report-details{font-size:12px;color:#667085;margin:8px 0}.moderation-report-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.danger-button{border:1px solid #efc6bd;background:#fff7f5;color:#c94c34;border-radius:9px;padding:8px 12px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.danger-button:hover{background:#fff0ec}
.report-message-card form{display:grid;gap:14px}.report-message-card label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#2b3851}.report-message-card select,.report-message-card textarea{width:100%;border:1px solid #d7dee9;border-radius:10px;background:#fff;padding:11px 12px;font:inherit;color:#17233b}.report-message-preview{background:#f5f7fb;border:1px solid #e0e5ed;border-radius:11px;padding:12px}.report-message-preview small{display:block;color:#8b95a5;letter-spacing:.12em;font-size:9px;font-weight:800}.report-message-preview strong{display:block;margin:4px 0;color:#1b2740}.report-message-preview p{margin:0;color:#59667b;font-size:12px;line-height:1.45}.report-message-card .modal-actions{display:flex;justify-content:flex-end;gap:8px}
@media(max-width:820px){.moderation-report-top{display:grid}.moderation-filter{width:max-content}.moderation-report-actions>*{flex:1 1 auto}.admin-tabs{overflow-x:auto;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.report-message-card{width:calc(100vw - 24px)!important}}


/* =========================================================
   GCA 2.3.9 — Community final UX polish
   Search, member directory, mobile navigation and consistency
   ========================================================= */
body.community-active .community-channel-head{
  backdrop-filter:saturate(140%) blur(12px);
  -webkit-backdrop-filter:saturate(140%) blur(12px);
}
.community-members-btn{position:relative!important;display:grid!important;place-items:center!important}
.community-members-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.community-members-btn i{position:absolute;right:-2px;top:-4px;min-width:15px;height:15px;padding:0 4px;border:2px solid #fff;border-radius:999px;background:#52698f;color:#fff;display:grid;place-items:center;font-style:normal;font-size:6px;font-weight:800;line-height:1}
body.community-active .members-head{padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important}
body.community-active .members-head>div{min-width:0;display:grid;gap:1px}
body.community-active .members-head strong{font-size:13px!important;color:#20283a!important;font-weight:700!important}
body.community-active .members-head small{font-size:8px;color:#8992a0;white-space:nowrap}
body.community-active .members-head button{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#77808e;font-size:20px;cursor:pointer}
body.community-active .members-head button:hover{background:#edf1f6;color:#20283a}
.member-directory-search{height:36px;margin:10px 10px 7px;padding:0 10px;display:flex;align-items:center;gap:7px;border:1px solid #e0e5ec;border-radius:9px;background:#fff;transition:.15s}
.member-directory-search:focus-within{border-color:#9eacc2;box-shadow:0 0 0 3px rgba(82,105,143,.08)}
.member-directory-search svg{width:14px;height:14px;fill:none;stroke:#8c96a5;stroke-width:1.8;stroke-linecap:round}
.member-directory-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:#263247;font:inherit;font-size:10px}
.member-directory-search input::placeholder{color:#a0a8b4}
body.community-active .community-member-list{padding-top:2px!important}
body.community-active .member-role-group>p{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 4px!important;margin:0!important;color:#8b94a2!important;font-size:8px!important;font-weight:800!important;letter-spacing:.08em!important}
body.community-active .member-role-group>p b{font-size:8px;font-weight:700;letter-spacing:0;color:#a0a7b2}
body.community-active .community-member-row{transition:background .14s,transform .14s!important}
body.community-active .community-member-row:hover{background:#edf1f6!important;transform:translateX(1px)}
body.community-active .community-member-row.is-offline{opacity:.62}
body.community-active .community-member-row.is-offline:hover{opacity:.9}
.member-directory-empty{margin:18px 10px;padding:18px 12px;border:1px dashed #dce2ea;border-radius:11px;color:#8b94a2;text-align:center;font-size:10px;line-height:1.45}

.community-search-filters{display:flex;gap:5px;padding:0 14px 10px;border-bottom:1px solid #edf0f4;background:#fff;overflow:auto;scrollbar-width:none}
.community-search-filters::-webkit-scrollbar{display:none}
.community-search-filters button{flex:0 0 auto;border:1px solid transparent;border-radius:999px;background:#f3f5f8;color:#697386;padding:6px 11px;font:inherit;font-size:9px;font-weight:700;cursor:pointer;transition:.14s}
.community-search-filters button:hover{background:#e9edf3;color:#3d4d68}
.community-search-filters button.active{background:#52698f;color:#fff}
.community-search-empty{min-height:250px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;color:#8b94a2}
.community-search-empty>span{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#f0f3f8;color:#52698f;font-size:25px;margin-bottom:12px}
.community-search-empty strong{font-size:14px;color:#263247;margin-bottom:4px}.community-search-empty p{margin:0;font-size:10px}.community-search-empty small{margin-top:12px;padding:6px 9px;border-radius:999px;background:#f7f8fa;color:#9aa2ae;font-size:8px}
body.community-active .global-search-section{padding-top:6px!important}
body.community-active .global-search-section-title{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.94);backdrop-filter:blur(8px)}
body.community-active .global-channel-result,body.community-active .global-member-result,body.community-active .global-message-result{transition:background .12s,transform .12s}
body.community-active .global-channel-result:hover,body.community-active .global-member-result:hover,body.community-active .global-message-result:hover{transform:translateX(1px)}

/* Give the channel list a little more rhythm without returning to the oversized rows. */
body.community-active .community-channel-list{padding-bottom:18px!important}
body.community-active .category-block{margin-top:7px!important}
body.community-active .channel{min-height:34px!important}
body.community-active .channel.is-active{box-shadow:inset 2px 0 0 #52698f!important}

/* Message reading comfort: content remains dense, but authors and metadata separate more clearly. */
body.community-active .discord-message{scroll-margin-top:92px}
body.community-active .discord-message.message-highlight{background:#f0f4fa!important;box-shadow:inset 3px 0 0 #7188ad!important}
body.community-active .new-message-divider span{background:#fff;color:#52698f;font-weight:800;letter-spacing:.08em}
body.community-active .new-message-divider:before,body.community-active .new-message-divider:after{background:#cbd5e3!important}

@media(max-width:820px){
  body.community-active .community-members{width:100vw!important;max-width:none!important;background:#f8f9fb!important;border-left:0!important;box-shadow:none!important;z-index:110!important}
  body.community-active .members-head{height:64px!important;padding:calc(env(safe-area-inset-top) + 6px) 16px 0!important;border-bottom:0!important}
  body.community-active .members-head strong{font-size:17px!important}.members-head small{font-size:9px!important}
  .member-directory-search{height:42px;margin:10px 14px 8px;border-radius:12px;padding:0 12px}.member-directory-search input{font-size:14px}.member-directory-search svg{width:17px;height:17px}
  body.community-active .community-member-list{padding:0 8px calc(24px + env(safe-area-inset-bottom))!important}
  body.community-active .community-member-row{min-height:54px!important;grid-template-columns:42px 1fr!important;gap:10px!important;padding:6px 9px!important}
  body.community-active .community-member-row strong{font-size:14px!important}.community-member-row small{font-size:10px!important}
  body.community-active .member-role-group>p{padding:12px 10px 5px!important;font-size:9px!important}
  .community-members-btn i{right:-4px;top:-5px}
  .community-search-filters{padding:0 12px 9px}.community-search-filters button{font-size:11px;padding:7px 12px}
  body.community-active .global-search-drawer{height:100dvh!important;max-height:none!important;border-radius:0!important}
  .community-search-empty{min-height:42vh}.community-search-empty strong{font-size:16px}.community-search-empty p{font-size:12px}.community-search-empty small{font-size:9px}
  body.community-active .community-channel-head{backdrop-filter:none;-webkit-backdrop-filter:none}
}

/* GCA 2.4.0 — profile action cleanup + Academy member experience */
.profile-member-actions{
  display:grid!important;grid-template-columns:1fr;gap:7px!important;margin-top:20px!important;padding-top:14px;border-top:1px solid #e8ebf0
}
.profile-member-actions[style*="none"]{display:none!important}
.profile-member-action{
  width:100%;min-height:54px;border:1px solid #e0e5ed;border-radius:12px;background:#fff;color:#1d2940;
  display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;text-align:left;padding:8px 11px;cursor:pointer;
  font-family:'DM Sans',sans-serif;transition:background .15s ease,border-color .15s ease,transform .15s ease
}
.profile-member-action:hover{background:#f6f8fb;border-color:#cfd8e6;transform:translateY(-1px)}
.profile-member-action.is-primary{background:#f1f5fb;border-color:#d6dfed;color:#263a5b}
.profile-action-icon{width:32px;height:32px;border-radius:9px;background:#edf1f7;color:#52698f;display:grid;place-items:center;font-size:15px;font-weight:800}
.profile-member-action.is-primary .profile-action-icon{background:#52698f;color:#fff}
.profile-member-action>span:last-child{display:grid;gap:1px;min-width:0}
.profile-member-action strong{font-size:12.5px;font-weight:750;line-height:1.2}
.profile-member-action small{font-size:10.5px;color:#7b8595;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-member-action.admin-only .profile-action-icon{font-size:13px}
@media(min-width:821px){.profile-member-actions{grid-template-columns:1fr 1fr}.profile-member-action.is-primary{grid-column:1/-1}}
@media(max-width:820px){.profile-member-actions{grid-template-columns:1fr!important}.profile-member-action.is-primary{grid-column:auto!important}}

#academy .academy-resume-line{display:flex;align-items:center;gap:7px;margin:4px 0 12px;color:#52698f;min-width:0}
#academy .academy-resume-line>span{width:19px;height:19px;flex:0 0 19px;border-radius:50%;display:grid;place-items:center;background:#e9eef6;color:#52698f;font-size:8px;font-weight:800}
#academy .academy-resume-line strong{font:700 10.5px/1.25 'DM Sans',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#academy .academy-resume-line.is-complete{color:#52698f}
#academy .academy-resume-line.is-complete>span{background:#52698f;color:#fff}

.home-course-feature-button{width:100%;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.home-course-feature-button:hover{filter:brightness(.995)}

#academy .academy-member-lesson-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 24px 24px;border-top:1px solid #e8ebf0;background:#fff}
#academy .academy-member-lesson-nav>div{display:flex;align-items:center;gap:8px;margin-left:auto}
#academy .academy-member-lesson-nav button{min-height:38px;border:1px solid #dce2eb;border-radius:10px;background:#fff;color:#52698f;padding:0 13px;font:700 12px 'DM Sans',sans-serif;cursor:pointer;transition:.15s ease}
#academy .academy-member-lesson-nav button:hover{background:#f2f5fa;border-color:#cbd5e3}
#academy .academy-member-lesson-nav button.is-next{background:#52698f;border-color:#52698f;color:#fff;padding-inline:16px}
#academy .academy-member-lesson-nav button.is-next:hover{background:#455d82;border-color:#455d82}
#academy .academy-nav-menu{color:#66758c!important}
#academy .academy-course-finished{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border-radius:10px;background:#e9eef6;color:#52698f;font:750 12px 'DM Sans',sans-serif}
@media(max-width:720px){
  #academy .academy-member-lesson-nav{padding:14px 20px 18px;position:sticky;bottom:0;z-index:8;box-shadow:0 -8px 22px rgba(24,32,51,.045)}
  #academy .academy-member-lesson-nav button{min-height:36px;padding:0 10px;font-size:11.5px}
  #academy .academy-member-lesson-nav>div{gap:6px}
  #academy .academy-course-finished{font-size:11px;padding:0 10px}
  #academy:not(.course-open) .academy-resume-line strong{font-size:11.5px}
}

/* =========================================================
   GCA 2.4.1 — Academy member learning experience
   ========================================================= */
/* Curriculum completion is a real control, not a decorative status dot. */
#academy .academy-lesson-row-wrap{grid-template-columns:minmax(0,1fr) 38px!important;gap:5px!important}
#academy .academy-lesson-row-wrap.has-admin-menu{grid-template-columns:minmax(0,1fr) 38px 34px!important}
#academy .lesson-status-toggle{width:34px;height:34px;align-self:center;justify-self:center;border:1.5px solid #c8cfda;border-radius:50%;background:#fff;color:transparent;display:grid;place-items:center;cursor:pointer;transition:.15s ease;position:relative;z-index:4}
#academy .lesson-status-toggle b{font:800 16px/1 'DM Sans',sans-serif}
#academy .lesson-status-toggle:hover{border-color:var(--academy-progress-blue);color:var(--academy-progress-blue);background:#f5f7fb}
#academy .lesson-status-toggle.is-complete{background:var(--academy-progress-blue)!important;border-color:var(--academy-progress-blue)!important;color:#fff!important}
#academy .lesson-status-toggle.is-complete:hover{background:var(--academy-progress-blue-deep)!important}
#academy .lesson-status-toggle:disabled{opacity:.55;cursor:wait}

/* Resource cards are deliberately more visible than a small text link. */
#academy .academy-resource-card{max-width:720px;margin:22px 0 6px;padding:14px 15px;border:1px solid #dce2ec;border-radius:12px;background:#f8faff;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;text-decoration:none!important;color:#27364f!important;transition:.15s ease}
#academy .academy-resource-card:hover{border-color:#b9c7dc;background:#f2f6fc;transform:translateY(-1px)}
#academy .academy-resource-icon{width:36px;height:36px;border-radius:9px;background:#e5ebf5;color:var(--academy-progress-blue-deep);display:grid;place-items:center;font-size:18px;font-weight:800}
#academy .academy-resource-card small,#academy .academy-resource-card strong{display:block}.academy-resource-card small{font-size:7px;letter-spacing:1.1px;color:#8b96a7}.academy-resource-card strong{font-size:12px;margin-top:2px}.academy-resource-card>b{font-size:9px;color:#647795}

/* Watched progress for uploaded videos. */
#academy .academy-watch-progress{padding:9px 12px 10px;background:#f8f9fb;border-top:1px solid #e6e9ee;display:flex;align-items:center;gap:10px}
#academy .academy-watch-progress>div{height:4px;flex:1;background:#dfe4ec;border-radius:999px;overflow:hidden}
#academy .academy-watch-progress>div span{display:block;width:0;height:100%;background:var(--academy-progress-blue);border-radius:inherit;transition:width .2s linear}
#academy .academy-watch-progress small{font-size:8px;color:#748096;white-space:nowrap}

/* Lesson Q&A / discussion. */
#academy .academy-discussion{margin:18px 0 0;background:#fff;border:1px solid #dfe3ea;border-radius:14px;overflow:hidden}
#academy .academy-discussion>header{padding:18px 20px 15px;border-bottom:1px solid #e8ebef;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
#academy .academy-discussion>header h3{font:700 17px/1.25 'DM Sans',sans-serif;margin:3px 0 4px;color:#252d3b}.academy-discussion>header p{font-size:10px!important;color:#7b8492!important;margin:0!important}.academy-discussion-count{min-width:28px;height:28px;border-radius:999px;background:#eef2f8;color:#52698f;display:grid;place-items:center;font-size:9px;font-weight:800}
#academy .academy-discussion-list{padding:4px 20px;max-height:390px;overflow:auto}
#academy .academy-discussion-post{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:14px 0;border-bottom:1px solid #edf0f3}.academy-discussion-post:last-child{border-bottom:0}.academy-discussion-avatar{width:34px;height:34px;border-radius:50%;overflow:hidden;background:#e8edf5;color:#52698f;display:grid;place-items:center;font-weight:800}.academy-discussion-avatar img{width:100%;height:100%;object-fit:cover}.academy-discussion-post header{display:flex;gap:7px;align-items:baseline}.academy-discussion-post header strong{font-size:10px;color:#2b3443}.academy-discussion-post header small{font-size:7px;color:#9aa1ac}.academy-discussion-post header button{margin-left:auto;border:0;background:transparent;color:#9a6d6d;font-size:7px;cursor:pointer}.academy-discussion-post p{margin:5px 0 0!important;font-size:11px!important;line-height:1.55!important;color:#525c6a!important}.academy-discussion-empty{padding:26px 6px;text-align:center;color:#8a929f;font-size:10px}.academy-discussion-empty strong,.academy-discussion-empty span{display:block}.academy-discussion-empty span{font-size:8px;margin-top:3px}
#academy .academy-discussion-form{padding:13px 15px;border-top:1px solid #e8ebef;background:#fafbfc;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.academy-discussion-form textarea{resize:vertical;min-height:42px;max-height:130px;border:1px solid #d8dde6;border-radius:10px;background:#fff;padding:10px 11px;font:10px/1.45 'DM Sans',sans-serif;outline:none}.academy-discussion-form textarea:focus{border-color:#9bacc7;box-shadow:0 0 0 3px rgba(82,105,143,.08)}.academy-discussion-form button{height:40px;border:0;border-radius:9px;background:#52698f;color:#fff;padding:0 16px;font-size:9px;font-weight:800;cursor:pointer}.academy-discussion-form button:hover{background:#415675}.academy-discussion-form button:disabled{opacity:.55}

/* Course-complete moment. */
.academy-complete-overlay{position:fixed;inset:0;z-index:10050;background:rgba(24,32,51,.52);backdrop-filter:blur(7px);display:grid;place-items:center;padding:20px}.academy-complete-card{position:relative;width:min(440px,94vw);background:#fff;border-radius:20px;padding:34px 34px 30px;text-align:center;box-shadow:0 30px 90px rgba(20,29,45,.24)}.academy-complete-card>[data-close-complete]{position:absolute;right:14px;top:12px;width:32px;height:32px;border:0;border-radius:50%;background:#f0f2f5;color:#657083;font-size:19px}.academy-complete-mark{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:#52698f;color:#fff;display:grid;place-items:center;font-size:31px;font-weight:900}.academy-complete-card>small{font-size:8px;letter-spacing:1.6px;color:#7c899e;font-weight:800}.academy-complete-card h2{font:700 24px/1.2 'DM Sans',sans-serif;color:#20283a;margin:7px 0}.academy-complete-card p{font-size:11px;color:#788292;margin:0 0 18px}.academy-complete-progress{height:6px;border-radius:999px;background:#e5e9f0;overflow:hidden}.academy-complete-progress span{display:block;width:100%;height:100%;background:#52698f}.academy-complete-card>strong{display:block;margin:7px 0 20px;color:#52698f;font-size:11px}.academy-complete-card .cta{width:100%}

@media(max-width:720px){#academy .academy-lesson-row-wrap{grid-template-columns:minmax(0,1fr) 36px!important}#academy .academy-lesson-row-wrap.has-admin-menu{grid-template-columns:minmax(0,1fr) 36px 32px!important}#academy .lesson-status-toggle{width:32px;height:32px}.academy-discussion{border-radius:12px!important}.academy-discussion>header{padding:15px!important}.academy-discussion-list{padding:3px 15px!important;max-height:320px!important}.academy-discussion-form{grid-template-columns:1fr!important}.academy-discussion-form button{width:100%}.academy-resource-card{grid-template-columns:36px minmax(0,1fr)!important}.academy-resource-card>b{display:none}.academy-complete-card{padding:30px 22px 24px}}
/* GCA 2.4.2 — end-of-course navigation */
#academy button.academy-course-finished{border:1px solid #d7dfeb;cursor:pointer;font:750 12px 'DM Sans',sans-serif}
#academy button.academy-course-finished:hover{background:#dfe7f2;border-color:#c8d4e4;transform:translateY(-1px)}

/* GCA 2.4.3 — Academy learning structure + recording publish */
#academy:not(.course-open) .academy-progress-overview{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:12px;margin-bottom:4px}
.academy-progress-main,.academy-learning-updates{background:#fff;border:1px solid #dfe4ec;border-radius:15px;box-shadow:0 8px 28px rgba(32,40,58,.04)}
.academy-progress-main{padding:22px}.academy-progress-main h2{font:650 23px/1.15 'DM Sans',sans-serif;letter-spacing:-.5px;margin:4px 0 18px;color:#20283a}.academy-progress-stats{display:flex;gap:26px;margin-bottom:18px}.academy-progress-stats span{display:grid;gap:2px}.academy-progress-stats strong{font-size:17px;color:#52698f}.academy-progress-stats small{font-size:8px;color:#7d8797;text-transform:uppercase;letter-spacing:.7px}.academy-continue-card{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left;border:1px solid #d9e1ed;border-radius:12px;background:#f5f7fb;padding:12px 14px;color:#20283a}.academy-continue-card>span{width:34px;height:34px;border-radius:10px;background:#52698f;color:#fff;display:grid;place-items:center}.academy-continue-card div{display:grid;gap:2px;min-width:0}.academy-continue-card small{font-size:7px;letter-spacing:1px;color:#75839a}.academy-continue-card strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.academy-continue-card p{font-size:9px;color:#6d7787;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.academy-continue-card>b{font-size:9px;color:#52698f}.academy-progress-complete-note{font-size:9px;color:#6d7787;padding:11px 0}
.academy-learning-updates{padding:18px}.academy-learning-updates-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.academy-learning-updates-head h3{font-size:15px;margin:3px 0 0}.academy-learning-updates-head>span{background:#eef2f8;color:#52698f;border-radius:999px;padding:4px 7px;font-size:7px;font-weight:700}.academy-learning-updates>button{width:100%;display:grid;gap:3px;text-align:left;border:0;border-top:1px solid #edf0f4;background:transparent;padding:10px 2px;color:#20283a}.academy-learning-updates>button strong{font-size:9px}.academy-learning-updates>button small{font-size:8px;color:#7c8593}.academy-learning-empty{font-size:9px;color:#89919d;padding:10px 0}
.academy-folder-title{display:flex!important;align-items:center;gap:9px;min-width:0}.academy-folder-progress{font-size:8px!important;font-weight:600!important;color:#7f8999!important;letter-spacing:0!important;white-space:nowrap}.academy-folder-progress.is-complete{color:#52698f!important}.academy-folder-progressbar{height:3px;background:#edf0f5;border-radius:999px;overflow:hidden;margin:0 6px 8px}.academy-folder-progressbar span{display:block;height:100%;background:#6f86ad;border-radius:inherit}.academy-module-block.is-complete .academy-folder-progressbar span{background:#52698f}
.academy-row-watch{display:grid!important;grid-template-columns:minmax(50px,92px) auto;align-items:center;gap:6px;margin-top:5px}.academy-row-watch:before{content:"";grid-column:1;grid-row:1;height:2px;background:#e6eaf0;border-radius:99px}.academy-row-watch i{grid-column:1;grid-row:1;height:2px;background:#6f86ad;border-radius:99px;z-index:1}.academy-row-watch small{grid-column:2!important;font-size:7px!important;color:#7e8898!important;white-space:nowrap}
.academy-course-learning-summary{max-width:1180px;margin:0 auto 12px;display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid #e0e4eb;border-radius:13px;overflow:hidden}.academy-course-learning-summary>div{padding:12px 15px;border-right:1px solid #edf0f4;display:grid;gap:2px}.academy-course-learning-summary>div:last-child{border-right:0}.academy-course-learning-summary small{font-size:7px;letter-spacing:.9px;color:#8b93a0}.academy-course-learning-summary strong{font-size:12px;color:#52698f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.academy-course-learning-summary span{font-size:8px;color:#7b8492}
#gcaLiveRecordBtn.recording{background:#b63e3e!important;border-color:#e27171!important;box-shadow:0 0 0 4px rgba(217,74,67,.12)}#gcaLiveRecordBtn.recording>span{animation:gcaRecordPulse 1.1s ease-in-out infinite}@keyframes gcaRecordPulse{50%{opacity:.35}}
.live-recording-publish-card{width:min(650px,calc(100vw - 28px))!important}.live-recording-meta{margin:-2px 0 14px;color:#768092;font-size:9px}.live-recording-publish-card label{display:grid;gap:6px;font-size:9px;font-weight:600;margin-bottom:12px}.live-recording-publish-card input,.live-recording-publish-card select,.live-recording-publish-card textarea{width:100%;border:1px solid #dfe3ea;border-radius:9px;background:#fff;padding:10px 11px;color:#20283a}.live-recording-publish-card .academy-check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:8px}.live-recording-publish-card .academy-check input{width:auto}
@media(max-width:820px){#academy:not(.course-open) .academy-progress-overview{grid-template-columns:1fr}.academy-learning-updates{display:none}.academy-progress-main{padding:16px}.academy-progress-main h2{font-size:19px}.academy-progress-stats{gap:18px}.academy-course-learning-summary{grid-template-columns:1fr 1fr;margin:0 10px 10px}.academy-course-learning-summary>div{padding:9px 10px}.academy-course-learning-summary>div:nth-child(2){border-right:0}.academy-course-learning-summary>div:last-child{grid-column:1/-1;border-top:1px solid #edf0f4}.academy-folder-title{gap:6px}.academy-folder-progress{font-size:7px!important}}


/* GCA 2.4.4 — Academy discovery, prerequisites, bookmarks, certificates */
.academy-library-tools{grid-column:1/-1;display:flex;gap:12px;align-items:center;margin:2px 0 6px}.academy-search{height:46px;flex:1;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dfe5ef;border-radius:13px;padding:0 14px;box-shadow:0 4px 18px rgba(28,39,58,.04)}.academy-search span{font-size:21px;color:#6c7890}.academy-search input{border:0!important;outline:0!important;background:transparent!important;width:100%;font:600 14px 'DM Sans',sans-serif;color:#20283a}.academy-saved-filter{height:46px;border:1px solid #dfe5ef;background:#fff;color:#52698f;border-radius:13px;padding:0 15px;font:700 13px 'DM Sans',sans-serif}.academy-saved-filter.is-active{background:#eaf0f8;border-color:#9fb0cb;color:#31486e}.academy-saved-filter b{margin-left:5px}.academy-search-empty{grid-column:1/-1;background:#fff;border:1px dashed #cbd5e3;border-radius:16px;padding:32px;text-align:center;display:grid;gap:6px}.academy-search-empty strong{font-size:17px}.academy-search-empty span{font-size:13px;color:#748096}.academy-v2-card.is-locked .course-card-open{cursor:not-allowed}.academy-v2-card.is-locked .academy-card-cover img{filter:saturate(.55) brightness(.82)}.academy-lock-cover{position:absolute;inset:0;background:rgba(28,38,57,.46);display:grid;place-content:center;text-align:center;color:#fff;gap:5px}.academy-lock-cover span{font-size:26px}.academy-lock-cover strong{font-size:13px;letter-spacing:.06em;text-transform:uppercase}.academy-card-cover{position:relative}.academy-prereq-note{display:flex;gap:8px;align-items:center;padding:9px 10px;border-radius:9px;background:#eef2f7;color:#52627b;font-size:11px}.academy-certificate-inline{margin-top:9px;border:0;background:transparent;color:#52698f;font:800 11px 'DM Sans';padding:0;text-decoration:underline;text-underline-offset:3px}.lesson-bookmark{width:36px;height:36px;border:1px solid #dce3ed;background:#fff;border-radius:10px;color:#68768e;font-size:20px;line-height:1;display:inline-grid;place-items:center}.lesson-bookmark.is-saved{background:#e8eef7;border-color:#aebbd0;color:#31486e}.academy-module-block.is-drag-over,.academy-module-head.is-drag-over{outline:2px solid #6d86ae;outline-offset:2px;background:#edf2f8!important}.academy-dragging .academy-module-block,.academy-dragging .academy-root-drop{transition:background .12s,outline .12s}.academy-complete-actions{display:flex;gap:10px;justify-content:center;margin-top:18px}.academy-complete-actions>button:first-child{border:1px solid #c9d4e3;background:#f4f7fb;color:#3d557b;border-radius:10px;padding:11px 16px;font:800 12px 'DM Sans'}.academy-certificate-overlay{position:fixed;inset:0;z-index:10020;background:rgba(18,25,38,.72);display:grid;place-items:center;padding:24px}.academy-certificate-card{position:relative;width:min(760px,96vw);background:#fff;border:10px solid #20283a;outline:1px solid #8fa2c0;outline-offset:-18px;padding:62px 58px 44px;text-align:center;color:#20283a;box-shadow:0 30px 90px rgba(0,0,0,.28)}.academy-certificate-card>[data-cert-close]{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:26px}.academy-cert-brand{font:800 34px Georgia,serif;letter-spacing:.08em}.academy-cert-brand small{display:block;font:700 9px 'DM Sans';letter-spacing:.28em;margin-top:3px}.academy-certificate-card>p{font:800 11px 'DM Sans';letter-spacing:.22em;color:#52698f;margin:32px 0 18px}.academy-certificate-card>h2{font:500 36px Georgia,serif;margin:0 0 8px}.academy-certificate-card>span{font:500 13px 'DM Sans';color:#738096}.academy-certificate-card>h3{font:800 23px 'DM Sans';margin:12px 0}.academy-cert-rule{height:1px;background:#cad4e2;margin:30px auto;width:72%}.academy-certificate-card footer{display:flex;justify-content:space-between;font:600 10px 'DM Sans';color:#738096}.academy-cert-actions{display:flex;gap:10px;justify-content:center;margin-top:28px}.academy-cert-actions button{border:1px solid #cbd5e3;background:#f6f8fb;border-radius:9px;padding:10px 14px;font:700 11px 'DM Sans'}.academy-cert-actions button:first-child{background:#20283a;color:#fff;border-color:#20283a}
@media(max-width:720px){.academy-library-tools{flex-direction:column;align-items:stretch}.academy-search,.academy-saved-filter{width:100%}.academy-certificate-card{padding:48px 25px 34px;border-width:7px}.academy-certificate-card>h2{font-size:28px}.academy-certificate-card footer{gap:12px;flex-direction:column}.academy-cert-actions{flex-direction:column}}
@media print{body>*{display:none!important}.academy-certificate-overlay{display:grid!important;position:static;background:#fff;padding:0}.academy-certificate-overlay .academy-certificate-card{display:block!important;width:100%;box-shadow:none}.academy-cert-actions,[data-cert-close]{display:none!important}}
.academy-discovery-results{grid-column:1/-1;background:#fff;border:1px solid #dfe5ef;border-radius:16px;padding:12px;display:grid;gap:3px}.academy-discovery-results>header{display:flex;justify-content:space-between;align-items:center;padding:5px 7px 9px}.academy-discovery-results>header strong{font-size:13px;color:#20283a}.academy-discovery-results>header span{font-size:11px;color:#748096}.academy-discovery-results>button{border:0;background:transparent;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;padding:10px;border-radius:10px;color:#20283a}.academy-discovery-results>button:hover{background:#f2f5f9}.academy-discovery-icon{width:32px;height:32px;border-radius:9px;background:#eaf0f8;color:#52698f;display:grid;place-items:center}.academy-discovery-results>button>span:nth-child(2){display:grid;gap:2px}.academy-discovery-results>button strong{font-size:13px}.academy-discovery-results>button small{font-size:10.5px;color:#7a8699}.academy-discovery-results>button>b{font-size:10.5px;color:#52698f}

/* GCA 2.4.5 — Academy drag/drop reliability + member UX polish */
#academy .academy-lesson-row-wrap[draggable="true"]{cursor:grab;-webkit-user-drag:element;user-select:none}
#academy .academy-lesson-row-wrap[draggable="true"]:active{cursor:grabbing}
#academy .academy-lesson-row{user-select:none;-webkit-user-select:none}
#academy .academy-module-head[draggable="true"]{cursor:grab;user-select:none;-webkit-user-select:none}
#academy .academy-module-head[draggable="true"]:active{cursor:grabbing}
#academy .academy-module-block.is-folder-target{outline:2px solid #6f86ad;outline-offset:3px;background:#eef3f9!important}
#academy .academy-folder-dragging .academy-module-block{transition:transform .12s ease,outline .12s ease,background .12s ease}
body.academy-folder-dragging #academy .academy-module-block:not(.is-dragging){cursor:grabbing}
#academy .academy-module-block.is-dragging{opacity:.48}
#academy .academy-root-drop.is-drag-over,#academy [data-drop-module].is-drag-over{outline:2px dashed #6f86ad;outline-offset:2px;background:#f0f4f9!important;border-radius:10px}
#academy .academy-drop-hint{opacity:.42;transition:opacity .12s,color .12s}
body.academy-dragging #academy .academy-drop-hint{opacity:1;color:#52698f;font-weight:700}
.academy-live-replay-banner{display:flex;align-items:center;gap:10px;margin:14px 18px 0;padding:10px 12px;border:1px solid #d7e0ed;background:#f1f5fa;border-radius:11px;color:#31486e}
.academy-live-replay-banner>span{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#52698f;color:#fff;font-size:9px}
.academy-live-replay-banner>div{display:grid;gap:2px}.academy-live-replay-banner small{font-size:7px;letter-spacing:.12em;font-weight:800;color:#71819a}.academy-live-replay-banner strong{font-size:11px}
#academy .academy-member-lesson-nav{position:sticky;bottom:0;z-index:8;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid #e5eaf1}
@media(max-width:720px){
  #academy .academy-course-learning-summary{margin:0 8px 9px!important;border-radius:11px!important}
  #academy .academy-course-learning-summary strong{font-size:11px!important}
  #academy .academy-course-learning-summary span{font-size:7.5px!important}
  #academy .academy-member-lesson-nav{padding-bottom:calc(10px + env(safe-area-inset-bottom));box-shadow:0 -8px 24px rgba(31,43,64,.06)}
  #academy .academy-live-replay-banner{margin:10px 10px 0}
  /* Native HTML drag/drop is desktop-first. Touch admins always retain Move page in the ••• menu. */
  #academy .academy-module-head[draggable="true"],#academy .academy-lesson-row-wrap[draggable="true"]{cursor:default}
}

/* GCA 2.4.6 — reliable Academy sorting + polished saved state */
#academy .lesson-bookmark{cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}
#academy .lesson-bookmark:hover{border-color:var(--academy-progress-blue);color:var(--academy-progress-blue);background:var(--academy-progress-blue-soft)}
#academy .lesson-bookmark.is-saved{background:var(--academy-progress-blue)!important;border-color:var(--academy-progress-blue)!important;color:#fff!important}
#academy .lesson-bookmark.is-saved:hover{background:var(--academy-progress-blue-deep)!important;border-color:var(--academy-progress-blue-deep)!important}
#academy .academy-lesson-row-wrap[draggable="true"]{transition:opacity .12s ease,box-shadow .12s ease,transform .12s ease}
#academy [data-drop-module].is-drag-over{min-height:48px;box-shadow:inset 0 0 0 2px var(--academy-progress-blue)!important;background:#f0f4f9!important}
#academy .academy-module-block{transition:transform .16s cubic-bezier(.2,.75,.25,1),box-shadow .16s ease,opacity .12s ease,outline .12s ease,background .12s ease}
#academy .academy-module-block.is-folder-target{box-shadow:0 8px 22px rgba(44,62,92,.08);outline:1px solid #9fb0ca!important;outline-offset:1px!important;background:#f6f8fb!important}
#academy .academy-module-block.is-dragging{opacity:.34;box-shadow:0 12px 30px rgba(31,43,64,.12)}


/* 2.4.7 — stable cross-folder Academy drag/drop previews */
#academy .academy-lesson-drag-placeholder{height:48px;margin:5px 7px;border:1.5px dashed #8198bc;border-radius:10px;background:#edf3fb;display:grid;place-items:center;color:#52698f;font:800 11px 'DM Sans',sans-serif;letter-spacing:.02em;box-sizing:border-box;animation:academyDropIn .11s ease-out}
#academy .academy-lesson-drag-placeholder span{pointer-events:none}
#academy .academy-folder-drag-placeholder{height:58px;margin:8px 0;border:1.5px dashed #8198bc;border-radius:12px;background:rgba(237,243,251,.78);box-sizing:border-box;animation:academyDropIn .11s ease-out}
body.academy-dragging #academy [data-drop-module]{min-height:54px}
body.academy-dragging #academy [data-drop-module].is-drag-over{background:#f2f6fb!important;outline:2px solid rgba(109,134,174,.45);outline-offset:1px;border-radius:10px}
@keyframes academyDropIn{from{opacity:.35;transform:scaleY(.78)}to{opacity:1;transform:scaleY(1)}}

/* 2.4.8 — pointer-based cross-folder page sorting */
#academy .academy-lesson-row-wrap[data-pointer-sortable="1"]{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
#academy .academy-lesson-row-wrap[data-pointer-sortable="1"].is-dragging{cursor:grabbing;opacity:.38;box-shadow:0 8px 18px rgba(38,53,80,.08)}
body.academy-dragging #academy .academy-curriculum{cursor:grabbing}
body.academy-dragging #academy .academy-module-block.is-folder-target{outline:2px solid rgba(82,105,143,.42)!important;background:#f4f7fb!important}

/* 2.4.9 — Skool-style Academy sorting + wider curriculum */
@media(min-width:721px){
  #academy.course-open .academy-v2-detail{width:min(1180px,calc(100vw - 56px));max-width:1180px}
  #academy.course-open .academy-classroom-head{max-width:1180px}
  #academy.course-open .academy-classroom{grid-template-columns:390px minmax(0,1fr)!important;gap:26px}
  #academy.course-open .academy-curriculum{padding-left:6px!important;padding-right:10px!important}
  #academy.course-open .academy-lesson-row strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
#academy [data-drop-module]{min-height:12px}
body.academy-dragging #academy [data-drop-module]{min-height:54px}
#academy .academy-sortable-chosen{background:#f4f7fb;border-radius:10px}
#academy .academy-sortable-ghost{opacity:.18!important;background:#dfe8f5!important;border-radius:10px}
#academy .academy-sortable-drag,#academy .academy-sortable-fallback{
  opacity:.98!important;background:#fff!important;border:1px solid #d7dfeb!important;border-radius:10px!important;
  box-shadow:0 14px 34px rgba(31,43,64,.18)!important;transform:rotate(.15deg);cursor:grabbing!important;
}
#academy .academy-sortable-fallback .academy-more-btn,#academy .academy-sortable-fallback .lesson-status-toggle{pointer-events:none}
#academy .academy-folder-ghost{opacity:.2!important;background:#e6edf7!important;border-radius:12px}
#academy .academy-folder-drag,#academy .academy-folder-fallback{opacity:.98!important;background:#fff!important;border-radius:12px!important;box-shadow:0 16px 38px rgba(31,43,64,.16)!important}
body.academy-dragging #academy .academy-module-block,body.academy-dragging #academy .academy-root-drop{transition:background .12s ease}
/* Fallback clone is appended to <body>, outside #academy. */
.academy-sortable-fallback{opacity:.98!important;background:#fff!important;border:1px solid #d7dfeb!important;border-radius:10px!important;box-shadow:0 14px 34px rgba(31,43,64,.18)!important;cursor:grabbing!important;z-index:10050!important}
.academy-sortable-fallback .academy-more-btn,.academy-sortable-fallback .lesson-status-toggle{pointer-events:none}
.academy-folder-fallback{opacity:.98!important;background:#fff!important;border-radius:12px!important;box-shadow:0 16px 38px rgba(31,43,64,.16)!important;z-index:10049!important}


/* 2.5.0 — one drag owner for folders; smooth Skool-style folder reordering */
#academy [data-folder-sort-handle]{cursor:grab;user-select:none;-webkit-user-select:none;touch-action:none}
#academy [data-folder-sort-handle]:active{cursor:grabbing}
body.academy-folder-dragging #academy [data-folder-sort-handle]{cursor:grabbing}
#academy .academy-folder-chosen{background:#f5f7fb!important;border-radius:12px}
#academy .academy-folder-ghost{opacity:.16!important;background:#dfe8f5!important;border-radius:12px!important}
#academy .academy-folder-drag{background:#fff!important;border:1px solid #d7dfeb!important;border-radius:12px!important;box-shadow:0 16px 38px rgba(31,43,64,.16)!important}
/* Old native-drag selectors are intentionally neutralized; folders are SortableJS-only. */
#academy .academy-module-head[draggable="true"]{cursor:inherit}

/* GCA 2.5.1 — fixed folder matcher + cursor-attached Skool-style sorting */
#academy [data-folder-sort-handle]{cursor:grab!important}
#academy [data-folder-sort-handle]:active{cursor:grabbing!important}
#academy .academy-module-block,
#academy .academy-lesson-row-wrap{will-change:transform}
/* The fallback element is the visual card that follows the pointer. Keep it crisp,
   full-size and free of easing so it feels attached to the cursor. */
#academy .academy-sortable-fallback,
#academy .academy-folder-fallback{
  pointer-events:none!important;
  transition:none!important;
  will-change:transform!important;
  opacity:1!important;
}
#academy .academy-sortable-fallback{
  background:#fff!important;
  border:1px solid #ccd7e6!important;
  border-radius:10px!important;
  box-shadow:0 16px 36px rgba(31,43,64,.20)!important;
  cursor:grabbing!important;
}
#academy .academy-sortable-ghost{
  opacity:.10!important;
  background:#dce6f3!important;
  box-shadow:inset 0 0 0 1px #b9c8dc!important;
}
#academy .academy-sortable-chosen{cursor:grabbing!important}
#academy .academy-page-is-moving{cursor:grabbing!important}
#academy .academy-folder-fallback{
  background:#fff!important;
  border:1px solid #ccd7e6!important;
  border-radius:12px!important;
  box-shadow:0 18px 42px rgba(31,43,64,.18)!important;
}
#academy .academy-folder-ghost{
  opacity:.11!important;
  background:#e1e9f4!important;
  box-shadow:inset 0 0 0 1px #becbdd!important;
}
#academy .academy-folder-is-moving{cursor:grabbing!important}
body.academy-dragging #academy .academy-lesson-row-wrap:not(.academy-page-is-moving),
body.academy-folder-dragging #academy .academy-module-block:not(.academy-folder-is-moving){
  transition:transform 145ms cubic-bezier(.22,.9,.25,1)!important;
}

/* GCA 2.5.2 — flat folder semantics + cleaner Skool-style sorting */
/* Folders are dividers, not containers. There are no explicit drop boxes in the UI;
   pages simply settle above/below other pages and the folder chevron hides that run. */
#academy .academy-drop-hint{display:none!important}
body.academy-dragging #academy .academy-drop-hint{display:none!important}

/* Keep the pointer clone the exact width of the source row. Appending it to body
   prevents clipping by the curriculum while Sortable keeps it attached to the cursor. */
.academy-sortable-fallback{
  width:var(--academy-drag-width,340px)!important;
  max-width:min(var(--academy-drag-width,340px),calc(100vw - 28px))!important;
  box-sizing:border-box!important;
  margin:0!important;
  transform:none!important;
  pointer-events:none!important;
}
.academy-folder-fallback{
  width:var(--academy-folder-drag-width,390px)!important;
  max-width:min(var(--academy-folder-drag-width,390px),calc(100vw - 28px))!important;
  box-sizing:border-box!important;
  margin:0!important;
  transform:none!important;
  pointer-events:none!important;
}
/* The original row is only a quiet placeholder; don't show a second readable copy. */
#academy .academy-sortable-ghost{opacity:.075!important}
#academy .academy-sortable-ghost>*{visibility:hidden!important}
#academy .academy-folder-ghost{opacity:.08!important}
#academy .academy-folder-ghost>.academy-module-head,
#academy .academy-folder-ghost>.academy-folder-progressbar,
#academy .academy-folder-ghost>.academy-lesson-list{visibility:hidden!important}

/* While a folder is being sorted, nested page lists must never look like folder targets. */
body.academy-folder-dragging #academy [data-drop-module]{pointer-events:none!important}
body.academy-folder-dragging #academy .academy-module-block{outline:none!important}

/* Smooth displacement without the springy/jumpy feel from the older experiments. */
body.academy-dragging #academy .academy-lesson-row-wrap:not(.academy-page-is-moving){
  transition:transform 120ms cubic-bezier(.2,.7,.2,1)!important;
}
body.academy-folder-dragging #academy .academy-module-block:not(.academy-folder-is-moving){
  transition:transform 135ms cubic-bezier(.2,.7,.2,1)!important;
}

/* GCA 2.6.0 — Trade Ideas interaction + attribution + weekly performance */
.trade-ideas-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:14px}.trade-ideas-toolbar .filters{margin:0;align-self:center}.trade-weekly-snapshot{display:flex;align-items:stretch;border:1px solid var(--gca-line,#e2e7ee);border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 7px 22px rgba(24,32,51,.035)}.trade-weekly-snapshot>div{min-width:76px;padding:9px 11px;border-right:1px solid var(--gca-line,#e2e7ee)}.trade-weekly-snapshot small{display:block;font-size:6px;letter-spacing:.11em;color:#8a94a5;font-weight:800;margin-bottom:2px}.trade-weekly-snapshot strong{display:block;font-size:12px;color:#52698f}.trade-weekly-snapshot strong.negative,.trade-card .negative{color:#b24d46}.trade-weekly-snapshot>button{border:0;background:#f7f9fc;color:#52698f;padding:0 13px;font-size:8px;font-weight:700;cursor:pointer;white-space:nowrap}.trade-weekly-snapshot>button:hover{background:#eef3f9}.trade-author{display:flex;align-items:center;gap:8px;padding-bottom:11px;margin-bottom:12px;border-bottom:1px solid #edf0f4}.trade-author-avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#eef2f7;color:#52698f;font-size:9px;font-weight:800;flex:0 0 auto}.trade-author-avatar img,.trade-author-img{width:100%;height:100%;object-fit:cover}.trade-author>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.trade-author small{font-size:6px;letter-spacing:.11em;color:#9aa3b2;font-weight:800}.trade-author strong{font-size:9px;color:#2e394c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-author time{margin-left:auto;color:#98a1af;font-size:8px}.trade-setup-label{display:block;margin-top:-3px;color:#8b95a4;font-size:7px}.status-pending{background:#f6f2e8;color:#8c6b2e}.status-be{background:#f1f3f6;color:#687386}.trade-card-actions{align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid #edf0f4}.trade-card-actions button{cursor:pointer;color:#52698f;font-weight:700}.trade-card-actions .danger{margin-left:auto;color:#a9524b}.trade-card-actions .danger:hover{color:#8e332d}.closed-trade-line small{display:block;margin-top:4px;color:#8b95a4}.trade-empty{grid-column:1/-1;min-height:150px;border:1px dashed var(--gca-line,#dfe5ed);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#8993a2;background:#fbfcfe}.trade-empty strong{font-size:12px;color:#596579}.trade-empty span{font-size:8px}.weekly-trade-row span{font-variant-numeric:tabular-nums}
@media(max-width:980px){.trade-ideas-toolbar{grid-template-columns:1fr}.trade-weekly-snapshot{width:100%;overflow-x:auto}.trade-weekly-snapshot>div{flex:1;min-width:70px}.trade-weekly-snapshot>button{min-width:118px}}
@media(max-width:620px){.trade-ideas-toolbar .filters{overflow-x:auto;padding-bottom:3px;scrollbar-width:none}.trade-ideas-toolbar .filters::-webkit-scrollbar{display:none}.trade-weekly-snapshot{border-radius:12px}.trade-weekly-snapshot>div{padding:8px 9px}.trade-weekly-snapshot>button{padding:0 10px}.trade-author{padding-bottom:9px;margin-bottom:10px}.trade-author-avatar{width:30px;height:30px}.trade-author strong{font-size:10px}.trade-author time{font-size:9px}}

/* GCA 2.7.0 — Trade Desk */
#ideas,#weekly-results{width:min(1180px,100%);margin-left:auto;margin-right:auto}
#ideas .section-title,#weekly-results .section-title{margin-bottom:16px}
#ideas .trade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#ideas .trade-card{padding:15px;border-radius:14px;overflow:hidden}
.trade-author time{font-variant-numeric:tabular-nums;white-space:nowrap}
.trade-setup-image{display:block;width:100%;height:190px;margin:12px 0;border:1px solid #e1e6ed;border-radius:11px;overflow:hidden;background:#f3f5f8;padding:0;cursor:zoom-in}
.trade-setup-image img{width:100%;height:100%;object-fit:cover;display:block}
.trade-image-field small{font-weight:500;color:#8a94a5}
.trade-setup-image-preview{margin:-2px 0 13px;border:1px solid #dfe5ed;border-radius:11px;overflow:hidden;background:#f7f9fb;position:relative}
.trade-setup-image-preview img{width:100%;max-height:240px;object-fit:cover;display:block}.trade-setup-image-preview span{position:absolute;left:8px;bottom:8px;background:rgba(25,34,49,.78);color:#fff;border-radius:999px;padding:4px 7px;font-size:7px;font-weight:700}
.tp-chips .is-hit{background:#e9eff8!important;border-color:#b5c3d8!important;color:#405a82!important}
.trade-timeline{margin-top:12px;padding:11px 11px 6px;border-radius:11px;background:#f8fafc;border:1px solid #e5eaf1}
.trade-timeline-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.trade-timeline-title small{font-size:6px;letter-spacing:.12em;color:#7f8999;font-weight:800}.trade-timeline-title span{font-size:7px;color:#9aa3b1}
.trade-timeline-item{position:relative;display:grid;grid-template-columns:12px 1fr;gap:8px;padding:0 0 10px}.trade-timeline-item:before{content:"";position:absolute;left:4px;top:10px;bottom:-2px;width:1px;background:#d9e0e9}.trade-timeline-item:last-child:before{display:none}.trade-timeline-item>i{width:9px;height:9px;border:2px solid #8da0bd;background:#fff;border-radius:50%;margin-top:2px;z-index:1}.trade-timeline-item.latest>i{background:#6f86ad;border-color:#6f86ad}.trade-timeline-item strong{font-size:9px;color:#33445f}.trade-timeline-item p{font-size:8px!important;margin:2px 0!important;color:#626f81!important}.trade-timeline-item small{font-size:7px;color:#98a1af}
.trade-discussion{margin-top:12px;border-top:1px solid #e6eaf0;padding-top:12px}.trade-discussion-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.trade-discussion-head>div{display:grid;gap:1px}.trade-discussion-head small{font-size:6px;letter-spacing:.12em;color:#8b95a4;font-weight:800}.trade-discussion-head strong{font-size:10px}.trade-discussion-head>span{min-width:22px;height:22px;border-radius:999px;background:#edf2f8;color:#52698f;display:grid;place-items:center;font-size:8px;font-weight:800}
.trade-discussion-list{display:grid;gap:5px;max-height:250px;overflow:auto}.trade-comment{display:grid;grid-template-columns:27px 1fr;gap:8px;padding:8px;border-radius:9px;background:#f8fafc}.trade-comment>span,.trade-comment-avatar{width:27px;height:27px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#e9eef5;font-size:8px}.trade-comment img{width:100%;height:100%;object-fit:cover}.trade-comment strong{font-size:8px}.trade-comment time{font-weight:500;color:#9aa3b1;margin-left:4px}.trade-comment p{margin:3px 0 0!important;font-size:8px!important;color:#4f5c6f!important}.trade-discussion-empty{padding:14px;text-align:center;color:#8d97a6;font-size:8px;background:#fafbfd;border-radius:9px}
.trade-discussion-form{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:8px}.trade-discussion-form textarea{min-height:48px;resize:vertical;border:1px solid #dfe5ed;border-radius:9px;padding:9px;font:500 9px 'DM Sans';color:#273348;background:#fff}.trade-discussion-form button{align-self:stretch;border:0;border-radius:9px;background:#52698f;color:#fff;padding:0 13px;font:700 8px 'DM Sans';cursor:pointer}
.trade-card-actions{flex-wrap:wrap}.trade-card-actions .danger{margin-left:auto}.trade-card-actions .edit-trade-btn,.trade-card-actions .update-trade-btn{color:#405a82}
.trade-update-modal-card{width:min(520px,calc(100vw - 28px))!important}.trade-update-modal-card label{display:grid;gap:6px;margin-bottom:12px;font-size:9px;font-weight:600}.trade-update-modal-card select,.trade-update-modal-card textarea{border:1px solid #dfe5ed;border-radius:9px;padding:10px 11px;background:#fff;font:500 10px 'DM Sans'}.trade-update-modal-card textarea{min-height:100px;resize:vertical}
.weekly-back{border:0;background:transparent;color:#52698f;padding:0;margin:0 0 9px;font:800 9px 'DM Sans';cursor:pointer}.weekly-results-title{align-items:flex-start}.weekly-current-results{display:grid;gap:11px;margin-bottom:13px}.weekly-gca-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.weekly-gca-heading h3{margin:2px 0 0;font-size:16px}.weekly-gca-heading>small{color:#8a94a5;font-size:8px;text-align:right;max-width:330px}.weekly-people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.weekly-person-card{background:#fff;border:1px solid #dfe5ed;border-radius:13px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start;box-shadow:0 7px 22px rgba(24,32,51,.035)}.weekly-person-card.is-gca{border-top:2px solid #6f86ad}.weekly-person-card small{font-size:6px;letter-spacing:.12em;color:#8b95a4;font-weight:800}.weekly-person-card h3{font-size:12px;margin:3px 0}.weekly-person-card>strong{font-size:22px;color:#52698f}.weekly-person-meta{grid-column:1/-1;display:flex;gap:11px;padding-top:7px;border-top:1px solid #edf0f4}.weekly-person-meta span{font-size:8px;color:#6f7a8a}
.weekly-trade-list-head{display:flex;justify-content:space-between;padding:11px 13px;border-bottom:1px solid #e7ebf0}.weekly-trade-list-head strong{font-size:10px}.weekly-trade-list-head span{font-size:8px;color:#8b95a4}.weekly-trade-row{width:100%;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.weekly-trade-row:hover{background:#f8fafc}
.weekly-archive-section{margin-top:24px}.weekly-archive-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:10px}.weekly-archive-head h3{margin:2px 0 0;font-size:16px}.weekly-archive-head>small{font-size:8px;color:#8b95a4}.weekly-archive-list{display:grid;gap:8px}.weekly-archive-week{background:#fff;border:1px solid #dfe5ed;border-radius:13px;overflow:hidden}.weekly-archive-week summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:13px 15px;cursor:pointer}.weekly-archive-week summary::-webkit-details-marker{display:none}.weekly-archive-week summary>div{display:grid;gap:2px}.weekly-archive-week summary small{font-size:6px;letter-spacing:.12em;color:#8b95a4}.weekly-archive-week summary strong{font-size:11px}.weekly-archive-week summary>span{font-size:8px;color:#7c8798}.weekly-archive-results{border-top:1px solid #edf0f4}.weekly-archive-result{display:grid;grid-template-columns:1fr 100px 220px;align-items:center;gap:10px;padding:11px 15px;border-bottom:1px solid #edf0f4}.weekly-archive-result:last-child{border-bottom:0}.weekly-archive-result>div{display:grid;gap:2px}.weekly-archive-result small{font-size:6px;color:#8b95a4;letter-spacing:.1em}.weekly-archive-result strong{font-size:10px}.weekly-archive-result>b{text-align:right;font-size:13px;color:#52698f}.weekly-archive-result>span{text-align:right;font-size:8px;color:#788395}.weekly-archive-result.is-gca{background:#fafcff}
.trade-team-role-control{display:grid;gap:3px;min-width:170px}.trade-team-role-control small{font-size:6px;letter-spacing:.1em;color:#8b95a4}.trade-team-role-control select{width:100%;border:1px solid #dfe5ed;border-radius:8px;padding:7px;background:#fff;font-size:8px;color:#44536b}
@media(max-width:1050px){#ideas .trade-grid{grid-template-columns:1fr}.weekly-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){#ideas,#weekly-results{width:100%}.trade-ideas-toolbar{grid-template-columns:1fr}.trade-weekly-snapshot{width:100%;overflow:auto}.trade-weekly-snapshot>div{min-width:72px}.trade-setup-image{height:210px}.weekly-gca-heading,.weekly-archive-head{align-items:flex-start;flex-direction:column}.weekly-gca-heading>small{text-align:left}.weekly-people-grid{grid-template-columns:1fr}.weekly-archive-result{grid-template-columns:1fr auto}.weekly-archive-result>span{grid-column:1/-1;text-align:left}.weekly-trade-row{grid-template-columns:1fr 70px 70px}.trade-discussion-form{grid-template-columns:1fr}.trade-discussion-form button{min-height:36px}}

/* GCA 2.7.1 — Trade Desk interaction polish */
.trade-setup-image-preview .trade-remove-image{position:absolute;right:8px;bottom:8px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:#9b3f45;padding:5px 9px;font:700 7px 'DM Sans';box-shadow:0 2px 10px rgba(24,32,51,.12);cursor:pointer}
.trade-setup-image-preview .trade-remove-image:hover{background:#fff}
.trade-card-focus{animation:tradeCardFocus 1.8s ease;box-shadow:0 0 0 2px rgba(111,134,173,.34),0 16px 42px rgba(38,54,80,.14)!important}
@keyframes tradeCardFocus{0%{transform:translateY(8px);opacity:.68}22%{transform:translateY(0);opacity:1}100%{box-shadow:0 0 0 0 rgba(111,134,173,0),0 7px 22px rgba(24,32,51,.035)}}
.weekly-archive-week summary>div{min-width:0}.weekly-archive-headline{font-size:15px;color:#52698f;white-space:nowrap}.weekly-archive-trades{border-top:1px solid #edf0f4;animation:weeklyTradesIn .22s ease both;overflow:hidden}.weekly-archive-trade-row:last-child{border-bottom:0}
@keyframes weeklyTradesIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}

/* GCA 2.8.1 — Trade Desk live workflow */
.profit-text{color:#425f8d!important}.status-win{background:#eaf0f8!important;color:#425f8d!important}.home-trade-result.win{color:#425f8d!important}
.trade-discovery-bar{display:grid;grid-template-columns:minmax(260px,1fr) 180px 180px;gap:9px;margin:-3px 0 14px}.trade-discovery-bar select,.trade-search-box{height:38px;border:1px solid #dfe5ed;border-radius:10px;background:#fff}.trade-discovery-bar select{padding:0 10px;font:600 8px 'DM Sans';color:#536177}.trade-search-box{display:flex;align-items:center;gap:7px;padding:0 10px}.trade-search-box span{color:#8b96a6}.trade-search-box input{border:0;outline:0;width:100%;font:500 9px 'DM Sans';background:transparent;color:#29364a}
.trade-follow-btn.is-following{background:#eaf0f8!important;color:#425f8d!important;border-radius:999px;padding:5px 8px!important}.trade-quick-actions{margin:11px 0;padding:9px;border:1px solid #e3e8ef;background:#f9fbfd;border-radius:10px}.trade-quick-actions>small{display:block;font-size:6px;letter-spacing:.12em;font-weight:800;color:#8a95a5;margin-bottom:7px}.trade-quick-actions>div{display:flex;gap:5px;flex-wrap:wrap}.trade-quick-actions button{border:1px solid #dce3ec;background:#fff;color:#52698f;border-radius:999px;padding:5px 8px;font:700 7px 'DM Sans';cursor:pointer;transition:.16s}.trade-quick-actions button:hover,.trade-quick-actions button.done{background:#eaf0f8;border-color:#bdcbe0;color:#425f8d;transform:translateY(-1px)}
.trade-review{margin-top:11px;border:1px solid #e1e7ef;border-radius:11px;padding:11px;background:#fbfcfe}.trade-review>small{font-size:6px;letter-spacing:.12em;color:#8995a6;font-weight:800}.trade-review>div{margin-top:8px}.trade-review b{font-size:8px;color:#34445d}.trade-review p{margin:2px 0 0!important;font-size:8px!important}.trade-review-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.trade-review-fields textarea{min-height:84px}
.weekly-trade-preview{margin:14px auto 22px;max-width:760px;transform-origin:top center}.weekly-trade-preview.is-opening{animation:weeklyTradeCardPop .28s cubic-bezier(.2,.8,.2,1) both}.weekly-preview-card{box-shadow:0 18px 50px rgba(36,50,73,.12);border-color:#cfd9e7!important}@keyframes weeklyTradeCardPop{from{opacity:0;transform:translateY(-8px) scale(.985)}to{opacity:1;transform:none}}
.trade-analytics-section{margin-top:24px}.trade-analytics{display:grid;gap:10px}.trade-analytics-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.trade-analytics-kpis article{background:#fff;border:1px solid #dfe5ed;border-radius:12px;padding:12px}.trade-analytics-kpis small{display:block;font-size:6px;letter-spacing:.11em;color:#8a95a5;font-weight:800}.trade-analytics-kpis strong{display:block;margin-top:4px;font-size:17px;color:#34445d}.trade-analytics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.trade-analytics-breakdown{background:#fff;border:1px solid #dfe5ed;border-radius:12px;padding:12px}.trade-analytics-breakdown>small{font-size:6px;letter-spacing:.12em;color:#8a95a5;font-weight:800}.trade-analytics-breakdown>div{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 0;border-bottom:1px solid #edf0f4}.trade-analytics-breakdown>div:last-child{border-bottom:0}.trade-analytics-breakdown span,.trade-analytics-breakdown b{font-size:9px}.trade-analytics-breakdown em{grid-column:1/-1;font-style:normal;font-size:7px;color:#8b95a4}.trade-analytics-breakdown p{font-size:8px;color:#8b95a4}
@media(max-width:820px){.trade-discovery-bar{grid-template-columns:1fr 1fr}.trade-search-box{grid-column:1/-1}.trade-review-fields,.trade-analytics-grid{grid-template-columns:1fr}.trade-analytics-kpis{grid-template-columns:1fr 1fr}.weekly-trade-preview{max-width:100%}}

.trade-timeline-title button{border:0;background:#eaf0f8;color:#425f8d;border-radius:999px;padding:4px 7px;font:700 7px 'DM Sans';cursor:pointer}

/* GCA 2.8.1 — monthly Trade Desk, partial closes, weekly overlay */
#tradeIdeasGrid.trade-grid{display:block}
.trade-month{margin:0 0 26px}.trade-month-head{display:flex;align-items:end;justify-content:space-between;padding:0 2px 9px;border-bottom:1px solid #dfe5ed;margin-bottom:11px}.trade-month-head h3{margin:0;font:700 17px 'DM Sans';color:#2e3c52}.trade-month-head span{font:700 7px 'DM Sans';letter-spacing:.08em;color:#8a95a5;text-transform:uppercase}.trade-active-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:11px}.trade-closed-list{display:grid;gap:7px}.trade-closed-wrap{display:grid;gap:7px}.trade-closed-compact{width:100%;min-height:70px;display:grid;grid-template-columns:88px minmax(0,1fr) auto 20px;gap:12px;align-items:center;border:1px solid #dfe5ed;border-radius:12px;background:#fff;padding:8px 12px 8px 8px;text-align:left;cursor:pointer;box-shadow:0 4px 14px rgba(24,32,51,.025);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.trade-closed-compact:hover{transform:translateY(-1px);border-color:#cbd6e4;box-shadow:0 8px 22px rgba(24,32,51,.055)}.trade-closed-compact>img,.trade-closed-noimage{width:88px;height:54px;border-radius:8px;object-fit:cover;background:#eef2f7}.trade-closed-noimage{display:grid;place-items:center;color:#71809a;font:800 10px 'DM Sans'}.trade-closed-copy{display:grid;gap:3px;min-width:0}.trade-closed-copy small{font:700 6px 'DM Sans';letter-spacing:.08em;color:#919baa}.trade-closed-copy strong{font:700 11px 'DM Sans';color:#334158;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-closed-compact>b{font:800 15px 'DM Sans';font-variant-numeric:tabular-nums}.trade-closed-compact>i{font-style:normal;color:#8b96a6;font-size:13px}.trade-closed-detail{overflow:hidden}.trade-closed-detail.is-opening{animation:tradeClosedOpen .24s cubic-bezier(.2,.8,.2,1) both}.trade-expanded-closed{margin:0 4px 7px;box-shadow:0 12px 34px rgba(30,43,65,.075)!important}@keyframes tradeClosedOpen{from{opacity:0;transform:translateY(-7px);max-height:0}to{opacity:1;transform:none;max-height:2200px}}
.trade-partial-history{margin:10px 0;border:1px solid #e1e7ef;border-radius:10px;background:#fbfcfe;padding:9px}.trade-partial-history>small{display:block;font:800 6px 'DM Sans';letter-spacing:.12em;color:#8a95a5;margin-bottom:5px}.trade-partial-history>div{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:center;padding:6px 0;border-top:1px solid #edf0f4}.trade-partial-history>div:first-of-type{border-top:0}.trade-partial-history span,.trade-partial-history b{font:700 8px 'DM Sans'}.trade-partial-history time{font:600 7px 'DM Sans';color:#929baa}
.weekly-trade-overlay{position:fixed;inset:0;z-index:12000;display:flex;align-items:flex-start;justify-content:center;padding:6vh 18px;background:rgba(28,37,52,.18);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .18s ease;overflow:auto}.weekly-trade-overlay.open{opacity:1;pointer-events:auto}.weekly-trade-overlay-card{width:min(760px,100%);background:#f8fafc;border:1px solid rgba(255,255,255,.8);border-radius:17px;padding:10px;box-shadow:0 30px 80px rgba(24,32,51,.24);transform:translateY(10px) scale(.985);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.weekly-trade-overlay.open .weekly-trade-overlay-card{transform:none}.weekly-trade-overlay-actions{display:flex;justify-content:flex-end;padding:0 2px 7px}.weekly-trade-overlay-actions button{width:31px;height:31px;border:0;border-radius:50%;background:#e9eef5;color:#52698f;font-size:18px;cursor:pointer}.weekly-open-in-ideas{width:100%;margin-top:8px;border:1px solid #d5deea;border-radius:10px;background:#fff;color:#425f8d;padding:11px;font:800 8px 'DM Sans';cursor:pointer}.weekly-open-in-ideas:hover{background:#edf3fa}.weekly-trade-overlay .trade-card{margin:0}
.weekly-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-person-card{grid-template-columns:1fr auto}.weekly-person-meta{grid-column:1/-1}.weekly-subject-analytics{grid-column:1/-1;border-top:1px solid #edf0f4;padding-top:10px;margin-top:2px}.weekly-subject-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.weekly-subject-kpis>span{background:#f8fafc;border:1px solid #e7ebf1;border-radius:9px;padding:8px}.weekly-subject-kpis small{display:block}.weekly-subject-kpis b{display:block;margin-top:3px;font:800 10px 'DM Sans';color:#40516a}.weekly-subject-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}.weekly-subject-breakdown{border:1px solid #e7ebf1;border-radius:9px;padding:8px;background:#fff}.weekly-subject-breakdown>small{display:block;margin-bottom:3px}.weekly-subject-breakdown>div{display:grid;grid-template-columns:1fr auto;gap:1px 7px;padding:5px 0;border-top:1px solid #f0f2f5}.weekly-subject-breakdown>div:first-of-type{border-top:0}.weekly-subject-breakdown span,.weekly-subject-breakdown b{font:700 7px 'DM Sans'}.weekly-subject-breakdown em{grid-column:1/-1;font:500 6px 'DM Sans';font-style:normal;color:#919baa}.weekly-subject-breakdown p{font:500 7px 'DM Sans';color:#919baa}.weekly-trade-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center;gap:12px;padding:10px 13px}.weekly-trade-row>b{font:800 11px 'DM Sans';font-variant-numeric:tabular-nums}.trade-analytics-section{display:none!important}
.close-result-preview{grid-template-columns:1fr 1fr}.close-result-preview strong{font-variant-numeric:tabular-nums}
@media(max-width:1050px){.trade-active-grid{grid-template-columns:1fr}.weekly-people-grid{grid-template-columns:1fr}}
@media(max-width:820px){.trade-closed-compact{grid-template-columns:72px minmax(0,1fr) auto 14px;gap:8px}.trade-closed-compact>img,.trade-closed-noimage{width:72px;height:48px}.trade-closed-copy strong{font-size:10px}.trade-closed-compact>b{font-size:12px}.weekly-subject-kpis{grid-template-columns:1fr 1fr}.weekly-subject-grid{grid-template-columns:1fr}.weekly-trade-overlay{padding:3vh 8px}.weekly-trade-overlay-card{padding:7px;border-radius:13px}}

/* GCA 2.8.2 — Trade Desk monthly calendar + readability */
#ideas .trade-grid{display:grid;grid-template-columns:1fr;gap:20px}
.trade-active-section,.trade-calendar-shell{grid-column:1/-1;min-width:0}
.trade-section-head{display:flex;align-items:end;justify-content:space-between;margin:2px 0 11px;padding:0 2px 9px;border-bottom:1px solid #dfe5ed}
.trade-section-head h3{margin:2px 0 0;font:700 18px 'DM Sans';color:#2e3c52}.trade-section-head>span{min-width:25px;height:25px;border-radius:999px;background:#e9eff7;color:#50698f;display:grid;place-items:center;font:800 9px 'DM Sans'}
.trade-calendar-shell{background:#fff;border:1px solid #dfe5ed;border-radius:16px;padding:15px;box-shadow:0 8px 26px rgba(24,32,51,.035)}
.trade-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.trade-calendar-head h3{margin:2px 0 1px;font:700 20px 'DM Sans';color:#2e3c52}.trade-calendar-head small{font:600 8px 'DM Sans';color:#8994a4}
.trade-calendar-nav{display:flex;gap:6px;align-items:center}.trade-calendar-nav button{height:32px;min-width:34px;border:1px solid #dbe2eb;background:#f8fafc;color:#52698f;border-radius:9px;padding:0 10px;font:800 9px 'DM Sans';cursor:pointer}.trade-calendar-nav button:hover{background:#edf3fa;border-color:#c8d5e5}
.trade-calendar-weekdays,.trade-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.trade-calendar-weekdays{border:1px solid #e2e7ee;border-bottom:0;border-radius:11px 11px 0 0;overflow:hidden;background:#f7f9fc}.trade-calendar-weekdays span{padding:8px 9px;border-right:1px solid #e5eaf1;font:800 7px 'DM Sans';letter-spacing:.08em;color:#7e899a;text-transform:uppercase}.trade-calendar-weekdays span:last-child{border-right:0}
.trade-calendar-grid{border-left:1px solid #e2e7ee;border-top:1px solid #e2e7ee}.trade-calendar-day{min-height:126px;padding:7px;border-right:1px solid #e2e7ee;border-bottom:1px solid #e2e7ee;background:#fff;min-width:0}.trade-calendar-day:nth-last-child(-n+7){ }.trade-calendar-day.is-blank{background:#fafbfd}.trade-calendar-day-number{font:800 9px 'DM Sans';color:#718096;margin-bottom:6px}.trade-calendar-day-trades{display:grid;gap:5px}
.trade-calendar-entry{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 5px;text-align:left;border:1px solid #dfe5ed;border-left:3px solid #7089b2;background:#f7f9fc;border-radius:7px;padding:6px 7px;cursor:pointer;overflow:hidden;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.trade-calendar-entry:hover{transform:translateY(-1px);box-shadow:0 5px 13px rgba(33,48,71,.08);border-color:#c8d4e3}.trade-calendar-entry strong{font:800 8px 'DM Sans';color:#33445f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-calendar-entry span{grid-column:1/-1;font:600 7px 'DM Sans';color:#7f8a9a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trade-calendar-entry b{grid-column:2;grid-row:1;font:800 8px 'DM Sans';color:#526f9e;font-variant-numeric:tabular-nums}.trade-calendar-entry.is-loss{border-left-color:#b85b54;background:#fff8f7}.trade-calendar-entry.is-loss b{color:#b24d46}.trade-calendar-entry.is-active{border-left-color:#8091ac}.trade-calendar-entry.is-active b{color:#65758e;font-size:6px;letter-spacing:.07em}

/* Active cards and modal cards should read like real trade tickets, not tiny dashboard widgets. */
.trade-active-grid .trade-card,.trade-detail-overlay .trade-card{padding:20px!important;border-radius:16px!important}
.trade-active-grid .trade-author,.trade-detail-overlay .trade-author{gap:10px;padding-bottom:13px;margin-bottom:14px}.trade-active-grid .trade-author-avatar,.trade-detail-overlay .trade-author-avatar{width:34px;height:34px}.trade-active-grid .trade-author strong,.trade-detail-overlay .trade-author strong{font-size:11px}.trade-active-grid .trade-author small,.trade-detail-overlay .trade-author small{font-size:7px}.trade-active-grid .trade-author time,.trade-detail-overlay .trade-author time{font-size:9px}
.trade-active-grid .trade-card h3,.trade-detail-overlay .trade-card h3{font-size:21px!important;line-height:1.15;margin:9px 0 7px}.trade-active-grid .trade-setup-label,.trade-detail-overlay .trade-setup-label{font-size:10px!important;line-height:1.4;margin-top:0}.trade-active-grid .rr,.trade-detail-overlay .rr{font-size:25px!important;font-weight:800;line-height:1}.trade-active-grid .status,.trade-detail-overlay .status{font-size:8px;padding:5px 8px}
.trade-active-grid .metrics,.trade-detail-overlay .metrics{margin:17px 0;border-radius:11px}.trade-active-grid .metrics div,.trade-detail-overlay .metrics div{padding:13px 12px}.trade-active-grid .metrics span,.trade-detail-overlay .metrics span{font-size:8px}.trade-active-grid .metrics b,.trade-detail-overlay .metrics b{display:block;margin-top:3px;font-size:16px;line-height:1.1}
.trade-active-grid .tp-chips,.trade-detail-overlay .tp-chips{gap:7px;margin:13px 0}.trade-active-grid .tp-chips span,.trade-detail-overlay .tp-chips span{font-size:9px;padding:6px 9px}.trade-active-grid .trade-card>p,.trade-detail-overlay .trade-card>p{font-size:11px!important;line-height:1.55;color:#657184}
.trade-active-grid .trade-partial-history,.trade-detail-overlay .trade-partial-history{padding:12px;margin:14px 0}.trade-active-grid .trade-partial-history>small,.trade-detail-overlay .trade-partial-history>small{font-size:7px}.trade-active-grid .trade-partial-history span,.trade-active-grid .trade-partial-history b,.trade-detail-overlay .trade-partial-history span,.trade-detail-overlay .trade-partial-history b{font-size:10px}.trade-active-grid .trade-partial-history time,.trade-detail-overlay .trade-partial-history time{font-size:8px}
.trade-active-grid .trade-timeline,.trade-detail-overlay .trade-timeline{padding:14px 14px 7px;margin-top:15px}.trade-active-grid .trade-timeline-title small,.trade-detail-overlay .trade-timeline-title small{font-size:7px}.trade-active-grid .trade-timeline-title span,.trade-detail-overlay .trade-timeline-title span{font-size:8px}.trade-active-grid .trade-timeline-item,.trade-detail-overlay .trade-timeline-item{grid-template-columns:14px 1fr;gap:10px;padding-bottom:13px}.trade-active-grid .trade-timeline-item strong,.trade-detail-overlay .trade-timeline-item strong{font-size:11px}.trade-active-grid .trade-timeline-item p,.trade-detail-overlay .trade-timeline-item p{font-size:10px!important;line-height:1.45}.trade-active-grid .trade-timeline-item small,.trade-detail-overlay .trade-timeline-item small{font-size:8px}.trade-active-grid .closed-trade-line,.trade-detail-overlay .closed-trade-line{font-size:11px;padding:11px}.trade-active-grid .trade-card-actions button,.trade-detail-overlay .trade-card-actions button{font-size:9px;padding:4px 0}
.trade-detail-overlay .weekly-trade-overlay-card{width:min(820px,100%);padding:12px}

/* Weekly Results: the official Owner Desk is the hero result. */
#weekly-results .weekly-people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#weekly-results .weekly-person-card.is-gca{grid-column:1/-1;width:100%;padding:20px;border-radius:16px}
#weekly-results .weekly-person-card.is-gca h3{font-size:18px;margin-top:5px}
#weekly-results .weekly-person-card.is-gca>strong{font-size:34px;line-height:1}
#weekly-results .weekly-person-card.is-gca .weekly-person-meta{padding-top:11px;gap:18px}
#weekly-results .weekly-person-card.is-gca .weekly-person-meta span{font-size:10px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-analytics{padding-top:14px;margin-top:4px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis{gap:9px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis>span{padding:12px;border-radius:11px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis small{font-size:7px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis b{font-size:15px;margin-top:5px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown{padding:11px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown>small{font-size:7px;margin-bottom:5px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown span,#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown b{font-size:9px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown em{font-size:7px}

@media(max-width:900px){.trade-calendar-day{min-height:108px;padding:5px}.trade-calendar-entry{padding:5px}.trade-calendar-entry strong,.trade-calendar-entry b{font-size:7px}.trade-calendar-entry span{font-size:6px}}
@media(max-width:700px){.trade-calendar-shell{padding:10px;border-radius:13px;overflow:hidden}.trade-calendar-head{align-items:flex-start}.trade-calendar-head h3{font-size:17px}.trade-calendar-nav button{height:30px;padding:0 8px}.trade-calendar-weekdays span{padding:7px 3px;text-align:center;font-size:6px}.trade-calendar-day{min-height:84px;padding:4px}.trade-calendar-day-number{font-size:8px;margin-bottom:4px}.trade-calendar-entry{display:block;padding:4px;border-left-width:2px}.trade-calendar-entry strong{display:block;font-size:7px}.trade-calendar-entry span{display:none}.trade-calendar-entry b{display:block;margin-top:2px;font-size:7px}.trade-active-grid .trade-card,.trade-detail-overlay .trade-card{padding:15px!important}.trade-active-grid .trade-card h3,.trade-detail-overlay .trade-card h3{font-size:18px!important}.trade-active-grid .rr,.trade-detail-overlay .rr{font-size:21px!important}.trade-active-grid .metrics,.trade-detail-overlay .metrics{grid-template-columns:repeat(2,1fr)}#weekly-results .weekly-person-card.is-gca{padding:15px}#weekly-results .weekly-person-card.is-gca>strong{font-size:28px}#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis{grid-template-columns:repeat(2,1fr)}}

/* =========================================================
   GCA 2.8.3 — Trade Desk visual hierarchy & warmer palette
   Larger, calmer typography + restrained warm accents.
   ========================================================= */
#ideas,#weekly-results{width:min(1160px,100%)}
#ideas .section-title h2,#weekly-results .section-title h2{font-size:27px;letter-spacing:-.55px}
#ideas .section-title .eyebrow,#weekly-results .section-title .eyebrow{font-size:9px;letter-spacing:1.8px}
#ideas .section-title h2 em{color:#7d8290}

/* Controls should feel like controls, not micro-copy. */
#ideas .filters{gap:8px}
#ideas .filters button{padding:8px 13px;font-size:10px;font-weight:700}
#ideas .filters .active{background:#24334a;border-color:#24334a}
#ideas .trade-discovery-bar{grid-template-columns:minmax(300px,1fr) 190px 190px;gap:10px;margin:0 0 18px}
#ideas .trade-discovery-bar select,#ideas .trade-search-box{height:44px;border-radius:12px}
#ideas .trade-discovery-bar select{font-size:10px;padding:0 12px}
#ideas .trade-search-box{padding:0 13px;gap:9px}
#ideas .trade-search-box input{font-size:11px}

/* Weekly snapshot: editorial tiles, not one blue spreadsheet strip. */
#ideas .trade-weekly-snapshot{border-radius:14px;border-color:#e1e3e7;box-shadow:0 8px 24px rgba(34,40,51,.045)}
#ideas .trade-weekly-snapshot>div{min-width:92px;padding:11px 13px;background:#fff}
#ideas .trade-weekly-snapshot>div:nth-child(1){background:#f3f6fb}
#ideas .trade-weekly-snapshot>div:nth-child(2){background:#fff7ef}
#ideas .trade-weekly-snapshot>div:nth-child(3){background:#f7f4ee}
#ideas .trade-weekly-snapshot>div:nth-child(4){background:#f8f8f7}
#ideas .trade-weekly-snapshot small{font-size:7px;letter-spacing:.12em;color:#7f8793}
#ideas .trade-weekly-snapshot strong{font-size:15px;line-height:1.15;margin-top:3px;color:#344c70}
#ideas .trade-weekly-snapshot>div:nth-child(2) strong{color:#a85a3d}
#ideas .trade-weekly-snapshot>button{padding:0 16px;font-size:9px;background:#26364e;color:#fff}
#ideas .trade-weekly-snapshot>button:hover{background:#314764}

/* Live desk heading gets a warm signal accent while trade performance stays blue/red. */
#ideas .trade-section-head{margin-top:7px;padding-bottom:12px}
#ideas .trade-section-head h3{font-size:22px}
#ideas .trade-section-head .eyebrow{color:#b95c3e}
#ideas .trade-section-head>span{min-width:30px;height:30px;font-size:11px;background:#fff0e8;color:#a94d32}

/* Calendar: more readable and less sterile. */
.trade-calendar-shell{padding:20px;border-radius:18px;border-color:#dedfe2;box-shadow:0 12px 34px rgba(35,42,55,.05)}
.trade-calendar-head{margin-bottom:17px}
.trade-calendar-head .eyebrow{font-size:8px;color:#b15a3f}
.trade-calendar-head h3{font-size:26px;letter-spacing:-.45px;color:#26364d}
.trade-calendar-head small{font-size:10px;color:#7d8591;margin-top:3px;display:block}
.trade-calendar-nav{gap:8px}
.trade-calendar-nav button{height:38px;min-width:40px;border-radius:11px;font-size:10px;padding:0 13px;background:#fffaf5;border-color:#eadfd4;color:#8b573f}
.trade-calendar-nav button:nth-child(2){background:#26364e;border-color:#26364e;color:#fff}
.trade-calendar-nav button:hover{background:#f5e9dd;border-color:#dfcdbc}
.trade-calendar-nav button:nth-child(2):hover{background:#314764;border-color:#314764}
.trade-calendar-weekdays{background:#f6f0e8;border-color:#e6ded5}
.trade-calendar-weekdays span{padding:10px 11px;font-size:9px;color:#665f58;border-color:#e6ded5}
.trade-calendar-day{min-height:145px;padding:9px;border-color:#e4e5e8}
.trade-calendar-day.is-blank{background:#faf9f7}
.trade-calendar-day.is-today{background:#fffaf3;box-shadow:inset 0 0 0 1px #edc8aa}
.trade-calendar-day.is-today .trade-calendar-day-number{display:inline-grid;place-items:center;min-width:27px;height:27px;padding:0 6px;border-radius:999px;background:#e96a47;color:#fff}
.trade-calendar-day-number{font-size:11px;color:#5e6979;margin-bottom:8px}
.trade-calendar-day-trades{gap:7px}
.trade-calendar-entry{border-radius:9px;padding:8px 9px;border-left-width:4px;background:#f5f7fb}
.trade-calendar-entry strong{font-size:10px;color:#293a53}
.trade-calendar-entry span{font-size:9px;color:#727c8b;margin-top:2px}
.trade-calendar-entry b{font-size:10px;color:#405f8d}
.trade-calendar-entry.is-profit{background:#f1f5fb;border-left-color:#5877a7}
.trade-calendar-entry.is-loss{background:#fff4f1;border-left-color:#c55d50}
.trade-calendar-entry.is-loss b{color:#b34d43}
.trade-calendar-entry.is-active{background:#fff8ef;border-left-color:#d58a50}
.trade-calendar-entry.is-active b{color:#a45d32;font-size:8px}

/* Full trade cards: preserve the larger 2.8.2 ticket treatment, add visual grouping. */
.trade-active-grid .trade-card,.trade-detail-overlay .trade-card{border-color:#dde1e7;box-shadow:0 12px 32px rgba(31,42,59,.06)}
.trade-active-grid .metrics,.trade-detail-overlay .metrics{border-color:#dfe3e8}
.trade-active-grid .metrics div:nth-child(1),.trade-detail-overlay .metrics div:nth-child(1){background:#f6f8fb}
.trade-active-grid .metrics div:nth-child(2),.trade-detail-overlay .metrics div:nth-child(2){background:#fff8f1}
.trade-active-grid .metrics div:nth-child(3),.trade-detail-overlay .metrics div:nth-child(3){background:#f8f6f1}
.trade-active-grid .metrics div:nth-child(4),.trade-detail-overlay .metrics div:nth-child(4){background:#f3f6fb}
.trade-active-grid .trade-partial-history,.trade-detail-overlay .trade-partial-history{background:#fffaf5;border-color:#eadfd3}
.trade-active-grid .trade-timeline,.trade-detail-overlay .trade-timeline{background:#f7f8fa;border-color:#e1e5eb}

/* Weekly Results: bigger everywhere, with warm/cool contrast instead of blue-only. */
#weekly-results .weekly-back{font-size:11px;color:#9f553b;margin-bottom:12px}
#weekly-results .weekly-date-label,#weekly-results #weeklyDateLabel{font-size:11px;line-height:1.5}
#weekly-results .weekly-gca-heading h3{font-size:21px}
#weekly-results .weekly-gca-heading>small{font-size:10px;line-height:1.45}
#weekly-results .weekly-people-grid{gap:16px}
#weekly-results .weekly-person-card{padding:18px;border-radius:16px}
#weekly-results .weekly-person-card small{font-size:8px}
#weekly-results .weekly-person-card h3{font-size:16px;margin:5px 0}
#weekly-results .weekly-person-card>strong{font-size:30px}
#weekly-results .weekly-person-meta{gap:16px;padding-top:10px}
#weekly-results .weekly-person-meta span{font-size:10px}
#weekly-results .weekly-person-card.is-gca{padding:25px 26px;border-top:0;border-left:5px solid #e16a47;background:linear-gradient(135deg,#fffaf5 0%,#ffffff 46%,#f4f7fb 100%);box-shadow:0 14px 38px rgba(35,43,57,.065)}
#weekly-results .weekly-person-card.is-gca>div>small{color:#ad583c;font-size:9px}
#weekly-results .weekly-person-card.is-gca h3{font-size:23px;color:#27364d}
#weekly-results .weekly-person-card.is-gca>strong{font-size:43px;color:#405f8d}
#weekly-results .weekly-person-card.is-gca .weekly-person-meta span{font-size:12px;color:#5f6875}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis{gap:11px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis>span{padding:15px 16px;background:#fff;border-color:#e5e3df;box-shadow:0 4px 14px rgba(39,47,59,.025)}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis>span:nth-child(2){background:#f3f6fb}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis>span:nth-child(3){background:#fff8ef}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis>span:nth-child(4){background:#fff5f2}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis small{font-size:8px;color:#747c88}
#weekly-results .weekly-person-card.is-gca .weekly-subject-kpis b{font-size:19px;margin-top:6px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-grid{gap:10px;margin-top:10px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown{padding:14px;background:rgba(255,255,255,.88)}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown>small{font-size:8px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown span,#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown b{font-size:11px}
#weekly-results .weekly-person-card.is-gca .weekly-subject-breakdown em{font-size:9px}
#weekly-results .weekly-trade-list-head{padding:14px 16px;background:#f7f4ef}
#weekly-results .weekly-trade-list-head strong{font-size:13px}
#weekly-results .weekly-trade-list-head span{font-size:10px}
#weekly-results .weekly-trade-row{padding:14px 16px}
#weekly-results .weekly-trade-row strong{font-size:12px}
#weekly-results .weekly-trade-row small{font-size:9px}
#weekly-results .weekly-trade-row>b{font-size:14px}
#weekly-results .weekly-archive-head h3{font-size:20px}
#weekly-results .weekly-archive-head>small{font-size:10px}
#weekly-results .weekly-archive-week summary{padding:16px 18px;background:#fff}
#weekly-results .weekly-archive-week summary small{font-size:8px}
#weekly-results .weekly-archive-week summary strong{font-size:14px}
#weekly-results .weekly-archive-headline{font-size:17px}

@media(max-width:900px){
  #ideas .trade-discovery-bar{grid-template-columns:1fr 1fr}
  #ideas .trade-search-box{grid-column:1/-1}
  .trade-calendar-day{min-height:118px;padding:6px}
  .trade-calendar-entry{padding:6px 7px}
  .trade-calendar-entry strong,.trade-calendar-entry b{font-size:9px}
  .trade-calendar-entry span{font-size:8px}
}
@media(max-width:700px){
  #ideas .section-title h2,#weekly-results .section-title h2{font-size:23px}
  #ideas .filters button{font-size:9px;padding:7px 11px}
  #ideas .trade-weekly-snapshot>div{min-width:88px;padding:10px 11px}
  #ideas .trade-weekly-snapshot strong{font-size:14px}
  .trade-calendar-shell{padding:11px}
  .trade-calendar-head h3{font-size:20px}
  .trade-calendar-head small{font-size:9px}
  .trade-calendar-weekdays span{font-size:7px;padding:7px 3px}
  .trade-calendar-day{min-height:88px;padding:4px}
  .trade-calendar-day-number{font-size:9px}
  .trade-calendar-day.is-today .trade-calendar-day-number{min-width:22px;height:22px}
  .trade-calendar-entry{padding:5px;border-left-width:3px}
  .trade-calendar-entry strong,.trade-calendar-entry b{font-size:8px}
  .trade-calendar-entry span{display:none}
  #weekly-results .weekly-person-card.is-gca{padding:18px;border-left-width:4px}
  #weekly-results .weekly-person-card.is-gca h3{font-size:19px}
  #weekly-results .weekly-person-card.is-gca>strong{font-size:34px}
  #weekly-results .weekly-person-card.is-gca .weekly-subject-kpis{grid-template-columns:repeat(2,1fr)}
  #weekly-results .weekly-person-card.is-gca .weekly-subject-kpis b{font-size:16px}
}

/* =========================================================
   GCA 2.8.4 — Trade composer readability + historical ideas
   ========================================================= */
#tradeModal{padding:24px;background:rgba(18,24,36,.42);backdrop-filter:blur(7px)}
#tradeModal .trade-idea-modal-card{width:min(900px,96vw);max-height:94vh;padding:30px 32px 32px;border-radius:18px;box-shadow:0 24px 70px rgba(28,38,55,.18)}
#tradeModal .modal-head{align-items:flex-start;margin-bottom:4px}
#tradeModal .modal-head .eyebrow{font-size:11px;letter-spacing:2.1px;margin-bottom:9px}
#tradeModal .modal-head h2{font-size:30px;line-height:1.08;letter-spacing:-.7px}
#tradeModal .close-modal{width:48px;height:48px;border:1px solid #cfd6e1;border-radius:10px;background:#fff;font-size:25px;line-height:1;color:#17233b}
#tradeModal form{gap:18px;margin-top:24px}
#tradeModal label{font-size:12px;font-weight:600;color:#6f7b90}
#tradeModal input,#tradeModal textarea,#tradeModal select{margin-top:8px;padding:15px 16px;border-radius:11px;font-size:15px;color:#17233b;border-color:#d7dee9;min-height:52px}
#tradeModal textarea{min-height:88px;line-height:1.5;resize:vertical}
#tradeModal .form-grid,#tradeModal .direction-row{gap:14px}
#tradeModal .direction{min-height:66px;border-radius:11px;font-size:22px;font-weight:600;border-color:#d7dee9}
#tradeModal .direction.long.is-active{background:#eaf8f2;border-color:#c5eadb;color:#11956a}
#tradeModal .direction.short.is-active{background:#fff0ed;border-color:#f3d2cc;color:#c94b3d}
#tradeModal .tp-builder{padding:20px;border-radius:14px;border-color:#d7dee9}
#tradeModal .tp-head{align-items:center;margin-bottom:4px}
#tradeModal .tp-head .eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:8px}
#tradeModal .tp-head small{font-size:12px;color:#7c8799}
#tradeModal .tp-head .outline{font-size:13px;font-weight:600;padding:12px 16px;border-radius:10px}
#tradeModal .tp-row{grid-template-columns:1fr 132px 48px;gap:12px;margin-top:12px}
#tradeModal .tp-row>div{min-height:58px;padding:10px 13px;border-radius:11px;display:flex;flex-direction:column;justify-content:center}
#tradeModal .tp-row small{font-size:10px}
#tradeModal .tp-row strong{font-size:17px;color:#17233b}
#tradeModal .remove-tp{height:58px;border-radius:11px;font-size:21px;border-color:#d7dee9}
#tradeModal .trade-image-field small{display:block;margin-top:6px;font-size:10px}
#tradeModal .trade-preview{gap:30px;padding:16px 18px;border-radius:11px;font-size:13px;background:#faf6ef}
#tradeModal .trade-preview strong{font-size:16px;margin-left:7px;color:#17233b}
#tradeModal #tradeSubmitBtn{min-height:58px;border-radius:11px;font-size:15px;letter-spacing:.01em}
#tradeModal .trade-review-fields{gap:14px}
#tradeModal .trade-review-fields textarea{min-height:105px}
.trade-publish-time{border:1px solid #d7dee9;border-radius:14px;padding:18px;background:#fbfcfe}
.trade-publish-time-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.trade-publish-time-head .eyebrow{font-size:10px!important;letter-spacing:1.8px!important;margin:0 0 5px!important}
.trade-publish-time-head strong{font-size:14px;color:#17233b}
.trade-publish-time-head>span{font-size:11px;font-weight:700;color:#11956a;background:#eaf8f2;border:1px solid #c5eadb;padding:7px 10px;border-radius:999px}
.trade-publish-time.is-custom .trade-publish-time-head>span{color:#8a5b24;background:#fff7e9;border-color:#eed8b4}
.trade-publish-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.trade-publish-mode button{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center;text-align:left;border:1px solid #d7dee9;background:#fff;border-radius:11px;padding:13px 14px;color:#657184}
.trade-publish-mode button>b{font-size:17px;color:#9ba5b5}
.trade-publish-mode button span{display:grid;gap:2px}
.trade-publish-mode button strong{font-size:13px;color:#27344a}
.trade-publish-mode button small{font-size:10px;color:#8994a5}
.trade-publish-mode button.is-active{border-color:#f0a08f;background:#fff8f5;box-shadow:0 0 0 2px rgba(239,91,63,.08)}
.trade-publish-mode button.is-active>b,.trade-publish-mode button.is-active strong{color:#d94f36}
.trade-custom-date{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e3e7ee}
.trade-custom-date>small{grid-column:1/-1;font-size:10px;color:#7f8a9b}
.trade-backdated-badge{display:inline-flex;margin-left:7px;padding:2px 6px;border-radius:999px;background:#fff3dc;color:#8a5b24;font-size:7px;font-weight:800;letter-spacing:.06em;vertical-align:middle}
@media(max-width:820px){#tradeModal{padding:8px}#tradeModal .trade-idea-modal-card{width:100%;max-height:96vh;padding:22px 18px 26px;border-radius:15px}#tradeModal .modal-head h2{font-size:25px}#tradeModal .form-grid,#tradeModal .direction-row,.trade-publish-mode,.trade-custom-date{grid-template-columns:1fr}#tradeModal .tp-row{grid-template-columns:1fr 96px 44px}.trade-custom-date>small{grid-column:1}.trade-publish-time-head{display:grid}.trade-publish-time-head>span{justify-self:start}}


/* === GCA 2.9.0 · product hierarchy / performance / execution workspace === */
:root{--gca-positive:#27835f;--gca-positive-bg:#edf8f2;--gca-negative:#b84e45;--gca-negative-bg:#fff1ee;--gca-neutral:#667080;--gca-navy:#26364e;--gca-warm:#e86c49;--gca-sand:#f5efe7}
.profit-text,.is-positive{color:var(--gca-positive)!important}.red-text,.negative,.is-negative{color:var(--gca-negative)!important}.neutral-text,.is-neutral{color:var(--gca-neutral)!important}
.home-command-strip{display:grid;grid-template-columns:minmax(280px,1.3fr) 2fr;gap:14px;margin:0 0 16px}.home-command-strip button{font:inherit;text-align:left;border:1px solid #e2e3e5;cursor:pointer}.home-command-primary{border-radius:20px;padding:22px 24px;background:linear-gradient(135deg,#26364e,#334b6d);color:#fff;box-shadow:0 16px 36px rgba(38,54,78,.14)}.home-command-primary small,.home-command-kpis small{display:block;font-size:9px;letter-spacing:.14em;font-weight:700;opacity:.7}.home-command-primary strong{display:block;font-size:42px;line-height:1;margin:9px 0 7px;letter-spacing:-1.8px}.home-command-primary span{font-size:12px;opacity:.82}.home-command-primary .is-positive{color:#a9e8ca!important}.home-command-primary .is-negative{color:#ffc1b9!important}.home-command-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.home-command-kpis button{border-radius:18px;background:#fff;padding:19px 20px;box-shadow:0 8px 25px rgba(34,40,51,.04)}.home-command-kpis strong{display:block;font-size:27px;letter-spacing:-.7px;color:#26364e;margin:8px 0 4px}.home-command-kpis span{font-size:10px;color:#7b8491}.home-workspace-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 16px;padding:14px 18px;border:1px solid #e6e2dc;background:#fbf8f3;border-radius:16px}.home-workspace-strip .eyebrow{font-size:7px;margin:0 0 3px}.home-workspace-strip>div>strong{font-size:12px;color:#354052}.home-workspace-strip nav{display:flex;gap:5px;flex-wrap:wrap}.home-workspace-strip button,.home-admin-shortcuts button{border:0;background:#fff;padding:8px 11px;border-radius:9px;font:600 10px/1 'DM Sans',sans-serif;color:#4f5a69;cursor:pointer}.home-workspace-strip button:hover{background:#26364e;color:#fff}.home-admin-shortcuts{display:flex;align-items:center;gap:7px;margin:0 0 16px;padding:9px 12px;border-radius:13px;background:#fff4ed;border:1px solid #f0d8ca}.home-admin-shortcuts>span{font-size:8px;letter-spacing:.13em;font-weight:700;color:#a65a40;margin-right:auto}.home-admin-shortcuts button:first-of-type{background:#e86c49;color:#fff}
.home-trade-result.win{color:var(--gca-positive)!important;background:var(--gca-positive-bg)}.home-trade-result.loss{color:var(--gca-negative)!important;background:var(--gca-negative-bg)}.home-trade-result.neutral{color:var(--gca-neutral)!important;background:#f4f5f6}
.trade-status-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:7px}.trade-lifecycle-pill{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:7px;letter-spacing:.07em;font-weight:700;text-transform:uppercase;background:#f1f3f5;color:#667080}.trade-lifecycle-pill.is-live{background:#fff0e8;color:#ad5a39}.trade-lifecycle-pill.is-profit{background:var(--gca-positive-bg);color:var(--gca-positive)}.trade-lifecycle-pill.is-be{background:#eef2f7;color:#536985}.trade-lifecycle-pill.is-closed{background:#eef0f2;color:#4f5967}.trade-personal-size{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center;margin:11px 0;padding:11px 13px;border-radius:11px;background:#f3f6fb;border:1px solid #e2e8f0}.trade-personal-size>span{font-size:8px;letter-spacing:.1em;font-weight:700;color:#718096}.trade-personal-size>strong{font-size:17px;color:#26364e}.trade-personal-size>small{grid-column:1/-1;font-size:8px;color:#89919c}.trade-personal-size button{border:0;background:none;padding:0;color:#a65a40;font:inherit;cursor:pointer;text-decoration:underline}
.trade-calendar-month-kpis{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin:0 0 13px}.trade-calendar-month-kpis>div{padding:13px 15px;border:1px solid #e3e4e7;border-radius:12px;background:#fff}.trade-calendar-month-kpis>div:first-child{background:#f5f8fc}.trade-calendar-month-kpis small{display:block;font-size:7px;letter-spacing:.12em;color:#818995;font-weight:700}.trade-calendar-month-kpis strong{display:block;font-size:21px;line-height:1.05;margin:5px 0 3px;color:#26364e}.trade-calendar-month-kpis span{font-size:9px;color:#7d8591}.trade-calendar-entry{position:relative}.trade-calendar-entry em{display:block;font-style:normal;font-size:7px;color:#8b939e;margin-top:1px}.trade-calendar-entry.is-profit{background:var(--gca-positive-bg)!important;border-left-color:var(--gca-positive)!important}.trade-calendar-entry.is-profit b{color:var(--gca-positive)!important}.trade-calendar-entry.is-be{background:#f3f4f5;border-left-color:#8a939f}.trade-calendar-entry.is-loss{background:var(--gca-negative-bg)!important;border-left-color:var(--gca-negative)!important}
#performance{width:min(1160px,100%)}#performance .section-title h2{font-size:32px;letter-spacing:-.8px}.performance-range{display:flex;gap:5px;margin:0 0 14px;padding:4px;width:max-content;border-radius:12px;background:#f1f2f3}.performance-range button{border:0;background:transparent;border-radius:9px;padding:9px 13px;font:600 10px 'DM Sans',sans-serif;color:#6c7581;cursor:pointer}.performance-range button.active{background:#fff;color:#26364e;box-shadow:0 2px 8px rgba(30,38,50,.07)}.performance-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:end;padding:28px 30px;border-radius:22px;background:linear-gradient(135deg,#fffaf5 0%,#fff 46%,#f2f6fb 100%);border:1px solid #e4e1dc;box-shadow:0 14px 38px rgba(35,43,57,.06)}.performance-hero>div:first-child>strong{display:block;font-size:58px;line-height:.95;letter-spacing:-2.7px;margin:10px 0 8px}.performance-hero>div:first-child>span{font-size:18px;font-weight:700}.performance-hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.performance-hero-meta span{padding:14px;border-radius:13px;background:rgba(255,255,255,.85);border:1px solid #e6e5e2}.performance-hero-meta small{display:block;font-size:7px;letter-spacing:.12em;color:#858c96}.performance-hero-meta b{display:block;font-size:20px;color:#26364e;margin-top:5px}.performance-kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin:12px 0}.performance-kpi-grid article{padding:15px 14px;border-radius:14px;background:#fff;border:1px solid #e4e5e7}.performance-kpi-grid small{display:block;font-size:7px;letter-spacing:.11em;color:#848c97}.performance-kpi-grid strong{display:block;font-size:16px;margin-top:7px;color:#26364e}.performance-breakdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.performance-panel{padding:20px;border:1px solid #e2e3e5;border-radius:18px;background:#fff;margin:0 0 12px}.performance-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.performance-panel-head h3{font-size:18px;color:#26364e;margin:3px 0 0}.performance-panel h4{font-size:8px;letter-spacing:.12em;color:#8b929c;margin:18px 0 8px}.performance-breakdown-row{display:grid;grid-template-columns:minmax(110px,1.2fr) 1.4fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #f0f1f2}.performance-breakdown-row:last-child{border-bottom:0}.performance-breakdown-row strong{display:block;font-size:11px;color:#354052}.performance-breakdown-row small{display:block;font-size:8px;color:#9097a0;margin-top:2px}.performance-breakdown-row>b{font-size:11px;min-width:58px;text-align:right}.performance-bar{height:6px;border-radius:999px;background:#edf0f2;overflow:hidden}.performance-bar i{display:block;height:100%;border-radius:inherit;background:var(--gca-positive)}.performance-bar i.negative{background:var(--gca-negative)}.performance-ledger-row{width:100%;display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;text-align:left;padding:13px 4px;border:0;border-bottom:1px solid #eceef0;background:none;cursor:pointer}.performance-ledger-row:hover{background:#faf9f7}.performance-ledger-row strong{display:block;font-size:12px;color:#2d3c52}.performance-ledger-row small{display:block;font-size:9px;color:#858d98;margin-top:3px}.performance-ledger-row>span,.performance-ledger-row>b{font-size:13px}.performance-empty{padding:25px;text-align:center;color:#8a929d;font-size:11px}.tool-save-defaults{width:100%;margin-top:10px}.tool-save-note{display:block;margin-top:7px;color:#858d97;font-size:9px;line-height:1.45}
@media(max-width:1050px){.performance-kpi-grid{grid-template-columns:repeat(3,1fr)}.home-command-strip{grid-template-columns:1fr}.performance-breakdown-grid{grid-template-columns:1fr}}
@media(max-width:700px){.home-command-primary strong{font-size:34px}.home-command-kpis{grid-template-columns:repeat(3,1fr)}.home-command-kpis button{padding:13px 10px}.home-command-kpis strong{font-size:20px}.home-command-kpis span{font-size:8px}.home-workspace-strip{align-items:flex-start;flex-direction:column}.home-admin-shortcuts{overflow-x:auto}.home-admin-shortcuts>span{display:none}.performance-hero{grid-template-columns:1fr;padding:20px}.performance-hero>div:first-child>strong{font-size:45px}.performance-kpi-grid{grid-template-columns:repeat(2,1fr)}.performance-hero-meta{grid-template-columns:repeat(3,1fr)}.trade-calendar-month-kpis{grid-template-columns:1fr 1fr}.trade-calendar-month-kpis>div:first-child{grid-column:1/-1}.trade-calendar-entry em{display:none}.performance-ledger-row{grid-template-columns:1fr auto;gap:8px}.performance-ledger-row>b{grid-column:2}.performance-ledger-row>span{grid-row:1/3;grid-column:2;align-self:start}.trade-personal-size{grid-template-columns:1fr auto}}

/* GCA 2.10 — Member Trade Journal */
.journal-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.journal-page-head h2{font-size:clamp(38px,4.5vw,68px);line-height:.95;letter-spacing:-.045em;margin:5px 0 12px}.journal-new-trade{min-height:54px;padding:0 24px;font-size:14px}.journal-migration-notice{display:flex;gap:16px;align-items:center;padding:16px 18px;border:1px solid #e7b79f;background:#fff4ee;border-radius:14px;margin-bottom:18px}.journal-migration-notice strong{font-size:14px}.journal-migration-notice span{font-size:12px;color:#695d56}.journal-kpis{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:12px;margin-bottom:20px}.journal-kpi{min-height:132px;padding:20px;border:1px solid var(--line,#e5e2dd);border-radius:16px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}.journal-kpi small{font-size:10px;font-weight:800;letter-spacing:.12em;color:#888}.journal-kpi strong{font-size:34px;letter-spacing:-.04em}.journal-kpi.primary strong{font-size:44px}.journal-kpi span{font-size:12px;color:#777}.journal-tabs{display:flex;gap:4px;border-bottom:1px solid #e6e2dc;margin-bottom:22px}.journal-tabs button{border:0;background:none;padding:14px 18px;font:700 12px 'DM Sans';color:#777;border-bottom:2px solid transparent}.journal-tabs button.active{color:#171717;border-color:#171717}.journal-panel{display:none}.journal-panel.is-active{display:block}.journal-overview-grid,.journal-analytics-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.journal-block{border:1px solid #e5e2dd;background:#fff;border-radius:18px;padding:18px}.journal-block-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.journal-block-head h3{font-size:22px;margin:2px 0}.journal-block-head>span{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:#f2f0ec;font-weight:800}.journal-trade-card{border:1px solid #e8e4de;border-radius:14px;padding:16px;margin:10px 0;background:#fff;cursor:pointer;transition:.18s ease}.journal-trade-card:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(25,22,18,.06);border-color:#d6d0c8}.journal-card-top,.journal-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.journal-card-top>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.journal-card-top strong{font-size:17px}.journal-card-top small{color:#777}.journal-card-top time{font-size:11px;color:#8b8883}.journal-direction-pill{font-size:10px;font-weight:900;letter-spacing:.08em;padding:5px 7px;border-radius:7px}.journal-direction-pill.long{background:#e9f6ef;color:#24784b}.journal-direction-pill.short{background:#fff0ed;color:#a44739}.journal-card-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.journal-card-levels span{font-size:10px;color:#8a8782;text-transform:uppercase;letter-spacing:.06em}.journal-card-levels b{display:block;color:#262421;font-size:14px;margin-top:3px}.journal-card-foot{padding-top:12px;border-top:1px solid #efede9}.journal-card-foot>div{display:flex;gap:6px}.journal-card-foot button{border:1px solid #ddd8d1;background:#fff;border-radius:8px;padding:7px 9px;font:700 10px 'DM Sans';cursor:pointer}.journal-status-dot{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.journal-status-dot:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:#c6a35a}.journal-status-dot.closed:before{background:#aaa}.journal-status-dot.live:before{background:#4d9b6d}.journal-gca-badge{font-size:9px;font-weight:900;letter-spacing:.1em;background:#171717;color:#fff;border-radius:6px;padding:5px 7px}.journal-empty{min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#888;gap:5px}.journal-empty strong{color:#555}.journal-empty-large{min-height:300px}.journal-toolbar{display:grid;grid-template-columns:1fr 200px 160px;gap:10px;margin-bottom:14px}.journal-toolbar input,.journal-toolbar select{min-height:44px;border:1px solid #ddd8d1;border-radius:10px;background:#fff;padding:0 12px}.journal-trade-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.journal-trade-list .journal-trade-card{margin:0}.journal-calendar-shell{background:#fff;border:1px solid #e4e0da;border-radius:18px;overflow:hidden}.journal-calendar-head{display:flex;justify-content:space-between;align-items:flex-end;padding:22px 24px;border-bottom:1px solid #e8e4de}.journal-calendar-head h3{font-size:28px;margin:2px 0 8px}.journal-calendar-stats{display:flex;gap:14px;font-size:12px;font-weight:800}.journal-calendar-nav{display:flex;gap:6px}.journal-calendar-nav button{border:1px solid #ddd8d1;background:#fff;border-radius:9px;padding:9px 12px;font-weight:700}.journal-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #eeeae5}.journal-cal-weekdays span{padding:10px 12px;font-size:9px;font-weight:900;letter-spacing:.1em;color:#999}.journal-cal-days{display:grid;grid-template-columns:repeat(7,1fr)}.journal-cal-day{min-height:128px;border-right:1px solid #eeeae5;border-bottom:1px solid #eeeae5;padding:9px}.journal-cal-day:nth-child(7n){border-right:0}.journal-cal-day>b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;font-size:11px}.journal-cal-day.is-today>b{background:#171717;color:#fff}.journal-cal-day button{display:flex;width:100%;justify-content:space-between;gap:4px;border:0;background:#f6f5f2;border-radius:7px;padding:7px;margin-top:5px;text-align:left;font-size:9px;cursor:pointer}.journal-cal-day button strong{font-size:9px}.journal-cal-day button.profit-text{background:#edf7f1}.journal-cal-day button.red-text{background:#fff0ed}.journal-cal-day button.is-active-trade{background:#fff5e6;color:#8c6423}.journal-range{display:flex;gap:6px;margin-bottom:14px}.journal-range button{border:1px solid #ddd8d1;background:#fff;border-radius:9px;padding:9px 13px;font:700 11px 'DM Sans'}.journal-range button.active{background:#171717;color:#fff;border-color:#171717}.journal-breakdown-row{display:grid;grid-template-columns:minmax(120px,1fr) 1.4fr 70px;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #efede9}.journal-breakdown-row>div:first-child{display:flex;flex-direction:column}.journal-breakdown-row small{font-size:9px;color:#999}.journal-breakdown-row>b{text-align:right}.journal-breakdown-bar{height:6px;background:#f0eeea;border-radius:10px;overflow:hidden}.journal-breakdown-bar i{display:block;height:100%;background:#64a47d;border-radius:10px}.journal-breakdown-bar i.negative{background:#c86f62}.journal-block h4{font-size:9px;letter-spacing:.1em;color:#999;margin:16px 0 5px}.journal-source-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.journal-source-picker button{display:flex;flex-direction:column;text-align:left;border:1px solid #ddd8d1;background:#fff;border-radius:12px;padding:13px}.journal-source-picker button.is-active{border-color:#222;background:#f6f4f0}.journal-source-picker strong{font-size:13px}.journal-source-picker small{font-size:10px;color:#888;margin-top:3px}.journal-date-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.journal-direction-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.journal-direction{min-height:48px;border:1px solid #ddd8d1;background:#fff;border-radius:10px;font-weight:900}.journal-direction.long.is-active{background:#eaf6ef;border-color:#87b99a;color:#236d47}.journal-direction.short.is-active{background:#fff0ed;border-color:#d69b92;color:#9e4438}.journal-tp-builder{margin:15px 0;padding:14px;border:1px solid #e5e1db;border-radius:14px;background:#faf9f7}.journal-tp-row{display:grid;grid-template-columns:1fr 100px 34px;gap:8px;align-items:end;margin-top:8px}.journal-tp-row>div{min-height:46px;display:flex;flex-direction:column;justify-content:center}.journal-tp-row>button{height:42px;border:0;background:#eeeae5;border-radius:8px}.journal-trade-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.journal-trade-preview span{padding:12px;background:#f5f3ef;border-radius:10px;font-size:10px;color:#777}.journal-trade-preview strong{display:block;font-size:19px;color:#222;margin-top:3px}.journal-manage-card{max-width:620px}.journal-close-result{display:flex;align-items:center;gap:16px;background:#f5f3ef;border-radius:12px;padding:15px;margin:12px 0}.journal-close-result small{margin-right:auto}.journal-close-result strong{font-size:22px}.journal-overlay-card{max-width:850px;position:relative;padding:28px}.journal-overlay-close{position:absolute;right:16px;top:14px;border:0;background:none;font-size:28px;z-index:2}.journal-overlay-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-right:35px}.journal-overlay-head h2{font-size:36px;margin:4px 0}.journal-overlay-head p:last-child{color:#777;font-size:12px}.journal-overlay-result{text-align:right}.journal-overlay-result strong{display:block;font-size:34px}.journal-overlay-result span{font-size:14px;font-weight:800}.journal-overlay-image{width:100%;max-height:360px;object-fit:cover;border-radius:14px;margin:18px 0}.journal-overlay-levels,.journal-overlay-targets{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.journal-overlay-levels span,.journal-overlay-targets span{padding:13px;background:#f5f3ef;border-radius:10px}.journal-overlay-levels small,.journal-overlay-targets small{display:block;font-size:9px;color:#888;letter-spacing:.08em}.journal-overlay-levels b,.journal-overlay-targets b{font-size:18px}.journal-overlay-targets em{display:block;font-style:normal;font-size:10px;color:#777}.journal-overlay-card section{margin:18px 0}.journal-overlay-card section>p:last-child{line-height:1.6}.journal-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.journal-review-grid section{background:#f8f7f4;padding:14px;border-radius:12px}.journal-timeline>div{display:flex;gap:10px;padding:8px 0}.journal-timeline i{width:8px;height:8px;border-radius:50%;background:#999;margin-top:4px}.journal-timeline span{display:flex;flex-direction:column}.journal-timeline small{color:#888}.journal-overlay-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.journal-error{padding:30px;border:1px solid #e0b2aa;background:#fff2ef;border-radius:14px;display:flex;flex-direction:column;gap:5px}
@media(max-width:900px){.journal-kpis{grid-template-columns:1fr 1fr}.journal-overview-grid,.journal-analytics-grid,.journal-trade-list{grid-template-columns:1fr}.journal-toolbar{grid-template-columns:1fr}.journal-cal-day{min-height:95px;padding:5px}.journal-cal-day button{display:block}.journal-cal-day button span{display:block}.journal-calendar-stats{flex-wrap:wrap}.journal-overlay-levels,.journal-overlay-targets{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.journal-page-head{align-items:flex-start;flex-direction:column}.journal-new-trade{width:100%}.journal-kpis{grid-template-columns:1fr 1fr}.journal-kpi{min-height:110px;padding:14px}.journal-kpi strong,.journal-kpi.primary strong{font-size:29px}.journal-tabs{overflow-x:auto}.journal-tabs button{padding:12px}.journal-calendar-head{align-items:flex-start;flex-direction:column;gap:12px}.journal-cal-weekdays span{padding:7px 2px;text-align:center}.journal-cal-day{min-height:76px}.journal-cal-day button{padding:4px}.journal-cal-day button strong{font-size:8px}.journal-cal-day button span{font-size:8px}.journal-source-picker,.journal-date-row,.journal-review-grid{grid-template-columns:1fr}.journal-overlay-card{padding:20px 14px}.journal-overlay-head{flex-direction:column}.journal-overlay-result{text-align:left}}

/* === GCA 2.11.0 · Journal weekly results + execution analytics === */
#journal,#performance{width:min(1120px,100%);margin-left:auto;margin-right:auto}
#journal .journal-page-head,#performance .section-title{max-width:100%}
.journal-weekly-section{margin-top:18px;padding:22px;border:1px solid #e4e1dc;border-radius:18px;background:#fff}
.journal-weekly-head,.journal-weekly-archive-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.journal-weekly-head h3{font-size:23px;margin:3px 0 0;color:#26364e}.journal-weekly-head>small,.journal-weekly-archive-head>span{font-size:10px;color:#8a919b}
.journal-current-week{margin-top:14px;border:1px solid #e3e6ea;border-radius:15px;overflow:hidden}
.journal-week-summary{display:grid;grid-template-columns:minmax(250px,1.7fr) repeat(3,minmax(90px,.55fr));gap:0;background:linear-gradient(120deg,#f6f9fd,#fffaf5)}
.journal-week-summary>div,.journal-week-summary>span{padding:15px 17px;border-right:1px solid #e5e7e9}.journal-week-summary>*:last-child{border-right:0}
.journal-week-summary small{display:block;font-size:7px;letter-spacing:.12em;font-weight:800;color:#858d98}.journal-week-summary strong{display:block;margin-top:4px;font-size:13px;color:#31445f}.journal-week-summary b{display:block;margin-top:5px;font-size:17px}
.journal-week-trades{padding:0 14px}.journal-week-trade{width:100%;display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;text-align:left;padding:12px 4px;border:0;border-bottom:1px solid #eceef0;background:transparent;cursor:pointer}.journal-week-trade:last-child{border-bottom:0}.journal-week-trade:hover{background:#faf9f7}.journal-week-trade strong{display:block;font-size:12px;color:#2d3c52}.journal-week-trade small{display:block;margin-top:3px;font-size:9px;color:#8b929b}.journal-week-trade>span,.journal-week-trade>b{min-width:65px;text-align:right;font-size:12px}.journal-week-empty{padding:18px 4px;color:#9298a0;font-size:10px}
.journal-weekly-archive-head{margin:22px 0 9px}.journal-weekly-archive-head strong{font-size:13px;color:#354052}.journal-week-archive-item{border:1px solid #e7e5e1;border-radius:13px;background:#fff;margin:8px 0;overflow:hidden}.journal-week-archive-item summary{list-style:none;display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;padding:14px 16px;cursor:pointer}.journal-week-archive-item summary::-webkit-details-marker{display:none}.journal-week-archive-item summary>div{display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center}.journal-week-archive-item summary small{font-size:8px;color:#9a9fa6}.journal-week-archive-item summary strong{font-size:12px;color:#354052}.journal-week-archive-item summary span{grid-column:2;font-size:9px;color:#969ba2;margin-top:2px}.journal-week-archive-item summary>b,.journal-week-archive-item summary>em{min-width:68px;text-align:right;font-size:12px;font-style:normal}.journal-week-archive-item[open] summary{background:#faf9f7;border-bottom:1px solid #e8e6e2}
.journal-execution-panel{padding:22px;margin:0 0 14px;border:1px solid #dfe4eb;border-radius:19px;background:linear-gradient(135deg,#f6f9fd 0%,#fff 52%,#fff8f2 100%)}.journal-execution-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}.journal-execution-head h3{font-size:24px;color:#26364e;margin:3px 0}.journal-execution-head p:last-child{font-size:10px;color:#818995;margin:0}.journal-execution-head>span{font-size:8px;letter-spacing:.12em;font-weight:800;color:#8a6a56;background:#fff1e8;padding:6px 8px;border-radius:7px}.journal-execution-hero{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.journal-execution-hero article{padding:16px;border:1px solid #e2e5e9;border-radius:13px;background:rgba(255,255,255,.88)}.journal-execution-hero small,.journal-execution-insights small{display:block;font-size:7px;letter-spacing:.11em;font-weight:800;color:#89919b}.journal-execution-hero strong{display:block;font-size:25px;letter-spacing:-.7px;margin:6px 0 4px;color:#26364e}.journal-execution-hero span{font-size:9px;color:#8c939c}.journal-execution-insights{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}.journal-execution-insights>span{padding:11px 13px;border-radius:11px;background:#fff;border:1px solid #e6e6e5}.journal-execution-insights b{display:block;font-size:14px;color:#354052;margin-top:4px}.journal-execution-note{font-size:9px;color:#8b929a;margin:11px 2px 0;line-height:1.5}.journal-execution-empty{min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:5px;color:#89919a}.journal-execution-empty strong{color:#455266}
@media(max-width:900px){#journal,#performance{width:100%}.journal-week-summary{grid-template-columns:1fr 1fr}.journal-week-summary>div{grid-column:1/-1}.journal-execution-hero,.journal-execution-insights{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.journal-weekly-section,.journal-execution-panel{padding:15px}.journal-weekly-head,.journal-weekly-archive-head{align-items:flex-start;flex-direction:column;gap:4px}.journal-week-summary{grid-template-columns:1fr 1fr}.journal-week-trade{grid-template-columns:1fr auto;gap:8px}.journal-week-trade>b{grid-column:2}.journal-week-archive-item summary{grid-template-columns:1fr auto;gap:8px}.journal-week-archive-item summary>em{grid-column:2}.journal-execution-hero,.journal-execution-insights{grid-template-columns:1fr 1fr}.journal-execution-hero strong{font-size:21px}}

/* === GCA 2.11.1 · Journal polish === */
/* Personal weekly results intentionally reuse the Trade Desk archive language. */
#journal .journal-weekly-section{margin-top:24px;padding:0;border:0;background:transparent}
#journal .journal-weekly-main-head,#journal .journal-previous-week-head{margin-bottom:10px}
#journal .journal-previous-week-head{margin-top:28px}
#journal .weekly-archive-head h3{margin:2px 0 0;font-size:20px}
#journal .weekly-archive-head>small{font-size:10px;color:#8b95a4}
#journal .weekly-archive-list{display:grid;gap:14px}
#journal .weekly-archive-week{background:#fff;border:1px solid #dfe5ed;border-radius:16px;overflow:hidden}
#journal .weekly-archive-week summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:20px 24px;cursor:pointer;min-height:86px;background:#fff}
#journal .weekly-archive-week summary::-webkit-details-marker{display:none}
#journal .weekly-archive-week summary>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;gap:3px}
#journal .weekly-archive-week summary small{font-size:9px;letter-spacing:.12em;color:#8b95a4}
#journal .weekly-archive-week summary strong{font-size:17px;color:#27364d}
#journal .weekly-archive-week summary span{grid-column:2;font-size:10px;color:#9098a4}
#journal .weekly-archive-headline{font-size:22px;min-width:110px;text-align:right}
#journal .weekly-archive-week[open] summary{background:#fafcff;border-bottom:1px solid #edf0f4}
#journal .weekly-archive-trades{background:#fff}
#journal .weekly-trade-row{padding:14px 20px!important}
#journal .weekly-trade-row strong{font-size:12px}
#journal .weekly-trade-row small{font-size:9px}
#journal .weekly-trade-row>b{font-size:14px!important}
#journal .journal-potential-only{grid-template-columns:1fr}
#journal .journal-potential-only span{display:grid;grid-template-columns:1fr auto;align-items:center}
#journal .journal-potential-only strong{margin-top:0;text-align:right}
@media(max-width:700px){#journal .weekly-archive-week summary{padding:16px;min-height:74px}#journal .weekly-archive-week summary strong{font-size:14px}#journal .weekly-archive-headline{font-size:18px;min-width:82px}}

/* GCA 2.12.0 — daily focus, unified activity and mobile product experience */
.home-daily-focus{margin:0 0 16px;padding:18px;border:1px solid #e3e6eb;border-radius:20px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);box-shadow:0 10px 30px rgba(30,42,62,.04)}
.home-focus-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}.home-focus-head h2{margin:2px 0 0;font:650 20px/1.1 'DM Sans',sans-serif;letter-spacing:-.4px;color:#26364e}.home-focus-head>span{font:700 9px/1 'DM Sans',sans-serif;letter-spacing:.06em;color:#647083;background:#f0f3f8;border-radius:999px;padding:7px 10px}
.home-focus-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.home-focus-card{min-height:126px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:16px;border:1px solid #e5e8ee;border-radius:15px;background:#fff;color:#26364e;font:inherit;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.home-focus-card:hover{transform:translateY(-2px);border-color:#cfd6e1;box-shadow:0 10px 24px rgba(35,48,70,.07)}.home-focus-card small{font:800 8px/1 'DM Sans',sans-serif;letter-spacing:.13em;color:#8a94a3}.home-focus-card strong{display:block;margin:13px 0 8px;font:700 14px/1.35 'DM Sans',sans-serif;color:#26364e}.home-focus-card span{margin-top:auto;font:650 9px/1.3 'DM Sans',sans-serif;color:#6f7b8c}.home-focus-card.trade{border-top:2px solid #ef7659}.home-focus-card.call{border-top:2px solid #647eea}.home-focus-card.learn{border-top:2px solid #c39b58}.home-focus-card.journal{border-top:2px solid #49a579}
.notification-drawer-head>div:first-child small{display:block;margin-top:4px;font-size:9px;color:#8a919c}.notification-filter-tabs{overflow-x:auto;scrollbar-width:none}.notification-filter-tabs::-webkit-scrollbar{display:none}.notification-filter-tabs button{white-space:nowrap}.activity-notification .activity-icon{display:grid;place-items:center;font-size:13px;font-weight:800}.activity-notification .activity-icon.trades{background:#fff0eb;color:#c95c3f}.activity-notification .activity-icon.academy{background:#eef1ff;color:#526ad4}.activity-notification .activity-icon.community{background:#eef7f2;color:#38815a}.activity-notification .notification-copy strong{font-size:11px}.activity-notification .notification-copy p{line-height:1.45}
.journal-timing-block{grid-column:1/-1}.journal-timing-block>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.journal-timing-block h4{grid-column:span 1}.journal-timing-block .journal-breakdown-row{min-width:0}
@media(max-width:980px){.home-focus-grid{grid-template-columns:1fr 1fr}.home-command-strip{grid-template-columns:1fr}.home-command-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){
  .home-daily-focus{padding:14px;border-radius:16px}.home-focus-head{align-items:flex-start}.home-focus-head h2{font-size:18px}.home-focus-grid{grid-template-columns:1fr 1fr;gap:8px}.home-focus-card{min-height:118px;padding:13px}.home-focus-card strong{font-size:12px;margin-top:10px}.home-focus-card span{font-size:8px}
  .home-command-primary strong{font-size:34px}.home-command-kpis{grid-template-columns:1fr 1fr}.home-command-kpis button:last-child{grid-column:1/-1}.home-workspace-strip{align-items:flex-start;flex-direction:column}.home-workspace-strip nav{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.home-workspace-strip button{white-space:nowrap}
  #journal .journal-tabs{position:sticky;top:0;z-index:12;background:rgba(246,247,250,.96);backdrop-filter:blur(12px);margin-left:-2px;margin-right:-2px;padding-top:2px}.journal-toolbar{grid-template-columns:1fr 1fr}.journal-toolbar input{grid-column:1/-1}.journal-trade-list{grid-template-columns:1fr}.journal-overview-grid,.journal-analytics-grid{grid-template-columns:1fr}.journal-timing-block{grid-column:auto}.journal-timing-block>div:last-child{grid-template-columns:1fr}.journal-timing-block h4{grid-column:auto}.journal-calendar-shell{overflow-x:auto}.journal-cal-weekdays,.journal-cal-days{min-width:680px}
  .journal-trade-modal-card{width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important;overflow:auto!important;padding-bottom:calc(28px + env(safe-area-inset-bottom))!important}.journal-trade-modal-card .modal-head{position:sticky;top:0;z-index:4;background:#fff;padding-top:4px}
  #performance .performance-range{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}#performance .performance-range button{white-space:nowrap}.performance-breakdown-grid{grid-template-columns:1fr!important}.performance-ledger-row{grid-template-columns:1fr auto!important}.performance-ledger-row>b{grid-column:2;text-align:right}
}
@media(max-width:460px){.home-focus-grid{grid-template-columns:1fr}.home-focus-card{min-height:96px}.home-focus-card strong{font-size:13px}.home-command-kpis{grid-template-columns:1fr 1fr}.journal-kpis{gap:8px}.journal-kpi{min-height:100px}.journal-page-head h2{font-size:38px!important}.notification-drawer{width:100vw!important;max-width:100vw!important}}


/* GCA 2.13.1 — contained onboarding walkthrough */



/* 2.14.0 — Journal depth + faster owner operations */
.journal-toolbar-advanced{display:grid;grid-template-columns:minmax(260px,1.7fr) repeat(5,minmax(120px,.72fr)) auto;gap:8px;align-items:center}
.journal-search-wrap{position:relative;min-width:0}.journal-search-wrap>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-size:17px;color:#9a9690;pointer-events:none}.journal-search-wrap input{width:100%;padding-left:37px!important}
.journal-toolbar-advanced select,.journal-toolbar-advanced input{height:44px;min-width:0}.journal-clear-filters{height:44px;white-space:nowrap}
.journal-equity-block{margin-bottom:14px}.journal-equity-block .journal-block-head>strong{font-size:25px;letter-spacing:-.03em}.journal-equity-curve{min-height:250px;padding:10px 2px 0}.journal-equity-curve svg{display:block;width:100%;height:220px;overflow:visible}.journal-equity-zero{stroke:#dedbd5;stroke-width:1;stroke-dasharray:5 6}.journal-equity-line{fill:none;stroke:#3c8b67;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.journal-equity-line.is-negative{stroke:#bd6559}.journal-equity-point{fill:#fff;stroke:#3c8b67;stroke-width:2.4}.journal-equity-point.is-negative{stroke:#bd6559}.journal-equity-axis{display:flex;justify-content:space-between;color:#96918a;font:700 9px 'DM Sans',sans-serif;padding:0 25px 5px}
.journal-chart-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.journal-chart-pair figure{margin:0;min-width:0}.journal-chart-pair figcaption{font:800 9px 'DM Sans',sans-serif;letter-spacing:.11em;color:#8d8982;margin:0 0 7px}.journal-chart-pair .journal-overlay-image{margin:0;width:100%;height:280px;max-height:none;object-fit:cover;border:1px solid #e7e3dd;background:#f7f6f3}
.journal-review-close-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:18px 0 8px;padding-top:16px;border-top:1px solid #ebe7e1}.journal-review-close-head p{margin:0}.journal-review-close-head span{font-size:10px;color:#8c8882;text-align:right}.journal-manage-card .trade-image-field{margin-top:12px}
@media(max-width:1180px){.journal-toolbar-advanced{grid-template-columns:repeat(3,1fr)}.journal-search-wrap{grid-column:1/-1}.journal-clear-filters{width:100%}}
@media(max-width:720px){.journal-toolbar-advanced{grid-template-columns:1fr 1fr}.journal-search-wrap{grid-column:1/-1}.journal-clear-filters{grid-column:1/-1}.journal-chart-pair{grid-template-columns:1fr}.journal-chart-pair .journal-overlay-image{height:auto;max-height:360px}.journal-review-close-head{align-items:flex-start;flex-direction:column}.journal-review-close-head span{text-align:left}.admin-quick-ops{align-items:flex-start;flex-direction:column}.admin-quick-buttons{justify-content:flex-start;width:100%}.admin-quick-buttons button{flex:1 1 calc(50% - 7px)}}

/* =========================================================
   GCA 2.15.0 — Journal composer clarity + admin operations
   ========================================================= */
.admin-rail-item{margin-top:10px;padding-top:12px!important;border-top:1px solid var(--gca-rail-line,var(--line))!important;border-radius:0 0 9px 9px!important}

/* Journal create/edit now follows the same visual hierarchy as Trade Desk. */
#journalModal{padding:24px;background:rgba(18,24,36,.42);backdrop-filter:blur(7px)}
#journalModal .journal-trade-modal-card{width:min(900px,96vw);max-width:900px;max-height:94vh;padding:30px 32px 32px;border-radius:18px;box-shadow:0 24px 70px rgba(28,38,55,.18);overflow:auto}
#journalModal .modal-head{align-items:flex-start;margin-bottom:4px}
#journalModal .modal-head .eyebrow{font-size:11px;letter-spacing:2.1px;margin-bottom:9px}
#journalModal .modal-head h2{font-size:30px;line-height:1.08;letter-spacing:-.7px;margin:0}
#journalModal .journal-modal-subtitle{font-size:12px;color:#7c8799;margin:8px 0 0;max-width:560px}
#journalModal .close-journal-modal{width:48px;height:48px;border:1px solid #cfd6e1;border-radius:10px;background:#fff;font-size:25px;line-height:1;color:#17233b}
#journalModal form{display:grid;gap:18px;margin-top:24px}
#journalModal label{display:grid;gap:0;font-size:12px;font-weight:600;color:#6f7b90}
#journalModal input,#journalModal textarea,#journalModal select{width:100%;margin-top:8px;padding:15px 16px;border:1px solid #d7dee9;border-radius:11px;background:#fff;font:500 15px 'DM Sans',sans-serif;color:#17233b;min-height:52px;outline:none}
#journalModal input:focus,#journalModal textarea:focus,#journalModal select:focus{border-color:#aebbd0;box-shadow:0 0 0 3px rgba(56,83,126,.07)}
#journalModal textarea{min-height:100px;line-height:1.5;resize:vertical}
#journalModal .form-grid,#journalModal .journal-date-row{gap:14px}
#journalModal .journal-direction-row{gap:14px;margin:0}
#journalModal .journal-direction{min-height:66px;border-radius:11px;font-size:22px;font-weight:600;border-color:#d7dee9}
#journalModal .journal-direction.long.is-active{background:#eaf8f2;border-color:#c5eadb;color:#11956a}
#journalModal .journal-direction.short.is-active{background:#fff0ed;border-color:#f3d2cc;color:#c94b3d}
#journalModal .journal-tp-builder{margin:0;padding:20px;border-radius:14px;border-color:#d7dee9;background:#fbfcfe}
#journalModal .tp-head{align-items:center;margin-bottom:4px}
#journalModal .tp-head .eyebrow{font-size:11px;letter-spacing:2px;margin-bottom:8px}
#journalModal .tp-head small{font-size:12px;color:#7c8799}
#journalModal .tp-head .outline{font-size:13px;font-weight:600;padding:12px 16px;border-radius:10px}
#journalModal .journal-tp-row{grid-template-columns:1fr 132px 48px;gap:12px;margin-top:12px}
#journalModal .journal-tp-row>div{min-height:58px;padding:10px 13px;border-radius:11px}
#journalModal .journal-tp-row>button{height:58px;border-radius:11px;font-size:21px}
#journalModal .journal-trade-preview{margin:0;display:block}
#journalModal .journal-trade-preview span{padding:16px 18px;border-radius:11px;background:#faf6ef;font-size:13px;color:#6f7b90}
#journalModal .journal-trade-preview strong{display:inline;margin-left:7px;font-size:16px;color:#17233b}
#journalModal #journalSubmitBtn{min-height:58px;border-radius:11px;font-size:15px;letter-spacing:.01em}
#journalModal .trade-image-field small{display:block;margin-top:6px;font-size:10px}
.journal-composer-source,.journal-trade-time{border:1px solid #d7dee9;border-radius:14px;padding:18px;background:#fbfcfe}
.journal-composer-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.journal-composer-section-head .eyebrow{font-size:10px!important;letter-spacing:1.8px!important;margin:0 0 5px!important}
.journal-composer-section-head strong{font-size:14px;color:#17233b}
.journal-composer-section-head>span{font-size:10px;font-weight:700;color:#66758a;background:#f1f4f8;border:1px solid #dce2eb;padding:7px 10px;border-radius:999px}
#journalModal .journal-source-picker{gap:10px;margin:0}
#journalModal .journal-source-picker button{min-height:68px;border-color:#d7dee9;border-radius:11px;padding:13px 14px;color:#657184}
#journalModal .journal-source-picker button.is-active{border-color:#f0a08f;background:#fff8f5;box-shadow:0 0 0 2px rgba(239,91,63,.08)}
#journalModal .journal-source-picker button.is-active strong{color:#d94f36}
#journalModal .journal-source-picker strong{font-size:13px;color:#27344a}
#journalModal .journal-source-picker small{font-size:10px;color:#8994a5}
#journalModal #journalGcaTradeWrap{margin-top:14px;padding-top:14px;border-top:1px solid #e3e7ee}

/* Admin quick publish stays compact, but is now discoverable from the rail. */

@media(max-width:820px){
  #journalModal{padding:8px}
  #journalModal .journal-trade-modal-card{width:100%!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;padding:22px 18px 26px!important;border-radius:0!important;margin:0!important}
  #journalModal .modal-head{position:sticky;top:0;z-index:4;background:#fff;padding:4px 0 12px}
  #journalModal .modal-head h2{font-size:25px}
  #journalModal .form-grid,#journalModal .journal-date-row,#journalModal .journal-source-picker{grid-template-columns:1fr}
  #journalModal .journal-tp-row{grid-template-columns:1fr 96px 44px}
  .journal-composer-section-head{display:grid}.journal-composer-section-head>span{justify-self:start}
}


/* 2.16 — workflow depth: keep admin work inside the workflows that already exist */
.admin-operations-depth{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 20px}.admin-ops-card{background:#fff;border:1px solid #e2ded8;border-radius:15px;padding:16px;min-width:0;box-shadow:0 8px 24px rgba(34,40,51,.03)}.admin-ops-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #eeeae4}.admin-ops-card h3{font:700 16px 'DM Sans',sans-serif;margin:3px 0 0;color:#292d34}.admin-ops-list{display:flex;flex-direction:column}.admin-ops-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #f0ece6}.admin-ops-row:last-child{border-bottom:0}.admin-ops-row-main{min-width:0;display:flex;flex-direction:column;gap:3px}.admin-ops-row-main strong{font-size:12px;color:#30343a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-ops-row-main small{font-size:9px;color:#8a8580;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-ops-row-main .trade-lifecycle-pill{align-self:flex-start;margin-bottom:2px}.admin-ops-row-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.admin-ops-row-actions button{border:1px solid #dfe4eb;background:#fff;border-radius:999px;padding:6px 8px;font:700 8px 'DM Sans';color:#53637d;cursor:pointer;white-space:nowrap}.admin-ops-row-actions button:hover{background:#f2f5f9}.admin-ops-row-actions .danger-lite{color:#9d514d;border-color:#ead7d5}.admin-ops-empty{padding:20px 4px 10px;display:flex;flex-direction:column;gap:4px}.admin-ops-empty strong{font-size:12px}.admin-ops-empty span{font-size:9px;color:#918a82}.admin-pending-replay{width:100%;border:1px solid #dce7df;background:#f6faf7;border-radius:10px;padding:10px;margin:10px 0 2px;display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;text-align:left;cursor:pointer}.admin-pending-replay>span{color:#6d9a78}.admin-pending-replay strong,.admin-pending-replay small{display:block}.admin-pending-replay strong{font-size:10px}.admin-pending-replay small{font-size:8px;color:#7e887f;margin-top:2px}.admin-pending-replay b{font-size:8px;color:#5c7e65}.trade-quick-actions button:disabled{cursor:default;transform:none!important;opacity:.78}.trade-quick-actions button.is-close{border-color:#ead7d5;color:#9d514d}.trade-quick-actions>small{font-size:7px}.trade-quick-actions button{font-size:8px;padding:6px 10px}
@media(max-width:900px){.admin-operations-depth{grid-template-columns:1fr}}
@media(max-width:720px){.admin-operations-depth{grid-template-columns:1fr}.admin-ops-row{align-items:flex-start;flex-direction:column}.admin-ops-row-actions{justify-content:flex-start}.admin-ops-row-actions button{min-height:34px;padding:7px 10px}}

/* GCA 2.16.4 — composer readability restored.
   Trade Desk and Journal create/edit modals use the larger 2.15 layout again
   and scroll naturally when content exceeds the viewport. */

/* GCA 2.17.0 — visual language & scanability
   Functional icons, instrument marks and tighter copy. No decorative stock imagery. */
.visual-section-title{display:flex;align-items:center;justify-content:space-between;gap:18px}
.visual-title-wrap{display:flex;align-items:center;gap:15px;min-width:0}
.visual-title-icon{width:48px;height:48px;flex:0 0 48px;border-radius:14px;display:grid;place-items:center;background:#f2f0ec;border:1px solid #e4e0d9;color:#344054;box-shadow:0 8px 22px rgba(30,38,52,.05)}
.visual-title-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#ideas .visual-title-icon{background:#fbf4e6;border-color:#ead8b3;color:#9a6b18}
#journal .visual-title-icon{background:#edf3f8;border-color:#d5e1eb;color:#49657d}
#performance .visual-title-icon,#weekly-results .visual-title-icon{background:#edf6f0;border-color:#d4e7da;color:#397354}
#tools .visual-title-icon{background:#f0f1f4;border-color:#dde0e6;color:#515d72}
#admin .visual-title-icon{background:#f8efec;border-color:#ead7d1;color:#8a5548}
.icon-action{display:inline-flex!important;align-items:center;justify-content:center;gap:7px}
.icon-action>span{font-size:1.15em;line-height:1}

.instrument-mark{display:inline-grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;border:1px solid #e0ddd7;background:#f5f3ef;color:#4b5565;font:900 10px/1 'DM Sans',sans-serif;letter-spacing:.06em}
.instrument-mark.metal{background:#fbf3df;border-color:#ead5a5;color:#956a1f}
.instrument-mark.fx{background:#edf3f8;border-color:#d6e1eb;color:#49657d}
.instrument-mark.index{background:#f0eef7;border-color:#ddd8ed;color:#655b82}
.instrument-mark.crypto{background:#f7efe7;border-color:#e8d8c6;color:#8b6342}
.instrument-mark.is-small{width:30px;height:30px;flex-basis:30px;border-radius:8px;font-size:8px}
.trade-instrument-title{display:flex;align-items:center;gap:11px;margin-top:9px}
.trade-instrument-title h3{margin:0!important}
.trade-instrument-title .trade-setup-label{display:block;margin-top:3px}
.journal-card-identity{display:flex;align-items:flex-start;gap:9px;min-width:0}
.journal-card-identity>div{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-width:0}
.journal-card-identity small{flex-basis:100%;margin-top:1px}
.journal-cal-day button .instrument-mark{display:inline-grid;vertical-align:middle;margin-right:4px;width:22px;height:22px;min-width:22px;border-radius:6px;font-size:6px}

.trade-quick-actions>small{display:flex;align-items:center;gap:6px}
.trade-quick-actions>small:before{content:'⚡';font-size:11px;filter:grayscale(1);opacity:.65}
.trade-quick-actions button,.trade-card-actions button,.journal-card-foot button{display:inline-flex;align-items:center;justify-content:center;gap:4px}
.trade-card-actions{row-gap:7px}

/* Let images carry information when they exist, but keep the UI tool-like. */
.trade-setup-image{position:relative;overflow:hidden}
.trade-setup-image:after{content:'↗  CHART';position:absolute;right:10px;bottom:10px;padding:5px 7px;border-radius:7px;background:rgba(20,25,34,.76);color:#fff;font:800 8px/1 'DM Sans',sans-serif;letter-spacing:.08em;backdrop-filter:blur(6px)}

/* Remove explanatory copy where controls are already self-evident. */
#ideas .trade-search-box span,.journal-search-wrap span{font-size:18px;color:#7f8794}
.admin-ops-card>header h3{display:flex;align-items:center;gap:7px}
.admin-ops-card:first-child>header h3:before{content:'↗';font-size:14px;color:#9a6b18}
.admin-ops-card:nth-child(2)>header h3:before{content:'◷';font-size:14px;color:#49657d}

@media(max-width:700px){
  .visual-title-icon{width:40px;height:40px;flex-basis:40px;border-radius:12px}.visual-title-icon svg{width:20px;height:20px}
  .visual-title-wrap{gap:11px}.visual-section-title{align-items:flex-start}
  .instrument-mark{width:36px;height:36px;flex-basis:36px;border-radius:10px}
  .trade-instrument-title{gap:9px}
  #journal .journal-page-head.visual-section-title{align-items:center}
}

/* =========================================================
   GCA 2.18.0 — global UI consistency audit
   One visual system across the product. No new features.
   ========================================================= */
:root{
  --gca-page-max:1180px;
  --gca-card-radius:16px;
  --gca-control-radius:10px;
  --gca-card-border:#e2e3e5;
  --gca-card-shadow:0 8px 24px rgba(31,39,52,.035);
  --gca-control-h:40px;
}

/* Consistent reading width. Calendar and Community intentionally remain immersive/full-width. */
body:not(.community-active) #home,
body:not(.community-active) #ideas,
body:not(.community-active) #academy,
body:not(.community-active) #more,
body:not(.community-active) #journal,
body:not(.community-active) #performance,
body:not(.community-active) #weekly-results,
body:not(.community-active) #tools,
body:not(.community-active) #admin{width:min(var(--gca-page-max),100%);margin-inline:auto}

/* The rail already tells desktop users where they are; keep the global topbar quiet. */
body:not(.community-active) .topbar{min-height:50px;align-items:center;margin-bottom:20px;padding:0 2px 12px}
body:not(.community-active) .topbar h1{font-size:13px;font-weight:700;letter-spacing:.02em;color:#7d8590}

/* Shared page-heading scale. Journal used to be dramatically larger than the rest. */
#ideas .section-title,#performance .section-title,#weekly-results .section-title,#tools .section-title,#admin .admin-head,#journal .journal-page-head,#more .section-title{margin:0 0 22px;align-items:center}
#ideas .section-title h2,#performance .section-title h2,#weekly-results .section-title h2,#tools .section-title h2,#admin .admin-head h2,#more .section-title h2{font:700 30px/1.05 'DM Sans',sans-serif;letter-spacing:-.8px;color:#242a33;margin:3px 0 0}
#journal .journal-page-head h2{font:700 clamp(30px,3vw,38px)/1.02 'DM Sans',sans-serif;letter-spacing:-1px;margin:3px 0 6px}
.visual-title-icon{width:44px;height:44px;flex-basis:44px;border-radius:13px;box-shadow:none}
.visual-title-icon svg{width:21px;height:21px}
.eyebrow{font-size:8px!important;line-height:1.1;letter-spacing:.14em!important;font-weight:800!important}
.muted{font-size:10px;line-height:1.45;color:#858b94}

/* One card language. Preserve purpose-specific colors, normalize geometry and depth. */
.premium-panel,.trade-card,.journal-block,.journal-kpi,.journal-calendar-shell,.performance-panel,.tool-card,.admin-ops-card,.admin-panel,.more-tile,.weekly-archive-week,.weekly-person-card{border-radius:var(--gca-card-radius);box-shadow:var(--gca-card-shadow)}
.performance-panel,.journal-block,.tool-card,.admin-ops-card{border-color:var(--gca-card-border)}
.journal-block,.performance-panel,.tool-card,.admin-ops-card{padding:20px}
.journal-block-head h3,.performance-panel-head h3,.admin-ops-card h3{font-size:18px;line-height:1.2;letter-spacing:-.25px;color:#303743}

/* Primary / secondary actions should feel like the same product everywhere. */
.cta,.outline,.editorial-link,.mini{font-family:'DM Sans',sans-serif;cursor:pointer}
.cta{min-height:var(--gca-control-h);padding:0 15px;border-radius:var(--gca-control-radius);font-size:11px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.outline{min-height:36px;padding:0 12px;border-radius:var(--gca-control-radius);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.editorial-link{font-size:10px;font-weight:750}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid rgba(73,101,125,.42);outline-offset:2px}

/* Segmented controls / tabs: same density and interaction across Journal, Performance and Admin. */
.filters,.journal-tabs,.journal-range,.performance-range,.admin-tabs,.moderation-filter{scrollbar-width:none}
.filters::-webkit-scrollbar,.journal-tabs::-webkit-scrollbar,.journal-range::-webkit-scrollbar,.performance-range::-webkit-scrollbar,.admin-tabs::-webkit-scrollbar{display:none}
#ideas .filters,.journal-range,.performance-range,.admin-tabs{gap:4px;padding:4px;border:1px solid #e4e5e7;border-radius:12px;background:#f3f4f5;width:max-content;max-width:100%;overflow-x:auto}
#ideas .filters button,.journal-range button,.performance-range button,.admin-tabs button{min-height:34px;border:0!important;border-radius:9px!important;background:transparent!important;padding:0 12px!important;font:700 10px 'DM Sans',sans-serif!important;color:#6f7782!important;white-space:nowrap}
#ideas .filters button.active,.journal-range button.active,.performance-range button.active,.admin-tabs button.active{background:#fff!important;color:#283240!important;box-shadow:0 2px 8px rgba(30,38,50,.07)!important}
.journal-tabs{gap:2px;margin-bottom:22px}
.journal-tabs button{font-size:11px;padding:12px 14px}

/* Toolbars and search fields share one control height. */
.trade-discovery-bar input,.trade-discovery-bar select,.journal-toolbar-advanced input,.journal-toolbar-advanced select,#memberSearch{height:42px!important;min-height:42px!important;border-radius:10px!important;border-color:#dde1e6!important;font:500 11px 'DM Sans',sans-serif!important;color:#333b46;background:#fff}
.trade-discovery-bar,.journal-toolbar-advanced{gap:8px}
.trade-search-box,.journal-search-wrap{min-height:42px}

/* Home: remove duplicate owner shortcuts; Admin already exposes the same operations. */
.home-admin-shortcuts{display:none!important}
.home-command-strip{margin-bottom:18px}
.premium-home-grid{gap:16px}
.home-side-column{gap:16px}
.premium-panel-head{padding:18px 20px 15px}
.premium-panel-head h2{font-size:18px}

/* Journal: align the KPI and content density with Trade Desk / Performance. */
.journal-page-head{margin-bottom:22px!important}
.journal-new-trade{min-height:44px;padding:0 18px;font-size:11px}
.journal-kpis{gap:10px;margin-bottom:18px}
.journal-kpi{min-height:112px;padding:17px 18px}
.journal-kpi small{font-size:8px}.journal-kpi strong{font-size:30px}.journal-kpi.primary strong{font-size:36px}.journal-kpi span{font-size:10px}
.journal-overview-grid,.journal-analytics-grid{gap:12px}
.journal-calendar-head{padding:20px}.journal-calendar-head h3{font-size:24px}

/* Performance: reduce competing card sizes while keeping the main result dominant. */
.performance-hero{border-radius:18px;padding:24px 26px;box-shadow:var(--gca-card-shadow)}
.performance-hero>div:first-child>strong{font-size:52px}
.performance-kpi-grid{gap:8px}.performance-kpi-grid article{border-radius:13px;padding:14px}
.performance-breakdown-grid{gap:12px}

/* Tools: same control typography as the rest of the application. */
.tools-grid{gap:14px}.tool-card{padding:20px}.tool-card h3{font-size:17px;letter-spacing:-.2px;margin-bottom:16px}
.tool-form{gap:11px}.tool-form label{font-size:9px;font-weight:700;color:#737b86}.tool-form input,.tool-form select{min-height:42px;border-radius:10px;font:500 12px 'DM Sans',sans-serif}
.tool-output{margin-top:16px;padding-top:15px}.tool-output strong{font-size:30px}

/* Admin: the operational cards and the lower builder now read as one system. */
.admin-operations-depth{gap:12px;margin-bottom:18px}
.admin-ops-card>header{padding-bottom:13px}.admin-ops-row{padding:13px 0}.admin-ops-row-main strong{font-size:11px}.admin-ops-row-main small{font-size:9px}
.admin-ops-row-actions button{min-height:30px;padding:0 9px;font-size:8px}
.admin-tabs{margin:0 0 14px}
.admin-panel{border:1px solid var(--gca-card-border);background:#fff;padding:18px}
.admin-panel-head{align-items:center;margin-bottom:12px}.admin-panel-head h3{font-size:18px}

/* Loading / empty states should look intentional rather than like missing content. */
.home-loading,.trade-empty,.journal-empty,.performance-empty,.admin-empty{color:#8a929d;font-size:10px}
.trade-empty,.journal-empty-large,.performance-empty,.admin-empty{border:1px dashed #dfe3e8;border-radius:14px;background:#fafbfc}
.home-loading{padding:24px 18px}

/* Keep create/edit trade composers large and naturally scrollable — readability wins. */
#tradeModal .trade-idea-modal-card,#journalModal .journal-trade-modal-card{scrollbar-gutter:stable}

@media(max-width:820px){
  body:not(.community-active) .content{padding-left:14px;padding-right:14px}
  body:not(.community-active) .topbar{margin-bottom:14px}
  body:not(.community-active) .topbar h1{font-size:12px}
  #ideas .section-title,#performance .section-title,#weekly-results .section-title,#tools .section-title,#admin .admin-head,#journal .journal-page-head,#more .section-title{margin-bottom:17px}
  #ideas .section-title h2,#performance .section-title h2,#weekly-results .section-title h2,#tools .section-title h2,#admin .admin-head h2,#more .section-title h2,#journal .journal-page-head h2{font-size:27px!important;letter-spacing:-.6px!important}
  .visual-title-icon{width:40px;height:40px;flex-basis:40px}
  .journal-kpis{grid-template-columns:1fr 1fr}.journal-kpi{min-height:102px}
  .performance-hero{padding:20px}.performance-hero>div:first-child>strong{font-size:44px}
  .performance-kpi-grid{grid-template-columns:1fr 1fr}
  .admin-panel{padding:14px}
  .tools-grid{gap:10px}.tool-card{padding:17px}
}

@media(max-width:560px){
  body:not(.community-active) .content{padding-left:11px;padding-right:11px}
  .visual-title-wrap{align-items:center}
  .visual-section-title{gap:10px}
  .journal-page-head{flex-direction:row!important;align-items:center!important}
  .journal-new-trade{width:auto!important;min-width:42px;padding:0 12px}
  .journal-kpis{gap:8px}.journal-kpi{padding:14px;min-height:96px}.journal-kpi strong,.journal-kpi.primary strong{font-size:27px}
  #ideas .filters,.journal-range,.performance-range,.admin-tabs{width:100%}
  .premium-home-grid{gap:10px}.home-side-column{gap:10px}
}

/* =========================================================
   GCA 2.19.0 — Trade Desk + Journal flagship polish
   Stronger hierarchy, lifecycle scanning, cleaner charts/results.
   ========================================================= */

/* Trade Desk — make every idea readable in a 2-second scan. */
#ideas .trade-card{border:1px solid #dde3ea;background:#fff;padding:0;overflow:hidden;box-shadow:0 12px 32px rgba(30,42,58,.055)}
#ideas .trade-card-head{padding:22px 24px 15px;margin:0;align-items:flex-start}
#ideas .trade-instrument-title h3{font-size:22px;letter-spacing:-.45px;line-height:1.05}
#ideas .trade-setup-label{font-size:10px;margin-top:5px;color:#788392}
#ideas .trade-card .rr{font-size:28px;line-height:1;font-weight:800;letter-spacing:-.8px}
#ideas .trade-status-line{gap:6px;margin-bottom:11px}
#ideas .trade-setup-image{display:block;width:calc(100% - 48px);margin:2px 24px 17px;border-radius:13px;border:1px solid #e3e6e9;background:#f3f5f7;aspect-ratio:16/7;max-height:330px}
#ideas .trade-setup-image img{width:100%;height:100%;object-fit:cover;display:block}
#ideas .metrics{margin:0 24px 14px;padding:0;border:1px solid #e5e8ec;border-radius:13px;overflow:hidden;background:#fbfcfd;display:grid;grid-template-columns:repeat(4,1fr)}
#ideas .metrics>div{padding:13px 15px;border-right:1px solid #e7eaee;min-width:0}
#ideas .metrics>div:last-child{border-right:0}
#ideas .metrics span{font-size:8px;letter-spacing:.12em;color:#929aa5;font-weight:800}
#ideas .metrics b{display:block;margin-top:4px;font-size:17px;line-height:1.1;color:#253044;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trade-lifecycle-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:start;margin:0 24px 17px;padding:11px 13px;border-radius:12px;background:#f7f8fa;border:1px solid #e7eaee}
.trade-lifecycle-track span{display:grid;justify-items:center;gap:4px;min-width:40px;color:#9aa1aa}
.trade-lifecycle-track span i{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e4e7eb;color:#7f8791;font:800 9px 'DM Sans',sans-serif;font-style:normal}
.trade-lifecycle-track span b{font-size:8px;letter-spacing:.04em;font-weight:750}
.trade-lifecycle-track em{height:2px;background:#e2e5e9;margin:10px 7px 0}
.trade-lifecycle-track span.is-done{color:#3f6d58}.trade-lifecycle-track span.is-done i{background:#dcefe5;color:#2d7654}
.trade-lifecycle-track span.is-done+em{background:#bcdcca}
#ideas .tp-chips{margin:0 24px 15px;gap:7px}
#ideas .tp-chips span{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:9px;background:#f7f8fa;border:1px solid #e4e7eb;font-size:10px;color:#5f6875}
#ideas .tp-chips span b{font-size:9px;color:#344154}#ideas .tp-chips span em{font-style:normal;color:#89919b;font-size:9px}
#ideas .tp-chips span.is-hit{background:#edf7f1;border-color:#cfe7d9;color:#2d7654}#ideas .tp-chips span.is-hit em{color:#2d7654}
.trade-rationale{margin:0 24px 16px;padding:13px 15px;border-left:3px solid #c9d4df;background:#fafbfc;border-radius:0 10px 10px 0}
.trade-rationale small{display:block;font-size:8px;letter-spacing:.12em;color:#9199a4;font-weight:800;margin-bottom:5px}.trade-rationale p{margin:0!important;font-size:11px!important;line-height:1.55!important;color:#505a68!important}
#ideas .trade-personal-size{margin:0 24px 15px;border-radius:11px;padding:11px 13px}
#ideas .trade-quick-actions,#ideas .trade-partial-history,#ideas .timeline,#ideas .closed-trade-line,#ideas .trade-review{margin-left:24px;margin-right:24px}
#ideas .trade-card-actions{padding:13px 24px 18px;margin-top:15px;border-top:1px solid #edf0f2;background:#fbfcfd}

/* Journal — same clarity, but personal and slightly quieter. */
.journal-trade-list{gap:12px}
.journal-trade-card{padding:18px;border:1px solid #dfe4ea;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(31,42,57,.04);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.journal-trade-card:hover{transform:translateY(-1px);border-color:#cbd4de;box-shadow:0 12px 28px rgba(31,42,57,.065)}
.journal-card-top{align-items:flex-start}.journal-card-identity strong{font-size:18px;line-height:1.1}.journal-card-identity small{margin-top:4px;font-size:9px;color:#858e99}
.journal-card-result{text-align:right;display:grid;justify-items:end;gap:2px}.journal-card-result time{font-size:9px;color:#9299a3}.journal-card-result strong{font-size:22px;line-height:1.05;letter-spacing:-.45px}.journal-card-result small{font-size:9px;color:#9299a3}
.journal-lifecycle-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;margin:14px 0 13px}
.journal-lifecycle-track span{font-size:8px;font-weight:800;letter-spacing:.06em;color:#a0a6ae}.journal-lifecycle-track i{height:2px;background:#e6e9ed;margin:0 8px}.journal-lifecycle-track span.is-done{color:#3c7158}.journal-lifecycle-track span.is-done+i{background:#bddcca}
.journal-card-levels{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:0!important;border:1px solid #e7eaee;border-radius:11px;overflow:hidden;background:#fafbfc;margin:0 0 14px!important}
.journal-card-levels span{padding:10px 11px!important;border-right:1px solid #e7eaee;background:transparent!important}.journal-card-levels span:last-child{border-right:0}.journal-card-levels small{display:block;font-size:7px!important;letter-spacing:.11em;color:#9aa1aa;font-weight:800}.journal-card-levels b{font-size:13px!important;margin-top:3px;display:block;color:#303b4d}
.journal-card-foot{padding-top:0!important;border-top:0!important;align-items:center}.journal-card-foot>div{gap:5px}.journal-card-foot button{min-height:30px;padding:0 9px;border-radius:8px;font-size:8px}
.journal-gca-badge{padding:4px 6px!important;border-radius:6px!important;font-size:7px!important;letter-spacing:.08em!important}

/* Weekly results — stronger headline, calmer ledger rows. */
#weekly-results .weekly-current-results,#journal .journal-current-week{margin-bottom:16px}
#weekly-results .weekly-archive-week,#journal .weekly-archive-week{border-color:#dfe4ea;box-shadow:0 6px 20px rgba(30,42,58,.035)}
#weekly-results .weekly-archive-week summary,#journal .weekly-archive-week summary{transition:background .15s ease}
#weekly-results .weekly-archive-week summary:hover,#journal .weekly-archive-week summary:hover{background:#fafbfd}
.weekly-trade-row{min-height:58px;padding:11px 16px!important;border-bottom:1px solid #eef0f3!important;background:#fff!important;transition:background .14s ease}
.weekly-trade-row:hover{background:#fafbfd!important}.weekly-trade-row strong{font-size:11px!important}.weekly-trade-row small{font-size:9px!important;color:#89919b!important}.weekly-trade-row>b{font-size:14px!important}

/* Journal detail popup — treat screenshots as first-class review material. */
.journal-overlay-card{max-width:920px!important;padding:30px!important;border-radius:18px!important}
.journal-overlay-head{padding-bottom:18px;border-bottom:1px solid #e8ebef}.journal-overlay-head h2{font-size:34px!important;letter-spacing:-.9px}.journal-overlay-result strong{font-size:36px!important;letter-spacing:-1px}
.journal-overlay-image{max-height:460px!important;border:1px solid #e0e4e8;box-shadow:0 8px 24px rgba(29,39,52,.06);background:#f4f5f6}
.journal-review-grid section{border:1px solid #e5e8eb;background:#fafbfc!important;padding:16px!important}
.journal-timeline{border-top:1px solid #edf0f2;padding-top:12px}

/* Compact closed Trade Desk cards read like a ledger until expanded. */
.trade-closed-compact{min-height:68px!important;border-radius:13px!important;border-color:#e0e4e9!important;background:#fff!important;padding:9px 13px!important}.trade-closed-compact img,.trade-closed-noimage{width:48px!important;height:48px!important;border-radius:9px!important}.trade-closed-copy strong{font-size:12px!important}.trade-closed-compact>b{font-size:15px!important}

@media(max-width:700px){
  #ideas .trade-card-head{padding:18px 16px 13px}#ideas .trade-instrument-title h3{font-size:19px}#ideas .trade-card .rr{font-size:23px}
  #ideas .trade-setup-image{width:calc(100% - 32px);margin:0 16px 14px;aspect-ratio:16/9}
  .trade-lifecycle-track{margin:0 16px 14px;padding:9px 7px}.trade-lifecycle-track span{min-width:34px}.trade-lifecycle-track span b{font-size:7px}.trade-lifecycle-track em{margin-left:3px;margin-right:3px}
  #ideas .metrics{margin:0 16px 12px;grid-template-columns:1fr 1fr}#ideas .metrics>div:nth-child(2){border-right:0}#ideas .metrics>div:nth-child(-n+2){border-bottom:1px solid #e7eaee}
  #ideas .tp-chips,#ideas .trade-personal-size{margin-left:16px;margin-right:16px}.trade-rationale{margin-left:16px;margin-right:16px}
  #ideas .trade-quick-actions,#ideas .trade-partial-history,#ideas .timeline,#ideas .closed-trade-line,#ideas .trade-review{margin-left:16px;margin-right:16px}
  #ideas .trade-card-actions{padding:12px 16px 16px}
  .journal-trade-card{padding:15px}.journal-card-identity strong{font-size:16px}.journal-card-result strong{font-size:19px}
  .journal-overlay-card{padding:22px 16px!important}.journal-overlay-head h2{font-size:28px!important}.journal-overlay-result strong{font-size:29px!important}
}

/* =========================================================
   GCA 2.20.0 — dedicated mobile audit + 2.19 journal repair
   Mobile is treated as a first-class layout, not compressed desktop.
   ========================================================= */

/* Academy library: three courses per row on desktop, two on tablet, one on phone. */
#academy:not(.course-open){width:min(1180px,calc(100vw - 56px));max-width:1180px}
#academy:not(.course-open) .academy-v2-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:1050px) and (min-width:721px){
  #academy:not(.course-open){width:min(900px,calc(100vw - 36px))}
  #academy:not(.course-open) .academy-v2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  #academy:not(.course-open){width:100%;max-width:none}
  #academy:not(.course-open) .academy-v2-grid{grid-template-columns:1fr}
}

@media(max-width:700px){
  html,body{max-width:100%;overflow-x:hidden}
  body:not(.community-active) .content{padding-left:12px!important;padding-right:12px!important;padding-bottom:calc(88px + env(safe-area-inset-bottom))!important}
  body:not(.community-active) section.page{max-width:100%!important;min-width:0!important}

  /* Bottom navigation: larger, safer touch targets and iPhone safe-area support. */
  .mobile-nav{height:calc(68px + env(safe-area-inset-bottom))!important;padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(5,minmax(0,1fr))!important}
  .mobile-nav button{min-width:0;min-height:54px;padding:6px 2px!important;touch-action:manipulation}
  .mobile-nav .nav-icon{width:21px!important;height:21px!important}
  .mobile-nav small{font-size:8px!important;line-height:1.1;white-space:nowrap}

  /* Page headers: no clipped actions or oversized desktop spacing. */
  .section-title,.visual-section-title,.journal-page-head,.admin-head{min-width:0}
  .section-title h2,.visual-section-title h2,#performance .section-title h2{font-size:24px!important;line-height:1.05!important;letter-spacing:-.45px!important}
  .visual-title-wrap{min-width:0}.visual-title-wrap>div{min-width:0}
  .eyebrow{letter-spacing:.12em}

  /* Horizontal segmented controls remain one line and swipe instead of wrapping awkwardly. */
  #ideas .filters,.journal-tabs,.journal-range,.performance-range,.admin-tabs{width:100%!important;max-width:100%;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  #ideas .filters button,.journal-tabs button,.journal-range button,.performance-range button,.admin-tabs button{flex:0 0 auto;min-height:42px!important;scroll-snap-align:start}

  /* Trade Desk discovery controls become a clean vertical stack. */
  #ideas .trade-discovery-bar{grid-template-columns:1fr!important;gap:8px!important}
  #ideas .trade-search-box{grid-column:auto!important;min-height:46px}
  #ideas .trade-discovery-bar select{width:100%;min-height:44px}
  #ideas .trade-weekly-snapshot{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  #ideas .trade-weekly-snapshot>div{flex:0 0 auto}

  /* Flagship trade cards: preserve readable numbers, remove horizontal pressure. */
  #ideas .trade-card{min-width:0!important}
  #ideas .trade-card-head{gap:10px!important}
  #ideas .trade-card-head>div:first-child{min-width:0}
  #ideas .trade-instrument-title{min-width:0}
  #ideas .trade-instrument-title>div{min-width:0}
  #ideas .trade-instrument-title h3{white-space:normal;overflow-wrap:anywhere}
  #ideas .trade-card .rr{flex:0 0 auto;white-space:nowrap}
  .trade-lifecycle-track{grid-template-columns:auto 1fr auto 1fr auto 1fr auto!important}
  .trade-lifecycle-track span b{white-space:nowrap}
  #ideas .tp-chips{display:flex;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  #ideas .tp-chips span{flex:0 0 auto}
  #ideas .trade-card-actions{display:flex;overflow-x:auto;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch;gap:7px}
  #ideas .trade-card-actions button{flex:0 0 auto;min-height:40px!important;padding:0 12px!important}
  #ideas .trade-quick-actions{display:flex;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
  #ideas .trade-quick-actions button{flex:0 0 auto;min-height:40px!important}

  /* Trade calendar: keep the month readable; user pans the grid rather than squeezing seven columns. */
  .trade-calendar-shell{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .trade-calendar-weekdays,.trade-calendar-grid{min-width:660px}

  /* Journal: cards, filters and overlays are touch-first. */
  #journal .journal-tabs{top:0;padding-bottom:2px}
  .journal-toolbar-advanced{grid-template-columns:1fr!important}
  .journal-search-wrap,.journal-clear-filters{grid-column:auto!important}
  .journal-toolbar-advanced select,.journal-toolbar-advanced input,.journal-clear-filters{min-height:44px!important;width:100%}
  .journal-trade-card{min-width:0}
  .journal-card-top{gap:10px}
  .journal-card-identity{min-width:0}.journal-card-identity>div{min-width:0}
  .journal-card-identity strong{overflow-wrap:anywhere}
  .journal-card-foot{align-items:flex-start!important;gap:9px;flex-wrap:wrap}
  .journal-card-foot>div{width:100%;display:flex;gap:7px;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .journal-card-foot button{flex:1 0 auto;min-height:40px!important;font-size:9px!important}
  .journal-overlay-card{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important;padding:22px 16px calc(28px + env(safe-area-inset-bottom))!important;overflow:auto!important}
  .journal-overlay-close{position:sticky!important;float:right;top:0;background:#fff!important;width:44px;height:44px;border-radius:10px!important;box-shadow:0 2px 10px rgba(20,28,40,.08)}
  .journal-overlay-levels,.journal-overlay-targets{grid-template-columns:1fr 1fr!important}
  .journal-overlay-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);padding:10px 0 calc(4px + env(safe-area-inset-bottom));margin-bottom:calc(-18px - env(safe-area-inset-bottom))}
  .journal-overlay-actions button{min-height:44px;flex:1}

  /* Performance: keep headline legible and let dense rows collapse cleanly. */
  .performance-hero{padding:20px 16px!important;gap:14px!important}
  .performance-hero>div:first-child>strong{font-size:42px!important;letter-spacing:-1.7px!important}
  .performance-hero-meta{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
  .performance-hero-meta span{padding:10px 7px!important;min-width:0}
  .performance-hero-meta b{font-size:16px!important}
  .performance-kpi-grid{grid-template-columns:1fr 1fr!important}
  .performance-panel{padding:16px!important}
  .performance-breakdown-row{grid-template-columns:minmax(90px,1fr) auto!important}
  .performance-breakdown-row .performance-bar{grid-column:1/-1;grid-row:2}

  /* Academy: comfortable course cards and full-width lesson controls. */
  #academy:not(.course-open) .academy-v2-grid{gap:12px!important}
  #academy:not(.course-open) .academy-card-body{min-height:132px!important;padding:15px!important}
  #academy:not(.course-open) .academy-card-body h3{font-size:17px!important}
  #academy .academy-member-lesson-nav{gap:8px!important;padding-left:12px!important;padding-right:12px!important}
  #academy .academy-member-lesson-nav>div{width:100%;margin-left:0!important}
  #academy .academy-member-lesson-nav button{flex:1;min-height:44px!important}

  /* Calls/Admin: actions stack instead of becoming tiny pills. */
  .admin-ops-row-actions{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important}
  .admin-ops-row-actions button{min-height:42px!important;width:100%;font-size:9px!important}
  .members-table,.permission-matrix,.academy-builder{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .member-row{min-width:620px}
  .matrix-head,.matrix-row{min-width:720px}

  /* All modals: visible close controls and touch-sized primary actions. */
  .modal button,.modal-card button{touch-action:manipulation}
  #tradeModal .close-modal,#journalModal .close-journal-modal{min-width:46px;min-height:46px}
  #tradeModal #tradeSubmitBtn,#journalModal #journalSubmitBtn{min-height:56px!important}
}


/* ============================================================
   GCA 2.21.1 — clean unified GCA Trades
   Keep the 2.20 Trade Desk visual intact; Performance is a secondary view.
   ============================================================ */
.gca-trades-panel{display:none}
.gca-trades-panel.is-active{display:block}
.gca-trades-head-actions{display:flex;align-items:center;gap:14px}
.gca-performance-link{white-space:nowrap}
@media(max-width:820px){
  .gca-trades-head-actions{gap:9px}
  .gca-trades-head-actions .gca-performance-link{min-height:42px;display:inline-flex;align-items:center}
}
@media(max-width:560px){
  .gca-trades-head-actions{width:100%;justify-content:space-between}
  #ideas [data-gca-trades-panel="desk"] .section-title{align-items:flex-start}
}


/* 2.22.0 — simplification, useful visuality, mobile readability */
.trade-discovery-bar .is-context-hidden{display:none!important}
.gca-weekly-record{margin-top:14px;scroll-margin-top:24px}
.gca-weekly-record .weekly-current-results{margin-top:4px}
.gca-weekly-record .weekly-trade-list{margin-bottom:8px}
.home-r-sparkline{height:34px;max-width:190px;margin:2px 0 8px;opacity:.9}
.home-r-sparkline svg{display:block;width:100%;height:100%;overflow:visible}
.home-r-sparkline polyline{stroke:rgba(255,255,255,.78);stroke-width:2}
.home-sparkline-empty{display:block;width:100%;height:1px;background:rgba(255,255,255,.22);margin-top:16px}
.home-live-visual{display:grid;grid-template-columns:52px 1fr;gap:13px;align-items:center;margin:2px 0 14px}
.home-live-date{height:58px;border:1px solid #dce4e0;background:#f5f8f6;border-radius:12px;display:grid;place-items:center;align-content:center;line-height:1}
.home-live-date small{font:800 8px/1 'DM Sans',sans-serif;letter-spacing:.12em;color:#718078;margin-bottom:5px}
.home-live-date strong{font:700 24px/1 'DM Sans',sans-serif;color:#30443a}
.premium-home .home-next-call .home-live-visual h3{margin:0 0 5px!important}
.premium-home .home-next-call .home-live-visual p{margin:0!important}
@media(max-width:820px){
  .mobile-nav small{font-size:10px!important;line-height:1.05!important;font-weight:650;letter-spacing:-.01em}
  .mobile-nav button{gap:3px!important}
  .gca-weekly-record{scroll-margin-top:12px}
  .weekly-people-grid{grid-template-columns:1fr!important}
  .weekly-archive-result{grid-template-columns:1fr auto!important}
  .weekly-archive-result>span{grid-column:1/-1;text-align:left!important}
}

#ideas .trade-discovery-bar.has-no-secondary-filters{grid-template-columns:1fr!important}
#ideas .trade-discovery-bar.has-one-secondary-filter{grid-template-columns:minmax(300px,1fr) 190px!important}

/* 2.23.0 — release readiness: account, notification & mobile polish */
.auth-links-split{justify-content:space-between!important;gap:16px}.auth-forgot-link{color:#a65e39!important}.auth-recovery-status{margin-top:12px;padding:10px 12px;border:1px solid #d7e4d9;background:#f5faf6;border-radius:9px;font:500 10px/1.45 'DM Sans';color:#46634d}.settings-secure-editor{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.settings-secure-editor small{grid-column:1/-1;font:500 9px/1.45 'DM Sans';color:#7c7d7b}.settings-danger-zone{margin-top:24px}.danger-outline{border-color:#e2c6c2!important;color:#9b4e47!important}.danger-action{border:1px solid #a94f48;background:#a94f48;color:#fff;border-radius:7px;padding:10px 14px;font:600 10px 'DM Sans';cursor:pointer}.deletion-request-status{margin:8px 0 14px;padding:12px;border:1px solid #e8d7c8;background:#fff9f3;border-radius:9px;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.deletion-request-status strong,.deletion-request-status span{display:block}.deletion-request-status strong{font-size:11px;color:#5d4a3c}.deletion-request-status span{font-size:9px;color:#877568}.deletion-request-status .outline{grid-column:2;grid-row:1/3}.mobile-notification-explainer{margin-top:18px;border:1px solid #dedbd5;border-radius:14px;background:#f8f7f4;padding:16px;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:center}.mobile-notification-copy h3{margin:4px 0 7px;font:700 16px 'DM Sans';color:#292d34}.mobile-notification-copy p:not(.eyebrow){margin:0 0 13px;font:500 10px/1.55 'DM Sans';color:#73716d;max-width:480px}.notification-phone-preview{border:5px solid #25282d;border-radius:24px;background:linear-gradient(160deg,#e9e6df,#d9e2ea);padding:10px 8px 14px;box-shadow:0 12px 30px rgba(32,37,45,.14);min-height:205px}.notification-phone-top{display:flex;justify-content:space-between;padding:1px 8px 8px;font:700 7px 'DM Sans';color:#32363b}.phone-notification{display:grid;grid-template-columns:30px 1fr;gap:8px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.75);border-radius:11px;padding:9px;margin:0 0 7px;box-shadow:0 5px 15px rgba(40,48,58,.08)}.phone-notification-icon{width:30px;height:30px;border-radius:8px;background:#24374f;color:#fff;display:grid;place-items:center;font:800 11px 'DM Sans'}.phone-notification-icon.community{background:#b96642}.phone-notification small,.phone-notification strong,.phone-notification span{display:block}.phone-notification small{font:600 6px 'DM Sans';color:#7b7e82}.phone-notification strong{font:700 8px/1.3 'DM Sans';color:#272a2e;margin:2px 0}.phone-notification span{font:500 7px/1.35 'DM Sans';color:#60646a}.notification-delivery-note{display:flex;gap:9px;margin-top:12px;padding:10px 12px;border-left:3px solid #b96642;background:#fbf7f3}.notification-delivery-note strong{font-size:9px;white-space:nowrap}.notification-delivery-note span{font-size:8px;line-height:1.5;color:#77736f}.more-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.journal-mobile-filter-btn,.journal-filter-sheet-head,.journal-filter-done{display:none}.journal-filter-fields{display:contents}.journal-export-btn{height:44px;white-space:nowrap}.journal-filter-backdrop{display:none}.admin-ops-row-actions button{font-size:9.5px!important}.trade-quick-actions button{font-size:9px!important}.admin-pending-replay strong{font-size:11px}.admin-pending-replay small,.admin-pending-replay b{font-size:9px}
@media(max-width:820px){.settings-secure-editor{grid-template-columns:1fr}.mobile-notification-explainer{grid-template-columns:1fr;padding:14px}.notification-phone-preview{max-width:330px;width:100%;justify-self:center}.deletion-request-status{grid-template-columns:1fr}.deletion-request-status .outline{grid-column:1;grid-row:auto}.auth-links-split{flex-direction:column;gap:6px}.auth-forgot-link{padding:5px}.journal-toolbar-advanced{grid-template-columns:minmax(0,1fr) auto auto!important;position:relative}.journal-search-wrap{grid-column:1/-1!important}.journal-mobile-filter-btn,.journal-export-btn{display:flex!important;align-items:center;justify-content:center;min-height:42px!important}.journal-mobile-filter-btn{grid-column:1/3}.journal-export-btn{grid-column:3}.journal-filter-fields{display:none;position:fixed;left:0;right:0;bottom:0;z-index:10020;background:#fff;border-radius:20px 20px 0 0;padding:16px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -18px 50px rgba(27,31,38,.18);max-height:78dvh;overflow:auto}.journal-filter-fields.mobile-open{display:grid;grid-template-columns:1fr 1fr;gap:10px}.journal-filter-fields.mobile-open select{width:100%;min-height:46px!important}.journal-filter-sheet-head{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;padding:2px 2px 8px}.journal-filter-sheet-head strong{font:700 17px 'DM Sans'}.journal-filter-sheet-head button{border:0;background:#f0efec;border-radius:50%;width:34px;height:34px;font-size:20px}.journal-filter-fields .journal-clear-filters{grid-column:1}.journal-filter-done{display:block;grid-column:2;min-height:44px}.journal-filter-backdrop.open{display:block;position:fixed;inset:0;z-index:10010;background:rgba(24,28,34,.42);backdrop-filter:blur(3px)}body.journal-filters-open{overflow:hidden}.more-tile strong{font-size:12px}.more-tile small{font-size:9.5px;line-height:1.35}}
@media(max-width:430px){.journal-toolbar-advanced{grid-template-columns:1fr 1fr!important}.journal-search-wrap{grid-column:1/-1!important}.journal-mobile-filter-btn{grid-column:1}.journal-export-btn{grid-column:2}.journal-filter-fields.mobile-open{grid-template-columns:1fr}.journal-filter-fields .journal-clear-filters,.journal-filter-done{grid-column:1}.phone-notification strong{font-size:8.5px}.phone-notification span{font-size:7.5px}}
.member-deletion-requested{box-shadow:inset 3px 0 0 #a94f48}.member-deletion-badge{display:block;margin-top:4px;font:700 8px 'DM Sans';font-style:normal;color:#9b4e47;text-transform:uppercase;letter-spacing:.35px}
.more-tile{position:relative}.more-activity-badge{font-style:normal;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#b96642;color:#fff;display:grid;place-items:center;font:700 8px 'DM Sans';margin-right:2px}.more-activity-badge.hidden{display:none!important}
@media(min-width:1181px){.journal-toolbar-advanced{grid-template-columns:minmax(250px,1.55fr) repeat(5,minmax(105px,.65fr)) auto auto!important}}
.more-activity-badge{position:absolute;right:34px;top:50%;transform:translateY(-50%)}.settings-secure-editor .cta,.settings-secure-editor .danger-action{justify-self:start}


/* =========================================================
   GCA 2.23.1 — iOS mobile interaction + density fixes
   ========================================================= */
@media (max-width:820px){
  /* iOS Safari automatically zooms focused controls below 16px. Keep editable
     controls at 16px while allowing surrounding UI/content to remain compact. */
  input,textarea,select,[contenteditable="true"],
  .modal input,.modal textarea,.modal select,
  .community-composer textarea,
  .gca-rich-editor[contenteditable="true"]{
    font-size:16px!important;
  }

  /* The settings detail pane lives off-canvas until a section is selected.
     Explicit hit-testing prevents Mobile Safari from letting the translated
     pane sit invisibly above the settings navigation. */
  #accountSettingsModal .settings-content{
    pointer-events:none!important;
    visibility:hidden;
  }
  #accountSettingsModal.mobile-panel-open .settings-content{
    pointer-events:auto!important;
    visibility:visible;
  }
  #accountSettingsModal .settings-nav{
    pointer-events:auto!important;
    touch-action:manipulation;
  }
  #accountSettingsModal .settings-nav-btn{
    touch-action:manipulation;
  }

  /* Community: slightly denser on phones without shrinking tap targets. */
  body.community-active .community-title-line h2{font-size:15.5px!important}
  body.community-active .channel{
    min-height:44px!important;
    height:44px!important;
    font-size:14px!important;
    padding:0 11px!important;
  }
  body.community-active .channel-type-icon{font-size:16px!important;width:22px!important}
  body.community-active .category-toggle strong,
  body.community-active .category-label{font-size:10px!important}
  body.community-active .discord-message{
    grid-template-columns:36px minmax(0,1fr)!important;
    padding:6px 11px 7px!important;
    gap:9px!important;
  }
  body.community-active .discord-message .avatar{width:34px!important;height:34px!important}
  body.community-active .message-author-link{font-size:12.5px!important}
  body.community-active .message-text{font-size:14px!important;line-height:1.44!important;margin-top:2px!important}
  .community-center[data-channel-type="announcement"] .message-text{font-size:14px!important}
  .community-center[data-channel-type="announcement"] .discord-message,
  .community-center[data-channel-type="forum"] .discord-message{padding:10px!important}
}


/* =========================================================
   GCA 2.23.3 — iOS settings + viewport/layout hardening
   ========================================================= */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;max-width:100%;overflow-x:hidden}
body{max-width:100%;overflow-x:hidden}
.settings-build-label{display:block;padding:12px 10px 0;color:#9a9da3;font:600 9px 'DM Sans',sans-serif}
@media (max-width:820px){
  html,body,.app,.content,.screen{width:100%;max-width:100vw;overflow-x:hidden}
  .modal{max-width:100vw;overflow-x:hidden}
  .modal-card{max-width:100vw;min-width:0}

  /* Settings uses explicit two-state mobile navigation. No translated/off-screen
     pane is allowed to sit above the menu and intercept touches. */
  #accountSettingsModal{padding:0!important;align-items:stretch!important;justify-content:stretch!important}
  #accountSettingsModal .account-settings-modal{width:100vw!important;height:100dvh!important;max-width:100vw!important;max-height:100dvh!important;border-radius:0!important}
  #accountSettingsModal .settings-layout{display:block!important;width:100%!important;height:100%!important;min-width:0!important}
  #accountSettingsModal .settings-nav{display:block!important;position:absolute!important;inset:0!important;z-index:20!important;width:100%!important;max-width:100vw!important;overflow-y:auto!important;overflow-x:hidden!important;pointer-events:auto!important;transform:none!important}
  #accountSettingsModal .settings-content{display:none!important;position:absolute!important;inset:0!important;z-index:30!important;width:100%!important;max-width:100vw!important;overflow-y:auto!important;overflow-x:hidden!important;pointer-events:none!important;transform:none!important;visibility:visible!important}
  #accountSettingsModal.mobile-panel-open .settings-nav{display:none!important;pointer-events:none!important}
  #accountSettingsModal.mobile-panel-open .settings-content{display:block!important;pointer-events:auto!important}
  #accountSettingsModal .settings-nav-btn{position:relative!important;z-index:21!important;width:100%!important;min-height:50px!important;pointer-events:auto!important;touch-action:manipulation!important;font-size:14px!important;padding:14px 11px!important}
  #accountSettingsModal .settings-panel{max-width:100%!important;min-width:0!important}
  #accountSettingsModal .settings-content-head{max-width:100%!important}
  #accountSettingsModal .setting-row,#accountSettingsModal .settings-inline-editor{min-width:0!important;max-width:100%!important}
  #accountSettingsModal input,#accountSettingsModal textarea,#accountSettingsModal select{min-width:0!important;max-width:100%!important}
  .settings-build-label{padding:14px 11px 0;font-size:10px}

  /* iOS focus safety. */
  input,textarea,select,[contenteditable="true"],
  .modal input,.modal textarea,.modal select,
  .community-composer textarea,.gca-rich-editor[contenteditable="true"]{
    font-size:16px!important;
    -webkit-text-size-adjust:100%!important;
  }

  /* Community must never grow wider than the visual viewport when the keyboard
     opens. Keep controls compact but the editor itself at 16px for iOS. */
  body.community-active,body.community-active #community,
  body.community-active .community-v1-shell,
  body.community-active .community-center,
  body.community-active .community-composer-wrap,
  body.community-active .community-composer{width:100%!important;max-width:100vw!important;min-width:0!important;overflow-x:hidden!important}
  body.community-active .community-composer{grid-template-columns:36px minmax(0,1fr) auto!important}
  body.community-active .community-composer textarea{width:100%!important;min-width:0!important;max-width:100%!important;font-size:16px!important}
  body.community-active .composer-plus{width:36px!important;height:40px!important;font-size:24px!important}
  body.community-active .composer-right{min-width:0!important;gap:0!important}
  body.community-active .composer-right button:not(.send-btn){width:34px!important;min-width:34px!important;height:40px!important;font-size:18px!important}
  body.community-active .composer-right .send-btn{width:38px!important;min-width:38px!important;height:40px!important;padding:0!important;margin-left:2px!important}
  body.community-active .channel{height:43px!important;min-height:43px!important;font-size:13.5px!important}
  body.community-active .message-author-link,body.community-active .message-meta strong{font-size:12px!important}
  body.community-active .message-text{font-size:13.5px!important;line-height:1.42!important}
  body.community-active .message-meta small{font-size:9px!important}
  body.community-active .discord-message{padding-top:5px!important;padding-bottom:6px!important}

  /* Academy lesson editor: eliminate intrinsic-width overflow that looked like
     random page zoom on iPhone. */
  #academyModal,.lesson-editor-modal,.lesson-editor-card,#academyItemForm,
  .gca-rich-editor-shell,.lesson-media-panel,.lesson-resource-fields,.lesson-editor-footer{width:100%!important;max-width:100vw!important;min-width:0!important;overflow-x:hidden!important}
  .lesson-editor-card{height:100dvh!important;max-height:100dvh!important}
  #academyItemForm{max-width:100%!important}
  .lesson-title-field,.lesson-title-field input,.gca-rich-editor,.lesson-media-grid,
  .lesson-resource-fields .form-grid,.lesson-resource-fields label,.lesson-resource-fields input,
  .lesson-media-panel label,.lesson-media-panel input{min-width:0!important;max-width:100%!important}
  .lesson-resource-fields .form-grid{grid-template-columns:1fr!important}
  .lesson-media-grid{grid-template-columns:1fr!important}
  .gca-rich-toolbar{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain}
  .gca-rich-editor{font-size:16px!important;overflow-wrap:anywhere!important}
  .lesson-editor-footer{grid-template-columns:1fr auto!important;gap:9px!important}
  .lesson-add-wrap{grid-column:1/-1!important}
  .lesson-publish-toggle{grid-column:1!important;justify-self:start!important}
  .lesson-cancel-btn{grid-column:2!important;grid-row:2!important}
  .lesson-save-btn{grid-column:1/-1!important;width:100%!important;margin-top:2px!important}
}

/* 2.24.0 — notification status */
.settings-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 11px;border-radius:999px;background:#eef8f1;color:#27845b;font-size:11px;font-weight:700;white-space:nowrap}
@media(max-width:640px){.settings-status-pill{font-size:10px;min-height:30px;padding:0 9px}}
