*{box-sizing:border-box}body{margin:0;overflow:hidden;font-family:Arial,'Noto Sans KR',sans-serif;color:#172b43;background:#dce8f0}#viewport{position:fixed;inset:0}canvas{display:block}header{position:fixed;top:20px;left:24px;right:24px;height:68px;background:#ffffffed;backdrop-filter:blur(12px);border:1px solid #fff;border-radius:14px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;box-shadow:0 6px 24px #12304a0d}.brand b{font-size:25px;letter-spacing:-1px}.brand b span{margin-left:9px;font-size:13px;letter-spacing:1px;color:#de343e}.brand small{display:block;font-size:12px;color:#5e6e7e;margin-top:3px}nav{display:flex;gap:5px}button{font:inherit;border:0;cursor:pointer;color:#263e57;background:#eef2f6;border-radius:8px;padding:11px 15px;font-size:14px}button:hover{background:#dce6ef}button.active{background:#17344f;color:#fff}button:focus-visible{outline:3px solid #da3949;outline-offset:2px}aside{position:fixed;top:104px;bottom:24px;left:24px;width:275px;background:#fffffff2;border-radius:14px;padding:24px;overflow-y:auto;box-shadow:0 10px 40px #10294112}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:1.8px;color:#758397}h1{font-size:23px;margin:10px 0}p{font-size:14px;line-height:1.65;color:#617187}.intro{margin-bottom:21px}.summary{display:flex;justify-content:space-between;padding:18px 0;border-top:1px solid #e4e9ef;border-bottom:1px solid #e4e9ef;font-size:12px;color:#6f7d8c}.summary strong{display:block;font-size:22px;color:#20384e;margin-bottom:6px}.summary small{font-size:12px}#tanklist{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:22px 0}#tanklist button{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:10px;background:#f0f3f6;border:1px solid transparent}#tanklist button.selected{border-color:#dc3b45;background:#fff0f0;color:#a9232d}#tanklist button span{width:5px;height:5px;background:#a4b3c0;border-radius:50%}#detail{border-top:1px solid #e4e9ef;padding-top:18px}h2{font-size:20px;margin:10px 0}dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:14px}dt{color:#718194}dd{margin:0;text-align:right;font-weight:bold}.note{font-size:12px;border-top:1px solid #e4e9ef;padding-top:16px;margin-bottom:0}#help{position:fixed;bottom:24px;left:50%;transform:translateX(-35%);background:#102940e8;color:white;border-radius:10px;padding:14px 20px;display:flex;align-items:center;gap:14px;max-width:calc(100% - 48px);font-size:14px}#help span{color:#cad7e2;font-size:13px}#capture{font-size:12px;padding:8px;white-space:nowrap}#mini{position:fixed;right:24px;bottom:24px;padding:12px;background:#ffffffed;border-radius:12px;box-shadow:0 6px 20px #193b4914}#mini span{display:block;font-size:12px;color:#66798b;margin-top:5px}#touch{display:none;position:fixed;bottom:110px;left:24px;text-align:center}#touch button{margin:3px;background:#16334cd9;color:#fff;width:45px;height:45px;padding:0;touch-action:none}#loading{position:fixed;inset:0;display:grid;place-items:center;background:#e8f0f5;font-size:16px}#viewport canvas{touch-action:none}@media(max-width:900px){#mini{display:none}#help{left:auto;right:24px;transform:none;max-width:calc(100% - 350px);display:block}#help span{display:block;margin-top:6px}}@media(max-width:600px){header{top:10px;left:10px;right:10px;height:60px;padding:0 12px}.brand b{font-size:21px}.brand small{font-size:11px}nav button{font-size:12px;padding:10px 8px}#full{display:none}aside{top:80px;left:10px;bottom:auto;width:168px;max-height:46vh;padding:14px}h1{font-size:18px}.intro,.summary,.note{display:none}#tanklist{margin:12px 0;gap:4px}#tanklist button{font-size:11px;padding:8px 5px}#detail p{font-size:12px}#detail h2{font-size:17px}dl{font-size:12px}#help{bottom:15px;left:10px;right:10px;max-width:none;padding:12px}#touch{left:auto;right:15px;bottom:100px}body.walk #touch{display:block}}
.map-settings{border-top:1px solid #e4e9ef;padding-top:16px;margin-top:16px}.map-settings label{display:flex;gap:8px;align-items:center;font-size:14px}.map-settings input{width:17px;height:17px;accent-color:#17344f}.map-settings p{font-size:12px;margin-bottom:0}#credits{position:fixed;bottom:8px;right:25px;font-size:12px;line-height:1.4;text-align:right;color:#17344f;background:#ffffffdc;padding:5px 8px;border-radius:5px}#credits a{color:inherit}#mini{bottom:67px}#help{bottom:67px}@media(max-width:600px){header .brand small{display:none}header .brand b{font-size:17px}header .brand b span{font-size:10px;margin-left:4px}nav{gap:3px}nav button{font-size:11px;padding:10px 6px}#reset{display:none}#credits{font-size:10px;left:10px;right:10px;bottom:5px}#help{bottom:53px}#touch{bottom:145px}.map-settings label{font-size:12px}.map-settings p{font-size:11px}}
#stationlist{display:flex;gap:7px;margin-top:18px}#stationlist button{flex:1;font-size:14px;background:#f7eccb;color:#705412;padding:10px 5px}#stationlist button:hover{background:#ecdaa3}@media(max-width:600px){#stationlist button{font-size:12px}}
#pumpcontrols{display:flex;gap:7px;margin-top:18px}#pumpcontrols button{flex:1;font-size:13px;background:#e0eaf1;color:#264c69;padding:10px 4px}#pumpcontrols button:hover{background:#cbdce9}@media(max-width:600px){#pumpcontrols button{font-size:11px}}

#perspective{position:fixed;top:104px;right:24px;display:flex;gap:4px;padding:5px;background:#fffffff2;border-radius:12px;box-shadow:0 6px 24px #12304a18}#perspective button{min-width:76px;font-size:14px}#perspective button[aria-pressed="true"]{background:#17344f;color:#fff}body.walk #help{max-width:calc(100% - 650px);flex-wrap:wrap}body.walk #help b{white-space:nowrap}@media(max-width:900px){body.walk #help{max-width:calc(100% - 350px)}}@media(max-width:600px){#perspective{top:80px;right:10px;padding:4px;gap:3px}#perspective button{min-width:62px;padding:10px 8px}body.walk #help{max-width:none}body.walk aside{max-height:40vh}}

@media(pointer:coarse){body.walk #touch{display:block;left:auto;right:15px;bottom:145px}#touch button{width:48px;height:48px}}

#stairAction,#tankClimb{background:#d4a63c;color:#172b43;font-size:14px}#stairAction[hidden]{display:none}#tankClimb{width:100%;margin:8px 0}body.walk #help{max-width:calc(100% - 380px)}@media(max-width:600px){body.walk #help{max-width:none}}

/* Cinematic viewing mode, based on V1. */
.version-link{font-size:14px;color:#314760;text-decoration:none;padding:10px 12px;border:1px solid #d4dce3;border-radius:8px;margin-right:4px}header{height:72px}#cinemaToggle,#cinemaTour{background:#263a4c;color:#fff}#exitCinema{position:fixed;right:24px;top:22px;z-index:20;color:#eae7df;background:#192631b8;border:1px solid #ffffff35;backdrop-filter:blur(10px)}#exitCinema[hidden],#cinemaCaption[hidden]{display:none}#cinemaCaption{position:fixed;bottom:64px;left:5vw;color:#fff;text-shadow:0 2px 14px #0008;pointer-events:none}#cinemaCaption strong{display:block;font-size:38px;letter-spacing:8px;font-weight:500}#cinemaCaption span{font-size:12px;letter-spacing:3px;display:block;margin-top:10px}.clean-view header,.clean-view aside,.clean-view #mini,.clean-view #help,.clean-view #perspective,.clean-view #touch{display:none}.clean-view:before,.clean-view:after{content:'';position:fixed;left:0;right:0;height:4vh;background:#0b1118;z-index:10;pointer-events:none}.clean-view:before{top:0}.clean-view:after{bottom:0}.clean-view #credits{z-index:11;bottom:4px;background:transparent;color:#b9c2ca;font-size:10px}.clean-view #exitCinema{top:calc(4vh + 14px)}.clean-view #viewport{filter:saturate(.94) contrast(1.025)}@media(max-width:1100px){header{height:auto;min-height:72px;padding:12px 16px;gap:10px}nav{flex-wrap:wrap;justify-content:flex-end}nav button,.version-link{font-size:13px;padding:9px 10px}aside{top:125px}#perspective{top:125px}}@media(max-width:600px){header{display:block;padding:10px 12px}header .brand{margin-bottom:8px}nav{justify-content:flex-start;gap:4px}nav button,.version-link{font-size:12px;padding:8px}aside{top:155px;max-height:40vh}#perspective{top:155px}#cinemaCaption strong{font-size:26px}#cinemaCaption span{font-size:10px;letter-spacing:2px}#exitCinema{right:12px;font-size:13px}.clean-view #credits{font-size:8px}}

#facilitylist{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}#facilitylist button{flex:1 0 28%;font-size:13px;padding:7px 8px}

#partiallist{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px}#partiallist button{font-size:13px;padding:7px 6px}

.tk108-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:10px 0}.tk108-grid button{font-size:11px;text-align:left;line-height:1.5;padding:8px 5px}.tk108-grid button[aria-pressed=true]{background:#d9e8f2;color:#17344f}.tk108-filter{display:flex;align-items:center;gap:6px;font-size:12px}.tk108-explanation h3{font-size:14px;margin:14px 0 6px}.tk108-flow{font-size:12px;line-height:1.7;background:#e6eef2;border-radius:6px;padding:10px;color:#17344f}.tk108-marker{position:fixed;z-index:5;pointer-events:none;transform:translate(-50%,-135%);padding:6px 10px;border:2px solid;border-radius:7px;background:#ffffffed;color:#17344f;font:bold 12px system-ui;box-shadow:0 2px 12px #0002;white-space:nowrap}.tk108-marker[hidden]{display:none}

/* Compact tank inspection interface. */
#legacyControls{display:none!important}aside{top:24px;bottom:auto;max-height:calc(100vh - 48px);padding:20px;width:285px}.summary{border-top:0;padding-top:0;gap:14px}.summary strong{font-size:23px}#detail[hidden]{display:none}#detail{margin-top:14px}#perspective{top:24px;right:24px}#perspective button{min-width:80px}#credits{font-size:9px;background:#ffffffa8}#detail>.eyebrow{display:none}.tk108-grid{margin:14px 0 10px}@media(max-width:600px){aside{top:12px;left:12px;width:210px;max-height:calc(100vh - 24px);padding:14px}.summary{display:flex}.summary strong{font-size:18px}.summary small{font-size:10px}#perspective{top:12px;right:12px}.tk108-grid{grid-template-columns:1fr}#detail dl{font-size:12px}.tk108-filter{font-size:11px}#touch{bottom:70px}}

#viewport,.clean-view #viewport{filter:saturate(1.12) contrast(1.035)}
