/* Sheets and alerts (sheets.js): a question about one window hangs from that window's title bar; a system question is a centred panel.
   Same file in static/ and site/. Borrows each surface's tokens. */
:root{--ws-ink:var(--inkc,var(--ink,#17191b));--ws-line:var(--edge,var(--line,#17191b));--ws-paper:var(--paper,#e9e7df);--ws-win:var(--win,#f6f5f0);--ws-hair:var(--hair,rgba(23,25,27,.14));--ws-lime:var(--lime,#b6d82f);--ws-limeink:var(--lime-ink,#1a2200);--ws-red:var(--red,#c9402f)}
.win.sheeted>.body,.win.sheeted>.toolbar{filter:saturate(.7)}
.ws-scrim{position:absolute;left:0;right:0;bottom:0;top:28px;z-index:60;background:rgba(23,25,27,.30)}
.wsheet{position:absolute;left:0;right:0;top:28px;z-index:61;display:flex;justify-content:center;overflow:hidden;pointer-events:none;padding:0 12px 12px}
.wsheet .ws-card{pointer-events:auto;width:min(420px,100%);box-sizing:border-box;display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 12px;padding:16px 16px 12px;background:var(--ws-win);color:var(--ws-ink);border:1px solid var(--ws-line);border-top:0;border-radius:0 0 12px 12px;box-shadow:0 14px 30px -10px rgba(0,0,0,.45);transform:translateY(-104%);transition:transform 250ms cubic-bezier(.2,.9,.25,1)}
.wsheet.in .ws-card{transform:none}
.wsheet.out .ws-card{transform:translateY(-104%)}
.wsheet.ws-fade .ws-card{transform:none;opacity:0;transition:opacity 150ms linear}
.wsheet.ws-fade.in .ws-card{opacity:1}
.wsheet.ws-fade.out .ws-card{opacity:0;transform:none}
.wsheet.nudge .ws-card{animation:wsNudge 240ms ease}
@keyframes wsNudge{25%{transform:translateX(-5px)}60%{transform:translateX(5px)}}
:root[data-motion="reduce"] .wsheet.nudge .ws-card{animation:none}
.ws-gem{grid-row:1/span 2;width:44px;height:44px;border-radius:10px;display:grid;place-items:center;font-size:22px;background:var(--ws-lime);color:var(--ws-limeink);border:1px solid var(--ws-line)}
.ws-text{min-width:0}
.ws-title{display:block;font-family:var(--display,inherit);font-weight:400;font-size:19px;line-height:1.15;letter-spacing:-.01em}
.ws-detail{margin:4px 0 0;font-size:15px;line-height:1.35;color:var(--muted,#5f645e)}
.ws-field{display:block;margin-top:8px}.ws-field span{display:block;font-family:var(--mono,monospace);font-size:12.5px;opacity:.75}
.ws-input{display:block;width:100%;box-sizing:border-box;min-height:36px;margin-top:4px;font:inherit;padding:6px 10px;border:1px solid var(--ws-line);border-radius:7px;background:var(--field,#fff);color:var(--ws-ink)}
.ws-buttons{grid-column:1/-1;display:flex;gap:8px;justify-content:flex-end;margin-top:10px}
.ws-btn{font:inherit;font-family:var(--display,inherit);font-size:16px;min-height:34px;min-width:78px;padding:4px 14px;border:1px solid var(--ws-line);border-radius:8px;background:var(--ws-paper);color:var(--ws-ink);cursor:default}
.ws-btn.ws-default{background:var(--ws-lime);color:var(--ws-limeink);font-weight:600;box-shadow:0 0 0 2px var(--ws-win),0 0 0 3px var(--ws-line)}
.ws-btn.ws-destructive{margin-right:auto;border-color:var(--ws-red);color:var(--ws-red);background:transparent}
.ws-btn:focus-visible{outline:2px solid var(--ws-ink);outline-offset:2px}
/* a question about nothing in particular: a centred panel over the dimmed desk */
.wsheet.ws-system{position:fixed;inset:0;top:0!important;z-index:2147483000;align-items:center;overflow:visible;padding:16px}
.wsheet.ws-system .ws-card{border-top:1px solid var(--ws-line);border-radius:14px;transform:scale(.96);opacity:0;transition:transform 180ms ease,opacity 180ms ease}
.wsheet.ws-system.in .ws-card{transform:none;opacity:1}
.wsheet.ws-system.out .ws-card{transform:scale(.96);opacity:0}
.ws-scrim:has(+ .ws-system),body>.ws-scrim{position:fixed;inset:0!important;top:0!important;z-index:2147482999}
/* a phone: the buttons stack, the default on top and Cancel at the bottom, each a 44 px target */
@media (max-width:640px){
  .wsheet .ws-card{grid-template-columns:minmax(0,1fr)}.wsheet .ws-gem{display:none}
  .ws-buttons{flex-direction:column-reverse;align-items:stretch}.ws-btn{min-height:44px}.ws-btn.ws-destructive{margin-right:0}
}
.wsheet.ws-wide .ws-card{width:min(460px,100%)}
.ws-body{margin-top:8px;max-height:46vh;overflow:auto}
.ws-btn.ws-other{background:var(--ws-paper)}
