*{box-sizing:border-box}body{margin:0;background:#10152a;color:#f4f2fa;font:15px/1.5 system-ui}a{color:#ffdc8e}.builder-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:15px 22px;background:#1c223b}.builder-header h1{font-size:22px;margin:0}main{padding:14px;max-width:1650px;margin:auto}.instructions{margin:0 0 12px}button,input,textarea{font:inherit}button{border:1px solid #796a8b;border-radius:7px;background:#30334d;color:#fff;padding:6px 11px;cursor:pointer}button:disabled{opacity:.4;cursor:default}button[aria-pressed=true],#save-pins,#apply-ideas{background:#ffce80;color:#201d35;border-color:#ffce80}button:focus-visible,a:focus-visible{outline:3px solid #f7abed;outline-offset:2px}#pin-viewer{height:76vh;min-height:400px;position:relative;overflow:hidden;background:#060913;border:1px solid #6d6488;border-radius:12px;touch-action:none;cursor:grab}#pin-viewer.adding{cursor:crosshair}#pin-art-layer{position:absolute;left:0;top:0;transform-origin:0 0}#pin-art{display:block;max-width:none;pointer-events:none;user-select:none}#pin-overlay{position:absolute;inset:0;pointer-events:none}.poster-pin,.unknown-pin{position:absolute;transform:translate(-50%,-50%);border:2px solid #fff4d3;border-radius:50%;background:rgba(222,42,145,.75);color:white;font-weight:800;line-height:1;padding:0;display:grid;place-items:center;pointer-events:auto;touch-action:none;box-shadow:0 2px 8px #0009;cursor:grab}.poster-pin.pending,.unknown-pin{background:rgba(255,208,112,.78);color:#29213b}.unknown-pin{cursor:help}.pin-toolbar{position:absolute;left:10px;right:10px;top:10px;z-index:4;display:flex;align-items:center;flex-wrap:wrap;gap:7px;background:#171c33ee;padding:10px;border:1px solid #8f7893;border-radius:10px;cursor:default;touch-action:auto}.pin-toolbar label{display:flex;gap:5px;align-items:center}.pin-toolbar input[type=number]{width:60px;padding:3px}#pin-status{font-size:12px;flex-basis:100%;color:#f2dbad}#pin-viewer:fullscreen,#pin-viewer:-webkit-full-screen{width:100%;height:100%;border:0;border-radius:0}.suggestion-panel,details{background:#1c223b;border:1px solid #615877;border-radius:12px;padding:16px;margin-top:16px}.suggestion-panel h2{margin:0 0 8px}.suggestion-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0}.idea-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:430px;overflow:auto}.idea-card{padding:12px;border:1px solid #756580;border-radius:8px}.idea-card.review{border-color:#ecba56}.idea-card p{margin:6px 0;font-size:12px}.idea-card strong{display:block}.pin-list{display:flex;flex-wrap:wrap;gap:8px}dialog{border:1px solid #f6ca7d;border-radius:14px;background:#1c223b;color:white;width:min(540px,94vw);max-height:90vh;overflow:auto;padding:20px}dialog::backdrop{background:#0009}dialog h2{margin:0 0 12px}dialog label{display:block;margin:10px 0}dialog input,dialog textarea{display:block;width:100%;border:1px solid #847598;border-radius:6px;background:#fff;color:#18233b;padding:9px;margin-top:5px}.dialog-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.danger{background:#773344}.hint{font-size:12px;color:#ddd1e3}@media(max-width:850px){.idea-list{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-header h1{font-size:18px}.pin-toolbar{left:5px;right:5px;top:5px;gap:5px;padding:7px}.pin-toolbar button{padding:5px 8px;font-size:12px}#pin-viewer{height:72vh}}@media(max-width:480px){.idea-list{grid-template-columns:1fr}}

#pin-viewer.panning{cursor:grabbing}.poster-pin.grabbing{cursor:grabbing}.poster-pin:hover{outline:2px solid #ffe2a3;outline-offset:2px}
.pin-context{position:absolute;z-index:12;width:240px;max-width:calc(100% - 16px);padding:9px;border:1px solid #f5ce85;border-radius:10px;background:#20243df7;box-shadow:0 8px 28px #0009;cursor:default;touch-action:auto}
.pin-context[hidden]{display:none}.pin-context strong{display:block;padding:4px 7px 8px;font-size:13px;color:#ffe0a2}.pin-context button{display:block;width:100%;text-align:left;margin:4px 0;padding:9px 11px}.pin-context button:disabled{opacity:.3}.pin-context button:not(:disabled):hover{background:#55506e}.pin-context button.danger:not(:disabled):hover{background:#a44459}

#commit-answer{background:#ffce80;color:#201d35;border-color:#ffce80}#answer-error{padding:10px;border-radius:7px;background:#ffe1dc;color:#62231c}#answer-error[hidden]{display:none}

.poster-pin.complete{background:rgba(35,139,77,.8);color:#fff;border-color:#b9f5c8}.poster-pin.pending{background:rgba(71,49,16,.8);color:#ffc25d;border-color:#ffc25d}.unknown-pin{background:rgba(145,32,48,.8);color:#fff;border-color:#ff9aa8}.pin-legend{margin:10px 0}.green-status{color:#8de3aa}.amber-status{color:#ffca70}.red-status{color:#ff9aa8}#number-complete{background:#237a45;color:#fff;border-color:#92dca6}
