/* Shared visual layer. Existing page IDs and business scripts remain intact. */
body.public-v3,body.admin-v3{--bg:#11100e;--card:#191713;--text:#e8dfcc;--muted:#a59b88;--gold:#d3b27b;--line:#c5a26335;--accent:#d3b27b;background:#11100e;color:#e8dfcc}body.public-v3{background:radial-gradient(ellipse at 80% 0%,#60432113,transparent 50%),#11100e}.public-v3 h1,.public-v3 h2,.public-v3 h3,.public-v3 h4{font-family:'STXingkai','KaiTi','SimSun',serif;font-weight:400}.public-v3 .wrap{width:min(1240px,calc(100% - 64px))}.public-v3 .nav{background:#10100ef2;backdrop-filter:blur(14px);border-bottom:1px solid #b9995a66}.public-v3 .navin{min-height:70px;gap:24px}.public-v3 .brand{font:25px 'KaiTi',serif;color:#dfbf80}.public-v3 .brand small{font:10px 'Microsoft YaHei',sans-serif;color:#a99570;letter-spacing:3px}.public-v3 .links{gap:25px}.public-v3 .links a{font-size:12px;color:#c2b8a5}.public-v3 .links a.current{color:#f0d19a;border-bottom:1px solid #caa96e;padding-bottom:7px}.public-v3 .btn,.admin-v3 .btn{border-radius:4px;border-color:#bd9a6260;background:#191610;color:#d5bc8d;box-shadow:none;font-size:12px}.public-v3 .btn:hover,.admin-v3 .btn:hover{border-color:#e2bf84;background:#32281a}.public-v3 .btn.primary,.admin-v3 .btn.primary{background:linear-gradient(115deg,#b9965c,#e4c991,#b5945b);border-color:#d5b37b;color:#30200f}.public-v3 .page-hero{padding:68px 0 40px;background:linear-gradient(90deg,#10100fef,#10100f7a),linear-gradient(0deg,#11100e,transparent),url('/assets/hero-city.webp') center 40%/cover;border-bottom:1px solid #c4a26433;position:relative}.public-v3 .page-hero h1{font-size:58px;letter-spacing:6px;line-height:1.2;color:#eed29d;margin:16px 0}.public-v3 .page-hero p{max-width:660px;font-size:13px;color:#c0b59f;line-height:1.9}.public-v3 .eyebrow{color:#c9a76b;font-size:10px;letter-spacing:3px}.public-v3 .page-content{padding:35px 0 70px;min-height:400px}.public-v3 .ink-card,.public-v3 .card{background:linear-gradient(135deg,#241e1566,transparent),#171611;border:1px solid #ba965d50;border-radius:5px;box-shadow:0 8px 25px #0002}.public-v3 .ink-card{padding:27px}.public-v3 .ink-card h4{font-size:25px;letter-spacing:1px;color:#e6c995;margin:15px 0}.public-v3 .ink-card p{font-size:13px;color:#b5aa96;line-height:1.9}.public-v3 .pill,.admin-v3 .pill{border:1px solid #b8976145;color:#d3b781;background:#cda86b0b;border-radius:3px;font-size:10px}.public-v3 input,.public-v3 select,.public-v3 textarea,.admin-v3 input,.admin-v3 select,.admin-v3 textarea{background:#11100e;border:1px solid #b99a623e;border-radius:4px;color:#e0d3ba;outline:none;font-size:13px;min-width:0}.public-v3 input:focus,.public-v3 select:focus,.admin-v3 input:focus,.admin-v3 textarea:focus,.admin-v3 select:focus{border-color:#d2b076;box-shadow:0 0 0 2px #d2b07616}.public-v3 input[type=checkbox],.admin-v3 input[type=checkbox]{accent-color:#caaa72}.public-v3 .empty{border:1px dashed #b99a6244;background:#c3a26605;border-radius:5px;padding:45px 20px;color:#a89b82}.public-v3 .roster-stats{margin-top:30px;gap:16px}.public-v3 .roster-stat{border:1px solid #b99a624a;background:#10100ebb;border-radius:4px;padding:20px 24px}.public-v3 .roster-stat span{font-size:11px;color:#b1a58d;letter-spacing:1px}.public-v3 .roster-stat b{font:31px/1.5 'Georgia','SimSun',serif;color:#e4c38b}.public-v3 .roster-toolbar{padding:18px;border:1px solid #b99a6240;border-radius:5px;background:#18150f;gap:15px;margin-bottom:22px}.public-v3 .roster-search{flex:1;max-width:620px}.public-v3 .roster-search input{padding:12px}.public-v3 .roster-head{padding:12px 20px;background:#b9975f0d;color:#a99470;font-size:11px}.public-v3 .roster-row{border:1px solid #b99a6236;border-radius:4px;margin-top:9px;background:linear-gradient(90deg,#c2a06608,transparent),#151410;padding:18px 20px;transition:background .2s,border .2s}.public-v3 .roster-row:hover{background:#211c13;border-color:#c7a46b}.public-v3 .roster-avatar{border-radius:5px;border:1px solid #caaa7055;width:58px;height:58px}.public-v3 .roster-person h4{font-size:22px;margin-bottom:4px}.public-v3 .roster-person small{font-size:10px;color:#948a76}.public-v3 .roster-role span{border-color:#b99a6238;background:#c7a36d08;border-radius:3px;color:#bfa57a;font-size:10px}.public-v3 .roster-value b{font:22px 'Georgia','SimSun',serif;color:#e0c38d}.public-v3 .roster-value small{font-size:9px;color:#91846b}.public-v3 .mini-bar em,.public-v3 .battle-progress i{background:linear-gradient(90deg,#8f7342,#ddbf7d)}.public-v3 .roster-pager{margin-top:28px;justify-content:center;gap:20px}.public-v3 .roster-pager span{font-size:11px;color:#a89a80}.public-v3 .battle-summary{gap:15px;margin-bottom:26px}.public-v3 .battle-card{position:relative;overflow:hidden}.public-v3 .battle-count{font:26px 'Georgia',serif;color:#e7c88e}.public-v3 .battle-progress{background:#aa874b12;height:5px;border-radius:1px}.public-v3 .battle-names span{border:1px solid #b99a6238;border-radius:3px;color:#bba784;background:#c7a46c06;font-size:11px}.public-v3 .battle-roster-title{color:#bca982}.public-v3 .profile-hero{background:#18170f;border:1px solid #b9995a50;border-radius:5px;overflow:hidden}.public-v3 .profile-cover{background:linear-gradient(0deg,#15130ffa,#15130f44),url('/assets/hero-city.webp') center 40%/cover}.public-v3 .profile-main{padding:30px;position:relative}.public-v3 .profile-main h1{font-size:45px;color:#e9c98f}.public-v3 .profile-avatar{border:2px solid #d2af77;border-radius:5px;box-shadow:0 0 0 5px #161511}.public-v3 .profile-tags span{border:1px solid #b99a6244;border-radius:3px;color:#c3a575;background:#c3a57508;font-size:11px}.public-v3 .profile-metrics{gap:15px;margin:22px 0}.public-v3 .online-pill{background:#56613f22;color:#c8cf9b;border:1px solid #97a06b55;border-radius:3px}.public-v3 .profile-data span{padding:10px 0;border-bottom:1px solid #b99a6220;font-size:12px}.public-v3 .profile-data b{color:#dcc498}.public-v3 .kungfu-item{background:#0f100c;border-color:#b99a6236;border-radius:4px}.public-v3 .kungfu-item img{border-radius:3px}.public-v3 .lottery-card{min-height:250px;display:flex;flex-direction:column;justify-content:space-between}.public-v3 .lottery-card .btn{margin-top:20px;align-self:flex-start}.public-v3 .lottery-ended{opacity:.8}.public-v3 .lottery-section h3{color:#e8c792;font-size:28px}.public-v3 .modalbox,.admin-v3 .modalbox{background:#1a1711;border:1px solid #d0ae72;border-radius:6px;box-shadow:0 30px 100px #0008}.public-v3 .modal,.admin-v3 .modal{background:#050505d9;backdrop-filter:blur(6px)}.public-v3 .notice,.admin-v3 .notice{background:#a481400a;border:1px solid #b99a623a;color:#b8a580;border-radius:4px;font-size:12px}.public-v3 .footer{background:#0b0c0b;border-top:1px solid #b99a6236;color:#a39377;font-size:12px;padding:25px 0}.public-v3 .footer-ver{opacity:.5}.public-v3 .tuning-hold{padding:75px 0;min-height:calc(100vh - 70px);background:linear-gradient(90deg,#11100eef,#11100ed9),url('/assets/hero-city.webp') center/cover}.public-v3 .tuning-panel{background:#14130ee8;border:1px solid #b99a6266;border-radius:5px;padding:45px}.public-v3 .tuning-panel h1{font-size:55px;color:#e8c68c}.public-v3 .tuning-panel>p{max-width:700px;color:#b6a98f;font-size:13px}.public-v3 .tuning-road>div{border:1px solid #b99a6244;border-radius:4px;background:#c5a36407;padding:25px}.public-v3 .tuning-road b{font:30px 'Georgia',serif;color:#d0b078}.public-v3 .tuning-road span{color:#dac29a;font-size:14px}.public-v3 .tuning-road small{color:#9c8c70}.news-reading{border-top:1px solid #b99a6236;margin-top:20px;padding-top:14px}.news-reading summary{color:#d4b47b;font-size:12px;cursor:pointer}.news-reading p{white-space:pre-line}.public-menu{display:none!important}.public-v3 :focus-visible,.admin-v3 :focus-visible{outline:2px solid #d2b076;outline-offset:4px}
/* The management workspace favors legibility over cinematic artwork. */
.admin-v3{font:13px/1.7 'Microsoft YaHei',sans-serif}.admin-v3 .admin-shell{grid-template-columns:230px minmax(0,1fr)}.admin-v3 .side{padding:29px 20px;background:linear-gradient(#c3a05f09,transparent),#10100e;border-right:1px solid #b99a6238;display:flex;flex-direction:column}.admin-v3 .side .brand{font:25px 'KaiTi',serif;line-height:1.4;color:#e6c88e;margin-bottom:40px}.admin-v3 .side .brand small{display:block;font:9px 'Microsoft YaHei',sans-serif;color:#948568;letter-spacing:2px;margin-top:10px}.admin-v3 .side button{font-size:12px;border-radius:4px;padding:12px 14px;color:#a69a83;margin:3px 0;border:1px solid transparent;display:flex;align-items:center;gap:13px}.admin-v3 .side button:before{content:'◇';font-size:13px;color:#897245}.admin-v3 .side button.active{background:linear-gradient(90deg,#d4ad6b22,#d4ad6b07);border-color:#b99a6244;color:#e9c98f}.admin-v3 .side button.active:before{color:#e2bd7c}.admin-v3 .side button:hover{background:#caaa7410;color:#e1c08a}.side-footer{margin-top:auto;border-top:1px solid #b99a622a;padding-top:22px;display:flex;flex-direction:column;gap:10px;font-size:9px;color:#807254}.side-footer a{font-size:10px;color:#bea16b}.admin-v3 .main{padding:28px 38px 55px;background:radial-gradient(ellipse at 100% 0%,#c3a05f09,transparent 60%);min-width:0}.admin-context{display:flex;align-items:center;gap:15px;padding-bottom:18px;border-bottom:1px solid #b99a6228;margin-bottom:20px;color:#8e8067;font-size:10px}.admin-context b{font-weight:400;color:#ccae7b}.admin-v3 .topbar{padding-bottom:22px;margin-bottom:28px;border-bottom:1px solid #b99a6228}.admin-v3 #who{font-size:14px;font-weight:400;color:#e1c494}.admin-v3 #roleText{font-size:10px!important;margin-top:4px}.admin-v3 .head{align-items:flex-start;gap:20px;margin-bottom:24px;flex-wrap:wrap}.admin-v3 .head h3{font:30px 'KaiTi',serif;color:#eed19b;letter-spacing:2px;margin:0 0 7px}.admin-v3 .head p{font-size:11px;color:#998c72;margin:0;line-height:1.9}.admin-v3 .card{background:linear-gradient(135deg,#c3a05f08,transparent),#181610;border:1px solid #b99a6236;border-radius:5px;box-shadow:none}.admin-v3 .pad{padding:26px}.admin-v3 .admin-grid{gap:18px}.admin-v3 .kpi{padding:26px;position:relative}.admin-v3 .kpi span{font-size:11px;color:#a39273}.admin-v3 .kpi b{font:34px/1.5 'Georgia','SimSun',serif;color:#e2c38b;margin:10px 0 5px}.admin-v3 .kpi small{font-size:10px;color:#8d8069}.admin-v3 .field{margin-bottom:18px}.admin-v3 .field label{font-size:11px;color:#bba582;margin-bottom:7px}.admin-v3 input,.admin-v3 textarea,.admin-v3 select{padding:10px 12px}.admin-v3 input[type=checkbox]{width:auto;min-height:14px}.admin-v3 .table{font-size:11px}.admin-v3 .table th{font-size:10px;background:#19160f;color:#b29a72;white-space:nowrap;letter-spacing:.5px}.admin-v3 .table td{border-color:#b99a6220;color:#c4b59a;padding:14px 12px}.admin-v3 .table tbody tr:hover{background:#d2ae6c08}.admin-v3 .activity-table thead{background:#19160f}.admin-v3 .table-scroll{max-height:65vh}.admin-v3 .activity-summary{gap:14px;padding:18px}.admin-v3 .activity-summary>div{border-radius:3px;border-color:#b99a6230;background:#c3a05f05}.admin-v3 .activity-summary b{color:#ddbe87;font-weight:400}.admin-v3 .check{border-radius:3px;background:#c3a05f05;border-color:#b99a6236;font-size:11px}.admin-v3 .checkgrid{gap:8px}.admin-v3 .module-row{border-radius:4px;background:#c3a05f05;border-color:#b99a6236}.admin-v3 .toolbar{gap:9px;margin-bottom:15px}.admin-v3 .lot-entry-row{background:#c3a05f05;border-color:#b99a6236;border-radius:3px}.admin-v3 .lot-entry-panel summary{color:#d3b57e}.admin-v3 .battle-roster span{border-color:#b99a6236;border-radius:3px;color:#bea77d}.admin-v3 .modalbox h3{font:24px 'KaiTi',serif;color:#e5c48b}.admin-v3 .modalbox{max-height:88vh;overflow:auto}.admin-shortcuts{margin-top:28px;border:1px solid #b99a6236;padding:25px;background:#181610;border-radius:5px}.admin-shortcuts h4{font:22px 'KaiTi',serif;color:#d9b77c;margin:0 0 8px}.admin-shortcuts p{color:#8d8069;font-size:11px;margin:0 0 20px}.shortcut-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.shortcut-grid button{border:1px solid #b99a6236;background:#c3a05f05;color:#d0b17e;padding:18px 15px;text-align:left;border-radius:4px;cursor:pointer;font-size:12px}.shortcut-grid button small{display:block;font-size:9px;color:#8e7d5e;margin-top:8px}.admin-v3 .admin-grid .kpi{min-width:0;overflow-wrap:anywhere}.home-identity{display:flex;align-items:center;gap:15px}.home-v3 .home-login{width:min(470px,calc(100% - 32px));padding:35px;background:#191610;border:1px solid #d3b27b;color:#e8dfcc}.home-login::backdrop{background:#050505dd;backdrop-filter:blur(7px)}.home-login h2{font:32px 'KaiTi',serif;color:#e8c78e}.home-login>p{font-size:12px;color:#b6a98f}.home-login form{display:flex;flex-direction:column;gap:11px}.home-login label{font-size:11px;color:#bda681}.home-login input{background:#11100e;color:#e8dfcc;border:1px solid #b99a6244;border-radius:3px;padding:12px;font:14px 'Microsoft YaHei',sans-serif;width:100%}.home-login input:focus{outline:1px solid #d3b27b}.home-login button[type=submit]{width:100%}#homeLoginMessage{font-size:12px;color:#d6b477;min-height:20px;margin:0}.recruit-v3{display:flex;align-items:center;justify-content:space-between;gap:30px}.recruit-v3 h2{margin:12px 0}.recruit-v3 p{color:#b6a98f;font-size:12px;white-space:pre-line}.recruit-v3 .gold{font-size:11px}.home-v3 .header .home-identity .text-button{font-size:10px;white-space:nowrap}.home-v3 .header nav{gap:20px}
@media(max-width:1050px){.public-v3 .links{gap:15px}.public-v3 .navin{gap:16px}.public-v3 .navin .actions .btn{font-size:10px;padding:8px 12px}.admin-v3 .admin-shell{grid-template-columns:200px minmax(0,1fr)}.admin-v3 .main{padding:25px}.shortcut-grid{grid-template-columns:repeat(2,1fr)}.admin-v3 .side{padding:25px 15px}.home-v3 .header .home-identity .nav-cta{display:none}}
@media(max-width:800px){.public-v3 .wrap{width:calc(100% - 32px)}.public-v3 .navin{min-height:64px;position:relative;flex-wrap:wrap;padding:12px 0;gap:12px}.public-v3 .navin>.brand{flex:1}.public-menu{display:inline-flex!important;font-size:12px;padding:6px 12px;margin-left:auto}.public-v3 .navin>.links{display:none;width:100%;order:5;background:#11100e;padding:12px 0;border-top:1px solid #b99a6236;flex-wrap:wrap;gap:0}.public-v3 .navin>.links.open{display:flex}.public-v3 .links a{padding:10px 12px;font-size:11px}.public-v3 .links a.current{border:0;color:#e1be7d;background:#c3a05f0d}.public-v3 .navin .actions{margin:0;gap:6px}.public-v3 .navin .actions .btn{font-size:9px;padding:7px 10px}.public-v3 .navin .identity{display:none}.public-v3 .page-hero{padding:42px 0 30px}.public-v3 .page-hero h1{font-size:42px;letter-spacing:4px}.public-v3 .page-hero p{font-size:11px;line-height:1.9}.public-v3 .roster-stats{gap:10px;margin-top:22px}.public-v3 .roster-stat{padding:15px}.public-v3 .roster-stat b{font-size:27px}.public-v3 .page-content{padding:24px 0 45px}.public-v3 .roster-toolbar{padding:14px}.public-v3 .roster-search{max-width:none;width:100%}.public-v3 .roster-filters{width:100%}.public-v3 .roster-filters select{min-width:0;flex:1}.public-v3 .roster-row{padding:15px}.public-v3 .roster-person h4{font-size:20px}.public-v3 .roster-person small{font-size:9px;overflow-wrap:anywhere}.public-v3 .roster-value b{font-size:20px}.public-v3 .profile-main{padding:20px;flex-wrap:wrap}.public-v3 .profile-main h1{font-size:32px}.public-v3 .profile-avatar{width:80px;height:80px}.public-v3 .ink-card{padding:22px}.public-v3 .ink-card h4{font-size:23px}.public-v3 .tuning-hold{padding:40px 0}.public-v3 .tuning-panel{padding:25px}.public-v3 .tuning-panel h1{font-size:42px}.public-v3 .tuning-road{grid-template-columns:1fr 1fr;gap:12px}.public-v3 .tuning-road>div{padding:18px}.public-v3 .tuning-road span{font-size:12px}.public-v3 .tuning-road small{font-size:9px}.admin-v3 .admin-shell{grid-template-columns:1fr}.admin-v3 .side{position:sticky;top:0;z-index:15;height:auto;padding:16px;background:#10100efa;border-right:0;border-bottom:1px solid #b99a6244}.admin-v3 .side .brand{font-size:22px;margin-bottom:14px;display:flex;align-items:center;gap:15px}.admin-v3 .side .brand small{margin:0;font-size:8px;letter-spacing:1px}.admin-v3 .side nav{display:flex;overflow:auto;gap:5px;scrollbar-width:thin}.admin-v3 .side button{min-width:max-content;width:auto;margin:0;font-size:10px;padding:8px 12px;gap:8px}.side-footer{display:none}.admin-v3 .main{padding:20px 16px 40px}.admin-v3 .topbar{margin-bottom:22px;padding-bottom:16px;gap:12px;align-items:flex-start}.admin-v3 .topbar .row{gap:6px;flex-wrap:wrap;justify-content:flex-end}.admin-v3 .topbar .btn{font-size:10px;padding:7px 10px}.admin-v3 .head h3{font-size:27px}.admin-v3 .head p{font-size:10px}.admin-v3 .admin-grid{grid-template-columns:1fr;gap:12px}.admin-v3 .kpi{padding:22px}.admin-v3 .admin-grid .kpi b{font-size:30px}.admin-v3 .pad{padding:19px}.admin-v3 .grid3,.admin-v3 .grid2{grid-template-columns:1fr}.admin-v3 .checkgrid{grid-template-columns:1fr}.admin-v3 .activity-summary{grid-template-columns:1fr 1fr;padding:12px;gap:10px}.admin-v3 .head .toolbar{width:100%;gap:8px}.admin-v3 #activitySearch{width:100%!important;max-width:none!important}.admin-v3 .toolbar input,.admin-v3 .toolbar select{max-width:100%;font-size:11px}.admin-v3 .toolbar .btn{font-size:10px;padding:8px 10px}.admin-v3 .table-scroll{max-height:60vh}.admin-v3 .checkgrid{gap:6px}.admin-v3 .modalbox{padding:20px;max-width:calc(100vw - 24px)}.admin-shortcuts{padding:20px}.shortcut-grid{gap:10px}.shortcut-grid button{padding:15px 12px;font-size:11px}.admin-context{font-size:9px;gap:12px;margin-bottom:17px}.recruit-v3{flex-direction:column;align-items:flex-start}.home-v3 .header .home-identity{gap:8px}.home-v3 .header .home-identity .text-button{font-size:9px}.home-v3 .header{gap:10px}.home-v3 .header .brand{font-size:18px}.home-v3 .header .brand small{font-size:6px}.home-v3 .header .crest{width:24px;height:28px}.home-v3 #menu{padding:3px 8px}}
@media(max-width:400px){.public-v3 .navin>.actions{display:none}.public-v3 .roster-stat{padding:12px}.public-v3 .roster-row{gap:10px}.public-v3 .roster-avatar{width:48px;height:48px}.public-v3 .roster-person h4{font-size:18px}.public-v3 .profile-main{gap:15px}.public-v3 .profile-main h1{font-size:28px}.admin-v3 .activity-summary b{font-size:17px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:800px){.public-v3 .roster-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.public-v3 .roster-person,.public-v3 .roster-role{grid-column:1/-1;min-width:0;max-width:100%}.public-v3 .roster-person>div:last-child{min-width:0}.public-v3 .roster-person small{white-space:normal;overflow-wrap:anywhere}.public-v3 .roster-person h4{white-space:normal;overflow-wrap:anywhere}.public-v3 .roster-value{min-width:0;text-align:left}.public-v3 .roster-value .mini-bar{width:100%}.public-v3 .roster-value small{width:auto}}
@media(max-width:800px){.public-v3 .roster-value{padding-left:0}}
@media(max-width:800px){.admin-v3 .admin-shell{grid-template-columns:minmax(0,1fr)}.admin-v3 .side{min-width:0;max-width:100%}.admin-v3 .side nav{min-width:0;max-width:100%}}
