/* Beacon workshop — cream cards, sage controls and a live landscape stage. */
.beacon-page{background:#f8f7ef;color:#304333}.bp-main{--bp-line:#c7cbb8;--bp-ink:#304333;--bp-muted:#77816d;max-width:1480px;margin:auto;padding:22px 28px 38px}.bp-main *{box-sizing:border-box}.bp-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 21px}.bp-back{font:11px/1.5 Arial,sans-serif;color:#6e7d65}.bp-page-heading h1{display:flex;align-items:center;gap:12px;font:34px/1.1 var(--pixel-font);margin:13px 0 0;color:#294732}.bp-page-heading h1 img{object-fit:contain;flex:none}.bp-page-heading>p{font:13px/1.6 Arial,sans-serif;color:#7a856f;margin:0 0 3px}.bp-main h2{font:22px/1.15 var(--pixel-font);margin:0;color:#344b35}.bp-main .bp-fine{font:11px/1.6 Arial,sans-serif;color:#7b826f;margin:5px 0 12px}.bp-workbench{display:grid;grid-template-columns:minmax(0,1.56fr) minmax(370px,1fr);gap:14px;align-items:stretch}.bp-panel{position:relative;min-width:0;border:1px solid var(--bp-line);border-radius:6px;background:linear-gradient(120deg,#fffef7,#f7f5eb);box-shadow:inset 0 0 0 3px #fffff780,0 3px 8px #35442d09}.bp-panel:before,.bp-panel:after{content:'';position:absolute;width:9px;height:9px;border:2px solid #aeb89b;pointer-events:none;z-index:3}.bp-panel:before{top:4px;left:4px;border-right:0;border-bottom:0}.bp-panel:after{bottom:4px;right:4px;border-left:0;border-top:0}.bp-main button{font:14px/1.25 var(--pixel-font);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:1px solid #c4c8b4;border-radius:4px;padding:10px 14px;color:#4e6542;background:linear-gradient(#fdfcf4,#f4f2e6);box-shadow:inset 1px 1px #fffefb,inset -1px -1px #c5cbb333;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}.bp-main button:hover{background:#eaf0df;border-color:#8f9f7b}.bp-main button:disabled{opacity:.48;cursor:default}.bp-main button:disabled:hover{background:#f7f6eb;border-color:#c4c8b4}.bp-main button[aria-pressed=true],.bp-main button.bp-primary{background:linear-gradient(135deg,#5f8050,#395438);border-color:#3f653c;color:#fffff5;box-shadow:inset 0 0 0 2px #99b18a55,0 2px 3px #22391b18}.bp-main button[aria-pressed=true]:hover,.bp-main button.bp-primary:hover{background:#4d7045}.bp-main :is(button,a,summary,textarea):focus-visible{outline:2px solid #73915d;outline-offset:3px}.bp-main button[aria-pressed=true]{position:relative}.bp-main button[aria-pressed=true]:after{content:'✓';position:absolute;right:5px;top:5px;width:18px;height:18px;line-height:18px;font:12px/18px Arial,sans-serif;background:#fffef4;border-radius:3px;color:#3b6a39;text-align:center;box-shadow:0 0 0 1px #426d3c}.bp-card-heading{display:flex;align-items:flex-start;gap:10px;margin-bottom:13px}.bp-card-heading .bp-fine{margin:5px 0 0}.bp-step{font:11px/24px var(--pixel-font);background:#e7ecda;border:1px solid #c6d0b6;border-radius:3px;flex:none;text-align:center;width:25px;height:25px;color:#6e865c}.bp-inspector{display:flex;flex-direction:column;gap:13px;min-width:0}.bp-inspector>section{padding:20px 17px 18px}.bp-tiers>#tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.bp-main .bp-tier{flex-direction:column;gap:4px;min-width:0;padding:3px 4px 12px;justify-content:flex-start}.bp-tier canvas{width:100%;height:auto;aspect-ratio:1.5;display:block;object-fit:contain}.bp-tier span{font-size:14px}.bp-tier small{font:10px/1.4 Arial,sans-serif;opacity:.85}.bp-tier .bp-tier-count{font-size:10px;opacity:.7}.bp-materials{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.bp-main .bp-material{flex-direction:column;gap:5px;min-width:0;padding:8px 4px 10px;font-size:12px}.bp-material canvas{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;max-width:72px}.bp-material-section .bp-material-note{font-size:10px;margin:11px 0 0;line-height:1.5}.bp-receipt{flex:1}.bp-receipt .bp-card-heading{align-items:center;margin-bottom:11px}.bp-receipt-row{display:flex;align-items:center;gap:11px;padding:9px 11px;background:#efeee285;border:1px solid #d9dac9;border-radius:4px;margin:7px 0}.bp-receipt-row>canvas,.bp-receipt-row>img{width:43px;height:43px;object-fit:contain;flex:none}.bp-receipt-row>div{flex:1;min-width:0}.bp-receipt-row strong{font:18px/1.2 var(--pixel-font);display:block;color:#344a35}.bp-receipt-row small{font:10px/1.5 Arial,sans-serif;display:block;color:#7c8472;margin-top:3px}.bp-receipt-row>span{font:11px/1.5 Arial,sans-serif;color:#6e7e61;white-space:nowrap}.bp-raw{font:10px/1.6 Arial,sans-serif;color:#7b836e;margin:9px 2px}.bp-layers{font:11px/1.6 Arial,sans-serif;color:#6d7e60;margin:11px 0}.bp-layers summary{cursor:pointer}.bp-layers ol{padding:0;list-style:none;margin:8px 0}.bp-layers li{display:flex;justify-content:space-between;gap:10px;padding:5px;border-bottom:1px solid #e1e3d5}.bp-main #copy{width:100%;min-height:43px;margin-top:4px;font-size:15px}.bp-status{font:11px/1.6 Arial,sans-serif;margin:8px 0 0;color:#507345}.bp-status:empty{display:none}
/* The real canvas uses one uniform scale; the photograph remains a backdrop only. */
.bp-stage{display:flex;flex-direction:column;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 45% 35%,#fffef7,#eeefe5);min-height:650px}.bp-stage:before{width:auto;height:auto;inset:0;background:none;border:0;z-index:-1}.bp-stage:after{inset:5px;width:auto;height:auto;border:1px solid #fffef594;z-index:2;border-radius:2px}.bp-stage-top{padding:20px;position:absolute;top:0;left:0;z-index:2}.bp-stage-badge{display:flex;align-items:center;gap:11px;background:#354e35eb;border:1px solid #d5dfbd8c;box-shadow:0 3px 9px #19291f28,inset 1px 1px #ffffff17;color:#fffff2;border-radius:4px;padding:12px 15px;backdrop-filter:blur(6px)}.bp-stage-badge>.ui-icon{width:27px;height:27px}.bp-stage-badge strong{font:19px/1.2 var(--pixel-font);display:block}.bp-stage-badge span:last-child{font:11px/1.5 Arial,sans-serif;opacity:.9;display:block;margin-top:2px}.bp-canvas-wrap{position:relative;flex:1;min-height:590px;width:100%}.bp-canvas-wrap canvas{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.bp-stage-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f6f5e9f5;border-top:1px solid #e0e3cc;padding:16px 20px;min-height:55px;position:relative;z-index:2;font:11px/1.5 Arial,sans-serif;color:#455c39}.bp-stage-bottom>span{display:flex;align-items:center;gap:9px}.bp-stage-bottom .ui-icon{width:21px;height:21px}
.bp-effects{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);padding:22px;gap:26px}.bp-primary-effects{min-width:0}.bp-effect-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.bp-main .bp-effect{flex-direction:column;min-width:0;padding:13px 7px 12px;gap:9px;text-align:center;min-height:106px}.bp-effect .bp-effect-icon{display:grid;place-items:center;width:35px;height:35px;flex:none}.bp-effect img{width:32px;height:32px;object-fit:contain;image-rendering:pixelated}.bp-effect .ui-icon{width:29px;height:29px}.bp-effect strong{font:14px/1.2 var(--pixel-font);display:block;font-weight:400}.bp-effect small{font:10px/1.4 Arial,sans-serif;display:block;opacity:.8;margin-top:4px}.bp-secondary{border-left:1px dashed #b8c1a7;padding-left:26px;min-width:0}.bp-secondary-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bp-secondary-options .bp-effect{height:106px}.bp-after{padding:17px 3px 0}.bp-selection{font:13px/1.4 var(--pixel-font);margin:0;color:#6f825e}.bp-notes{display:flex;align-items:flex-start;gap:9px;margin-top:14px;color:#8a927c;max-width:1000px}.bp-notes p{font:11px/1.7 Arial,sans-serif;margin:0}.bp-notes .ui-icon{width:17px;height:17px;flex:none}.bp-main .bp-retry{font-size:12px;min-height:32px;padding:6px 10px}.bp-dialog{width:min(90vw,520px);padding:24px;border:1px solid #a7b594;background:#f8f8ec;color:#3b5437;border-radius:7px}.bp-dialog::backdrop{background:#20322666;backdrop-filter:blur(3px)}.bp-dialog textarea{width:100%;resize:vertical;box-sizing:border-box;background:#fffff8;color:#3b5437;border:1px solid #c8d2b8;padding:12px;font:12px/1.7 monospace;margin:16px 0}
@media(min-width:1600px){.bp-workbench{grid-template-columns:minmax(0,1.7fr) minmax(420px,1fr)}.bp-stage{min-height:685px}}
@media(max-width:1100px){.bp-main{padding:20px}.bp-workbench{grid-template-columns:minmax(0,1.3fr) minmax(350px,1fr);gap:11px}.bp-inspector>section{padding:18px 13px 15px}.bp-main h2{font-size:20px}.bp-main .bp-material{font-size:11px}.bp-main .bp-tier{gap:3px}.bp-tier span{font-size:12px}.bp-stage{min-height:650px}.bp-stage-top{padding:16px}.bp-stage-bottom{padding:14px;font-size:10px}.bp-effects{gap:18px;padding:19px}.bp-secondary{padding-left:18px}.bp-effect strong{font-size:12px}.bp-effect small{font-size:9px}}
@media(max-width:850px){.bp-workbench{grid-template-columns:1fr}.bp-stage{min-height:530px}.bp-canvas-wrap{min-height:475px}.bp-inspector{display:grid;grid-template-columns:1fr 1fr;align-items:start}.bp-inspector .bp-receipt{grid-column:1/-1}.bp-receipt-row{min-height:55px}.bp-main .bp-effects{grid-template-columns:1fr}.bp-secondary{border-left:0;border-top:1px dashed #b8c1a7;padding:19px 0 0}.bp-secondary-options{max-width:500px}.bp-stage{background-size:auto 100%;background-position:left}.bp-page-heading>p{display:none}}
@media(max-width:540px){.bp-main{padding:18px 12px 30px}.bp-page-heading{margin-bottom:17px}.bp-page-heading h1{font-size:30px;gap:10px}.bp-page-heading h1 img{width:30px;height:30px}.bp-inspector{display:flex;gap:10px}.bp-inspector>section{padding:19px 13px 17px}.bp-workbench{gap:10px}.bp-stage{min-height:385px;background-size:auto 100%;background-position:left}.bp-canvas-wrap{min-height:330px}.bp-stage-top{padding:14px}.bp-stage-badge{padding:8px 10px;gap:8px}.bp-stage-badge strong{font-size:16px}.bp-stage-badge span:last-child{font-size:10px}.bp-stage-badge>.ui-icon{width:22px;height:22px}.bp-stage-bottom{font-size:10px;gap:12px;padding:13px 12px;min-height:50px}.bp-stage-bottom .ui-icon{width:16px;height:16px}.bp-stage-bottom>span{gap:6px}.bp-tiers>#tiers{gap:6px}.bp-tier span{font-size:13px}.bp-tier .bp-tier-count{font-size:9px}.bp-materials{gap:6px}.bp-main .bp-material{font-size:11px}.bp-main .bp-effects{padding:20px 13px}.bp-effect-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.bp-main .bp-effect{min-height:99px;padding:12px 5px 10px}.bp-effect strong{font-size:13px}.bp-effect small{font-size:10px}.bp-receipt-row>span{font-size:10px}.bp-main .bp-fine{font-size:11px}.bp-secondary-options .bp-effect{height:100px}}
@media(prefers-reduced-motion:reduce){.bp-main button{transition:none}}html[data-motion=reduce] .bp-main button{transition:none}

.bp-tier canvas{max-height:70px}.bp-material canvas{max-width:63px}
@media(min-width:851px){.bp-inspector>section{padding:17px 15px 15px}.bp-card-heading{margin-bottom:11px}.bp-tier canvas{max-height:59px}.bp-main .bp-tier{padding-bottom:9px;gap:3px}.bp-material canvas{max-width:56px}.bp-main .bp-material{padding:7px 3px 9px}.bp-receipt-row{padding:8px 10px}.bp-receipt-row>canvas,.bp-receipt-row>img{width:37px;height:37px}.bp-layers{margin:9px 0}.bp-raw{margin:7px 2px}}
