:root{font-family:Inter,"Aptos","Segoe UI",Arial,sans-serif;color:#f7f5ed;background:#18231c;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid #d9ba77;outline-offset:4px}button:disabled{cursor:not-allowed}#app{position:relative;isolation:isolate;min-height:580px;background:linear-gradient(180deg,#749188,#d0af82)}#stage{position:absolute;inset:0;width:100%;height:100%}#stage canvas{display:block;width:100%;height:100%;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(90deg,rgba(9,24,20,.72) 0%,rgba(8,19,16,.34) 24%,transparent 48%,rgba(11,24,20,.13) 100%),linear-gradient(0deg,rgba(12,20,17,.64) 0%,transparent 18%,transparent 73%,rgba(14,25,22,.45) 100%)}.topbar{position:absolute;z-index:8;left:0;right:0;top:0;height:93px;padding:25px 43px;display:flex;align-items:center;border-bottom:1px solid rgba(238,235,216,.16);gap:20px;pointer-events:none}.brand{display:flex;gap:14px;align-items:center;min-width:220px}.brand strong{font-weight:750;letter-spacing:.19em;font-size:13px}.brand-em{color:#efbd71}.brand small{font-size:8px;letter-spacing:.24em;opacity:.52;display:block;padding-top:7px;font-weight:700}.brand-symbol{height:29px;width:29px;display:flex;align-items:end;gap:3px;border-bottom:1.8px solid #d7b886;padding-bottom:2px;transform:skew(-10deg)}.brand-symbol span{display:block;flex:1;background:#d4ad71;border-radius:10px 10px 0 0;height:60%;clip-path:polygon(50% 0%,100% 100%,0 100%)}.brand-symbol span:nth-child(2){height:100%}.brand-symbol span:nth-child(3){height:73%}.top-context{margin-left:auto;font-size:9px;letter-spacing:.17em;font-weight:700;color:#f4eddb;opacity:.81;white-space:nowrap}.online{display:inline-block;width:5px;height:5px;background:#d5bc80;border-radius:50%;box-shadow:0 0 0 4px rgba(213,188,128,.12);vertical-align:middle;margin-right:9px}.top-separator{border-left:1px solid rgba(255,255,255,.37);height:12px;margin:0 18px}.icon-button{pointer-events:auto;color:#f7eed5;width:36px;height:36px;border:1px solid rgba(255,250,220,.35);border-radius:50%;background:#12201959;display:grid;place-items:center;font-size:18px;line-height:1;font-family:Georgia,serif}.icon-button:hover{background:#d8bd7a;color:#17251b}.hero-copy{position:absolute;top:20.5%;left:5.2%;width:min(470px,39vw);z-index:3;transition:opacity .3s,transform .45s;pointer-events:none}.hero-copy.minimized{opacity:.12;transform:translateY(-16px)}.eyebrow{font-size:9px;letter-spacing:.21em;font-weight:800;white-space:nowrap;color:#f1dbb4;display:flex;align-items:center;gap:11px}.eyebrow .line{width:20px;height:1px;background:#cfb17a}.small-cross{font-size:7px;color:#c9bd9a}.hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-weight:normal;font-size:clamp(74px,10vw,154px);letter-spacing:-.094em;line-height:.94;margin:34px 0 13px;text-shadow:0 4px 55px #17261b44}.title-period{color:#cdaa69}.pronounce{font-size:11px;letter-spacing:.20em;font-weight:700;line-height:1.8;color:#eddfc4}.pronounce .dot{color:#c9a976;padding:0 8px}.intro{font-size:15px;line-height:1.87;font-weight:400;color:rgba(248,243,227,.82);max-width:325px;margin:25px 0 32px}.hero-stats{display:flex;gap:22px;border-top:1px solid rgba(242,231,211,.30);padding-top:22px}.hero-stats div:not(:last-child){border-right:1px solid rgba(242,231,211,.22);padding-right:20px}.hero-stats small{font-size:8px;letter-spacing:.19em;color:#e6cfa5;display:block;font-weight:800;white-space:nowrap;margin-bottom:9px}.hero-stats b{font-size:11px;letter-spacing:.08em;font-weight:750;white-space:nowrap}.control-panel{position:absolute;z-index:6;right:39px;top:123px;width:358px;background:rgba(18,30,25,.87);border:1px solid rgba(242,226,190,.22);box-shadow:0 23px 74px rgba(7,20,15,.3),0 0 0 1px rgba(12,28,20,.12);backdrop-filter:blur(21px);-webkit-backdrop-filter:blur(21px);padding:26px 25px 0;color:#f4f1e6}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:10px}.panel-kicker{font-size:8px;font-weight:800;letter-spacing:.23em;color:#d9b77c}.panel-heading h2{font-family:Georgia,serif;font-weight:400;font-size:25px;letter-spacing:-.025em;line-height:1.12;margin:11px 0 22px}.panel-id{font-size:10px;white-space:nowrap;letter-spacing:.06em;color:#b4af9f}.tabs{display:flex;border-bottom:1px solid rgba(244,234,207,.2);gap:4px}.tab{padding:0 13px 14px;background:transparent;color:#938f84;border:none;border-bottom:2px solid transparent;font-size:9px;letter-spacing:.12em;font-weight:850;flex:1}.tab:hover{color:#f5edce}.tab.active{color:#efd6a9;border-bottom-color:#ccae74}.tab-body{padding:26px 0 20px;min-height:238px}.tab-body.hidden{display:none}.control-label{color:#eee9da;font-size:10px;letter-spacing:.13em;font-weight:800;display:flex;justify-content:space-between;margin:0 0 15px}.control-label span{color:#d5ae71;font-size:9px;white-space:nowrap}.controls-subheading{margin-top:28px}.camera-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.cam-btn{border:1px solid rgba(244,234,207,.17);color:#c8c3b6;background:rgba(255,255,255,.035);text-align:left;font-size:8px;letter-spacing:.10em;font-weight:800;padding:13px 9px;transition:background .2s,border .2s;white-space:nowrap;display:flex;align-items:center;gap:7px}.cam-btn span{font-size:17px;color:#c5a676;font-weight:400;line-height:0}.cam-btn.selected,.cam-btn:hover{border-color:#bd9c69;background:rgba(202,166,104,.13);color:#f5e7cb}.small-tips{font-size:12px;line-height:1.65;color:#bdbab0}.toggle-line{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 0;font-size:11px;line-height:1.4;color:#dfddcf;cursor:pointer}.toggle-line input{position:absolute;opacity:0;width:1px;height:1px}.switch{width:32px;height:18px;display:inline-block;flex:none;border-radius:20px;background:#48504a;border:1px solid #7e7c6f;position:relative;transition:background .2s}.switch:before{content:"";position:absolute;width:10px;height:10px;top:3px;left:3px;border-radius:50%;background:#d4d1c5;transition:transform .2s}.toggle-line input:checked+.switch{background:#c3a16a}.toggle-line input:checked+.switch:before{transform:translateX(13px);background:#1c2b21}.toggle-line input:focus-visible+.switch{outline:2px solid #e9d1a2;outline-offset:4px}input[type=range]{width:100%;height:4px;appearance:none;-webkit-appearance:none;border-radius:3px;background:linear-gradient(90deg,#c9a66d,#6d6c5d);display:block;margin:22px 0 16px;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#ead3aa;border:3px solid #2a332b;width:17px;height:17px;border-radius:50%;box-shadow:0 0 0 1px #e9d3ae}input[type=range]::-moz-range-thumb{background:#ead3aa;border:3px solid #2a332b;width:12px;height:12px;border-radius:50%}.range-ends{display:flex;justify-content:space-between;gap:12px;color:#aaa69b;font-size:8px;font-weight:800;letter-spacing:.13em}.status-box{border-left:2px solid #b99960;background:rgba(244,226,180,.06);color:#d9d5c6;font-size:12px;line-height:1.65;padding:12px 12px;margin-top:18px}.outline-action{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:17px;padding:13px 15px;background:rgba(211,180,119,.09);border:1px solid rgba(221,193,140,.32);color:#f3ddaf;font-size:9px;letter-spacing:.12em;font-weight:800}.outline-action:hover{background:rgba(211,180,119,.22)}.outline-action span{font-size:14px}.panel-footer{display:flex;gap:13px;align-items:center;border-top:1px solid rgba(245,224,188,.16);padding:17px 0 19px}.panel-sigil{font-size:26px;color:#c9ab75}.panel-footer>span:last-child{font-size:9px;letter-spacing:.105em;line-height:1.8;color:#9eaaa0;font-weight:700}.panel-footer i{font-style:normal;color:#c9ab75;margin:0 4px}.bottom-left{position:absolute;bottom:39px;left:42px;display:flex;align-items:center;z-index:4;gap:13px;font-size:9px;letter-spacing:.15em;color:#e2d8c5;font-weight:700}.bottom-rule{height:1px;width:40px;background:#c9ad79}.bottom-divider{opacity:.6}.bottom-right{position:absolute;bottom:26px;right:42px;z-index:5;display:flex;gap:26px;align-items:center}.bottom-right button{background:none;border:none;color:#f6e8d0;font-size:20px;display:flex;align-items:center;gap:8px}.bottom-right button span{letter-spacing:.14em;font-size:9px;font-weight:800}.compass{width:47px;height:47px;border-radius:50%;border:1px solid rgba(239,227,205,.53);display:flex;flex-direction:column;justify-content:center;align-items:center;color:#e2cfad}.compass-arrow{font-size:22px;line-height:18px}.compass small{font-size:8px;letter-spacing:.1em}#hotspot-layer{position:absolute;inset:0;z-index:4;pointer-events:none}.marker{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:9px;white-space:nowrap;border:none;background:transparent;color:#fff;pointer-events:auto;padding:9px 10px}.marker-cross{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;border:1px solid rgba(250,233,201,.92);color:#fff5dc;background:rgba(28,46,37,.68);box-shadow:0 0 0 7px rgba(236,207,151,.095),0 3px 10px #15201945;font-size:17px;font-weight:300;transition:background .2s,transform .2s}.marker-label{background:#14251ccd;padding:6px 8px;font-size:8px;letter-spacing:.14em;font-weight:850;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;border:1px solid rgba(222,207,173,.25)}.marker:hover .marker-label,.marker.active .marker-label{opacity:1;transform:none}.marker:hover .marker-cross,.marker.active .marker-cross{background:#c3a06b;color:#1e251d;transform:scale(1.08)}.info-drawer{position:absolute;z-index:7;bottom:104px;left:42px;width:min(375px,calc(100vw - 86px));padding:25px 27px 24px;background:rgba(19,31,26,.91);border:1px solid rgba(218,190,133,.35);backdrop-filter:blur(19px);box-shadow:0 22px 70px rgba(0,0,0,.29);transform:translateY(25px);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}.info-drawer.open{transform:none;opacity:1;pointer-events:auto}.info-close{position:absolute;right:15px;top:13px;display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#e3ceaa;background:rgba(255,255,255,.04)}.info-close:hover{background:rgba(255,255,255,.12)}.info-index{font-size:9px;font-weight:800;letter-spacing:.19em;color:#c6a677}.info-drawer h3{font:normal 30px/1.17 Georgia,serif;letter-spacing:-.04em;margin:12px 30px 8px 0}.info-subtitle{font-size:9px;letter-spacing:.12em;color:#d4c3a0;font-weight:800;line-height:1.5}.info-divider{height:1px;background:rgba(238,221,187,.19);margin:20px 0}.info-drawer p{font-size:13px;line-height:1.75;color:#e5e0d3;margin:0}.info-note{font-size:10px;line-height:1.55;color:#abae9f;margin-top:17px}.focus-button{margin-top:22px;width:100%;padding:15px 17px;display:flex;justify-content:space-between;background:#d2b27c;color:#203027;font-size:9px;letter-spacing:.14em;font-weight:850;border:0}.focus-button span{font-size:14px}.focus-button:hover{background:#edd3a1}.modal-shade{position:absolute;z-index:20;inset:0;display:grid;place-items:center;background:rgba(3,14,10,.76);backdrop-filter:blur(10px)}.modal-shade.hidden{display:none}.modal{position:relative;width:min(480px,calc(100vw - 32px));background:#1b2b23;border:1px solid rgba(233,208,153,.32);padding:38px;color:#f7f3e9;box-shadow:0 30px 100px #0008}.modal h3{font:normal 37px/1.15 Georgia,serif;margin:20px 0}.modal p{font-size:13px;line-height:1.75;color:#d1d2c5;margin:17px 0}.modal b{color:#e4c993}.modal kbd{font-family:monospace;color:#e8d1a6;background:#2c3c31;padding:2px 5px}.loading-screen{position:absolute;inset:0;z-index:25;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#15271e;transition:opacity 1s,visibility 1s;pointer-events:all}.loading-screen.loaded{opacity:0;visibility:hidden;pointer-events:none}.loader-symbol{font-size:49px;font-weight:100;color:#dfbc83;animation:spin 4s linear infinite}.loading-heading{font:normal 52px Georgia,serif;letter-spacing:-.02em;margin-top:28px}.loading-sub{font-size:10px;letter-spacing:.24em;color:#b5b49c;margin-top:15px}.loading-bar{width:170px;height:2px;background:#4b5d4f;margin-top:29px;overflow:hidden}.loading-bar span{display:block;width:40%;height:100%;background:#d8bb86;animation:load 1.3s infinite}@keyframes load{from{transform:translateX(-100%)}to{transform:translateX(350%)}}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1160px){.hero-copy{left:4%;width:340px;top:24%}.hero-copy h1{font-size:100px}.intro{font-size:14px;max-width:260px}.hero-stats{gap:10px}.hero-stats div:not(:last-child){padding-right:10px}.hero-stats small{font-size:7px}.hero-stats b{font-size:9px}.control-panel{right:22px;width:320px}.topbar{padding-left:26px;padding-right:26px}.bottom-left{left:26px}.bottom-right{right:26px}.info-drawer{left:26px}}@media(max-height:820px) and (min-width:761px){.control-panel{top:107px;padding:19px 20px 0}.panel-heading h2{margin:8px 0 14px;font-size:22px}.tab-body{padding:19px 0 16px;min-height:195px}.controls-subheading{margin-top:18px}.toggle-line{margin-top:14px}.panel-footer{padding:11px 0 13px}.hero-copy{top:23%}.hero-copy h1{font-size:105px;margin:20px 0 6px}.intro{margin:15px 0 20px}}@media(max-width:760px){#app{min-height:480px}.topbar{height:66px;padding:13px 18px}.brand{min-width:initial}.brand strong{font-size:11px}.brand small{font-size:6px}.brand-symbol{width:22px;height:23px}.top-context{display:none}.hero-copy{top:85px;left:21px;width:min(300px,72vw)}.hero-copy h1{font-size:clamp(66px,14vw,95px);margin:16px 0 6px}.eyebrow{font-size:7px;gap:6px}.pronounce{font-size:9px;letter-spacing:.1em}.intro{font-size:12px;max-width:218px;margin:12px 0 0;line-height:1.55}.hero-stats{display:none}.control-panel{top:auto;bottom:14px;right:13px;left:13px;width:auto;padding:15px 17px 0;max-height:43vh;overflow:auto;scrollbar-width:thin}.panel-heading h2{font-size:20px;margin:5px 0 12px}.panel-id{font-size:9px}.tab{padding-bottom:10px;font-size:8px}.tab-body{padding:12px 0 13px;min-height:initial}.control-label{margin-bottom:9px;font-size:9px}.controls-subheading{margin-top:14px}.camera-grid{gap:5px}.cam-btn{padding:9px;font-size:8px}.small-tips{display:none}.toggle-line{margin-top:9px}.outline-action{margin-top:10px;padding:9px 12px}.panel-footer{display:none}.bottom-left,.bottom-right{display:none}.marker{padding:6px}.marker-cross{width:26px;height:26px}.marker-label{display:none}.info-drawer{bottom:calc(43vh + 21px);left:13px;right:13px;width:auto;padding:18px 21px 16px;max-height:31vh;overflow:auto}.info-drawer h3{font-size:24px;margin:8px 30px 5px 0}.info-divider{margin:11px 0}.info-drawer p{font-size:11px;line-height:1.55}.info-note{display:none}.focus-button{margin-top:13px;padding:10px 12px}.status-box{font-size:11px;padding:8px}.modal{padding:27px;max-height:85vh;overflow:auto}.modal h3{font-size:31px}}@media(max-width:420px){.hero-copy{top:78px}.hero-copy h1{font-size:62px}.intro{max-width:190px;font-size:11px}.panel-kicker{font-size:7px}.control-panel{max-height:39vh}.info-drawer{bottom:calc(39vh + 22px);max-height:33vh}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
