.campaign-guidance-toggle{display:flex;align-items:center;gap:10px;color:#d4ddbf;font-size:13px;line-height:1.5;margin:14px 0;min-height:44px}.campaign-guidance-toggle input{width:20px;height:20px;accent-color:#e7b44c;flex-shrink:0}.campaign-skip{display:block;width:100%;margin-top:12px;min-height:44px;background:transparent;border:1px solid #596943;border-radius:8px;color:#d9ddc5;padding:10px;font-size:13px}.campaign-skip:hover{background:#263120}
.field-guide{top:86px;bottom:auto;width:min(315px,calc(100vw - 144px));padding:15px 39px 14px 16px;max-height:calc(100dvh - var(--panelH,140px) - 108px);overflow-y:auto;z-index:18;background:#142015f5;border-color:#bc9b4c}.field-guide .coach-action{width:100%;min-height:44px;font-size:13px;line-height:1.3}.field-guide .coach-close{min-width:34px;min-height:34px}.field-guide .coach-restore{display:none}.field-guide.collapsed{width:auto;padding:0;overflow:visible;max-height:none;background:#172316}.field-guide.collapsed>*{display:none}.field-guide.collapsed .coach-restore{display:block;min-height:44px;margin:0;border:0;background:transparent;padding:8px 12px;font-size:12px}.field-guide p{font-size:14px;line-height:1.45}.campaign-guided #campRadio{display:none}#campRadio{pointer-events:none}
body.camp #campHud{max-width:calc(100vw - 145px);box-sizing:border-box;font-size:12px;line-height:1.5}#convoyToggle{display:block;min-height:42px;margin:6px 0 0;padding:8px 12px;border:1px solid #c2a04f;border-radius:7px;background:#293821;color:#ffdf8a;font-size:13px;touch-action:manipulation}
.battle-review{display:grid;gap:10px;text-align:left;margin:16px 0;padding:14px;border:1px solid #637447;border-radius:12px;background:#142014;color:#e3e7d7;font-family:system-ui,sans-serif}.battle-review small{color:#dfbc67;font-size:10px;letter-spacing:1px;font-weight:700}.battle-review p{font-size:14px;line-height:1.5;margin:4px 0 0}.battle-review>div+div{padding-top:10px;border-top:1px solid #3c4e32}.campaign-next-goal{font-size:14px;line-height:1.5;color:#dbdabd;background:#25321b;padding:12px;border-radius:8px}.campaign-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.campaign-result-actions button{min-width:0;min-height:44px;font-size:14px;line-height:1.3;white-space:normal;padding:12px;border:1px solid #687042;border-radius:8px;background:#26311e;color:#eee5c7}.campaign-result-actions #cbNext,.campaign-result-actions #cbChosen,.campaign-result-actions #cbRetry:first-child{grid-column:1/-1;background:linear-gradient(#e2b44f,#a47424);border-color:#efd084;color:#191c0e;font-size:17px}.cbrief .ctop{min-width:0}.cbrief .ctop>div:last-child{min-width:0}.cbrief h2{overflow-wrap:anywhere}#campBrief .cbrief,#campDebrief .cbrief{box-sizing:border-box;max-height:calc(100dvh - 24px);overflow:auto}
@media(max-width:700px){body.mobile.camp #campHud{max-width:calc(100vw - 125px);font-size:11px;padding:4px 7px;top:36px}.field-guide{top:94px;left:8px;width:min(270px,calc(100vw - 116px));padding:10px 32px 10px 11px;max-height:calc(100dvh - var(--panelH,140px) - 116px)}.field-guide p{font-size:13px;margin:5px 0 9px}.field-guide small{font-size:9px}.field-guide .coach-action{padding:7px;font-size:12px}.battle-review{padding:12px}.battle-review p{font-size:13px}.cbrief h2{font-size:22px}.campaign-result-actions #cbNext,.campaign-result-actions #cbChosen,.campaign-result-actions #cbRetry:first-child{font-size:16px}.campaign-next-goal{font-size:13px}}
@media(max-height:500px) and (orientation:landscape){.field-guide{top:69px;left:8px;width:240px;padding:9px 32px 10px 12px;max-height:calc(100dvh - var(--panelH,140px) - 79px)}.field-guide p{font-size:12px}.field-guide .coach-action{min-height:44px}body.camp #campHud{top:34px;font-size:11px;max-width:calc(100vw - 150px)}#convoyToggle{display:inline-block;min-height:36px;padding:6px 10px;margin:0 0 0 6px}#campBrief .cbrief,#campDebrief .cbrief{max-width:600px!important;padding:16px 20px}.cbrief .ctop .sarge{display:none}.battle-review{grid-template-columns:1fr 1fr;gap:14px;margin:12px 0}.battle-review>div+div{border-top:0;border-left:1px solid #3c4e32;padding-top:0;padding-left:14px}}

.field-guide{max-height:calc(100dvh - var(--panelH,140px) - var(--guideTop,94px) - 12px)}

#convoyToggle{pointer-events:auto}
body.map-expanded .field-guide,body.map-expanded #campHud{visibility:hidden;pointer-events:none}
#campBrief #cbGo{background:linear-gradient(#e2b44f,#a47424);color:#191c0e;border:1px solid #efd084;min-height:48px}
#convoyToggle{min-height:44px}
body.guide-reading #info,body.guide-reading #ctx,body.guide-reading #campHud,body.campaign-guided.map-expanded #ctx{visibility:hidden;pointer-events:none}
body.mobile.camp #ctx{max-width:calc(100vw - 220px)}body.mobile.camp #ctx button{max-width:100%;white-space:normal}
body.guide-reading #msgs{visibility:hidden}
