#shadowmap-contract-app{color:#fff4e5;background:#241712;min-height:100vh;font:14px/1.4 Inter,ui-sans-serif,system-ui,sans-serif;position:relative;overflow:hidden}#shadowmap-contract-stage,#shadowmap-contract-stage canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.shadowmap-contract-hud{z-index:2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#281710e6;border:1px solid #866148;border-radius:18px;width:min(470px,100vw - 32px);margin:24px;padding:22px;position:relative;box-shadow:0 20px 70px #0000006b}.eyebrow{color:#ffc28c;letter-spacing:.16em;font-size:11px}h1{margin:8px 0;font-size:clamp(28px,5vw,42px);line-height:1}.intro{color:#e1c9b3;max-width:38rem}.status-panel,.contract-panel{background:#49271bc7;border:1px solid #704d3c;border-radius:12px;margin-top:16px;padding:12px 14px}.loading-row,.control-heading{justify-content:space-between;gap:12px;font-weight:700;display:flex}.loading-detail,.source-note{color:#c8a995;margin-top:5px;font-size:12px}.metrics{grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0;display:grid}.metrics div{background:#703e2880;border-radius:9px;padding:9px}dt{color:#c59d83;letter-spacing:.1em;font-size:10px}dd{margin:2px 0 0;font-size:13px;font-weight:700}.control-panel{margin-top:16px}.button-row{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}button,input[type=range],select{accent-color:#ffb36f}button,select{color:#fff4e5;background:#5a3423;border:1px solid #9a684a;border-radius:7px;padding:7px 10px}button:disabled,input:disabled,select:disabled{opacity:.45}label{color:#e1c9b3;gap:5px;font-size:12px;display:grid}input[type=range]{width:100%}.field{margin:10px 0}output{color:#ffc18d}.contract-heading{color:#ffc18d;font-weight:700}a{color:#ffc594}footer{z-index:2;color:#a47a62;letter-spacing:.15em;font-size:11px;position:fixed;bottom:18px;right:22px}@media (width<=620px){.shadowmap-contract-hud{margin:12px;padding:16px}.metrics{grid-template-columns:repeat(2,1fr)}footer{display:none}}
