*{box-sizing:border-box}
html,body{margin:0;height:100%;background:#0b0907;color:#e6dccb;font:13px/1.35 Georgia,'Times New Roman',serif;overflow:hidden}
button{background:#2a2119;color:#eadcc2;border:1px solid #5a4632;border-radius:3px;padding:3px 8px;font:inherit;cursor:pointer}
button:hover{background:#3a2d20}button.on{background:#6b4f2a;border-color:#c99a52}button:disabled{opacity:.45;cursor:default}
select{background:#1d1712;color:#eadcc2;border:1px solid #5a4632;font:inherit;max-width:180px}
#top{height:40px;display:flex;align-items:center;gap:10px;padding:0 10px;background:#15110d;border-bottom:1px solid #3a2d20;white-space:nowrap}
#title{font-size:17px;color:#f3c66b;letter-spacing:.5px}#clock{min-width:110px;font-variant-numeric:tabular-nums}
#res span{margin-right:12px}#res b{color:#fff}#res i{font-style:normal;font-size:11px}.pos{color:#8c6}.neg{color:#e77}
.grow{flex:1}#snd{position:relative}
#mixer{position:absolute;right:0;top:30px;background:#1a1410;border:1px solid #5a4632;padding:8px;z-index:20;width:230px}
#mixer label{display:flex;justify-content:space-between;align-items:center;margin:3px 0}#sndState{font-size:11px;color:#aa9}
#main{position:absolute;top:40px;left:0;right:0;bottom:0;display:flex}
#viewwrap{flex:1;position:relative;overflow:hidden}#inn{display:block;width:100%;height:100%;cursor:grab}
#startHint{position:absolute;left:50%;top:12px;transform:translateX(-50%);background:rgba(0,0,0,.7);padding:4px 12px;border-radius:4px;pointer-events:none}
#side{width:400px;overflow-y:auto;background:#120e0b;border-left:1px solid #3a2d20;padding:6px}
.sec{border:1px solid #2e2419;border-radius:4px;padding:6px;margin-bottom:6px;background:#17120e}
.h{color:#f3c66b;font-size:14px;margin-bottom:4px}.hint{color:#a99;font-size:12px}
#objective{background:#211910;border-color:#6b4f2a}
.res{display:grid;grid-template-columns:1fr auto;gap:2px 6px;padding:4px 0;border-top:1px solid #2a2119}
.res .nm{color:#f3c66b}.res .nm.x{color:#ddd}.res .st{font-size:11px;color:#aa9}
.bars{display:flex;gap:4px;font-size:10px;color:#aa9}.bar{width:46px;height:5px;background:#000;display:inline-block;vertical-align:middle}.bar>div{height:100%}
.proj{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:3px 0}.prog{height:5px;background:#000;margin-top:2px}.prog>div{height:100%;background:#e0b050}
#log{font-size:12px;max-height:260px;overflow-y:auto}#log div{padding:2px 0;border-top:1px solid #221a13}#log .t{color:#887}
#mapwrap{position:absolute;inset:0;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;z-index:10}
#mapbox{display:grid;grid-template-columns:500px 280px;grid-template-rows:auto 676px;gap:6px;max-height:100%;transform-origin:center}
#maptabs{grid-column:1/3}#map{background:#1b1712;cursor:crosshair}
#mapside{background:#17120e;border:1px solid #3a2d20;padding:8px;overflow-y:auto}
#mapside label{display:block}
#modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:30}
#modal .box{background:#1d1610;border:1px solid #8a6a3a;padding:16px 20px;max-width:520px}#modal h2{color:#f3c66b;margin:0 0 8px;font-weight:normal}
#mBtns{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}
.ph{color:#ff9d5c;font-size:11px}
[hidden]{display:none!important}
.res{grid-template-columns:1fr 150px}.res select{width:150px}
