@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');
:root{--bg:#f7f1e7;--paper:#fffdf9;--paper-soft:#fbf6ed;--ink:#30261d;--muted:#81715f;--line:#e7d9c2;--gold:#d99522;--gold2:#f3c35c;--orange:#d9781d;--green:#45966f;--red:#c94f48;--blue:#4d7eaa;--shadow:0 8px 24px rgba(70,46,20,.07);--shadow2:0 18px 45px rgba(70,46,20,.11);--r:18px}
*{box-sizing:border-box}html{overflow-x:hidden;background:var(--bg)}body{margin:0;min-height:100%;font-family:"Be Vietnam Pro",system-ui,sans-serif;color:var(--ink);background:radial-gradient(circle at 50% -15%,#fffdf9 0,#faf4e9 42%,#f1e5d2 100%);-webkit-text-size-adjust:100%;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}
.topbar{height:74px;position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:18px;padding:8px clamp(16px,3vw,46px);background:rgba(255,253,249,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(231,217,194,.9)}
.brand{display:flex;align-items:center;gap:10px;min-width:230px}.brand img{width:48px;height:48px;object-fit:contain}.brand b{display:block;font:700 23px "Playfair Display";line-height:1;color:#b66e10}.brand span{display:block;margin-top:4px;font-size:10px;color:var(--muted);font-weight:700}.clock{margin-left:auto;font-size:11px;color:var(--muted)}.topStats{display:flex;align-items:center;gap:15px}.topStats div{text-align:right}.topStats small{display:block;color:var(--muted);font-size:8px}.topStats strong{font-size:12px}.iconBtn{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:9px 11px;box-shadow:0 3px 10px rgba(70,46,20,.04)}
.appShell{display:flex;width:100%;max-width:1680px;margin:0 auto;min-height:calc(100vh - 74px)}.sidebar{width:230px;flex:0 0 230px;padding:22px 14px;border-right:1px solid rgba(231,217,194,.8);background:rgba(255,253,249,.34)}.sideHead{font-size:9px;letter-spacing:2px;color:#ae7823;font-weight:800;padding:0 10px 10px}.nav{display:flex;align-items:center;gap:9px;width:100%;border:0;background:transparent;color:#685949;text-align:left;padding:11px 12px;border-radius:12px;margin:3px 0;font-size:11px;font-weight:700}.nav span{margin-left:auto;font-size:9px;color:#a18c75}.nav:hover,.nav.active{background:#fff0ce;color:#9f610d;box-shadow:inset 0 0 0 1px #efd39d}.sideNote{margin:28px 8px 0;padding:14px 4px 0;border-top:1px solid var(--line);font-size:9px;line-height:1.7;color:var(--muted)}
.main{width:100%;min-width:0;max-width:1450px;margin:0 auto;padding:28px clamp(18px,3vw,48px) 80px}.hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:18px;margin-bottom:18px}.card{background:rgba(255,253,249,.88);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px}.heroMain{min-height:238px;display:flex;flex-direction:column;justify-content:center;padding:28px 32px;background:linear-gradient(135deg,#fffdf9 0,#fff6df 58%,#ffebc1 100%);overflow:hidden;position:relative}.heroMain:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-100px;top:-105px;background:rgba(246,196,91,.12)}.eyebrow{font-size:9px;letter-spacing:3px;color:#b67818;font-weight:800}.hero h1{font:700 clamp(31px,4vw,49px) "Playfair Display";margin:8px 0 7px;line-height:1.05}.hero p{max-width:780px;color:var(--muted);line-height:1.65;font-size:12px;margin:0}.heroLogo{display:flex;justify-content:center;align-items:center;min-height:238px;background:linear-gradient(145deg,#fff8e7,#f5d99e)}.heroLogo img{width:min(100%,330px);max-height:210px;object-fit:contain;filter:drop-shadow(0 14px 16px rgba(75,48,10,.13))}
.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-bottom:22px}.kpi{background:rgba(255,253,249,.92);border:1px solid var(--line);border-radius:15px;padding:14px 15px;min-width:0}.kpi small{font-size:9px;color:var(--muted);white-space:nowrap}.kpi strong{display:block;margin-top:5px;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sectionTitle{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:7px 2px 11px}.sectionTitle h2{font:700 25px "Playfair Display";margin:0;line-height:1.1}.sectionTitle span{font-size:9px;color:var(--muted);text-align:right}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.actionCard{position:relative;overflow:hidden;transition:transform .16s,box-shadow .16s}.actionCard:hover{transform:translateY(-2px);box-shadow:var(--shadow2)}.bigIcon{font-size:25px}.actionCard h3{font-size:14px;margin:8px 0 4px}.actionCard p{font-size:10px;color:var(--muted);line-height:1.55;min-height:33px;margin:0 0 12px}.btn{border:1px solid #d39a35;background:linear-gradient(180deg,#f7d27a,#e7ac3c);color:#3e2a10;border-radius:11px;padding:9px 13px;font-size:10px;font-weight:800;box-shadow:0 3px 8px rgba(119,73,15,.08)}.btn:hover{filter:brightness(1.02)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:#fffaf1;border-color:var(--line);color:#6e5b46;box-shadow:none}.btn.danger{background:#fff0ed;border-color:#edc1bb;color:#a83e38}.btn.blue{background:#edf5fc;border-color:#c8d9e8;color:#3e6e9d}.btn.wide{width:100%}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tableWrap{overflow:auto;border:1px solid var(--line);border-radius:13px}.table{width:100%;border-collapse:collapse;min-width:640px;background:var(--paper)}.table th,.table td{padding:10px 8px;text-align:left;border-bottom:1px solid var(--line);font-size:10px}.table th{color:var(--muted);font-size:8px;letter-spacing:.4px}.progress{height:8px;background:#eee3cf;border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--orange));border-radius:99px}.pill{display:inline-flex;padding:5px 8px;border-radius:99px;background:#fff1d3;font-size:8px;font-weight:800;color:#a46b14}.good{color:var(--green)}.bad{color:var(--red)}.info{color:var(--blue)}.timeline{display:flex;gap:9px;overflow:auto}.event{min-width:190px;background:#fff7e8;border:1px solid var(--line);border-radius:13px;padding:12px}.event b{font-size:11px}.event small{display:block;color:var(--muted);font-size:9px;line-height:1.5;margin-top:5px}.doc{background:#fffdf7;border:2px solid #dfc487;border-radius:10px;padding:24px;position:relative;box-shadow:var(--shadow)}.doc h2{text-align:center;font:700 23px "Playfair Display"}.doc:after{content:"ĐÃ PHÊ DUYỆT";position:absolute;right:15px;bottom:15px;border:2px solid #b9433b;color:#b9433b;transform:rotate(-8deg);padding:5px 8px;font-size:8px;font-weight:800;opacity:.8}.signature{font-family:cursive;color:#164f99;font-size:25px}.seal{width:56px;height:56px;border:2px solid #b9433b;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#b9433b;text-align:center;font-size:8px;font-weight:800}
.modalBack{position:fixed;inset:0;z-index:200;background:rgba(38,27,15,.48);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:16px}.modal{width:min(680px,100%);max-height:91dvh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 30px 80px rgba(0,0,0,.22)}.modal h2{font:700 23px "Playfair Display";margin:0 0 8px}.modal p{font-size:10px;line-height:1.65;color:var(--muted)}.field{margin:10px 0}.field label{display:block;font-size:9px;font-weight:800;color:#6b5a47;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;border:1px solid #dfd0b7;background:#fffaf0;border-radius:10px;padding:10px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#d9a143;box-shadow:0 0 0 3px rgba(217,161,67,.12)}.field textarea{min-height:90px;resize:vertical}.toast{position:fixed;z-index:300;right:18px;top:90px;background:#34271b;color:#fff;border-radius:13px;padding:11px 14px;font-size:10px;box-shadow:0 15px 35px rgba(0,0,0,.22);animation:toastIn .2s ease;max-width:360px}@keyframes toastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.notice{padding:12px;border-radius:12px;background:#fff5dc;border:1px solid #ecd39f;font-size:9px;line-height:1.55}.mobileNav{display:none}
.authBack{position:fixed!important;inset:0!important;z-index:9999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;background:radial-gradient(circle at 50% 10%,rgba(255,247,225,.82),rgba(45,31,18,.67) 72%),rgba(44,31,18,.58)!important;backdrop-filter:blur(13px)!important;overflow:auto}.authCard{width:min(430px,100%);max-height:calc(100dvh - 48px);overflow:auto;margin:auto;background:rgba(255,253,248,.98);border:1px solid #eadcc4;border-radius:26px;padding:26px 28px 24px;box-shadow:0 35px 100px rgba(0,0,0,.28);text-align:center}.authLogoWrap{display:flex;justify-content:center;align-items:center;height:116px;margin:-3px auto 5px}.authLogo{display:block!important;width:112px!important;height:112px!important;max-width:42vw;object-fit:contain!important;filter:drop-shadow(0 12px 20px rgba(95,58,12,.17))}.authCard h1{font:700 30px "Playfair Display";margin:0;color:#b56e11}.authCard p{margin:4px 0 19px;color:#7d6d59;font-size:11px}.authTabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#f4ead8;padding:5px;border-radius:13px;margin-bottom:16px}.authTabs button{border:0;background:transparent;padding:10px;border-radius:9px;color:#786754;font-weight:700;font-size:10px}.authTabs button.active{background:#fffdf8;color:#a86612;box-shadow:0 2px 8px rgba(70,44,15,.08)}.authCard .field{text-align:left}.authCard .field input{min-height:44px}.authSubmit{min-height:45px}.authCard small{display:block;color:#b0443e;margin-top:10px;min-height:18px;font-size:9px}.authOpen{overflow:hidden}.authOpen .topbar,.authOpen .appShell,.authOpen .mobileNav{visibility:hidden;pointer-events:none}.authOpen #toastLayer{display:none}
.profileHero{display:flex;align-items:center;gap:18px;background:linear-gradient(135deg,#fffdf8,#ffedc5);margin-bottom:12px}.profileHero h1{font:700 32px "Playfair Display";margin:8px 0 3px;color:#a9630d}.profileHero p{margin:4px 0;color:var(--muted)}.avatar{width:82px;height:82px;flex:0 0 82px;border-radius:24px;background:linear-gradient(145deg,#f8d37c,#e9a83b);display:grid;place-items:center;font-size:42px;box-shadow:0 12px 25px rgba(100,60,10,.16)}.inlineInput,.socialCompose select{border:1px solid var(--line);background:#fffaf0;border-radius:10px;padding:9px 11px;min-width:0;outline:none}.socialRow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--line);font-size:10px}.socialRow span{color:var(--muted)}.messageList{display:flex;flex-direction:column;gap:7px;margin-top:12px;max-height:430px;overflow:auto}.message{align-self:flex-start;max-width:82%;background:#fff5df;border:1px solid var(--line);border-radius:13px 13px 13px 4px;padding:9px 11px;font-size:10px;line-height:1.5}.message.mine{align-self:flex-end;background:#fff0cd;border-radius:13px 13px 4px 13px}.message small{color:var(--muted);font-size:8px}.socialCompose{margin-top:10px}.socialCompose select{flex:0 1 210px}.socialCompose .inlineInput{flex:1 1 220px}.reportRow{padding:10px 0;border-bottom:1px solid var(--line);font-size:9px;line-height:1.55}.adminKpis .kpi{background:#fffaf0}
@media(max-width:1120px){.sidebar{width:205px;flex-basis:205px}.main{padding-left:20px;padding-right:20px}.hero{grid-template-columns:1fr 270px}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.topbar{height:64px;padding:7px 10px;gap:8px}.brand{min-width:0}.brand img{width:42px;height:42px}.brand b{font-size:18px}.brand span{font-size:8px}.clock{display:none}.topStats{margin-left:auto;gap:6px}.topStats div{display:none}.iconBtn{padding:8px}.sidebar{display:none}.main{padding:12px 10px calc(94px + env(safe-area-inset-bottom));width:100%;}.hero{display:block;margin-bottom:10px}.heroMain{min-height:195px;padding:20px 18px;border-radius:17px}.heroLogo{display:none}.hero h1{font-size:30px}.hero p{font-size:10px}.card{padding:14px;border-radius:16px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:18px}.kpi{padding:11px 12px}.kpi small{font-size:8px}.kpi strong{font-size:15px}.sectionTitle{margin-top:5px}.sectionTitle h2{font-size:21px}.sectionTitle span{font-size:8px}.grid{grid-template-columns:1fr;gap:9px}.actionCard{padding:14px}.actionCard h3{font-size:13px}.actionCard p{font-size:9px;min-height:0;margin-bottom:10px}.bigIcon{font-size:24px}.btn{font-size:9px;padding:9px 11px;min-height:40px}.timeline{margin-bottom:4px}.event{min-width:175px}.tableWrap{margin-left:-2px;margin-right:-2px}.table{min-width:560px}.modalBack{padding:10px}.modal{max-height:calc(100dvh - 20px);border-radius:17px;padding:16px}.authBack{padding:12px!important}.authCard{width:min(420px,100%);max-height:calc(100dvh - 24px);padding:20px 16px 18px;border-radius:21px}.authLogoWrap{height:90px}.authLogo{width:88px!important;height:88px!important}.authCard h1{font-size:27px}.authCard p{font-size:10px;margin-bottom:13px}.authTabs{margin-bottom:12px}.field{margin:8px 0}.field input,.field select,.field textarea{min-height:43px}.mobileNav{display:grid;position:fixed;left:7px;right:7px;bottom:max(7px,env(safe-area-inset-bottom));z-index:80;grid-template-columns:repeat(5,1fr);background:rgba(255,253,248,.97);border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 38px rgba(60,39,16,.18);padding:6px 3px;backdrop-filter:blur(14px)}.mobileNav button{border:0;background:transparent;color:#766553;padding:4px 2px;font-size:18px;line-height:1}.mobileNav button span{display:block;font-size:7px;margin-top:4px;white-space:nowrap}.mobileNav button.active{color:#b16c12;font-weight:800}.profileHero{padding:13px;gap:12px}.profileHero h1{font-size:25px}.avatar{width:65px;height:65px;flex-basis:65px;font-size:32px;border-radius:19px}.socialCompose{display:grid;grid-template-columns:1fr;gap:7px}.socialCompose select,.socialCompose .inlineInput{width:100%;min-width:0}.socialCompose button{width:100%}.message{max-width:92%}}
@media(min-width:761px) and (max-width:1120px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* v2.4.4-leaderboard */
.leaderboardBtn{font-size:20px}
#leaderboardRoot{position:fixed;inset:0;z-index:99999}
.lb-back{position:absolute;inset:0;background:rgba(35,25,15,.48);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:22px}
.lb-panel{width:min(920px,100%);max-height:min(88vh,900px);overflow:auto;background:#fffaf1;border:1px solid #ead7b7;border-radius:28px;box-shadow:0 30px 90px rgba(45,30,15,.25);padding:28px;color:#3b2c20;position:relative}
.lb-x{position:absolute;right:18px;top:16px;border:0;background:#f6ead7;border-radius:50%;width:42px;height:42px;font-size:28px;cursor:pointer;color:#5d4732}
.lb-kicker{font-size:12px;font-weight:800;letter-spacing:.18em;color:#b87510}.lb-head h2{font-size:34px;margin:7px 0 4px}.lb-head p{margin:0;color:#8b765e}
.lb-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 14px}.lb-tab{border:1px solid #e5d2b2;background:#fffdf9;border-radius:999px;padding:10px 15px;font-weight:700;color:#765f47;cursor:pointer}.lb-tab.active{background:#f1b53e;color:#3b2c20;border-color:#d89517}
.lb-status{font-size:13px;color:#8b765e;margin:8px 2px 12px}.lb-list{display:grid;gap:10px}
.lb-row{display:grid;grid-template-columns:62px 48px 1fr auto;align-items:center;gap:12px;padding:14px 16px;background:#fffdf9;border:1px solid #ead9bc;border-radius:18px}.lb-row.top3{background:#fff3d7}
.lb-rank{font-size:20px;font-weight:900;text-align:center}.lb-avatar{width:44px;height:44px;border-radius:14px;background:#f4e6cd;display:grid;place-items:center;font-size:22px}
.lb-main{min-width:0;display:flex;flex-direction:column;gap:2px}.lb-main strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-main span,.lb-main small{font-size:12px;color:#8b765e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-value{text-align:right}.lb-value strong{display:block;font-size:17px}.lb-value span{font-size:11px;color:#8b765e}
@media(max-width:640px){.lb-back{padding:10px}.lb-panel{padding:20px 12px 16px;border-radius:22px;max-height:92vh}.lb-head{padding-right:38px}.lb-head h2{font-size:27px}.lb-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.lb-tab{white-space:nowrap;padding:9px 12px;font-size:12px}.lb-row{grid-template-columns:40px 40px 1fr;gap:8px;padding:11px 9px}.lb-value{grid-column:3;text-align:left;margin-top:-2px}.lb-value strong{font-size:14px}.lb-value span{font-size:10px}.lb-main strong{font-size:14px}.lb-main span,.lb-main small{font-size:11px}.lb-rank{font-size:16px}.lb-avatar{width:38px;height:38px;border-radius:12px}}

.profileControls{margin:14px 0;display:flex;gap:10px;flex-wrap:wrap}
.profileHero .avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}

.profileStats{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.profileStats span{background:#fff8e9;border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-size:9px;color:var(--muted)}.profileStats b{color:var(--ink)}.avatarImage{overflow:hidden}.avatarImage img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
@media(max-width:760px){.profileStats{gap:5px}.profileStats span{font-size:8px;padding:5px 7px}}
/* Startup V2.8 extension */
#v280Open,#v280Legacy{display:block;width:calc(100% - 16px);margin:8px;background:#173b65;color:white;border:0;border-radius:12px;padding:11px;font-weight:700;cursor:pointer}
#v280Legacy{background:#526579}
#v280Panel{display:none;position:fixed;z-index:3000;inset:5% max(2%,calc((100% - 900px)/2));background:#fffaf1;color:#233046;border:1px solid #c7d0da;border-radius:16px;box-shadow:0 20px 70px #0007;overflow:hidden;flex-direction:column;font-size:14px}
#v280Panel.open{display:flex}.v280-head{display:flex;justify-content:space-between;align-items:center;padding:14px;background:#193b62;color:#fff}.v280-head button{background:transparent;color:white;border:0;font-size:22px;cursor:pointer}.v280-tabs{display:flex;gap:4px;overflow:auto;padding:8px;border-bottom:1px solid #ddd}.v280-tabs button{white-space:nowrap;padding:8px;border:0;border-radius:8px;background:#e8eaf0;cursor:pointer}.v280-tabs button.selected{background:#1a527f;color:white}.v280-body{overflow:auto;padding:18px;flex:1}.v280-body h3{margin:0 0 14px}.v280-field{display:block;margin:10px 0;font-weight:600}.v280-field input,.v280-field textarea,.v280-body select{display:block;width:100%;max-width:100%;padding:10px;border:1px solid #bdc6d0;border-radius:8px;background:white;color:#223;box-sizing:border-box;margin:5px 0}.v280-btn{padding:9px 12px;margin:5px 5px 5px 0;border:0;background:#215b91;color:white;border-radius:8px;cursor:pointer}.v280-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.v280-cards article,.v280-entry{padding:12px;border:1px solid #d5dce3;border-radius:10px;margin:8px 0;background:white}.v280-tag{display:inline-block;padding:3px 8px;margin:3px;border-radius:20px;background:#dcebf8;font-size:11px}
#v280Chat{position:fixed;right:18px;bottom:16px;width:54px;height:54px;border:0;border-radius:50%;background:#2266a2;color:white;z-index:2500;box-shadow:0 4px 18px #0006;font-size:24px;touch-action:none;cursor:grab}#v280ChatBox{display:none;position:fixed;right:16px;bottom:80px;width:min(370px,calc(100vw - 32px));height:390px;z-index:2600;background:#fff;border:1px solid #ccd4dd;box-shadow:0 10px 35px #0005;border-radius:14px;overflow:hidden;flex-direction:column}#v280ChatBox.open{display:flex}#v280ChatBox header{padding:12px;background:#204b77;color:white;display:flex;justify-content:space-between}#v280ChatBox header button{background:none;color:white;border:0;font-size:22px}#v280Messages{overflow:auto;flex:1;padding:12px;font-size:13px}#v280Messages p{overflow-wrap:anywhere;margin:7px 0}#v280ChatForm{display:flex;padding:8px;border-top:1px solid #ddd}#v280ChatText{flex:1;min-width:0;padding:9px}#v280ChatForm button{background:#215b91;color:white;border:0;padding:8px}
@media(max-width:600px){#v280Panel{inset:2% 1%;border-radius:10px}.v280-body{padding:12px}#v280Open,#v280Legacy{font-size:12px}}
.v280-signatures{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px;text-align:center}.v280-signature{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;font-size:12px}.v280-signature small{font-size:10px}.v280-signature em{font-family:cursive;font-size:22px;color:#254f8b;overflow-wrap:anywhere}.v280-signature strong{overflow-wrap:anywhere}.v280-stamp{width:85px;height:85px;border:3px double #bd2525;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;color:#bd2525;font-size:10px;font-weight:800;transform:rotate(-12deg);line-height:1.5}
/* V2.8 enhancements */
.v280-upload{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}.v280-upload input{max-width:230px}.v280-entry{overflow-wrap:anywhere}.v280-note{font-size:12px;opacity:.8}.v280-list{max-height:280px;overflow:auto}

/* V2.8 mobile launcher */
@media (max-width:760px) {
  #v280Open {
    display:block !important;
    position:fixed;
    top:76px;
    right:12px;
    z-index:90;
    width:auto;
    max-width:calc(100vw - 24px);
    margin:0;
    padding:10px 14px;
    border-radius:12px;
    background:#173b65;
    color:#fff;
    font-size:12px;
    box-shadow:0 5px 18px rgba(0,0,0,.18);
  }
}

/* V2.8 mobile menu grid */
@media (max-width:760px) {
  #v280Panel .v280-tabs {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    overflow:visible;
    padding:12px;
    flex-shrink:0;
  }

  #v280Panel .v280-tabs button {
    white-space:normal;
    overflow-wrap:anywhere;
    min-width:0;
    min-height:52px;
    padding:9px 5px;
    font-size:12px;
    line-height:1.35;
    text-align:center;
  }
}
/* V2.9 integrated mobile navigation */
@media(max-width:760px){
 #v280Open{display:none!important}
 .mobileNav{display:flex!important;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;justify-content:flex-start;gap:3px}
 .mobileNav button{flex:0 0 67px;min-width:67px}
}
#v290Root{display:none;position:fixed;z-index:3100;inset:3% max(1%,calc((100% - 900px)/2));background:#fffaf1;border:1px solid #d8d1c5;border-radius:15px;box-shadow:0 18px 70px #0007;flex-direction:column;overflow:hidden;color:#243248}
#v290Root.open{display:flex}
.v290-head{display:flex;justify-content:space-between;align-items:center;background:#173b65;color:white;padding:14px}
.v290-head button{background:none;border:0;color:white;font-size:20px}
.v290-content{overflow-y:auto;padding:14px;flex:1}
.v290-card{background:white;border:1px solid #ddd;border-radius:12px;margin:10px 0;padding:13px;overflow-wrap:anywhere}
.v290-card h3{margin:0 0 10px}
.v290-card textarea,.v290-card input:not([type=radio]),.v290-card select{display:block;box-sizing:border-box;width:100%;padding:10px;margin:8px 0;border:1px solid #b9c4cf;border-radius:8px}
.v290-card button{background:#215b91;color:white;border:0;border-radius:9px;padding:10px 12px;margin:4px}
.v290-tag{display:inline-block;padding:5px 9px;border-radius:16px;background:#e7eef9;margin:3px}
.v290-logo{height:38px;width:38px;object-fit:contain;vertical-align:middle}
.v290-letter{white-space:pre-line;line-height:1.7}
@media(max-width:760px){#v290Root{inset:2% 1%}}

.v290-review-featured{border:2px solid #d7b36b;border-radius:14px;padding:14px;margin:12px 0;background:linear-gradient(145deg,#fff9e8,#fffdf7)}.v290-review-featured h4,.v290-review-form h4{margin:0 0 10px;color:#87520c}.v290-review-featured article{padding:10px 0;border-top:1px solid #ead9b7}.v290-review-form,.v290-candidate{border:1px solid #e7d7bd;border-radius:12px;padding:14px;margin:12px 0;background:#fffdf8}.v290-review-form textarea,.v290-content textarea,.v290-content input,.v290-content select{box-sizing:border-box;width:100%;margin:6px 0 10px;padding:12px;border:1px solid #d7c4a5;border-radius:10px;font:inherit}.v290-content button{border:1px solid #d7c4a5;border-radius:10px;padding:10px 13px;background:#fff7e7;color:#593c17;font-weight:700;margin:4px;cursor:pointer}.v290-candidate-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.v290-letter{white-space:pre-line}@media(max-width:600px){.v290-candidate-actions{grid-template-columns:1fr}.v290-content{padding:14px}}
/* STARTUP_UI2D_REFRESH_BEGIN — presentation only; no gameplay or API changes */
:root{
 --ui2d-lift:0 4px 0 rgba(111,73,20,.16),0 7px 16px rgba(70,46,20,.09);
 --ui2d-lift-hover:0 6px 0 rgba(111,73,20,.14),0 12px 22px rgba(70,46,20,.13);
 --ui2d-inset:inset 0 1px 0 rgba(255,255,255,.88);
}
button,.btn,.iconBtn,.nav,.mobileNav button,.v280-btn,.v280-tabs button,.lb-tab{
 transition:transform .16s ease,box-shadow .16s ease,filter .16s ease,background-color .16s ease;
 -webkit-tap-highlight-color:transparent;
}
.btn,.iconBtn,.v280-btn,.lb-tab{
 box-shadow:var(--ui2d-lift),var(--ui2d-inset);
 transform:translateY(0);
}
.btn{border-width:1px;border-bottom-width:2px;border-bottom-color:#c58a27;}
.btn:hover,.iconBtn:hover,.v280-btn:hover,.lb-tab:hover{
 transform:translateY(-2px);box-shadow:var(--ui2d-lift-hover),var(--ui2d-inset);filter:saturate(1.04);
}
.btn:active,.iconBtn:active,.v280-btn:active,.lb-tab:active{
 transform:translateY(2px);box-shadow:0 1px 0 rgba(111,73,20,.16),inset 0 2px 4px rgba(90,57,15,.10);
}
.btn.secondary{border-bottom:2px solid #dfceb0;box-shadow:0 3px 0 rgba(91,66,34,.07),inset 0 1px 0 #fff;}
.btn.danger{border-bottom:2px solid #dda59d;box-shadow:0 3px 0 rgba(150,55,48,.08),inset 0 1px 0 #fff;}
.btn.blue{border-bottom:2px solid #b4cadd;box-shadow:0 3px 0 rgba(54,94,133,.08),inset 0 1px 0 #fff;}
.iconBtn{border-bottom-width:2px;border-bottom-color:#dfceb0;}
.nav{border:1px solid transparent;}
.nav:hover{transform:translateY(-1px);background:linear-gradient(180deg,#fff7e5,#ffedc6);box-shadow:0 3px 0 rgba(154,104,24,.10),inset 0 1px 0 #fff;border-color:#f0d7a5;}
.nav.active{background:linear-gradient(180deg,#fff4d7,#ffe7ad);border:1px solid #e8c77e;box-shadow:0 3px 0 rgba(154,104,24,.12),inset 0 1px 0 #fff;}
.card,.kpi,.actionCard,.event,.doc,.v280-cards article,.v280-entry,.v290-card{
 box-shadow:0 3px 0 rgba(104,72,31,.045),0 8px 20px rgba(70,46,20,.055),inset 0 1px 0 rgba(255,255,255,.8);
}
.actionCard{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.actionCard:hover{transform:translateY(-3px);border-color:#e0bd75;box-shadow:0 5px 0 rgba(104,72,31,.055),0 14px 28px rgba(70,46,20,.12),inset 0 1px 0 #fff;}
input,select,textarea{transition:border-color .16s ease,box-shadow .16s ease;}
input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(217,153,42,.13)!important;}
.mobileNav{box-shadow:0 5px 0 rgba(104,72,31,.07),0 16px 38px rgba(60,39,16,.19),inset 0 1px 0 rgba(255,255,255,.95);}
.mobileNav button{border-radius:11px;min-height:42px;}
.mobileNav button:active{transform:translateY(2px);background:#fff0cc;}
.mobileNav button.active{background:linear-gradient(180deg,#fff4d7,#ffe7ad);box-shadow:0 2px 0 rgba(154,104,24,.12),inset 0 1px 0 #fff;}
#v280Open,#v280Legacy{box-shadow:0 4px 0 rgba(10,35,61,.2),0 8px 18px rgba(20,45,72,.15),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .16s ease,box-shadow .16s ease;}
#v280Open:active,#v280Legacy:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(10,35,61,.2);}
.v280-tabs button,.v290-head button,.lb-x{box-shadow:0 2px 0 rgba(40,35,28,.08),inset 0 1px 0 rgba(255,255,255,.8);}
.pill{box-shadow:inset 0 1px 0 rgba(255,255,255,.9);border:1px solid rgba(210,159,66,.18);}
@media(max-width:760px){
 .main{padding-top:18px;padding-bottom:105px;}
 .card{padding:16px;border-radius:17px;}
 .btn{min-height:40px;padding:10px 14px;}
 .nav,.mobileNav button{touch-action:manipulation;}
 .mobileNav{padding:7px 4px;}
}
@media(prefers-reduced-motion:reduce){
 button,.btn,.iconBtn,.nav,.mobileNav button,.v280-btn,.v280-tabs button,.lb-tab,.actionCard{transition:none!important;}
}
/* STARTUP_UI2D_REFRESH_END */


/* V3.2 live-world status: display-only; world state continues syncing automatically. */
.liveWorldStatus{cursor:default!important;pointer-events:none!important;user-select:none;gap:9px;box-shadow:0 4px 0 rgba(112,76,24,.16),0 8px 18px rgba(73,49,18,.08)}
.liveWorldDot{width:9px;height:9px;display:inline-block;border-radius:50%;background:#25a56a;box-shadow:0 0 0 4px rgba(37,165,106,.13);animation:startupLivePulse 1.8s ease-in-out infinite;flex:0 0 auto}
@keyframes startupLivePulse{0%,100%{opacity:1;box-shadow:0 0 0 4px rgba(37,165,106,.13)}50%{opacity:.72;box-shadow:0 0 0 7px rgba(37,165,106,.06)}}
@media(prefers-reduced-motion:reduce){.liveWorldDot{animation:none}}

/* Fix oversized avatars in community friend rows */
.socialRow{min-width:0}
.socialRow > img{
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  max-width:56px!important;
  flex:0 0 56px!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:50%!important;
  overflow:hidden;
  background:#fff7e7;
}
@media(max-width:600px){
  .socialRow > img{
    width:48px!important;height:48px!important;
    min-width:48px!important;max-width:48px!important;
    flex-basis:48px!important;
  }
}

/* V3.3 library taxonomy */
.v33-library-controls{margin:12px 0 18px}.v33-library-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.v33-library-tabs button{border:1px solid #d5b983;border-radius:999px;padding:9px 12px;background:#fffaf0;color:#6e4c19;font-weight:650}.v33-library-tabs button.active{background:#8d5b13;color:#fff}.v33-library-filters{display:flex;gap:10px;flex-wrap:wrap}.v33-library-filters label{flex:1;min-width:160px}.v33-library-filters select{width:100%;max-width:100%}

/* V3.3 reviewer identity — no avatar/profile layout replacement */
.v33-reviewer-lens{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-left:9px;border:1px solid #d5b983;border-radius:50%;background:#fff8e9;color:#704915;width:34px;height:34px;cursor:pointer;font-size:17px}
.v33-reviewer-stats{margin:8px 0 14px;padding:14px;border:1px solid #d5b983;border-radius:14px;background:#fffaf0;color:#3b3027;max-width:360px}
.v33-reviewer-stats p{margin:8px 0}.v33-reviewer-stats button{padding:7px 12px;border-radius:8px;border:1px solid #d5b983;background:white}
