:root{font-family:Arial,Helvetica,sans-serif;color:#233e31;background:#f5f1e7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{outline-offset:5px}button{cursor:pointer;border:1px solid #c9d0bd;background:transparent;color:inherit;padding:11px 15px;border-radius:5px;transition:background .18s,transform .18s}button:hover{background:#e3e7d8;transform:translateY(-1px)}button:disabled{opacity:.35;cursor:default}a{color:inherit;text-decoration:none}main{min-height:100vh;padding:0 4vw;max-width:2000px;margin:auto}header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #cbd2c0;font-size:10px;letter-spacing:1.5px}.brand{font-weight:800;display:flex;align-items:center;gap:14px;font-size:12px}.brand i{font:44px Georgia;font-style:normal}.live{color:#73856b}.intro{display:flex;align-items:end;justify-content:space-between;padding:48px 0 42px;gap:40px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.6}h1{font:clamp(60px,6.5vw,116px)/.92 Georgia,serif;letter-spacing:-5px;margin:18px 0 0;font-weight:400}.intro>p{font:21px/1.5 Georgia;margin:0 0 7px}.intro>p span{color:#7d8970}.stamp{width:105px;height:105px;border:1px solid #819477;border-radius:50%;display:grid;place-content:center;text-align:center;font-size:11px;letter-spacing:2px;transform:rotate(12deg)}.work{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:36px;border-top:1px solid #cbd2c0;padding-top:24px}.studio{min-width:0}.stage-top{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 6px 18px}.project-title{font:22px Georgia;white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.stage-top>span{font-size:9px;letter-spacing:1.2px;flex-shrink:0}.scene-wrap{position:relative;background:radial-gradient(ellipse at 50% 43%,#e6ebd7,#d4ddc5);border-radius:8px;overflow:hidden}.scene{width:100%;aspect-ratio:4/3;position:relative}.scene canvas{display:block;width:100%;height:100%;touch-action:none}.scene-error{position:absolute;left:15%;right:15%;top:35%;padding:24px;background:#f5f1e7;border:1px solid #b2bea4;line-height:1.7;text-align:center}.stage-note,.scale-note{position:absolute;bottom:20px;font-size:8px;letter-spacing:1.5px;pointer-events:none;color:#526448}.stage-note{left:22px}.scale-note{right:22px;text-align:right;line-height:1.6}.view{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:20px 3px;border-bottom:1px solid #cbd2c0}.view label{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:1px}.view input{width:100%;accent-color:#526e45}.view b{min-width:35px;text-align:right}.map-head{display:flex;align-items:end;justify-content:space-between;margin:26px 0 20px}.map-head span{font-size:9px;letter-spacing:1px}.map-head h2{font-size:28px;margin:6px 0}.chart{display:block;width:100%;max-height:330px;background:#315847;border-radius:6px}.fine{font-size:11px;line-height:1.7;color:#66735f}.studio>.fine{max-width:800px}aside{border-left:1px solid #cbd2c0;padding-left:28px}h2{font:34px/1.05 Georgia;font-weight:400;margin:15px 0 24px}h3{font-size:13px;margin:20px 0 12px}label{display:block;font-size:10px;line-height:1.5;letter-spacing:.4px}label>input:not([type=range]):not([type=checkbox]),select{display:block;width:100%;padding:10px;border:1px solid #c5ceb9;border-radius:4px;background:#faf8f1;color:inherit;margin:5px 0 15px;font-size:13px}input[type=number]{min-width:0}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.list-top{display:flex;justify-content:space-between;align-items:center}.list-top button{font-size:10px;padding:8px}.hole-list{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;max-height:180px;overflow:auto;margin:12px 0 20px}.hole-list button{padding:7px;display:flex;align-items:center;gap:5px;font-size:10px}.hole-list i{display:inline-block;background:#869b71;border-radius:50%;max-width:26px;max-height:26px}.hole-list small{margin-left:auto;font-size:8px}.hole-list .active{border-color:#516b42;background:#e2e7d8}.hole-list .active i{background:#c4a25f}.quiet{font-size:10px;width:100%}.certificate{padding:18px;background:#ece3d2;border-radius:5px;margin:26px 0}.certificate.pass{background:#e2ead8}.certificate h3{font:23px Georgia;margin:10px 0 16px}.certificate p:not(.eyebrow){font-size:11px}.certificate small{font-size:10px;line-height:1.6;display:block}details{font-size:12px;border-top:1px solid #cbd2c0;padding-top:20px}summary{cursor:pointer}details button{font-size:10px;padding:8px;margin:5px 5px 0 0}textarea{width:100%;height:230px;resize:vertical;border:1px solid #bbc8ad;background:#faf8f1;padding:10px;margin-top:10px;font:11px/1.5 monospace}.shelf{display:flex;justify-content:space-between;gap:24px;padding:30px 0;border-bottom:1px solid #cbd2c0;border-top:1px solid #cbd2c0;margin-top:26px}.shelf button{font-size:11px;margin:0 7px 8px 0}footer{padding:26px 0 36px}.toolbar{display:flex;gap:8px;flex-wrap:wrap}.toolbar button{font-size:10px}.consent{display:flex;gap:8px;align-items:center;margin-top:22px}.consent input{accent-color:#315847}[role=status]{font:16px Georgia}.intro,.scene-wrap{animation:arrive .6s ease-out}@keyframes arrive{0%{opacity:.5;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:1050px){.work{grid-template-columns:minmax(0,1fr) 300px;gap:20px}aside{padding-left:20px}.stamp{display:none}.intro>p{font-size:18px}}@media(max-width:760px){main{padding:0 20px}header>span{display:none}.intro{padding:32px 0;align-items:start;gap:20px}h1{font-size:58px;letter-spacing:-3px}.intro>p{font-size:14px;margin-top:40px}.work{display:block}aside{border:0;padding:28px 0 0}.hole-list{grid-template-columns:repeat(5,1fr)}.shelf{display:block}.shelf>div+div{margin-top:22px}.stage-top{align-items:start}.stage-top>span{font-size:7px}.project-title{font-size:18px}.map-head h2{font-size:23px}.view{gap:12px}.view label{gap:6px}.stage-note{font-size:6px;bottom:12px;left:12px}.scale-note{font-size:6px;right:12px;bottom:12px}.scene-error{left:8%;right:8%;font-size:12px;padding:14px}}
