:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#25221e;background:#eeeae2;--line:#d5cec1;--muted:#71695d}
*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button,input,select{font:inherit;color:inherit;border:1px solid var(--line);border-radius:7px;background:#fffcf6}button{cursor:pointer;padding:8px 10px;min-height:38px}button:hover{background:#eae2d5}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #716142;outline-offset:2px}button:disabled{opacity:.45;cursor:default}.primary{background:#282621;color:#fff;border-color:#282621}.primary:hover{background:#454037}[hidden]{display:none!important}
header{position:absolute;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;background:linear-gradient(#f4f0eaf5,#f4f0eacc,transparent);pointer-events:none}header>*{pointer-events:auto}small{font-size:10px;letter-spacing:.14em;color:#836331;font-weight:650}h1{font:25px/1.15 Georgia,serif;margin:3px 0}h2{font:21px Georgia,serif;margin:8px 0}nav{display:flex;align-items:center;gap:8px}.badge{font-size:12px;color:var(--muted)}
#viewport,#stage{position:absolute;inset:0;width:100%;height:100%}#stage{display:block;touch-action:none}.panel{position:absolute;top:90px;bottom:16px;z-index:15;width:285px;overflow:auto;padding:15px;border:1px solid #ffffff8c;border-radius:12px;background:#f9f6efee;box-shadow:0 12px 40px #0002;backdrop-filter:blur(10px)}.left{left:12px}.right{right:12px}section+section{margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}p{font-size:12px;line-height:1.5;color:var(--muted)}label{display:grid;gap:5px;margin:10px 0;font-size:12px;color:var(--muted)}input,select{width:100%;padding:8px;min-width:0}.check{display:flex;align-items:center}.check input{width:auto}.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wide{width:100%;margin:8px 0}.status{padding:8px;background:#e7e7da;border-radius:6px}#walls{display:grid;gap:6px}#walls button{text-align:left;font-size:12px}.selected{outline:2px solid #587464;background:#f0f3ea}
#works{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}#works button{padding:4px;overflow:hidden}#works img{display:block;width:100%;height:70px;object-fit:contain;background:#ded8cc}#works span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;margin-top:4px}#summary{color:#4d6554}
#loading{position:absolute;z-index:50;left:50%;top:50%;transform:translate(-50%,-50%);background:#faf7ef;padding:25px;border-radius:12px;max-width:90%;box-shadow:0 12px 45px #0004}#toast{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:45;max-width:min(650px,90%);background:#292620f0;color:white;padding:10px 16px;border-radius:12px;opacity:0;pointer-events:none;transition:opacity .15s}#toast.visible{opacity:1}.presenting header,.presenting .panel{display:none}#exitPresent{position:absolute;z-index:30;right:18px;top:18px}#touchMove{position:absolute;z-index:25;bottom:16px;left:50%;transform:translateX(-50%);display:none}#touchMove button{width:45px;height:45px;touch-action:none;background:#f7f2e5db}
@media(pointer:coarse){#touchMove{display:flex}}@media(max-width:900px){.panel{width:255px}.badge{display:none}h1{font-size:20px}}@media(max-width:700px){header{padding:10px}header nav{gap:4px}header button{font-size:11px;padding:6px}header small{font-size:8px}h1{font-size:17px}.panel{top:auto;bottom:62px;width:calc(50% - 12px);max-height:43%;padding:9px}.left{left:8px}.right{right:8px}#works{grid-template-columns:repeat(2,1fr)}.two{gap:5px}.two button{font-size:11px;padding:5px}h2{font-size:18px}#toast{bottom:65px}#touchMove{display:flex}}
