/* Copyright (c) 2026 shatter. All rights reserved.
   Native paint supplies the companion's visible shell, text and geometry.
   These rules position its semantic browser controls and canonical mask tints. */
.sma { position:relative;width:100%;min-width:0;color:var(--menu-text);font:400 12px/1.5 Inter,Arial,sans-serif; }
.sma *, .sma *::before, .sma *::after { box-sizing:border-box; }
.sma-viewport { position:relative;max-width:100%;overflow:hidden;margin-inline:auto; }
.sma-stage { position:absolute;inset:0 auto auto 0;transform-origin:0 0;overflow:hidden;border-radius:var(--menu-shell-radius,12px); }
.sma-paint, .sma-input { position:absolute;inset:0; }
.sma-paint { pointer-events:none; }
.sma-input { pointer-events:none; }
.sma-mask, .sma-region, .sma-body-picking, .sma-close, .sma-scenario { position:absolute; }
.sma-mask { pointer-events:none;mask-repeat:no-repeat;mask-position:center;mask-size:100% 100%; }
.sma-body-picking { pointer-events:auto;cursor:crosshair;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none; }
.sma-region { pointer-events:none;appearance:none;background:transparent;border:0;color:transparent;padding:0; }
.sma-region:focus-visible { outline:1px solid var(--menu-ice);outline-offset:3px;border-radius:4px; }
.sma-close { pointer-events:auto;appearance:none;padding:0;border:0;background:transparent;cursor:pointer; }
.sma-close:hover { background:rgba(255,255,255,.06);border-radius:4px; }
.sma-close:focus-visible, .sma-scenario:focus-visible { outline:2px solid var(--menu-ice);outline-offset:2px; }
.sma-scenario { pointer-events:auto;appearance:none;opacity:0;cursor:pointer;border:0;padding:0; }
.sma-scenario:focus-visible { opacity:1;color:var(--menu-text);background:var(--menu-field);font:inherit; }
.sma-scenario option { color:#f0f2f4;background:#202124; }
.sma-help { position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.sma-live:empty { display:none; }
.sma-live { position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap; }
.sma-unavailable { padding:20px;background:var(--menu-field);border:1px solid var(--menu-edge);border-radius:var(--menu-shell-radius,12px); }
.sma-recovery-close { margin-top:12px;padding:8px 12px;min-height:40px;color:inherit;border:1px solid var(--menu-edge);border-radius:6px;background:transparent;cursor:pointer; }
.smc { min-width:0;color:var(--menu-text);font:400 12px/1.5 Inter,Arial,sans-serif; }
.smc-current { color:var(--menu-secondary);margin:0 0 12px;overflow-wrap:anywhere; }
.smc-viewport { position:relative;max-width:100%;overflow:hidden;margin-inline:auto;border-radius:12px; }
.smc-stage { position:absolute;inset:0 auto auto 0;transform-origin:0 0;overflow:hidden; }
.smc-paint { pointer-events:none; }
.smc-choices { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:14px; }
.smc-choices button, .smc-actions button { min-height:40px;padding:8px 10px;border:1px solid var(--menu-edge);border-radius:6px;background:var(--menu-field);color:inherit;font:inherit;cursor:pointer; }
.smc-choices button[aria-pressed='true'] { border-color:var(--menu-ice);background:rgba(184,214,240,.12); }
.smc-choices button:disabled, .smc-actions button:disabled { cursor:default;opacity:.45; }
.smc button:focus-visible { outline:2px solid var(--menu-ice);outline-offset:2px; }
.smc-actions { display:flex;flex-wrap:wrap;gap:8px;margin-top:14px; }
.smc-actions .smc-save { background:var(--menu-ice);color:#171b20; }
.smc-live { min-height:20px;color:var(--menu-secondary);margin:10px 0 0; }
@media(max-width:520px) { .smc-choices { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(prefers-reduced-motion:reduce) { .sma *, .sma *::before, .sma *::after { animation:none!important;transition:none!important; } }
@media(forced-colors:active) { .sma-region:focus-visible, .sma-close:focus-visible, .sma-scenario:focus-visible { outline:2px solid Highlight; } .sma-scenario { opacity:1;color:CanvasText;background:Canvas; } }
