@font-face{font-family:Nobel;src:url('/fonts/nunito-sans-regular.ttf')}*{box-sizing:border-box}body{margin:0;background:#eeebe5;color:#302c27;font-family:Nobel,Arial,sans-serif}button,select,input{font:inherit}button{cursor:pointer;border:1px solid #bcb5ab;background:transparent;color:inherit;padding:10px 13px;min-height:42px}button:hover{background:#ded8ce}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #702c3d;outline-offset:4px}button:disabled{opacity:.45;cursor:default}main{height:100dvh;min-height:680px;display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-template-rows:82px 1fr}header{grid-column:1/-1;display:flex;align-items:center;gap:40px;padding:0 36px;border-bottom:1px solid #d0cac0}header span{font-size:13px}header button{margin-left:auto;border:0}.wordmark{font-family:Georgia,serif;font-size:28px;letter-spacing:.04em;text-decoration:none;color:inherit}.stage{position:relative;min-width:0;overflow:hidden}#viewport{position:absolute;inset:0}canvas{display:block;touch-action:none}.caption{position:absolute;top:34px;left:36px;pointer-events:none}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(28px,3.4vw,52px);letter-spacing:-.03em;margin:0 0 10px}.caption p{font-size:14px;color:#62594e;line-height:1.55;margin:0}.views{position:absolute;left:36px;bottom:65px;display:flex;gap:6px}.views button{background:#eeebe5e8;font-size:12px}.views button[aria-pressed=true]{background:#39322c;color:#fff;border-color:#39322c}.hint{position:absolute;bottom:24px;left:36px;font-size:12px;color:#62594e;margin:0;pointer-events:none}aside{padding:30px 24px;overflow:auto;border-left:1px solid #d0cac0;background:#f5f2ed}h2{font-weight:500;font-size:17px;line-height:1.4;margin:0}.assembly>div:first-child{display:flex;align-items:start;gap:14px;justify-content:space-between}.assembly output{font-size:14px;padding-top:3px}.assembly label{display:block;font-size:12px;color:#655b50;margin-top:25px}input[type=range]{width:100%;accent-color:#702c3d;cursor:pointer;margin:12px 0 5px;min-height:24px}.range-ends{display:flex;justify-content:space-between;font-size:12px;color:#655b50}.primary{background:#702c3d;color:#fff;border-color:#702c3d;width:100%;margin-top:20px}.primary:hover{background:#592331}.filters{margin:25px 0}.filters label,.small{display:block;font-size:12px;color:#655b50;margin-bottom:8px}select{width:100%;border:1px solid #c8bfb3;background:transparent;color:#302c27;padding:9px;border-radius:0;font-size:12px}.selection{border-top:1px solid #d0cac0;padding-top:22px;margin-bottom:25px}.selection p{font-size:13px;line-height:1.6;min-height:63px}.actions{display:flex;gap:8px}.actions button{font-size:12px}.note{font-size:11px;line-height:1.6;color:#6a6055;margin:18px 0 0}#parts{padding:0;height:151px}#parts option{padding:7px 9px}#parts option:checked{background:#702c3d;color:white}#loading{position:absolute;inset:0;display:grid;place-content:center;background:#eeebe5;z-index:3;font-size:14px}#loading[hidden]{display:none}@media(max-width:800px){main{height:auto;min-height:100dvh;grid-template-columns:1fr;grid-template-rows:66px 62dvh auto}header{gap:16px;padding:0 18px}header span{display:none}header button{font-size:12px}.wordmark{font-size:24px}aside{border-left:0;border-top:1px solid #d0cac0;padding:24px}.caption{top:22px;left:20px}.caption p{font-size:12px}.views{left:20px;bottom:45px;gap:4px}.views button{padding:8px;font-size:11px}.hint{left:20px;right:20px;bottom:16px;font-size:10px}.selection p{min-height:0}.note{max-width:60ch}}
