@charset "UTF-8";
#overlay{position:fixed;inset:0;pointer-events:none;z-index:20}#overlay>*{pointer-events:auto}#game{flex-shrink:0}
:root{font-family:"Microsoft YaHei","PingFang SC","Noto Sans SC",sans-serif;color:#fff2ce;background:#231510;font-synthesis:none;-webkit-tap-highlight-color:transparent;--cream:#ffedc4;--brown:#54260f;--gold:#ffc338;--teal:#00c2bf}
*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;align-items:center;justify-content:center;gap:70px;background:radial-gradient(ellipse at 70% 40%,#83553655,transparent 50%),linear-gradient(120deg,#181714,#34251c);overflow:hidden}button{font:inherit;cursor:pointer;color:inherit;border:0;touch-action:manipulation}button:disabled{cursor:default;filter:saturate(.45);opacity:.58}button:focus-visible{outline:3px solid #b4fffa;outline-offset:3px}button:active:not(:disabled){transform:translateY(2px);filter:brightness(1.1)}button,img{user-select:none}h1,h2,h3,p{margin:0}.icon{width:24px;height:24px;fill:currentColor;flex-shrink:0;vertical-align:middle}#game{height:100svh;max-height:960px;width:min(100vw,450px);position:relative;overflow:hidden;isolation:isolate;box-shadow:0 15px 100px #0009;border:1px solid #a47644;border-radius:20px;background:#704521}#scene{position:absolute;width:100%;height:100%;inset:0}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#361b1144,transparent 22%,transparent 55%,#32120855 80%,#1d110cdd);z-index:1}#header{position:absolute;z-index:5;top:max(10px,env(safe-area-inset-top));left:10px;right:10px}.title-plaque{position:relative;display:flex;align-items:center;gap:9px;height:48px;padding:4px 6px 4px 12px;background:linear-gradient(165deg,#8c572d,#422515 70%);border:3px solid #a87b4f;border-radius:9px;box-shadow:inset 0 0 0 2px #2b221e,0 4px 0 #2e201a,0 6px 12px #29110888}.title-plaque::before,.title-plaque::after{content:'';width:6px;height:6px;position:absolute;left:3px;top:3px;background:linear-gradient(135deg,#cac7b2,#5b5450);border-radius:50%;box-shadow:0 30px #706963}.title-plaque::after{left:auto;right:3px}.title-plaque>.icon{color:#ffc659;width:30px;height:30px;filter:drop-shadow(1px 2px 0 #42200d)}h1{font-size:clamp(19px,5.3vw,24px);letter-spacing:.7px;font-weight:1000;white-space:nowrap;text-shadow:0 2px 0 #713311,1px 0 0 #713311;color:#ffe9b1}.menu-button{margin-left:auto;background:transparent;width:40px;min-height:44px;display:grid;place-items:center;color:#dfbd89}.stats{display:grid;grid-template-columns:1fr 1.2fr .85fr;gap:6px;margin-top:9px}.stat{height:38px;display:flex;align-items:center;justify-content:center;gap:5px;border:2px solid #a98864;border-radius:8px;background:linear-gradient(#5a3829,#2f221e);box-shadow:inset 0 0 0 2px #372924,0 3px 0 #261b16;font-size:23px;font-weight:900}.stat small{font-size:14px}.stat:first-child b{color:#ffd049;font-size:28px}.stat.health>.icon{color:#ff564b;filter:drop-shadow(0 2px 0 #891d19)}.stat .coin{width:27px;height:27px}.coin{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff099,#ffcd32 45%,#ff8b0a);border:2px solid #a84b08;box-shadow:inset 0 0 0 2px #ffe687,0 2px 0 #733507;color:#ab5104;flex-shrink:0}.coin .icon{width:20px;height:20px}#world-ui{z-index:3;position:absolute;inset:0;pointer-events:none}#world-ui button{pointer-events:auto}.intro-line{position:absolute;top:114px;left:13px;padding:5px 9px;border-radius:6px;background:#432411b8;text-shadow:0 1px 1px #4b240b;font-size:13px}.customer-card{position:absolute;right:12px;top:148px;width:184px;color:#5e2e18;background:linear-gradient(130deg,#fff2d4,#f5d8af);border:2px dashed #79503a;border-radius:14px;padding:8px 10px;box-shadow:0 4px 10px #36200e44;pointer-events:auto}.customer-card h2{font-size:18px;text-align:center;font-weight:900}.customer-stats{text-align:center;font-size:13px;margin:4px 0;color:#784a2e}.customer-stats i{font-style:normal;padding:0 6px;color:#b58a5b}.preview-attack{display:flex;align-items:center;gap:4px;min-height:52px}.preview-attack>.gear-image,.preview-attack>.icon{width:43px;height:48px;object-fit:contain}.preview-attack p{line-height:1.5}.preview-attack b{display:block;font-size:15px}.preview-attack span{font-size:12px;display:block}.preview-switch{display:flex;margin-top:5px;border:1px solid #b58552;border-radius:6px;overflow:hidden}.preview-switch button{min-height:44px;flex:1;font-size:13px;background:#ebd1ab;color:#6c4327}.preview-switch .selected{background:#744528;color:#fff1d0;font-weight:bold}.preview-label{text-align:center;font-size:12px;border-top:1px solid #caae85;margin-top:4px;padding-top:6px}.speech{position:absolute;left:34%;top:33%;padding:10px 19px;min-width:95px;border:3px solid #63351b;border-radius:50% 50% 45% 45%;color:#51270f;background:radial-gradient(ellipse at 35% 30%,#fff6df,#f1d4a4);box-shadow:inset 0 0 0 2px #fff1d9,0 3px 6px #50240b4d;text-align:center;font-size:18px;font-weight:900}.speech::after{content:'';position:absolute;bottom:-12px;left:55%;width:20px;height:20px;background:#f1d4a4;border-right:3px solid #63351b;border-bottom:3px solid #63351b;transform:skewY(40deg) rotate(15deg);border-radius:0 0 8px 0;z-index:-1}.speech strong{display:flex;align-items:center;justify-content:center;gap:6px;font-size:28px}.small-speech{font-size:14px;padding:15px}.gear-image{object-fit:contain;filter:drop-shadow(0 4px 4px #12090277)}#bottom-ui{position:absolute;z-index:4;bottom:max(15px,env(safe-area-inset-bottom));left:12px;right:12px}.next-customer{text-align:center;padding:6px 8px;margin-bottom:9px;font-size:12px;background:#442515db;border:1px solid #d8a26377;border-radius:6px;text-shadow:0 1px #542818}.item-row{display:grid;grid-template-columns:1.14fr 1fr;gap:9px;align-items:stretch}.stock-card{position:relative;min-height:195px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:8px 7px;background:linear-gradient(140deg,#d09a51aa,#663821 55%,#a06026);border:3px solid #bc894e;border-radius:12px;box-shadow:inset 0 0 0 2px #563e2d,0 5px 0 #35251b;overflow:hidden}.stock-card::before{content:'';position:absolute;inset:3px;border:1px solid #ffe2a277;border-radius:7px;pointer-events:none}.stock-card>.gear-image{height:95px;width:100%;margin-bottom:1px;filter:drop-shadow(0 2px 4px #ffb53c88);transform:rotate(-6deg)}.stock-card p{font-size:12px;margin:4px 0;line-height:1.5;font-weight:bold}.stock-card>small{font-size:11px;color:#ffe4ab;line-height:1.5;min-height:29px}.stock-title{display:flex;gap:5px;align-items:center;justify-content:center;width:100%;color:#ffeacb;white-space:nowrap}.stock-title>b{font-size:24px;letter-spacing:2px;text-shadow:0 2px 0 #51210e}.tag{font-size:11px;font-weight:900;color:#673413;background:#ffdea5;border:1px solid #ae723b;border-radius:3px;padding:4px 5px;transform:rotate(-8deg);box-shadow:0 2px 0 #754619}.upgraded{border-color:#ffb343}.forge-mark{position:absolute;top:7px;left:5px;font-size:10px;background:#b14419;color:#fff4a0;padding:2px 5px;transform:rotate(-5deg)}.my-gear{background:linear-gradient(130deg,#4e3525,#2c221c);border:3px solid #946844;border-radius:12px;box-shadow:inset 0 0 0 2px #372b24,0 5px 0 #35251b;display:flex;flex-direction:column;padding:0 5px 4px}.my-gear h3{align-self:center;display:flex;gap:4px;align-items:center;padding:4px 9px;background:linear-gradient(#af773e,#7d4825);border:2px solid #5b3824;border-radius:6px;margin-top:-9px;white-space:nowrap;font-size:17px;text-shadow:0 2px #5b3019}.my-gear h3>.icon{width:19px;height:19px;color:#ffd087}.equip-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;flex:1;padding-top:7px}.equip-card{min-height:123px;padding:2px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #aa8d6b;border-radius:7px;background:#382b2290}.equip-card.filled{border:1px solid #9f7448;background:radial-gradient(ellipse at center,#ac774144,#342620)}.equip-card>.gear-image{width:100%;height:70px}.empty-gear{width:42px;height:52px;opacity:.3;margin-bottom:8px}.equip-card>span{font-size:14px;font-weight:bold;white-space:nowrap}.equip-card small{font-size:10px;margin-top:4px;color:#c1a584}.equip-card small b{color:#9df4ae;font-size:10px}.my-gear>p{font-size:10px;text-align:center;margin-top:5px;line-height:1.4;color:#d5c0a3}.economy-hint{text-align:center;font-size:12px;color:#ffe1a4;margin:13px 0 8px;text-shadow:0 1px #34180b}.decisions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gold-button,.teal-button{position:relative;min-height:71px;border-radius:15px;border:3px solid #ffd268;box-shadow:inset 0 0 0 2px #fff0ab88,0 5px 0 #935012,0 7px 12px #13090499;background:linear-gradient(135deg,#ffeb80,#ffcf29 50%,#f4a414);color:#603006;font-size:22px;font-weight:1000;display:flex;gap:8px;align-items:center;justify-content:center;text-shadow:0 1px #ffe98d}.gold-button::after,.teal-button::after{content:'';position:absolute;inset:7px;border:1px solid #ffeda05c;border-radius:8px;pointer-events:none}.teal-button{color:#f4fffa;border-color:#75fff0;background:linear-gradient(135deg,#1ee1d2,#00b8b8 60%,#008c96);box-shadow:inset 0 0 0 2px #b6ffee88,0 5px 0 #006c76,0 7px 12px #13090499;text-shadow:0 2px #00636a}.decisions button{padding:7px 4px}.decisions .coin{width:38px;height:38px}.decisions .coin .icon{width:27px;height:27px}.decisions button>.icon{width:35px;height:35px;filter:drop-shadow(0 2px 1px #006371)}.decisions button span:not(.coin){font-size:21px}.decisions small{display:block;font-size:12px;margin-top:2px;font-weight:700;letter-spacing:0}.forge-symbol{color:#ffbd44;filter:drop-shadow(0 0 10px #f93);margin:16px}.forge-symbol .icon{width:58px;height:58px}.forge-status{padding:14px 10px 2px;text-align:center;min-height:111px}.forge-status>span{font-weight:bold;color:#ffe2a5}.progress{height:9px;border:1px solid #b88641;border-radius:6px;background:#432719;margin:10px auto;width:85%;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,#ff913a,#ffe68b);width:0}.forge-status small{font-size:12px}.preparation{margin-top:14px}.services{display:grid;grid-template-columns:1fr 1fr;gap:7px}.services button{display:flex;align-items:center;gap:5px;min-height:56px;border:1px solid #ac8659;border-radius:8px;background:linear-gradient(#765237,#443023);padding:4px 6px;text-align:left;color:#ffebc4}.services button>.icon{color:#ffbd50;width:24px;height:24px}.services span{font-size:13px;white-space:nowrap}.services b{font-size:10px;color:#ffe292}.services small{display:block;font-size:10px;font-weight:400;color:#d4b995;margin-top:4px;white-space:normal}.prep-actions{display:flex;gap:8px;align-items:center;margin-top:9px}.start-battle{flex:1;min-height:56px;font-size:23px}.equip-now{min-height:56px;border:2px solid #83efe0;background:linear-gradient(#31b4a4,#187970);padding:8px;border-radius:10px;font-size:16px;font-weight:bold;color:#f7ffec;box-shadow:0 3px 0 #214742}.locked-note{max-width:44%;font-size:11px;line-height:1.6;color:#e7cdaa;padding:0 5px}.battle-heading{position:absolute;top:118px;left:0;right:0;display:flex;flex-direction:column;align-items:center;text-shadow:0 2px #60391b}.battle-heading span{font-size:14px}.battle-heading b{font-size:35px;color:#fff1be}.battle-heading small{font-size:12px}.battle-bars{position:absolute;top:214px;left:15px;right:15px;display:flex;gap:35px;justify-content:space-between}.battle-bars>div{flex:1;min-width:0;text-align:center;text-shadow:0 1px 3px #301300;font-size:13px}.battle-bars>div>span{display:block;min-height:37px;line-height:1.4}.battle-bars b{font-size:13px}.bar{margin:4px 0;height:12px;border:2px solid #604024;background:#452623;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #472a1780}.bar i{display:block;height:100%;background:linear-gradient(#a3f395,#379b55);transition:width .15s}.bar.enemy i{background:linear-gradient(#e9afff,#9e42c2)}.combat-message{position:absolute;top:59%;left:15px;right:15px;min-height:38px;padding:9px 10px;border:1px solid #ddb17580;border-radius:8px;background:#492717d9;text-align:center;font-size:14px}.battle-loadout{border:3px solid #bc8c53;border-radius:15px;padding:13px 12px;background:linear-gradient(#68432deb,#33251dee);box-shadow:inset 0 0 0 2px #34281e,0 5px 0 #2d2118}.battle-loadout h3{text-align:center;font-size:18px;color:#ffe9b7;margin-bottom:7px}.locked-gear{display:flex;gap:8px}.locked-gear>div{flex:1;display:flex;align-items:center;gap:3px;min-width:0}.locked-gear .gear-image,.locked-gear .icon{width:55px;height:62px;object-fit:contain}.locked-gear span{min-width:0}.locked-gear b{display:block;font-size:15px}.locked-gear small{display:block;font-size:11px;color:#e7cbaa;line-height:1.6;margin-top:3px}.cooldown-track{height:7px;background:#2a2019;border-radius:5px;overflow:hidden;margin:9px 0}.cooldown-track i{height:100%;display:block;background:linear-gradient(90deg,#00bda8,#b1ffe1);width:100%}.battle-loadout>p{text-align:center;font-size:12px;color:#e9d2b6}.battle-tip{text-align:center;font-size:12px;margin:13px 0 8px;color:#e8cfa5}.pause-battle{display:flex;align-items:center;justify-content:center;gap:7px;background:#402b22a8;color:#f9dbb1;border:1px solid #a4774b;border-radius:8px;min-height:44px;min-width:120px;margin:auto;font-size:15px}.result-banner{position:absolute;top:135px;left:15px;right:15px;text-align:center;padding:14px;background:radial-gradient(ellipse,#fff2cbe0,#f6d7a3e3);border:3px solid #a4743e;border-radius:15px;color:#603414;box-shadow:0 8px 25px #743c1944}.result-banner>.icon{width:38px;height:38px;color:#b9781d;display:block;margin:auto auto 3px}.result-banner>span{font-size:14px}.result-banner h2{margin-top:5px;font-size:23px;letter-spacing:1px}.result-card{padding:17px 16px;background:linear-gradient(#fff0d6ed,#f1d1a5f5);border:3px solid #a5713d;border-radius:15px;color:#673d22;box-shadow:0 5px 0 #4c3023}.result-stats{display:grid;grid-template-columns:1fr 1fr;text-align:center;gap:10px}.result-stats span{display:block;font-size:13px}.result-stats b{display:block;font-size:30px;line-height:1.4}.result-stats small{font-size:13px}.causes{margin-top:9px;padding-top:9px;border-top:1px dashed #b89669}.causes p{font-size:14px;line-height:1.7}.last-event{display:block;margin-top:9px;font-size:11px;color:#866042}.failure-source{margin-top:6px;text-align:center;font-size:14px;line-height:1.7}.end-actions{margin-top:14px;display:flex;gap:10px}.end-actions button{flex:1;font-size:18px;min-height:61px}.seed-note{display:block;text-align:center;margin-top:12px;font-size:11px;color:#e4c49c}.next-round{margin-top:14px;width:100%;font-size:19px}.return-note{font-size:12px;text-align:center;color:#e4c69e;margin-top:11px}#toast{position:absolute;z-index:10;top:55%;left:50%;transform:translate(-50%,-5px);opacity:0;transition:opacity .2s,transform .2s;pointer-events:none;color:#fff5d7;background:#3c2614ed;border:1px solid #eac073;border-radius:8px;padding:10px 12px;max-width:90%;width:max-content;font-size:13px;text-align:center}#toast.visible{transform:translate(-50%,0);opacity:1}.scrim{position:fixed;z-index:20;inset:0;display:flex;align-items:center;justify-content:center;background:#1d100bcc;backdrop-filter:blur(4px);padding:20px}.modal{width:min(360px,100%);max-height:85svh;overflow:auto;background:linear-gradient(135deg,#fff2d7,#efd3a9);color:#613b21;border:4px solid #a67541;border-radius:18px;box-shadow:inset 0 0 0 2px #ffe8b9,0 20px 80px #0008;padding:22px 18px;text-align:center}.modal h2{font-size:24px;margin-bottom:10px}.modal p{font-size:14px;line-height:1.8;margin:8px 0}.modal small{font-size:11px;line-height:1.5;display:block;margin-top:10px}.modal-item{width:140px;height:130px;object-fit:contain;display:block;margin:auto}.wide{width:100%;min-height:54px;font-size:19px;margin-top:16px}.menu-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.menu-options button{min-height:46px;background:#754829;color:#fff0d0;border:1px solid #ac8758;border-radius:8px;font-size:14px}.help-copy{text-align:left;max-height:53svh;overflow-y:auto;padding-right:3px}.help-copy p{margin-bottom:10px}.inventory-list{display:flex;flex-direction:column;gap:8px;max-height:45svh;overflow:auto;margin-top:12px}.inventory-list button{display:flex;align-items:center;gap:10px;background:#e6c594;border:2px solid #a67c48;border-radius:9px;min-height:68px;padding:6px;text-align:left;color:#65351c}.inventory-list .gear-image,.inventory-list .icon{width:57px;height:57px}.inventory-list span{flex:1;font-size:14px}.inventory-list small{display:block;margin:2px 0;font-size:11px;line-height:1.4}.paused *{animation-play-state:paused!important}#debug-panel{position:absolute;bottom:0;left:0;right:0;z-index:12;background:#131313d9;display:flex;flex-wrap:wrap;gap:3px;font-size:10px;padding:3px;color:white}#debug-panel button{background:#444;padding:5px}#debug-panel input{width:65px}.transition::after{content:'';position:absolute;inset:0;z-index:9;background:#ffe0a6;pointer-events:none;animation:camera-shift .55s ease-out forwards}@keyframes camera-shift{0%{opacity:0;transform:translateX(100%)}25%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-100%)}}.desktop-copy{max-width:360px;opacity:.9}.desktop-copy>span{font-size:15px;letter-spacing:5px;color:#d4a65c}.desktop-copy h2{font-size:56px;line-height:1.3;letter-spacing:4px;margin:24px 0;color:#ffe6ad;text-shadow:0 5px 10px #08050066}.desktop-copy p{font-size:17px;line-height:2;color:#c8ae8d}.desktop-copy small{display:block;font-size:12px;letter-spacing:3px;margin-top:34px;color:#997d5e}@media(min-width:900px){#game{height:min(96svh,930px);width:min(45.5svh,450px)}}@media(max-width:899px){.desktop-copy{display:none}#game{border:0;border-radius:0}}@media(max-height:820px){.customer-card{top:141px;padding:6px 8px;width:175px}.intro-line{top:110px;font-size:12px}.item-row .stock-card{min-height:172px}.stock-card>.gear-image{height:76px}.equip-card{min-height:104px}.equip-card>.gear-image{height:60px}.stock-card>small{font-size:10px;min-height:27px}.stock-title>b{font-size:21px}.my-gear h3{font-size:16px}.next-customer{margin-bottom:6px;font-size:11px}.economy-hint{margin-top:11px;font-size:11px}.speech{top:34%;font-size:16px}.battle-bars{top:201px}.battle-heading{top:114px}.combat-message{top:59%}.result-banner{top:124px}.result-banner h2{font-size:21px}}@media(max-width:375px){#header{left:8px;right:8px}.title-plaque{gap:6px;padding-left:10px}.title-plaque>.icon{width:26px}h1{font-size:19px;letter-spacing:.4px}.decisions button span:not(.coin){font-size:19px}.decisions{gap:8px}.decisions .coin{width:31px;height:31px}.my-gear>p{font-size:9px}.services b{font-size:9px}.services button{padding:4px}.services span{font-size:12px}.customer-card{width:172px}.customer-card h2{font-size:17px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.title-plaque .menu-button{width:44px;min-width:44px}.decisions .gold-button.long-label span:not(.coin){font-size:18px;white-space:nowrap}

/* V2: compact prep, two recipes, three equipment slots and persistent speed. */
h1{font-size:clamp(18px,5vw,22px)}.title-plaque{gap:6px}
.mode-chip{position:absolute;top:112px;left:12px;min-height:44px;padding:0 10px;border:1px solid #d8b47b;border-radius:8px;background:#472815ed;color:#ffe7b5;font-size:12px;box-shadow:0 3px 0 #291c15}
.customer-card{top:164px;width:186px;padding:7px 9px}.customer-card h2{font-size:17px}.trait-note{font-size:11px;line-height:1.5;background:#dfb98655;padding:4px 5px;border-radius:5px;margin:4px 0;color:#704020}.trait-note b{color:#994312}.preview-attack{min-height:44px}.preview-attack>.gear-image{height:40px;width:37px}.preview-attack span{font-size:11px}.preview-switch{margin-top:3px}.preview-label{font-size:10px}
.speech{left:28%;top:36%;font-size:16px;padding:8px 15px}.small-speech{font-size:13px}.speech strong{font-size:26px}
#bottom-ui{bottom:max(13px,env(safe-area-inset-bottom));left:12px;right:12px}.next-customer{margin-bottom:7px;font-size:11px;padding:5px 7px}
.my-gear{border:2px solid #9e724b;border-radius:10px;background:#38291edb;padding:5px;margin-top:8px;box-shadow:0 3px 0 #231b17}.my-gear h3{font-size:14px;text-align:left;padding:2px 5px;background:none;box-shadow:none;border:0;display:flex;align-items:center;gap:4px;height:24px;white-space:nowrap}.my-gear h3 .icon{height:18px;width:18px;color:#fbd184}.my-gear h3 small{font-size:10px;font-weight:400;opacity:.8;margin-left:auto}
.equip-grid{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:4px}.equip-card{min-height:76px;padding:3px;display:grid;grid-template-columns:38px 1fr;grid-template-rows:1fr 1fr;gap:0 3px;align-items:center;text-align:left;border:1px solid #92704e;border-radius:7px;background:linear-gradient(#46362bd9,#30241ded)}.equip-card>.gear-image,.equip-card>.empty-gear{width:38px;height:48px;grid-row:1/3;margin:0;object-fit:contain}.equip-card>span{font-size:11px;align-self:end;white-space:nowrap}.equip-card>small{font-size:9px;align-self:start;line-height:1.5;margin-top:2px;color:#96edd4}.equip-card>.empty-gear{opacity:.36;padding:7px}.equip-card.filled{border-style:solid}
.blueprint-panel{padding:8px;border:2px solid #c38b4a;border-radius:12px;background:linear-gradient(135deg,#6c4229ed,#38271eee);box-shadow:inset 0 0 0 1px #f1c07455,0 4px 0 #231b15}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.panel-heading>b{font-size:15px;color:#ffe6b4}.panel-heading>small{font-size:10px;color:#dcb68b}.recipe-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.recipe-card{position:relative;display:flex;align-items:center;flex-direction:column;border:1px solid #d8a462;border-radius:8px;padding:6px 5px;background:radial-gradient(ellipse at 50% 18%,#bd8b44aa,#714522 75%);min-height:153px;color:#ffefca;box-shadow:inset 0 0 0 2px #684527}.recipe-card>.gear-image{width:66px;height:60px}.recipe-card b{font-size:16px;display:block;text-shadow:0 2px #5a260d}.recipe-card span{display:flex;justify-content:center;align-items:center;gap:3px;font-size:11px;margin:3px 0}.recipe-card .coin{width:17px;height:17px;border-width:1px}.recipe-card .coin .icon{width:12px;height:12px}.recipe-card strong{font-size:17px;color:#ffe176}.recipe-card small{font-size:10px;display:block;line-height:1.5;min-height:30px;text-align:center;color:#f4d9b3}.recipe-card em{font-size:11px;font-weight:bold;font-style:normal;background:#ffd177;color:#663311;border-radius:4px;padding:3px 10px;margin-top:4px}
.forge-panel{display:flex;align-items:center;gap:13px;padding:14px;border:2px solid #c69351;border-radius:12px;background:#492c1bea;min-height:162px}.forge-panel>img{width:82px;height:100px}.forge-panel>div{flex:1}.forge-panel h2{font-size:17px}.forge-panel p{font-size:13px;margin:8px 0}.forge-panel small{font-size:11px}.forge-panel .progress{margin:12px 0;width:100%}
.trade-stock{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:9px;border:2px solid #ce9855;border-radius:12px;background:radial-gradient(ellipse at 20% 40%,#b68032ef,#5c361e 75%);min-height:105px;box-shadow:0 3px 0 #302018}.trade-stock>.gear-image{width:79px;height:79px}.trade-stock>div{flex:1}.trade-stock h2{font-size:20px}.trade-stock p{font-size:12px;line-height:1.7}.trade-stock small{font-size:10px;line-height:1.5}.trade-stock .tag{font-size:10px;padding:4px;flex-shrink:0}
.economy-hint{font-size:10px;margin:10px 0 6px}.decisions{gap:8px}.decisions button{min-height:73px;padding:5px;gap:6px}.decisions button span:not(.coin){font-size:19px}.decisions button small{font-size:12px}.decisions .coin{width:31px;height:31px}.decisions>.teal-button>.icon{width:30px;height:30px}
.services{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px}.services button{min-height:73px;display:flex;align-items:center;padding:5px 3px;gap:3px}.services .icon{width:21px;height:21px}.services span{font-size:12px}.services b{display:block;font-size:10px;margin:2px 0}.services small{font-size:9px;line-height:1.5}
.prep-actions{margin-top:9px;gap:8px}.locked-note{font-size:11px}.start-battle{min-height:60px}.equip-now{min-height:48px;font-size:12px;max-width:55%}
.battle-heading{top:118px}.battle-bars{top:166px;display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:0 14px}.battle-bars>div{margin:0;width:auto}.battle-bars span{font-size:12px;white-space:nowrap}.battle-bars .bar{height:15px;margin:6px 0 4px}.battle-bars b{display:block;font-size:15px}.battle-bars small{display:block;min-height:30px;font-size:10px;line-height:1.5;color:#ffdea0;margin-top:3px}.attack-meters{position:absolute;top:263px;left:15px;right:15px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.attack-meters span{font-size:11px;font-weight:bold;color:#ffeebd;background:#442415ad;border-radius:3px;padding:2px 5px}.attack-meters .cooldown-track{height:6px;margin-top:6px}.attack-meters .cooldown-track i{background:linear-gradient(90deg,#f6ce5b,#ff9b31)}
.event-feed{position:absolute;top:57%;left:15px;right:15px;display:flex;flex-direction:column;gap:3px;text-align:center}.event-feed p{font-size:11px;line-height:1.5;background:#3d261acc;border-radius:5px;padding:4px 6px;color:#debd96}.event-feed .latest{font-size:12px;color:#ffeabc;font-weight:bold;border:1px solid #be946b88}
.battle-loadout{padding:10px}.battle-loadout h3{font-size:15px;text-align:left;margin-bottom:8px}.locked-gear{display:flex;flex-direction:column;gap:6px}.locked-gear>div{display:flex;align-items:center;gap:8px;min-height:39px}.locked-gear img,.locked-gear .icon{width:37px;height:37px;object-fit:contain}.locked-gear span{display:block}.locked-gear b{font-size:13px}.locked-gear small{font-size:10px;line-height:1.5;display:block}.defense-track{margin-top:7px;height:5px}
.battle-controls{display:flex;align-items:center;gap:8px;margin-top:9px}.speed-controls{display:flex;align-items:center;gap:4px;border:1px solid #9f794d;border-radius:9px;background:#3d281cec;padding:4px;flex:1}.speed-controls>span{font-size:11px;padding:0 3px}.speed-controls button{flex:1;min-height:44px;font-weight:bold;font-size:16px;border-radius:6px;background:#65462d;color:#e2bf92}.speed-controls button.selected{background:linear-gradient(#ffdc62,#e99f25);color:#58270d;box-shadow:inset 0 0 0 2px #fff0a5}.pause-battle{width:auto;margin:0;min-height:54px;padding:0 10px;font-size:12px}.pause-battle .icon{width:17px}.battle-tip{font-size:10px;margin-top:7px}
.result-banner{top:132px}.result-banner h2{font-size:22px}.result-card{padding:13px}.causes p{font-size:12px;line-height:1.65}.detail-button{min-height:44px;width:100%;border:1px solid #b9935e;background:#6f442c;border-radius:6px;color:#ffe1ab;font-size:12px;margin-top:8px}.seed-note{display:block;text-align:center;margin-top:7px;font-size:10px}.mode-end{min-height:44px;width:100%;margin-top:8px;background:#3c2b1f;border:1px solid #a88154;border-radius:8px;font-size:13px}
.market-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.market-list article{display:flex;align-items:center;gap:10px;background:#e9cda2;border:1px solid #aa8050;border-radius:10px;padding:10px;text-align:left}.market-list img{width:75px;height:88px;flex-shrink:0}.market-list article>div{flex:1}.market-list h3{font-size:17px}.market-list p{font-size:12px;margin:6px 0;line-height:1.6}.market-list button{min-height:44px;font-size:12px;width:100%;padding:5px;margin:4px 0}.market-list small{font-size:12px;color:#247760}
.mode-choice{width:100%;background:#e7c795;color:#64391c;border:2px solid #a57742;border-radius:10px;text-align:left;min-height:86px;padding:12px;margin-top:12px}.mode-choice b{font-size:20px;display:block}.mode-choice span{font-size:12px;display:block;margin-top:6px;line-height:1.6}
.book-entry{display:flex;align-items:center;gap:9px;border-bottom:1px solid #be955e;padding:8px;text-align:left}.book-entry .gear-image{width:56px;height:56px}.book-entry b{display:block;font-size:15px}.book-entry small{font-size:12px;display:block;line-height:1.6;margin-top:4px}.combat-log p{font-size:12px;border-bottom:1px solid #ba986c55;padding:5px 0}.combat-log time{font-size:10px;color:#a3754e}
.desktop-copy h2{font-size:48px}.desktop-copy p{font-size:16px}#toast{font-size:12px;max-width:92%}
@media(max-height:820px){.customer-card{top:153px;width:180px;padding:6px 8px}.customer-card h2{font-size:16px}.speech{top:36%;font-size:14px}.recipe-card{min-height:143px}.recipe-card>.gear-image{height:51px;width:60px}.recipe-card b{font-size:15px}.recipe-card small{font-size:9px}.equip-card{min-height:67px}.equip-card>.gear-image,.equip-card>.empty-gear{height:42px;width:32px}.equip-card{grid-template-columns:32px 1fr}.my-gear h3{height:21px;font-size:13px}.trade-stock{min-height:92px}.trade-stock>.gear-image{width:64px;height:64px}.decisions button{min-height:68px}.services button{min-height:68px}.battle-loadout{padding:8px}.locked-gear>div{min-height:35px}.locked-gear img,.locked-gear .icon{width:32px;height:32px}.event-feed{top:56%}.battle-bars{top:166px}.battle-heading{top:116px}.result-banner{top:128px}}
@media(max-width:375px){.title-plaque h1{font-size:18px}.title-plaque>.icon{width:24px}.customer-card{width:172px}.my-gear h3 small{font-size:9px}.equip-card>span{font-size:10px}.services span{font-size:11px}.services .icon{width:18px}.decisions button span:not(.coin){font-size:18px}.trade-stock h2{font-size:18px}.trade-stock small{font-size:9px}.panel-heading>small{font-size:9px}.battle-bars span{font-size:11px}.mode-chip{font-size:11px}}


/* Keep the timer separate from HP; reserve room for all three retained event messages. */
.battle-heading{top:119px;left:14px;right:14px;padding:7px 9px;background:#442b1cde;border:1px solid #b59163;border-radius:7px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left}
.battle-heading span{font-size:14px;display:block;white-space:nowrap}.battle-heading b{font-size:24px;line-height:1;margin:0}.battle-heading small{font-size:10px;line-height:1.5;max-width:78px;margin:0}
.locked-gear{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.locked-gear>div{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;min-height:103px;text-align:center}.locked-gear img,.locked-gear .icon{height:42px;width:42px}.locked-gear b{font-size:12px;white-space:nowrap}.locked-gear small{font-size:9px;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
@media(max-height:820px){.battle-heading{top:117px}.locked-gear>div{min-height:92px}.locked-gear img,.locked-gear .icon{height:36px;width:36px}}
@media(max-height:750px){.event-feed{top:53.5%}.recipe-card{min-height:133px}.recipe-card>.gear-image{height:44px}.my-gear h3 small{font-size:8px}.speech{top:35%}.customer-card{top:149px}.my-gear{margin-top:5px}.equip-card{min-height:62px}}

.battle-heading{flex-direction:row}

.locked-gear .gear-image,.locked-gear .icon{width:42px;height:42px}
@media(max-height:820px){.locked-gear .gear-image,.locked-gear .icon{width:36px;height:36px}}


@media(max-height:820px){.event-feed{top:54.5%}}
@media(max-height:750px){.event-feed{top:52.5%}}

