:root{--gold:#caaa70;--bright:#f0d5a0;--ink:#161916;--paper:#e3d6b9;--red:#713329;--muted:#a5a28e;--border:rgba(207,177,116,.25)}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#191b18;color:var(--paper);font-family:Georgia,'Times New Roman',serif}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.35}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--bright);outline-offset:4px}[hidden]{display:none!important}#world{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}.vignette{pointer-events:none;position:fixed;inset:0;background:radial-gradient(ellipse at 65% 40%,transparent 25%,rgba(8,12,10,.45) 100%)}#masthead{position:absolute;z-index:3;inset:30px 46px auto;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.wordmark{font-size:25px;letter-spacing:7px;color:var(--gold)}.wordmark span{display:block;font-family:Arial,sans-serif;font-size:7px;letter-spacing:2px;margin-top:6px}.offline{font-family:Arial,sans-serif;font-size:9px;letter-spacing:2px;color:#e7dac0}.offline i{display:inline-block;width:5px;height:5px;background:#c9b56e;border-radius:50%;margin-right:10px;box-shadow:0 0 10px #d2ac4f}.offline span{margin:0 14px}.menu{position:fixed;inset:0;background:linear-gradient(90deg,rgba(14,21,18,.96),rgba(14,21,18,.88) 29%,rgba(14,21,18,.28) 60%,transparent);z-index:2}.menu-copy{position:absolute;left:8%;top:19%;width:410px}.eyebrow{font:9px/1.8 Arial,sans-serif;letter-spacing:2.7px;color:var(--gold);margin:0 0 18px}.menu h1{font-weight:400;line-height:.9;font-size:94px;letter-spacing:7px;margin:20px 0;color:#ecdfbd;text-shadow:0 2px 25px #0007}.menu h1 span{display:block;font-size:22px;letter-spacing:9px;line-height:2.6}.ornament{display:flex;gap:15px;align-items:center;color:var(--gold);font-size:9px;width:290px;margin:12px 0 23px}.ornament span{height:1px;background:linear-gradient(90deg,transparent,var(--gold));width:120px}.ornament span:last-child{transform:rotate(180deg)}.intro{font-size:16px;line-height:1.8;color:#bfbfa9;font-style:italic;margin-bottom:24px}.main-nav{width:320px;display:flex;flex-direction:column;gap:2px}.main-nav button{border:0;background:transparent;text-align:left;padding:11px 16px;font:10px Arial,sans-serif;letter-spacing:2px;display:flex;justify-content:space-between;align-items:center;transition:background .2s,color .2s}.main-nav button:hover{background:#caaa7014;color:var(--bright)}.main-nav button span{font-size:8px;color:#aaa28b;letter-spacing:1px}.main-nav .primary{background:var(--gold);color:#1d241e;padding:17px 16px;margin-bottom:8px;font-weight:bold}.main-nav .primary:hover{background:#e2c38c;color:#142016}.main-nav .primary span{font-size:20px;color:#354231}.maker{margin-top:25px;font:7px Arial,sans-serif;letter-spacing:1.5px;color:#8e9989}.maker strong{display:block;margin-top:9px;font-size:10px;font-weight:400;color:#bfb49a;letter-spacing:1px}.scene-caption{position:absolute;right:6%;bottom:15%;display:flex;gap:16px;align-items:center}.small-line{width:38px;height:1px;background:var(--gold)}.scene-caption p{font-size:13px;letter-spacing:4px;text-shadow:0 2px 5px #000}.scene-caption small{display:block;font:8px Arial,sans-serif;letter-spacing:2px;margin-top:10px;color:#d2c3a2}footer{position:absolute;bottom:26px;left:46px;right:46px;display:flex;justify-content:space-between;font:7px Arial,sans-serif;letter-spacing:2px;color:#b0b5a1}#loading,#fatal{position:fixed;inset:0;z-index:99;background:#15201b;display:grid;align-content:center;justify-items:center;text-align:center;padding:30px}#loading .laurel{font-size:65px;color:var(--gold)}#loading h1,#fatal h1{font-size:18px;font-weight:400;letter-spacing:5px}#loading p,#fatal p{color:#b5b29c;font-size:13px}#hud{position:fixed;inset:0;pointer-events:none;z-index:2}.hud-top{position:absolute;top:31px;left:38px;right:38px;display:flex;justify-content:space-between;text-shadow:0 2px 6px #000}.hud-top .eyebrow{margin:0;font-size:8px}.hud-top h2{margin:6px 0;font-size:24px;font-weight:400}.hud-top #date{font:8px Arial;letter-spacing:2px;color:#dad4bd}.hud-top #resources{display:flex;gap:24px;align-items:start;padding:10px;background:#15201a88;border-bottom:1px solid var(--border)}#resources span{display:block;font:9px Arial;letter-spacing:1px;color:#cabf9f}#resources strong{display:block;font:21px Georgia;color:#f1dfb3;margin:7px 0}.compass{position:absolute;top:32px;left:43%;width:14%;display:flex;justify-content:space-between;font:9px Arial;letter-spacing:2px;border-bottom:1px solid var(--border);padding:0 0 12px;color:#b8b69e}.compass b{position:absolute;top:28px;width:100%;text-align:center;color:#ead4a7;font-weight:400}#crosshair{position:absolute;top:50%;left:50%;font:24px Georgia;color:#fff8;transform:translate(-50%,-50%)}#interaction{position:absolute;bottom:19%;left:50%;transform:translateX(-50%);padding:14px 22px;border:1px solid var(--border);background:#112019dd;font:11px Arial;letter-spacing:1px;white-space:nowrap}#objective{position:absolute;right:37px;bottom:105px;background:#18201bbb;border-left:2px solid var(--gold);padding:18px 23px;max-width:300px}#objective .eyebrow{font-size:8px}#objective p{font-size:13px;line-height:1.7;margin:10px 0 0}#objective small{color:#b7b7a1}.hud-bottom{position:absolute;bottom:28px;left:38px;right:38px;display:flex;justify-content:space-between;font:8px Arial;letter-spacing:1px}kbd{display:inline-block;font:9px Arial;padding:5px 7px;border:1px solid #aaa8;background:#17221cb0;margin-right:7px;color:#efdab0}.hud-bottom kbd:not(:first-child){margin-left:18px}#unlock-hint{position:absolute;bottom:65px;left:50%;transform:translateX(-50%);background:#18271dd9;border:1px solid var(--border);padding:11px 18px;font:9px Arial;letter-spacing:1px;pointer-events:auto}#panel-backdrop{position:fixed;inset:0;z-index:10;background:#0c120fa6;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:28px}#panel{width:940px;max-width:100%;max-height:88vh;overflow:auto;background:linear-gradient(120deg,#202921,#131e18);border:1px solid #9a895b;box-shadow:0 25px 120px #000a;padding:30px 38px}.panel-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:23px;margin-bottom:25px}.panel-header .eyebrow{margin-bottom:6px}.panel-header h2{font-size:34px;font-weight:400;margin:0;letter-spacing:1px}.icon-button{background:transparent;border:1px solid var(--border);width:34px;height:34px;font-size:14px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.tabs button,.action,.panel-button{border:1px solid var(--border);background:#caaa700b;padding:11px 15px;font:10px Arial;letter-spacing:1px;transition:background .2s}.tabs button:hover,.action:hover,.panel-button:hover{background:#caaa7029}.tabs button.active,.action.gold{background:var(--gold);color:#17231c}.action.danger{border-color:#ad665c;color:#e6a89c}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid var(--border);padding:20px;background:#0001}.card h3{font-size:19px;font-weight:400;color:#ebd4a6;margin:0 0 12px}.card p,.prose p{font-size:14px;line-height:1.7;color:#c8c8b1}.card small,.muted{font:10px/1.8 Arial;color:#a2ab99}.card button{margin-top:10px}.stat{font-size:34px;color:var(--bright)}.row{display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid var(--border);padding:15px 0}.row h3{font-size:16px;font-weight:400;margin:0 0 6px}.row p{font-size:12px;line-height:1.7;margin:0;color:#b6bfa9}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.notice{padding:13px 17px;background:#caaa7010;border-left:2px solid var(--gold);font:12px/1.8 Arial;color:#c8c6ae;margin:18px 0}.case-quote{font-size:21px!important;font-style:italic;color:#e0cfac!important;border-left:1px solid var(--gold);padding:15px 22px}.label{font:9px Arial;letter-spacing:2px;color:var(--gold);text-transform:uppercase}.tag{display:inline-block;padding:5px 8px;border:1px solid var(--border);font:8px Arial;letter-spacing:1px;color:var(--gold);margin-right:6px}.field{margin:20px 0}.field label{display:block;font:11px Arial;letter-spacing:1px;margin-bottom:10px;color:#c6c9b6}select,input[type=text]{width:100%;border:1px solid var(--border);background:#111e17;color:#e6d7b4;padding:12px}input[type=range]{width:100%;accent-color:var(--gold)}.log{max-height:250px;overflow:auto}.log p{padding:11px 0;border-bottom:1px solid var(--border);font:12px/1.7 Arial;color:#bfc5b0;margin:0}.log time{color:var(--gold);font-size:9px;margin-right:10px}.map{position:relative;height:290px;background:radial-gradient(ellipse at 40% 50%,#5f71515c,transparent 60%),linear-gradient(20deg,#152b2a,#273b2b);border:1px solid var(--border);overflow:hidden}.map:before{content:'MARE INTERNVM';position:absolute;top:60%;left:30%;font:12px Georgia;letter-spacing:9px;color:#acb7a16b;transform:rotate(-12deg)}.map-point{position:absolute;background:#17251b;border:1px solid var(--gold);padding:8px 12px;font:9px Arial;color:var(--bright)}.map-point:before{content:'◆';margin-right:7px;color:var(--gold)}.key-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;font:12px Arial;color:#c5cbb5}.key-list div{display:flex;align-items:center;gap:10px}#subtitle{position:fixed;bottom:11%;left:50%;transform:translateX(-50%);max-width:650px;width:80%;background:#101b16ed;border-top:1px solid var(--gold);padding:16px 24px;text-align:center;z-index:8;font-size:17px;line-height:1.6}#subtitle strong{display:block;font:9px Arial;color:var(--gold);letter-spacing:2px;margin-bottom:6px}#toast{position:fixed;top:110px;left:50%;transform:translateX(-50%);background:#19261bf2;border:1px solid var(--gold);padding:13px 23px;max-width:75%;font:12px/1.7 Arial;z-index:30}.credit-title{font-size:50px!important;letter-spacing:7px;color:var(--bright)!important}.error{color:#efb1a1!important}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}@media(max-height:820px){.menu-copy{top:14%}.menu h1{font-size:75px}.main-nav button{padding:9px 16px}.intro{margin:15px 0}.maker{margin-top:16px}}@media(max-width:760px){#masthead{inset:20px}.offline{display:none}.menu-copy{left:8%;width:84%;top:16%}.menu h1{font-size:66px}.menu h1 span{font-size:16px;letter-spacing:7px}.scene-caption{display:none}.main-nav{width:100%;max-width:330px}footer{left:20px;right:20px;font-size:6px}footer span:last-child{display:none}.grid,.grid.two,.settings-grid{grid-template-columns:1fr}#panel{padding:22px}.hud-top{left:20px;right:20px}.hud-top #resources{gap:10px}.hud-top #resources span{font-size:7px}#resources strong{font-size:15px}.compass,#objective{display:none}.hud-bottom{left:20px;right:20px;font-size:7px;gap:10px}.hud-bottom span:first-child{display:none}.key-list{grid-template-columns:1fr}.panel-header h2{font-size:27px}.row{align-items:start}.row .actions{margin-top:0}}

#court-status{position:absolute;bottom:155px;left:50%;transform:translateX(-50%);max-width:80%;width:max-content;padding:12px 20px;background:#17221de0;border-top:1px solid var(--gold);color:#e7d4aa;font:10px/1.7 Arial,sans-serif;letter-spacing:1.8px;text-align:center}#interaction span{padding:0 12px;opacity:.5}#world:focus{outline:none}#unlock-hint{pointer-events:auto}#panel-backdrop:not([hidden])~#court-status{display:none}

#court-status{bottom:116px;font-size:9px}#interaction{bottom:66px}#objective{max-width:245px}#court-status[hidden]{display:none}
#court-status{top:124px;bottom:auto}#interaction{left:38px;bottom:78px;transform:none;font-size:10px}@media(max-width:760px){#court-status{top:140px;font-size:8px}#interaction{left:20px;bottom:70px;max-width:90%}}

#load-progress{width:min(400px,70vw);height:5px;margin-top:24px;accent-color:#d9b96f;border:0;background:#302921}#load-percent{font-variant-numeric:tabular-nums;font-size:12px;letter-spacing:.2em;color:#b7a884}#loading{z-index:1000;background:#171513}

#load-progress{appearance:none;-webkit-appearance:none;border-radius:0}#load-progress::-webkit-progress-bar{background:#3b3429}#load-progress::-webkit-progress-value{background:#c7a96a}#load-progress::-moz-progress-bar{background:#c7a96a}
