@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600&display=swap');
:root{color-scheme:dark;font-family:Arial,'Noto Serif SC',serif;background:#101b16;color:#e7e7d6}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 70% 30%,#213a2b55,transparent 60%)}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:transparent;border:1px solid #a2b18c40;border-radius:3px;padding:12px 16px}button:hover{background:#bbcda219}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #d2df9f;outline-offset:4px}a{color:inherit;text-decoration:none}header{height:106px;margin:0 5vw;border-bottom:1px solid #b7c39d30;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Georgia,serif;font-size:31px;letter-spacing:7px}.brand span{display:block;font:9px Arial;letter-spacing:2px;margin-top:9px}.edition{font-size:12px;letter-spacing:4px;color:#a1ad98}header button{font-size:12px;border:0}main{max-width:1600px;margin:auto;display:grid;grid-template-columns:42% 58%;padding:48px 5vw 32px;gap:0}.intro{padding:45px 10px 0 0}.eyebrow{font:10px Arial;letter-spacing:2.5px;color:#afbf9d}h1{font-family:'Noto Serif SC',serif;font-size:clamp(48px,5.3vw,85px);font-weight:400;line-height:1.37;letter-spacing:4px;margin:27px 0}h1 em{font-style:normal;color:#b8ce93}h1 sup{font-family:Georgia;font-size:32px;vertical-align:top;margin:12px 0 0 12px;display:inline-block;color:#a3be85}.intro p{line-height:2.2;font-size:13px;color:#a7b1a0;letter-spacing:2px}.actions{display:flex;flex-direction:column;align-items:start;gap:13px;margin:32px 0}.primary{background:#bed19c;color:#182719;border:0;padding:18px 23px;min-width:240px;text-align:left;font-size:13px}.primary:hover{background:#d2dfa9}.primary span{float:right}.actions>button+button{border:0;font-size:12px;padding-left:0;color:#bfccb0}.note{display:flex;gap:9px;align-items:center;font-size:10px;color:#84977b;letter-spacing:1px}.note i{width:5px;height:5px;background:#bdd692;border-radius:50%;box-shadow:0 0 10px #bdd692}.index{display:flex;gap:20px;font:8px Arial;letter-spacing:1px;color:#65765f;margin-top:70px}.viewer{position:relative;min-width:0;border:1px solid #9baf8533;background:#0b130f;box-shadow:0 20px 100px #0004}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;padding:15px 18px;font-size:9px;letter-spacing:1px;color:#b5c0a6;gap:10px}.viewer-top{border-bottom:1px solid #8b9b7529}.viewer-top #state{color:#859c73;letter-spacing:0}#stage{height:570px;position:relative;overflow:hidden;touch-action:none;background:#0c1410}#stage canvas{display:block;position:absolute;z-index:2}#stage video{z-index:0}#stage>div{pointer-events:none} .viewer-bottom{font-size:10px;border-top:1px solid #8b9b7529;color:#819373}#tools{border-top:1px solid #8b9b7529;padding:16px 18px}.tool-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#a6b394}.tool-head button{font-size:10px;padding:4px 0;border:0;color:#839277}.tool-row{display:flex;gap:8px;margin-top:12px}.tool-row button{font-size:11px;padding:10px;white-space:nowrap}#branch{background:#bacb9422;color:#d3dfb8;touch-action:none;flex:1}.depth{display:flex;align-items:center;gap:14px;font-size:9px;color:#839277;margin-top:16px}.depth input{flex:1;accent-color:#baca97;height:2px}.depth span{font-size:8px}footer{border-top:1px solid #b7c39d30;display:flex;justify-content:space-between;gap:12px;margin:0 5vw;padding:24px 0;font:9px Arial;letter-spacing:1.5px;color:#72836a}dialog{max-width:530px;background:#19271e;color:#d9e2cd;border:1px solid #687c54;padding:38px;line-height:2;font-size:13px}dialog::backdrop{background:#0009;backdrop-filter:blur(8px)}dialog h2{font-family:'Noto Serif SC',serif;font-weight:400}dialog li{padding:7px 0}dialog p{color:#a6b398;font-size:12px}.close{float:right;border:0;font-size:22px;padding:0}dialog a{text-decoration:underline}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);padding:13px 22px;background:#dae5c5;color:#1b2a1b;z-index:100;font-size:12px;max-width:90vw;text-align:center;border-radius:3px;display:none}body.ar-active main{display:block;padding-top:20px}body.ar-active .intro{display:none}body.ar-active .viewer{max-width:850px;margin:auto}body.ar-active #stage{height:65vh}body.ar-active .viewer-bottom{display:none}@media(max-width:760px){header{height:80px}.brand{font-size:24px}.edition{display:none}main{display:flex;flex-direction:column;padding-top:18px}.intro{padding:12px 0 24px}.eyebrow{font-size:8px}h1{font-size:45px;margin:14px 0;line-height:1.25}h1 br{display:none}h1 sup{font-size:22px;margin:5px}.intro p{font-size:11px;line-height:1.9;margin:12px 0}.intro p br{display:none}.actions{flex-direction:row;align-items:center;gap:12px;margin:18px 0}.primary{min-width:190px;padding:15px;font-size:11px}.actions>button+button{font-size:10px}.index{display:none}.note{font-size:9px}#stage{height:480px}.viewer-top{padding:12px;font-size:8px;letter-spacing:0}#tools{padding:12px}footer{font-size:7px;letter-spacing:.5px}footer span:nth-child(2){display:none}.tool-row{flex-wrap:wrap}body.ar-active #stage{height:62vh}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

@media(max-width:760px){h1 sup{display:none}}

#stage video{z-index:0!important}

.photo-add{position:absolute;z-index:4;transform:translate(-50%,-50%);width:30px;height:30px;padding:0;border:1px dashed #b6c29c99;border-radius:50%;color:#d1dcb9;background:#111c14c9;font-size:22px;line-height:26px;pointer-events:auto}.photo-add[hidden]{display:none}#shared-photo-tools{padding:12px 18px;border-top:1px solid #8b9b7529}#photo-editor-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;font-size:10px}#photo-editor-controls[hidden]{display:none}#photo-choice{max-width:220px;background:#152219;color:#d1dcb9;border:1px solid #8b9b7555;padding:7px}#photo-editor-controls label{display:flex;align-items:center;gap:8px}#photo-editor-controls input{width:90px;accent-color:#becf99}#photo-remove{font-size:10px;padding:7px}#photo-edit-status{width:100%;color:#91a381}#photo-password{display:block;width:100%;margin:8px 0;padding:12px;border:1px solid #8b9b75;background:#0c1710;color:#e3e8da}#photo-login-error{color:#efb09a;min-height:20px}#stage{cursor:grab}#stage:active{cursor:grabbing}

.actions a{font-size:11px;color:#a6b695}.photo-add{will-change:transform}

@media(max-width:760px){.actions{flex-wrap:wrap}.actions a{flex-basis:100%}}
