/**
 * signage.css — a board's TV screen: the join screen, the numbers overlay, the player's canvas and its tiles.
 *
 * @fileoverview DESIGN_SPEC §3.49.3, §3.49.27. On the stage's frame (`st-root`, `st-screen`,
 * `st-bg`: stage.css, stageScenes.css). The join and numbers screens are in
 * container units so Silk's 960×540 page and a 1080p TV look the same; the
 * player's canvas is in CANVAS PIXELS (a landscape panel is 1920×1080) and
 * scaled by the Player, so every tile size below is a canvas pixel. Tokens
 * only: the board's palette is the share stage's paper and ink mixed, the
 * accent the stage's own until a board has its look (step 4 of the boards
 * plan). Every rule is `sg-` prefixed: the Builder's previews load this sheet
 * too (the item sheet's live tile).
 *
 * @author David Seguin, Chief Software Architect
 * @company 44 North Incorporated
 * @copyright © 2026 44 North Incorporated. All Rights Reserved.
 * @since 2026
 * @license Professional - All Rights Reserved
 */.sg-join{position:absolute;top:5%;right:5%;bottom:5%;left:5%;display:flex;align-items:center;justify-content:center;gap:6cqw;color:var(--share-paper);text-align:center}.sg-join-text{display:grid;gap:2cqh;justify-items:center;max-width:52cqw}.sg-number{font-size:40cqh;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--share-paper)}.sg-qr{width:36cqh;height:36cqh;padding:2cqh;border-radius:2cqh;background:var(--share-paper)}.sg-ident{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-content:center;color:var(--share-paper);text-align:center;pointer-events:none;background:color-mix(in srgb,var(--share-stage) 30%,transparent)}.sg-ident-no{position:relative;font-size:44cqh;line-height:1;font-weight:800;font-variant-numeric:tabular-nums;color:var(--share-accent)}.sg-ident-where{position:relative;margin:1cqh 0 0;font-size:5cqh;font-weight:600}.st-screen.sg-screen{width:100cqw;height:100cqh}.sg-host{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden}.sg-player{position:relative;overflow:hidden}.sg-viewport{position:relative;overflow:hidden;transform-origin:0 0}.sg-canvas{position:absolute;left:0;top:0;overflow:hidden;font-family:var(--sg-body, var(--font-sans));line-height:1.15;background:var(--c-bg);color:var(--c-ink);--c-bg: var(--sg-stage);--c-ink: var(--share-paper);--c-soft: color-mix(in srgb, var(--share-paper) 74%, transparent);--c-panel: color-mix(in srgb, var(--share-paper) 7%, transparent);--c-edge: color-mix(in srgb, var(--share-paper) 16%, transparent);--c-paper: var(--share-paper);--c-paper-ink: var(--share-ink);--c-on-accent: var(--share-paper);--sg-accent: var(--share-accent)}.sg-canvas.is-light{--c-bg: var(--share-paper);--c-ink: var(--share-ink);--c-soft: color-mix(in srgb, var(--share-ink) 70%, transparent);--c-panel: color-mix(in srgb, var(--share-ink) 6%, transparent);--c-edge: color-mix(in srgb, var(--share-ink) 14%, transparent);--c-paper: var(--share-ink);--c-paper-ink: var(--share-paper)}.sg-layer{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(60% 70% at 8% 10%,color-mix(in srgb,var(--sg-accent) 26%,transparent),transparent 70%),radial-gradient(50% 60% at 94% 92%,color-mix(in srgb,var(--sg-accent) 16%,transparent),transparent 70%),var(--c-bg)}.is-lite .sg-layer{background:var(--c-bg)}.sg-title{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;place-items:center;margin:0;padding:0 5%;font-weight:800;line-height:1;letter-spacing:-.02em;text-align:center;color:var(--c-ink)}.sg-test{position:absolute;left:0;top:0;z-index:8;pointer-events:none}.sg-test path,.sg-test rect{fill:none;stroke:var(--sg-accent);stroke-width:10px}.sg-test rect{stroke:var(--c-ink);stroke-width:6px;stroke-dasharray:40 24}.sg-tile{position:absolute;z-index:2;display:flex;overflow:hidden;border-radius:28px}.sg-panel{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background-color:var(--c-panel);border:2px solid var(--c-edge);border-radius:inherit}.sg-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--c-bg);opacity:calc(var(--soft, .55) * var(--over-bg, 0))}.sg-canvas.has-bg{--over-bg: 1}.sg-canvas.has-picture .sg-panel{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.st-root.is-lite .sg-panel{-webkit-backdrop-filter:none;backdrop-filter:none}.sg-tile>:not(.sg-panel){position:relative}.sg-item,.sg-list,.sg-nn{flex:1;min-width:0;display:flex;flex-direction:column;padding:34px 38px;gap:14px}.sg-name,.sg-line,.sg-loud,.sg-eyebrow,.sg-list-head,.sg-pricerow{margin:0}.sg-name{font-weight:700;line-height:1.05;letter-spacing:-.01em;text-wrap:balance}.sg-display{font-family:var(--sg-display, var(--font-serif));font-weight:600}.sg-name,.sg-list-head,.sg-ln-name,.sg-price,.sg-sizes{font-family:var(--sg-head, var(--sg-style-head, inherit))}.sg-loud{font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:var(--sg-accent)}.sg-line{font-weight:500;line-height:1.25;color:var(--c-soft)}.sg-eyebrow{font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--sg-accent)}.sg-price{font-weight:800;line-height:1;font-variant-numeric:tabular-nums;color:var(--sg-accent);white-space:nowrap}.sg-sizes{display:inline-flex;flex-wrap:wrap;gap:.2em .9em;font-weight:800;font-variant-numeric:tabular-nums}.sg-sizes i{margin-right:.3em;font-style:normal;font-weight:600;color:var(--c-soft)}.sg-pricerow{margin-top:auto}.sg-item.is-card.has-art{padding-top:0}.sg-art{flex:1 1 40%;min-height:0;margin:0 -38px}.sg-art img{display:block;width:100%;height:100%;object-fit:cover}.sg-art.is-cut img{object-fit:contain;filter:drop-shadow(0 24px 30px color-mix(in srgb,var(--share-ink) 55%,transparent))}.st-root.is-lite .sg-art.is-cut img{filter:none}.sg-words{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:12px}.sg-item.is-card.is-wide.has-art{flex-direction:row;align-items:stretch;padding:0 38px 0 0;gap:34px}.sg-item.is-card.is-wide.has-art .sg-art{flex:0 0 44%;margin:0}.sg-item.is-card.is-wide.has-art .sg-words{padding:34px 0;justify-content:center}.sg-item.is-card.has-art.has-pic .sg-art{flex:0 0 var(--pic)}.sg-item.is-words{justify-content:center;align-items:center;text-align:center}.sg-item.is-poster{padding:0}.sg-poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.sg-scrim{position:relative;margin-top:auto;display:flex;flex-direction:column;gap:10px;padding:120px 38px 34px;color:var(--share-paper);background:linear-gradient(transparent,color-mix(in srgb,var(--share-ink) 82%,transparent) 55%)}.sg-scrim .sg-line{color:color-mix(in srgb,var(--share-paper) 84%,transparent)}.sg-item.is-person{align-items:center;justify-content:center;text-align:center}.sg-item.is-person.is-wide{flex-direction:row;text-align:left;gap:34px}.sg-face{flex:0 0 auto;display:grid;place-items:center;width:46%;aspect-ratio:1;border-radius:50%;object-fit:cover;background:color-mix(in srgb,var(--sg-accent) 30%,var(--c-bg));color:var(--c-ink);font-weight:700}.sg-item.is-person.is-wide .sg-face{width:auto;height:78%}.sg-badges{display:flex;flex-wrap:wrap;gap:10px}.sg-badge{padding:.35em .8em;border-radius:999px;background:var(--sg-accent);color:var(--c-on-accent);font-weight:800;letter-spacing:.06em;text-transform:uppercase}.sg-badge.is-vegan{background:var(--sage)}.sg-tile.is-out>.sg-item{opacity:.45}.sg-out{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none}.sg-out span{padding:18px 40px;border-radius:18px;background:var(--c-paper);color:var(--c-paper-ink);font:800 56px/1 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;transform:rotate(-8deg)}.sg-list-head{display:flex;align-items:baseline;gap:.5em;padding-bottom:12px;border-bottom:6px solid var(--sg-accent);font-weight:800;letter-spacing:.04em;text-transform:uppercase}.sg-list-head small{font-size:.55em;font-weight:600;color:var(--c-soft)}.sg-lines{flex:1;display:flex;flex-direction:column;justify-content:space-evenly;min-height:0}.sg-ln{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 .8em;padding:.18em 0;border-bottom:2px solid var(--c-edge)}.sg-ln-name{flex:1 1 auto;font-weight:600;line-height:1.1;overflow-wrap:break-word}.sg-ln-name small{display:block;font-size:.62em;font-weight:500;color:var(--c-soft)}.sg-ln-new,.sg-ln-out{margin-left:.5em;padding:.1em .45em;border-radius:999px;font-size:.55em;font-style:normal;font-weight:800;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}.sg-ln-new{background:var(--sg-accent);color:var(--c-on-accent)}.sg-ln-out{background:var(--c-paper);color:var(--c-paper-ink)}.sg-ln.is-out .sg-ln-name,.sg-ln.is-out .sg-ln-price{opacity:.45}.sg-ln.is-out .sg-ln-name{text-decoration:line-through;text-decoration-color:var(--sg-accent);text-decoration-thickness:4px}.sg-ln.is-out .sg-ln-out{text-decoration:none}.sg-ln-price{display:inline-flex;align-items:baseline;gap:.5em;margin-left:auto;white-space:nowrap}.sg-ln-price .sg-price{font-size:1em}.sg-ln-price small{font-size:.6em;color:var(--c-soft)}.sg-nn{justify-content:space-between}.sg-nn-now{display:flex;flex-direction:column;gap:14px}.sg-nn-next{display:flex;flex-direction:column;gap:8px;margin:0;padding-top:22px;border-top:4px solid var(--c-edge)}.sg-nn-next b{color:var(--sg-accent)}.sg-pic{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.sg-web{position:absolute;border:0;background:var(--share-paper)}.sg-wash{position:absolute;top:0;right:0;bottom:0;left:0}.sg-wash.is-ember{background:radial-gradient(70% 90% at 15% 15%,color-mix(in srgb,var(--accent) 55%,transparent),transparent 70%),radial-gradient(60% 80% at 90% 95%,color-mix(in srgb,var(--share-accent) 60%,transparent),transparent 70%),var(--sg-stage)}.sg-wash.is-gold{background:radial-gradient(80% 90% at 20% 10%,color-mix(in srgb,var(--gold) 50%,transparent),transparent 70%),radial-gradient(60% 70% at 85% 90%,color-mix(in srgb,var(--share-accent) 40%,transparent),transparent 70%),var(--sg-stage)}.sg-wash.is-lake{background:radial-gradient(80% 90% at 10% 0%,color-mix(in srgb,var(--share-route) 50%,transparent),transparent 70%),radial-gradient(70% 80% at 90% 100%,color-mix(in srgb,var(--sage) 45%,transparent),transparent 70%),var(--sg-stage)}.sg-wash.is-slate{background:linear-gradient(160deg,color-mix(in srgb,var(--share-paper) 16%,var(--sg-stage)),var(--sg-stage) 70%)}.sg-wash.is-blush{background:radial-gradient(80% 90% at 15% 10%,color-mix(in srgb,var(--rose) 30%,transparent),transparent 70%),radial-gradient(70% 80% at 90% 95%,color-mix(in srgb,var(--gold) 26%,transparent),transparent 70%),var(--share-paper)}.sg-wash.is-paper{background:radial-gradient(90% 80% at 50% 0%,color-mix(in srgb,var(--gold) 16%,transparent),transparent 70%),var(--share-paper)}.sg-canvas.is-accent-coral{--sg-accent: var(--accent)}.sg-canvas.is-accent-gold{--sg-accent: var(--gold)}.sg-canvas.is-accent-rose{--sg-accent: var(--rose)}.sg-canvas.is-accent-sage{--sg-accent: var(--sage)}.sg-canvas.is-accent-rust{--sg-accent: var(--share-accent)}.sg-canvas.is-accent-blue{--sg-accent: var(--share-route)}.sg-canvas.is-style-bold{--c-bg: color-mix(in srgb, var(--sg-accent) 16%, var(--sg-stage))}.sg-canvas.is-style-bold.is-light{--c-bg: color-mix(in srgb, var(--sg-accent) 8%, var(--share-paper))}.is-style-bold .sg-list-head{padding:12px 22px;border-bottom:0;border-radius:16px;background:var(--sg-accent);color:var(--c-on-accent)}.is-style-bold .sg-list-head small{color:inherit;opacity:.8}.sg-canvas.is-style-chalk{--c-bg: color-mix(in srgb, var(--share-ink) 84%, var(--sage) 16%);--c-ink: var(--share-paper);--c-soft: color-mix(in srgb, var(--share-paper) 70%, transparent);--c-edge: color-mix(in srgb, var(--share-paper) 22%, transparent);--c-panel: color-mix(in srgb, var(--share-paper) 6%, transparent);--c-paper: var(--share-paper);--c-paper-ink: var(--share-ink)}.is-style-chalk .sg-layer{background:repeating-linear-gradient(0deg,transparent 0 7px,color-mix(in srgb,var(--share-paper) 3%,transparent) 7px 8px),var(--c-bg)}.sg-canvas.is-style-chalk,.sg-canvas.is-style-paper{--sg-style-head: var(--font-serif)}.is-style-chalk .sg-list-head,.is-style-chalk .sg-name{font-style:italic;text-transform:none;letter-spacing:0}.is-style-chalk .sg-list-head{border-bottom:4px dashed var(--c-soft)}.is-style-chalk .sg-ln{border-bottom-style:dashed}.sg-canvas.is-style-paper{--c-bg: var(--share-paper);--c-ink: var(--share-ink);--c-soft: color-mix(in srgb, var(--share-ink) 68%, transparent);--c-panel: color-mix(in srgb, var(--sg-accent) 7%, var(--share-paper));--c-edge: color-mix(in srgb, var(--share-ink) 14%, transparent);--c-paper: var(--share-ink);--c-paper-ink: var(--share-paper)}.is-style-paper .sg-name,.is-style-paper .sg-list-head{text-transform:none;letter-spacing:0}.sg-canvas.is-style-night{--c-bg: color-mix(in srgb, var(--sg-stage) 86%, var(--sg-accent) 14%)}.is-style-night .sg-layer{background:radial-gradient(60% 70% at 10% 10%,color-mix(in srgb,var(--sg-accent) 38%,transparent),transparent 70%),radial-gradient(50% 60% at 94% 92%,color-mix(in srgb,var(--sg-accent) 26%,transparent),transparent 70%),var(--c-bg)}.is-style-night .sg-price,.is-style-night .sg-list-head,.is-style-night .sg-display{text-shadow:0 0 40px color-mix(in srgb,var(--sg-accent) 70%,transparent)}.is-style-night .sg-panel{box-shadow:0 0 60px color-mix(in srgb,var(--sg-accent) 28%,transparent)}.st-root.is-lite .is-style-night .sg-price,.st-root.is-lite .is-style-night .sg-list-head,.st-root.is-lite .is-style-night .sg-display{text-shadow:none}.st-root.is-lite .is-style-night .sg-panel{box-shadow:none}.sg-ticker{position:absolute;left:0;z-index:3;display:flex;align-items:center;height:96px;overflow:hidden;background:var(--sg-accent);color:var(--c-on-accent);font:600 44px/1 var(--font-sans)}.sg-ticker-run{display:flex;white-space:nowrap;will-change:transform}.sg-ticker-run span{flex:none;overflow:hidden}.sg-fly{position:absolute;left:0;z-index:4;pointer-events:none;will-change:transform;filter:drop-shadow(0 30px 40px color-mix(in srgb,var(--share-ink) 55%,transparent))}.st-root.is-lite .sg-fly{filter:none}.sg-fine{position:absolute;z-index:3;margin:0;font:500 26px/1.3 var(--font-sans);color:var(--c-soft);text-align:center}.sg-over{position:absolute;left:0;right:0;top:0;z-index:15;margin:0;padding:2cqh 4cqw;background:var(--share-accent);color:var(--share-paper);font-size:5cqh;font-weight:700;text-align:center}.sg-emergency{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-content:center;gap:3cqh;padding:6cqw;background:var(--share-error);color:var(--share-paper);text-align:center;animation:sg-pulse 2.4s ease-in-out infinite}.sg-emergency h1{margin:0;font:800 11cqh/1.05 var(--font-sans);letter-spacing:-.01em}.sg-emergency p{margin:0;font-size:4.5cqh;font-weight:600;opacity:.9}.sg-emergency-arrow{font-size:22cqh}@keyframes sg-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(.82)}}.is-lite .sg-emergency{animation:none}
