/* Shared hand-drawn game UI: functional CSS objects, real text and controls. */
:root{--ink:#765b52;--edge:#9b7b6b;--paper:#fff9e9;--shadow:#ceb5a0;--muted:#88736b;font-family:"Hiragino Maru Gothic ProN","PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:#624c45;background:#f8f2e7;background-image:linear-gradient(45deg,#f1e7dc55 25%,transparent 25%,transparent 75%,#f1e7dc55 75%),linear-gradient(45deg,#f1e7dc55 25%,transparent 25%,transparent 75%,#f1e7dc55 75%);background-position:0 0,20px 20px;background-size:40px 40px}
button,a,input,select{outline-offset:4px}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #708fc0}button:not(:disabled):active,.site-primary:active{transform:translateY(3px);box-shadow:none!important}button:disabled{cursor:not-allowed}.section-kicker,.build-tag,.panel-footer,.page-footer,.lobby-hero>div>.section-kicker{display:none!important}h1,h2,h3{color:#654b46;letter-spacing:.2px}.site-heading h1{font-size:29px}.site-heading{margin:6px 0 23px}.site-heading p{color:#8b7063}.site-nav{border:0;gap:10px;padding:12px 3px}.site-nav a{display:flex;align-items:center;gap:7px;background:#fff6dc;border:2px solid var(--edge);border-radius:17px 14px 16px 13px;box-shadow:0 3px #c5ab92;padding:5px 14px 5px 7px;color:#785b4b;font-weight:750;font-size:13px}.site-nav a img{width:42px;height:42px;object-fit:contain}.site-nav a.active{background:#bde5d5;border-color:#709889;box-shadow:0 3px #8dae9f}.site-nav a:nth-child(3n+2):not(.active){background:#f9dfeb}.site-nav a:nth-child(3n):not(.active){background:#e5e4fa}.site-nav a[aria-current=page]:after{content:'✓';font-size:12px}.topbar{border-bottom:0;gap:12px}.brand-mark{border:2px solid var(--edge);box-shadow:0 3px #c5ab92;border-radius:15px 12px 14px 11px}.brand{font-weight:850;color:#765347}.brand small{letter-spacing:1px;color:#9b7b6b}.wallet>div{border:2px solid var(--edge);box-shadow:inset 0 2px #fff9,0 2px #d2b79c;border-radius:22px;padding:6px 13px;min-width:100px}.wallet strong{color:#765347}.wallet small{color:#8e7260}.icon-btn{border:2px solid var(--edge);border-radius:14px;background:#ffebd3;box-shadow:0 3px #c4a68d;color:#876254;min-width:40px;min-height:40px}.icon-btn .ui-art{width:32px;height:32px}.game-shell{border:3px solid #977660!important;box-shadow:0 5px #cbb495,inset 0 0 0 3px #fff!important;border-radius:24px 20px 22px 19px!important}.live-pill{background:#fff9e5;border:2px solid #9da578;color:#72805b;letter-spacing:.5px;font-size:8px}.progress-hud{background:#fff6df;border:2px solid #9e825f;border-radius:14px;box-shadow:0 3px #81633825;color:#80604a}.progress-hud>div:first-child{font-size:10px}.progress-track{height:9px;border:1.5px solid #8f795b;background:#e6d5b1;border-radius:8px}.progress-track>div{background:linear-gradient(#d5e7a1,#a7ce81);border-right:1px solid #89a763}.canvas-btn{border:2px solid #a38c69;box-shadow:0 3px #b7a17d;background:#fff8da;min-width:36px;min-height:36px;border-radius:12px}.auto-btn{border:2px solid #88a187;box-shadow:0 3px #a9bb8c;border-radius:13px;background:#f6ffdf;min-height:38px}.clear-banner{border:3px solid #a08165;box-shadow:0 6px #bea58a;background:#fff8df;border-radius:25px 22px 24px 20px}.clear-banner>span{display:none}.clear-banner button{background:#bde5c9;color:#5f7051;border:2px solid #879a72;box-shadow:0 4px #9aaa7c;font-weight:800}#joystick{border:2px solid #fff9;background:#fff6;box-shadow:0 3px #6c86511a}#joystick-thumb{background:#fffbe5;border:2px solid #d7ddb7}.panel-column{border:3px solid #a1846f!important;border-radius:22px 18px 23px 19px!important;background:#fff5de!important;box-shadow:0 5px #ccb292;scrollbar-color:#c5a888 #f4e5cb;scrollbar-width:thin}.tabs{gap:7px;padding:7px 10px 0;height:57px;border-bottom:2px solid #c1a383;background:transparent}.tabs button{border:2px solid #b39a7e;border-bottom:0;border-radius:13px 13px 0 0;color:#876a54;background:#eee2c9;font-size:12px;font-weight:750;min-height:40px}.tabs button.active{background:#fbdbe5;color:#976575;border-color:#b88b91}.tabs button.active:after{display:none}.tabs button:nth-child(2).active{background:#e0dcf5;color:#7d729e}.tabs button:nth-child(3).active{background:#d7ead7;color:#718f75}.tabs span{background:#fff8;padding:2px 4px}.upgrade{border:2px solid #c1a383;background:#fffdf3;border-radius:17px 14px 16px 15px;box-shadow:0 3px #ddcbae;padding:12px;margin-bottom:13px}.upgrade:nth-child(2){background:#fff3e4}.upgrade:nth-child(3){background:#f2f0ff}.upgrade-icon{background:#fff0c9;border:1px solid #d7c3a0;border-radius:15px}.upgrade h3{font-size:13px}.upgrade p{font-size:10px}.upgrade .level{background:#fae6ac;border:1px solid #baa07b;border-radius:8px;padding:5px}.upgrade button,.primary-btn,.secondary-btn,.rebirth-card button,.catalog-card button,.site-setting button,.clear-banner button{border:2px solid #91a582;box-shadow:0 3px #aec397;border-radius:13px;font-weight:750;min-height:36px}.upgrade button:disabled,.primary-btn:disabled,.secondary-btn:disabled,.catalog-card button:disabled{border-color:#bbaf98;background:#e9e2d3;color:#8b8172;box-shadow:0 2px #cfc2ab;opacity:1}.rebirth-card{border:2px solid #b39dc3;box-shadow:0 3px #cabbda;background:#ede5ff;border-radius:18px}.rebirth-card button{border-color:#aa91ba;box-shadow:0 3px #bba6c8;background:#dfccf1}.rebirth-card h3{font-size:13px}.rebirth-card p{font-size:10px}.slot,.bag-open .slot{border:2px solid #b69979;box-shadow:0 2px #d2b898;border-radius:14px 11px 13px 12px;background:#fff1d6}.slot.selected,.bag-open .slot.selected{outline:none;border:3px solid #c590a8;background:#ffe1ea;box-shadow:0 2px #cf9fb2}.slot .tier-dot,.bag-open .tier-dot{font-weight:900;background:#fff9;padding:2px 4px;border-radius:6px;color:#866143}.slot.equipped:before{background:#dbefc4;border-radius:5px;padding:2px;color:#617450}.quick-weapons button{border:2px solid #b69979;box-shadow:0 3px #cfb499;border-radius:15px 12px 14px 13px;background:#fff6df;min-height:48px}.quick-weapons button.active{border:3px solid #c58ca7;box-shadow:0 3px #c59bad;background:#ffe1ed}.quick-weapons small{font-weight:700}.primary-btn,.site-primary{border:2px solid #b19456;box-shadow:0 4px #ccb16e;background:#ffe095;color:#805f32;border-radius:16px 13px 15px 14px;font-weight:850}.site-cards a,.site-box,.site-metric,.world-themes article,.catalog-card,.profile-cat,.journey-item,.route-stop{border:2px solid #b8977e;box-shadow:0 4px #dcc5a7;border-radius:22px 17px 21px 18px;background:#fff8e7}.site-cards a{position:relative;padding-top:30px}.site-cards a:before{content:'';position:absolute;width:55px;height:13px;top:-7px;left:calc(50% - 27px);background:#efd8b0;border:2px solid #b8977e;border-radius:7px;box-shadow:inset 0 2px #fff8}.site-cards span{display:none}.site-cards h2{margin-top:12px}.site-cards a:nth-child(2){background:#e9f4df}.site-cards a:nth-child(3){background:#f1e8fa}.site-metric{padding:18px;text-align:center;border-radius:18px;box-shadow:0 3px #d7bd9f}.site-metric strong{font-size:27px;color:#896e69}.site-metric span{font-size:12px}.lobby-hero{border:3px solid #bc9a87;box-shadow:0 6px #d6bea8;border-radius:30px 24px 28px 25px;padding:35px 5%;background:linear-gradient(120deg,#fff0ca,#fce1e7 60%,#e5e0f8)}.lobby-hero h1{font-size:38px;line-height:1.3;letter-spacing:.3px}.lobby-hero p{font-size:13px}.hero-cat .portrait{transform:scale(1.65)}.hero-badge{border:2px solid #be9d86;box-shadow:0 3px #d3b79d;font-weight:750;border-radius:14px;background:#fff5d7}.hero-cat i{display:none}.profile-cat{position:relative;padding-top:55px;background:radial-gradient(circle at 50% 37%,#fffef2 25%,transparent 55%),#ffe5ed;border:3px solid #be9a95}.profile-cat h2{display:inline-block;margin:20px 0 14px;padding:10px 27px;background:#fff4cd;border:2px solid #ad8a70;border-radius:18px 14px 17px 15px;box-shadow:0 3px #d3b899;font-size:25px}.profile-cat:before{content:'猫咪档案';position:absolute;left:50%;top:-15px;transform:translateX(-50%);background:#ddc5e8;color:#806785;border:2px solid #a585ae;box-shadow:0 3px #b9a0c1;border-radius:18px 18px 11px 11px;padding:7px 28px;white-space:nowrap;font-weight:850;font-size:15px}.profile-cat .rank-chip{display:block;width:max-content;margin:0 auto;background:#eff4d5;border:1.5px solid #abb791;color:#75815e}.profile-grid{margin-top:35px}.profile-cat .portrait{transform:scale(1.6)}.skin-grid button{border:2px solid #ba9e85;box-shadow:0 3px #dbc3a6;border-radius:16px 13px 17px 12px}.skin-grid button[aria-pressed=true]{border:3px solid #bd86a5;box-shadow:0 3px #cf9ab2}.skin-grid button[aria-pressed=true] span:before{content:'✓ ';font-weight:900}.skin-grid span{font-weight:700}.catalog-controls input,.catalog-controls select{min-height:44px;border:2px solid #b59980;background:#fffbef;border-radius:13px;color:#765b50}.catalog-card{border:2px solid #b89e85;border-top:5px solid var(--quality);padding:14px}.catalog-top>span{background:var(--quality);color:#56483f;padding:5px 6px;border:1px solid #8f7760;border-radius:9px;font-weight:800}.catalog-top small{padding-top:6px}.catalog-art{background:#fbf0da;border:1px dashed #cfb794;border-radius:17px}.catalog-card h2{font-size:16px}.catalog-card dt{font-size:11px}.catalog-card button:disabled:before{content:'• ';font-size:14px}.world-themes article{border:3px solid #b7997e}.landscape{border-bottom:2px solid #b7997e}.route-stop{position:relative;border-style:dashed;background:#fff8e8}.route-stop.current{border-style:solid;border:3px solid #97b89a;box-shadow:0 4px #b8d4af;background:#eaf5dc}.route-stop.current:before{content:'在这里';position:absolute;right:7px;top:10px;padding:4px 6px;background:#ffdea0;color:#97703e;border:1px solid #c3a269;border-radius:8px;font-size:9px;font-weight:750}.route-stop a{background:#cfe8ba;border:1.5px solid #94a67d;box-shadow:0 2px #a8bb92;border-radius:10px;padding:8px;text-align:center;color:#6d8050}.guide-number{font-size:24px;width:46px;height:46px;border:2px solid #b69ac6;border-radius:15px;background:#eee1f7;color:#9977ab;display:grid;place-items:center}.guide-grid .site-box:nth-child(2n){background:#edf5e3}.site-setting{border-top:2px dashed #d6bd9e}.site-setting button{border-color:#b49cb7;box-shadow:0 3px #c8b1cd}.site-setting button[aria-checked=true]{border-color:#88ab99;box-shadow:0 3px #a4c6b1}.site-setting button[aria-checked=true]:before{content:'✓ '}.site-setting button[aria-checked=false]:before{content:'○ '}.site-notice{font-size:12px}.site-notice button{min-height:40px;background:#e9e1f4;border:2px solid #b5a0c5;border-radius:12px;padding:8px 14px;color:#8c759d;box-shadow:0 3px #cebed9}dialog{border:3px solid #a98a71;border-radius:27px 23px 26px 21px;background:#fff9e8;box-shadow:0 7px #c6a98b,0 25px 70px #705c4660}dialog::backdrop{background:#574a4b70;backdrop-filter:blur(3px)}dialog h2{color:#896754;font-size:25px}dialog .dialog-close{background:#f4c4cd;border:2px solid #b18b8d;border-radius:12px;min-width:36px;min-height:36px;color:#9c626b;box-shadow:0 3px #c99ca2}dialog .settings-row{border-bottom:2px dashed #d5bda4}#toast{border:2px solid #ab9279;background:#fff6d9;color:#8b6c50;box-shadow:0 4px #bca083;border-radius:15px}
.launching{background:#ede4ef}#launch-screen{border:4px solid #9c7b68;border-radius:28px 24px 27px 22px;background:#e9e4f5;box-shadow:0 7px #cdb2a1,0 25px 70px #95809540}#launch-screen:after{background:linear-gradient(transparent,#eeebf2c9 65%,#eee8f5f2)}.launch-copy h1{color:#725649;text-shadow:0 3px #fff7d6;font-size:39px}.launch-copy>span{display:none}.launch-copy p,.launch-copy small,.launch-copy #load-status{color:#947869}.launch-copy button{background:#ffe3a1;color:#8b653e;border:3px solid #aa8660;box-shadow:0 5px #c19c6b,inset 0 3px #fff8ce;border-radius:20px 17px 21px 16px}.launch-copy{bottom:24px}
@media(max-width:730px){.topbar{gap:6px}.wallet>div{min-width:0;padding:4px 7px;gap:4px;border-radius:18px}.icon-btn{min-width:36px;min-height:36px;width:36px;height:36px}.icon-btn .ui-art{width:28px;height:28px}.site-heading h1{font-size:25px}.site-nav{gap:8px}.site-nav a{padding:4px 8px 4px 5px;font-size:11px;gap:4px;min-height:44px}.site-nav a img{width:34px;height:34px}.menu-open .site-nav{background:#fff4dc;border:2px solid #bda084;border-radius:18px;padding:10px;top:58px;box-shadow:0 5px #ccb595;justify-content:center}.game-shell{border-radius:18px 16px 20px 15px!important}.live-pill{font-size:7px;height:26px}.progress-hud{left:12px;width:147px;padding:5px 8px}.progress-hud>div:first-child{margin-bottom:4px}.progress-track{height:8px}.world-hud{left:12px;right:12px}.canvas-btn{min-width:34px;min-height:34px}.panel-column{border-radius:18px 15px 17px 14px!important;box-shadow:0 3px #c9ae90}.tabs,.bag-open:not(.site-page) .tabs,body:not(.site-page) .tabs{height:42px;min-height:42px;padding:5px 31px 0 7px;gap:5px;background:#fff2d5}.tabs button{min-height:34px;font-size:11px;border-width:1.5px}.upgrade{padding:9px;margin-bottom:11px}.upgrade h3{font-size:12px}.upgrade p{font-size:9px}.upgrade .level{font-size:9px;padding:4px}.upgrade button{min-height:33px}.quick-weapons button{min-height:48px;padding:4px 6px}.slot,.bag-open .slot{border-radius:11px 9px 12px 9px}.slot small{font-size:8px}.slot.equipped:before{font-size:7px;padding:1px 3px;top:2px;left:2px}.bag-open .slot.selected{border-width:2px}.bag-actions{padding-bottom:3px}.bag-actions button{min-height:34px}.site-box{padding:20px}.site-metric{padding:15px}.site-metric strong{font-size:24px}.site-metric span{font-size:11px}.lobby-hero{padding:23px 20px}.lobby-hero h1{font-size:29px}.hero-cat .portrait{transform:scale(1.15)}.profile-cat{padding-top:44px}.profile-cat:before{font-size:14px}.skin-grid img{height:62px}.world-themes article{grid-template-columns:105px 1fr}.landscape{border-bottom:0;border-right:2px solid #b7997e}.route-stop.current:before{font-size:8px;right:4px;top:7px}.site-setting button{min-width:80px}#launch-screen{border-width:0;border-radius:0}.launch-art{height:77%;object-position:50% 35%}#launch-screen:after{inset:43% 0 0}.launch-copy h1{font-size:31px}.launch-copy{bottom:max(25px,env(safe-area-inset-bottom))}.launch-copy small{font-size:10px}.launch-copy button{min-height:65px}#toast{max-width:85vw;font-size:11px}#close-bag{border:1.5px solid #b58b85;box-shadow:0 2px #ca9d94}body:not(.site-page) .panel-column{scroll-padding-top:44px}}
@media(prefers-reduced-motion:reduce){button:not(:disabled):active,.site-primary:active{transform:none}}
dialog .settings-row button{flex:0 0 auto!important;min-width:86px;white-space:nowrap;padding:9px 12px}dialog .settings-row{gap:14px}

/* Keep the wide muzzle and drum visible on narrow launch screens. */
@media(max-width:730px){.launch-art{height:min(77%,145vw);object-position:55% 35%}}
#fire-btn{display:none;position:absolute;right:18px;bottom:58px;width:78px;height:78px;border:3px solid #b47757;border-radius:50%;background:radial-gradient(circle at 35% 25%,#ffe9a5,#f6b77d);box-shadow:0 5px #c89770,inset 0 3px #fff3ca;color:#825037;font-size:21px;font-weight:850;touch-action:none;user-select:none}#fire-btn small{display:block;font-size:9px;margin-top:3px}#fire-btn:active{background:#ffcc8c}#game{cursor:crosshair}.game-brand-name{font-size:21px;letter-spacing:0}.game-brand-name small{font-size:9px;letter-spacing:1px}.quick-weapons button{flex-basis:145px}.quick-weapons small{font-size:8px}.launch-copy h1{font-size:36px}
@media(max-width:730px),(pointer:coarse){#fire-btn{display:block}}
@media(max-width:730px){.game-brand-name{font-size:15px}.game-brand-name small{font-size:7px;letter-spacing:0}.wallet>div{padding:4px;gap:2px}.wallet strong{font-size:11px}.icon-btn{min-width:32px;min-height:32px;width:32px;height:32px}.launch-copy h1{font-size:28px;letter-spacing:0}.quick-weapons button{flex-basis:140px}.quick-weapons span{font-size:10px}#fire-btn{right:13px;bottom:53px;width:74px;height:74px}}
@media(max-width:730px){.launch-art{top:3%;height:60%;object-fit:contain;object-position:50% 35%}#launch-screen{background:linear-gradient(#bce6fb,#e7eff0 55%,#eee8f5 80%)}#launch-screen:after{inset:48% 0 0}}

/* Score progression remains readable without blocking aiming or movement. */
.evolution-hud{position:absolute;top:61px;right:18px;width:220px;padding:9px 12px;background:#fff1d9ed;border:2px solid #b99473;border-radius:14px;color:#805744;pointer-events:none;box-shadow:0 3px #81633825}.evolution-hud>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:10px}.evolution-hud b{color:#c0783c}.evolution-hud strong{font-size:9px}.evolution-hud p{font-size:10px;margin:6px 0;white-space:nowrap}.evolution-hud .progress-track>div{background:linear-gradient(#ffe598,#f5b465);border-color:#d69a56}.progress-hud{pointer-events:none}
#evolution-banner{position:absolute;top:145px;left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;padding:13px 20px;width:max-content;max-width:90%;background:#fff5ddee;border:3px solid #cba06b;border-radius:22px;box-shadow:0 5px #c6a27580;color:#87512f;pointer-events:none;z-index:4}#evolution-banner .evolution-art img{width:78px;height:57px;object-fit:contain}#evolution-banner strong{display:block;font-size:23px;color:#ce7548}#evolution-banner b{display:block;font-size:14px;margin:3px 0}#evolution-banner small{font-size:10px;display:block}.evolving{animation:evolution-pop .4s ease-out}@keyframes evolution-pop{from{opacity:0;scale:.7}to{opacity:1;scale:1}}
#merge-hint{margin:8px 12px 0;padding:7px;background:#ffe1a5;border:2px solid #c4a06c;border-radius:11px;color:#916138;font-size:11px;flex-shrink:0}.merge-ready{box-shadow:0 0 0 3px #f3ce6b!important}
@media(max-width:730px){.evolution-hud{top:49px;right:10px;width:calc(100% - 180px);min-width:130px;padding:6px 7px}.evolution-hud>div:first-child{font-size:9px;gap:4px}.evolution-hud strong{font-size:8px}.evolution-hud p{font-size:8px;margin:4px 0;white-space:normal}.evolution-hud .progress-track{height:6px}.progress-hud{top:49px}#evolution-banner{top:123px;padding:10px 13px;gap:7px}#evolution-banner strong{font-size:19px}#evolution-banner b{font-size:12px}#evolution-banner small{font-size:9px}#evolution-banner .evolution-art img{width:55px;height:44px}#merge-hint{margin:7px 10px 0;padding:5px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.evolving{animation:none}}
/* Keep the complete cover and its controls together on phones. */
@media(max-width:730px){#launch-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 0 max(24px,env(safe-area-inset-bottom));overflow:auto}.launch-art{position:relative;inset:auto;width:100%;height:auto;max-height:48dvh;object-fit:contain;object-position:center;flex-shrink:0}.launch-copy{position:relative;inset:auto;width:100%;padding:18px 16px 0;flex-shrink:0}#launch-screen:after{display:none}.launch-copy p{margin:7px 0 17px}.launch-copy #load-status{margin:13px 0 8px}}
