/* ============================================================
   MONOSYSM / OS  —  DESKTOP SHELL styles
   Layers on top of style.css. Owns: boot splash, desktop, windows,
   taskbar/tray, start menu, curvature + cursor set, mobile.
   ============================================================ */

/* ---------- themed cursor set ---------- */
:root{
  --cur-hand:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M8 3.5c0-1 .7-1.6 1.5-1.6S11 2.5 11 3.5V9c0-.7.6-1.2 1.3-1.2S13.6 8.3 13.6 9v.6c0-.6.6-1.1 1.3-1.1s1.3.5 1.3 1.1v.7c0-.6.5-1 1.2-1s1.2.5 1.2 1.1v4.2c0 2.8-1.8 5.6-5.2 5.6-3.1 0-4.6-1.3-6-3.6L6 13.4c-.5-.9.5-1.9 1.5-1.4l1.5 1V3.5z' fill='%23ff3b14' stroke='black' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/svg%3E") 8 2;
  --cur-text:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='22'%3E%3Cg stroke='black' stroke-width='3'%3E%3Cpath d='M3 2h8M3 20h8M7 2v18'/%3E%3C/g%3E%3Cg stroke='%23ff3b14' stroke-width='1.3'%3E%3Cpath d='M3 2h8M3 20h8M7 2v18'/%3E%3C/g%3E%3C/svg%3E") 7 11;
  --cur-move:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Cpath d='M12 1l4 4h-3v6h6V8l4 4-4 4v-3h-6v6h3l-4 4-4-4h3v-6H5v3l-4-4 4-4v3h6V5H8z' fill='%23ff3b14' stroke='black' stroke-width='1' stroke-linejoin='round'/%3E%3C/svg%3E") 12 12;
  --cur-busy:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='24'%3E%3Cg stroke='black' stroke-width='3' fill='none'%3E%3Cpath d='M4 2h14M4 22h14'/%3E%3C/g%3E%3Cpath d='M4 2h14c0 6-7 7-7 10s7 4 7 10H4c0-6 7-7 7-10S4 8 4 2z' fill='%23ff3b14' stroke='black' stroke-width='1.2'/%3E%3C/svg%3E") 11 12;
}

/* ===================== MONITOR / BEZEL (thin, fills screen, no grey ring) ===================== */
.monitor{padding:clamp(4px,0.7vw,12px);background:#000}
.screen{
  width:100%;max-width:none;height:100%;
  border-radius:20px;                 /* uniform radius — shape constant on zoom */
  box-shadow:0 18px 60px rgba(0,0,0,.9);   /* soft drop only — no orange frame/glow */
}
/* content fills to the bezel; the console floats as a card on top */
.glass{padding:0}
.desktop{gap:0;position:relative}
/* floating card, but BELOW windows/drawers so it never blocks them */
.console{position:absolute;top:12px;left:12px;right:12px;z-index:5;margin:0;
  box-shadow:0 8px 24px rgba(0,0,0,.55)}
.desk-area{border:none;background:transparent;border-radius:0}
/* gentle vignette only (kept light so the screen isn't dark) */
.crt-vig{
  background:radial-gradient(130% 120% at 50% 48%, transparent 72%, rgba(0,0,0,.42) 100%);
  box-shadow:none;
}
/* ===================== FASTER / RANDOM CRT ROLL ===================== */
/* the bright scan bar now fires as quick one-shot sweeps at random intervals
   (driven by app.js crtRollLoop), instead of one constant slow loop */
.crt-roll{animation:none;opacity:0;top:-22%;height:16%}
.crt-roll.sweep{opacity:.6;animation:roll var(--rolldur,1s) linear}
@media(prefers-reduced-motion:reduce){.crt-roll.sweep{animation:none;opacity:0}}

/* ===================== BOOT SPLASH (graphic) ===================== */
.boot-splash{
  position:absolute;inset:0;z-index:30;background:var(--bg);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
  border-radius:inherit;
}
.boot-splash{background:radial-gradient(60% 60% at 50% 50%, #1c0f08 0%, #0a0604 45%, #000 100%)}
.bs-stack{display:flex;flex-direction:column;align-items:center;gap:34px;position:relative}
.bs-logo{
  position:relative;width:clamp(100px,12vw,150px);aspect-ratio:1;background:var(--phos);
  -webkit-mask:url("../assets/Monosysm_IconAlt.svg") center/contain no-repeat;
          mask:url("../assets/Monosysm_IconAlt.svg") center/contain no-repeat;
  filter:drop-shadow(0 0 26px var(--phos));
  animation:bsPulse 2.6s ease-in-out infinite;
}
/* concentric glow halo behind the emblem */
.bs-logo::after{content:"";position:absolute;left:50%;top:50%;width:340%;height:340%;
  transform:translate(-50%,-50%);z-index:-1;border-radius:50%;
  background:radial-gradient(circle, rgba(255,55,10,.28) 0%, rgba(255,55,10,.10) 30%, transparent 62%);
  animation:bsHalo 2.6s ease-in-out infinite}
@keyframes bsPulse{0%,100%{filter:drop-shadow(0 0 16px var(--phos))}50%{filter:drop-shadow(0 0 34px var(--phos))}}
@keyframes bsHalo{0%,100%{opacity:.7;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}
.bs-name{font-size:clamp(15px,2.6vw,24px);font-weight:800;letter-spacing:.36em;color:var(--phos-dim)}
.bs-name .dim{color:var(--phos-dim);opacity:.6}
.bs-bar{width:min(300px,52vw);height:8px;border:1px solid var(--phos-dim);padding:2px}
.bs-bar i{display:block;height:100%;width:0;transition:width .35s ease;
  background:repeating-linear-gradient(90deg,var(--phos) 0 6px,transparent 6px 10px)}
.bs-status{font-size:10px;letter-spacing:.22em;color:var(--phos-dim);min-height:13px;text-transform:uppercase}
.bs-ver{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.24em}
.boot-splash .boot-skip{
  position:absolute;bottom:22px;right:26px;left:auto;text-align:right;
  font-size:11px;letter-spacing:.2em;color:var(--phos-dim);animation:pwr 1.4s ease-in-out infinite;
}
.boot-splash .boot-skip:hover{color:var(--phos)}
@media(prefers-reduced-motion:reduce){.bs-logo{animation:none}}

/* ===================== DESKTOP ===================== */
.desktop{flex:1;display:flex;flex-direction:column;min-height:0;gap:0;position:relative;animation:fadein .5s ease both}

/* persistent terminal console (top bar) */
.console{
  display:flex;align-items:center;gap:10px;flex:none;
  border:1px solid var(--line);background:var(--bg2);padding:7px 12px;font-size:13px;
}
.con-mark{width:15px;height:15px;flex:none;background:var(--phos);
  -webkit-mask:var(--icon-mono) center/contain no-repeat;mask:var(--icon-mono) center/contain no-repeat}
.con-prompt{color:var(--phos-dim);white-space:nowrap;font-size:12.5px}
.console .cmd-wrap{position:relative;flex:1;display:flex}
.console .cmd-input{width:100%;background:none;border:none;outline:none;color:var(--phos);
  text-shadow:0 0 4px var(--glow);caret-color:transparent}
.console .cmd-ghost{position:absolute;left:0;top:0;color:var(--phos-dim);pointer-events:none;white-space:pre}
.con-toggle{width:24px;height:20px;display:grid;place-items:center;border:1px solid var(--line);
  background:rgba(0,0,0,.25);color:var(--phos-dim);cursor:var(--cur-hand),pointer}
.con-toggle:hover{background:var(--phos-faint);color:var(--phos)}
/* console scrollback panel (drops over the desktop) */
.console-out{
  position:absolute;left:0;right:0;top:0;z-index:30;max-height:46%;overflow:auto;
  border-bottom:1px solid var(--phos);background:rgba(8,4,2,.96);padding:12px 16px;
  font-size:12.5px;line-height:1.6;box-shadow:0 14px 36px rgba(0,0,0,.7);
}
.console-out .t-cmd{color:var(--phos);margin-top:8px}
.console-out .t-cmd .t-prompt{color:var(--phos-dim)}
.console-out .t-res{white-space:pre-wrap;color:var(--phos);font-size:12px;line-height:1.65;margin:2px 0 4px}

/* work area holds wallpaper + icons + windows */
.desk-area{position:relative;flex:1;min-height:0;border:none;overflow:hidden;background:transparent}

/* wallpaper — placeholder (Fase C replaces with pre-rendered 3D dither loop) */
.wallpaper{
  position:absolute;inset:0;pointer-events:none;overflow:hidden;display:grid;place-items:center;
  background:
    radial-gradient(70% 60% at 50% 46%, rgba(255,55,10,.16), transparent 60%),
    radial-gradient(140% 140% at 50% 44%, #1a0f08, #0c0705 70%, #040201 100%);
}
/* outlined triple-bolt logo (per Home Screen.png) */
.wp-bolt{width:min(66vw,1000px);height:auto;color:var(--phos);opacity:.42;
  filter:drop-shadow(0 0 16px var(--glow))}
.wp-bolt polygon{vector-effect:non-scaling-stroke;stroke-width:1.4px}
.wallpaper::after{        /* dither / grid overlay */
  content:"";position:absolute;inset:0;opacity:.45;
  background:
    repeating-linear-gradient(0deg, rgba(0,0,0,.22) 0 1px, transparent 1px 3px),
    repeating-linear-gradient(90deg, rgba(0,0,0,.22) 0 1px, transparent 1px 3px);
}

/* ---------- desktop icons ---------- */
.desktop-icons{
  position:absolute;top:74px;left:14px;z-index:2;list-style:none;
  display:flex;flex-direction:column;gap:6px;max-height:calc(100% - 28px);flex-wrap:wrap;
}
.dicon{
  width:92px;padding:10px 6px 8px;display:flex;flex-direction:column;align-items:center;gap:7px;
  cursor:var(--cur-hand),pointer;border:1px solid transparent;text-align:center;user-select:none;
}
.dicon:hover{background:var(--phos-faint);border-color:var(--line)}
.dicon.sel{background:var(--phos-faint);border-color:var(--phos)}
.dicon-glyph{
  width:46px;height:46px;display:grid;place-items:center;font-size:20px;line-height:1;
  border:1px solid var(--line);background:rgba(0,0,0,.45);color:var(--phos);
  box-shadow:inset 0 0 12px rgba(0,0,0,.6);
}
/* brand-icon glyphs (folders / titlebar / taskbar / start) via SVG mask */
.brandico{color:var(--phos)}
.dicon-glyph.brandico{
  background:var(--phos);
  -webkit-mask:var(--m) center/64% no-repeat, none;mask:var(--m) center/64% no-repeat;
  -webkit-mask-composite:source-over;
}
.win-ico.brandico,.task-ico.brandico,.sm-glyph.brandico{
  display:inline-block;width:14px;height:14px;background:currentColor;
  -webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.win.active .win-ico.brandico{background:#000}
.dicon-label{font-size:9.5px;letter-spacing:.08em;color:var(--phos);text-transform:uppercase;
  text-shadow:0 0 3px var(--glow),1px 1px 0 #000}
/* retro folder icon (brand badge on a DOS-style folder) */
.dicon-folder{position:relative;width:56px;height:44px;display:grid;place-items:center}
.folder-svg{width:56px;height:auto;filter:drop-shadow(0 0 4px var(--glow))}
.folder-svg .f-body{fill:var(--phos-faint);stroke:var(--phos);stroke-width:1.4;stroke-linejoin:miter}
.folder-badge{position:absolute;left:50%;top:60%;transform:translate(-50%,-50%);width:20px;height:20px;
  background:var(--phos);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.dicon:hover .folder-svg .f-body,.dicon.sel .folder-svg .f-body{fill:rgba(255,55,10,.28)}

/* ===================== WINDOWS ===================== */
.windows{position:absolute;inset:0;z-index:3;pointer-events:none}
.win{
  position:absolute;display:flex;flex-direction:column;pointer-events:auto;
  background:var(--bg);border:1px solid var(--phos-dim);
  box-shadow:0 18px 50px rgba(0,0,0,.7), inset 0 0 22px rgba(0,0,0,.45);
  min-width:280px;max-width:100%;animation:winIn .18s ease both;
}
@keyframes winIn{from{opacity:0}to{opacity:1}}
.win{border:1px solid var(--phos)}
.win.active{box-shadow:0 22px 60px rgba(0,0,0,.8),0 0 0 1px var(--phos),inset 0 0 22px rgba(0,0,0,.45)}
.win.dragging{opacity:.95;user-select:none}
.win.max{left:0!important;top:0!important;right:0!important;bottom:0!important;
  width:auto!important;height:auto!important;border-radius:0}
/* solid orange titlebar (per Window.png) */
.win-bar{
  flex:none;display:flex;align-items:center;gap:10px;cursor:var(--cur-move),move;
  padding:9px 12px;background:var(--phos);color:#000;text-shadow:none;user-select:none;
}
.win-ico{font-size:13px;font-weight:800;color:#000}
.win-title{font-size:12px;letter-spacing:.22em;font-weight:800;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.win-sp{flex:1}
.win-btn{
  width:30px;height:24px;display:grid;place-items:center;font-size:15px;line-height:1;margin-left:4px;
  border:none;background:transparent;color:#000;cursor:var(--cur-hand),pointer;
}
.win-btn:hover{background:rgba(0,0,0,.22)}
.win-close:hover{background:#000;color:var(--phos)}
.win-body{flex:1;min-height:0;overflow:auto;position:relative;background:rgba(0,0,0,.22)}
.win-body .view{padding:clamp(14px,1.8vw,26px);min-height:100%}
/* EXPLORER window = old OS workspace (sidebar + viewport) */
.win.explorer .win-body{overflow:hidden;display:flex;flex-direction:column;padding:8px}
.win.explorer .workspace{flex:1;min-height:0;gap:8px;margin:0}
.win.explorer .sidebar{width:236px}
@media(max-width:780px){
  .win.explorer .win-body{padding:0}
  .win.explorer .workspace{flex-direction:column;gap:6px}
  .win.explorer .sidebar{width:100%;flex-direction:row;flex-wrap:wrap;max-height:38%}
  .win.explorer .sidebar .panel{flex:1;min-width:150px}
}

/* ---------- TERMINAL app ---------- */
.terminal{display:flex;flex-direction:column;height:100%}
.term-out{flex:1;min-height:0;overflow:auto;padding:12px 14px;font-size:12.5px;line-height:1.6}
.t-banner{color:var(--phos-dim);white-space:pre-wrap;margin-bottom:10px;font-size:11.5px;line-height:1.55}
.t-cmd{color:var(--phos);margin-top:8px}
.t-cmd .t-prompt{color:var(--phos-dim)}
.t-res{white-space:pre-wrap;color:var(--phos);font-size:12px;line-height:1.65;margin:2px 0 4px}
.term-input{
  flex:none;display:flex;align-items:center;gap:8px;
  border-top:1px solid var(--line);background:var(--bg2);padding:8px 12px;font-size:13px;
}

/* ---------- SETTINGS app ---------- */
.settings .set-grp{margin-bottom:18px}
.settings .set-h{font-size:10px;letter-spacing:.22em;color:var(--phos-dim);
  border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:10px;text-transform:uppercase}
.settings .modes{padding:0;display:flex;flex-direction:column;gap:3px}
.settings .set-toggle{width:auto}
.settings .set-toggle.on{background:var(--phos);color:#000;text-shadow:none}
.settings .set-note{font-size:10px;margin-top:8px;letter-spacing:.08em}
.settings .meters{border:1px solid var(--line);padding:8px 4px}

/* ===================== TASKBAR (flush to bezel · emblem in the corner) ===================== */
.taskbar{
  flex:none;display:flex;align-items:stretch;height:var(--tb-h);margin:0;padding:0;
  border:none;border-top:1px solid var(--phos-dim);
  background:linear-gradient(180deg,#16100c 0%, #0c0807 100%);
}
/* round OS emblem nested in the bottom-left rounded elbow */
.tb-start{
  width:56px;flex:none;display:grid;place-items:center;padding:0;border:none;background:transparent;
  cursor:var(--cur-hand),pointer;
}
/* just the orange logo mark — no circular plate around it */
.tb-start-emblem{width:34px;height:34px;display:block;background:var(--phos);
  -webkit-mask:url('../assets/Monosysm_IconAlt.svg') center/contain no-repeat;
          mask:url('../assets/Monosysm_IconAlt.svg') center/contain no-repeat;
  filter:drop-shadow(0 0 5px var(--glow));transition:filter .18s,background .18s}
.tb-start:hover .tb-start-emblem,.tb-start[aria-expanded="true"] .tb-start-emblem{
  background:var(--phos-hi);filter:drop-shadow(0 0 10px var(--phos))}
/* running-app buttons */
.tb-tasks{flex:1;display:flex;align-items:center;gap:0;overflow:hidden;
  border-left:1px solid rgba(255,55,10,.18)}
.task{
  align-self:stretch;display:flex;align-items:center;padding:0 20px;max-width:260px;
  border:none;border-right:1px solid rgba(255,55,10,.14);background:transparent;color:var(--phos-dim);
  font-size:11px;letter-spacing:.16em;cursor:var(--cur-hand),pointer;text-transform:uppercase;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s;
}
.task .task-ico{flex:none;width:16px;height:16px;margin-right:9px;background:currentColor;
  -webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.task .task-gly{flex:none;margin-right:9px;font-size:13px}
.task.min .task-gly{margin-right:0}
.task .task-lab{overflow:hidden;text-overflow:ellipsis}
.task:hover{background:rgba(255,55,10,.10);color:var(--phos)}
.task.on{background:var(--phos);color:#000;font-weight:700;box-shadow:inset 0 -3px 0 var(--phos-hi)}
/* minimized → show only the icon (compact), per design */
.task.min{opacity:.7;padding:0 14px}
.task.min .task-lab{display:none}
.task.min .task-ico{margin-right:0}
/* right tray: CART | DD DDD HH:MM */
.tb-tray{display:flex;align-items:center;gap:14px;padding:0 18px 0 16px;
  border-left:1px solid rgba(255,55,10,.18)}
.tray-cart{font-size:12px;letter-spacing:.16em;color:var(--phos);border:none;background:none;
  cursor:var(--cur-hand),pointer;text-transform:uppercase}
.tray-cart:hover,.tray-cart.live{color:var(--phos-hi)}
.tray-sep{color:var(--phos-dim)}
.tray-clock{font-size:12px;letter-spacing:.08em;color:var(--phos);font-weight:700}

/* ---------- Start menu ---------- */
.start-menu{
  position:absolute;left:0;bottom:0;z-index:40;width:260px;
  border:1px solid var(--phos);background:var(--bg);box-shadow:0 -10px 40px rgba(0,0,0,.7);
  animation:smIn .14s ease both;
}
@keyframes smIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.sm-head{display:flex;align-items:center;gap:10px;padding:12px 14px;font-weight:800;letter-spacing:.2em;
  font-size:12px;background:var(--phos);color:#000;text-shadow:none}
.sm-mark{width:16px;height:16px;background:#000;
  -webkit-mask:var(--icon-mono) center/contain no-repeat;mask:var(--icon-mono) center/contain no-repeat}
.sm-list{list-style:none;padding:6px 0}
.sm-item{display:flex;align-items:center;gap:11px;padding:8px 16px;font-size:12px;letter-spacing:.1em;
  cursor:var(--cur-hand),pointer;text-transform:uppercase;color:var(--phos)}
.sm-item:hover{background:var(--phos-faint)}
.sm-glyph{width:18px;text-align:center;color:var(--phos-dim)}
.sm-sep{height:1px;background:var(--line);margin:2px 10px}
.sm-power{color:var(--phos-dim)}
/* start-menu volume row */
.sm-vol{display:flex;align-items:center;gap:10px;padding:6px 16px}
.sm-vol .vol-wheel{position:relative;flex:1;height:18px;border-radius:2px;cursor:ew-resize;touch-action:none;overflow:hidden;
  border:1px solid #0a0807;
  background:repeating-linear-gradient(90deg,rgba(0,0,0,.55) 0 2px,rgba(255,255,255,.05) 2px 3px,rgba(0,0,0,.55) 3px 5px,transparent 5px 6px),
    linear-gradient(90deg,#050403,#2a221e 50%,#050403),linear-gradient(180deg,#1c1714,#0a0807)}
.sm-vol .vol-ind{position:absolute;top:3px;bottom:3px;left:4px;width:2px;background:var(--phos);box-shadow:0 0 6px var(--phos)}
.sm-vol .vol-label{font-size:9px;letter-spacing:.12em;color:var(--phos-dim);min-width:48px}

/* ===================== BREADCRUMB (explorer) ===================== */
.win.explorer .viewport{display:flex;flex-direction:column}
.crumb{position:sticky;top:0;z-index:3;flex:none;padding:11px 16px;border-bottom:1px solid var(--phos-dim);
  color:var(--phos);font-size:12px;letter-spacing:.06em;background:var(--bg)}
.win.explorer .view{flex:1 0 auto}

/* ===================== CART DRAWER (base — popup styling in store.css) ===================== */
.drawer{
  position:absolute;z-index:60;display:flex;flex-direction:column;
  border:1px solid var(--phos);background:var(--bg);box-shadow:0 16px 50px rgba(0,0,0,.7);
}
.drawer-head{flex:none;display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;background:var(--phos);color:#000}
.drawer-head .dh-title{font-weight:800;letter-spacing:.2em;font-size:12px}
.drawer-x{border:none;background:none;color:#000;font-size:15px;cursor:var(--cur-hand),pointer;width:26px;height:24px;
  display:grid;place-items:center}
.drawer-x:hover{background:rgba(0,0,0,.2)}
.drawer-body{flex:1;min-height:0;overflow:auto}

/* ---------- volume popover ---------- */
.vol-pop{
  position:absolute;right:8px;bottom:8px;z-index:40;
  border:1px solid var(--phos);background:var(--bg);padding:12px;display:flex;flex-direction:column;
  gap:8px;align-items:center;box-shadow:0 -10px 30px rgba(0,0,0,.7);animation:smIn .14s ease both;
}
.vol-pop-h{font-size:9px;letter-spacing:.2em;color:var(--phos-dim)}
.vol-pop .vol-wheel{
  position:relative;width:140px;height:24px;border-radius:2px;cursor:ew-resize;touch-action:none;overflow:hidden;
  border:1px solid #0a0807;
  background:
    repeating-linear-gradient(90deg,rgba(0,0,0,.55) 0 2px,rgba(255,255,255,.05) 2px 3px,rgba(0,0,0,.55) 3px 5px,transparent 5px 6px),
    linear-gradient(90deg,#050403 0%,#2a221e 50%,#050403 100%),linear-gradient(180deg,#1c1714,#0a0807);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.9),inset 0 -1px 2px rgba(0,0,0,.9);
}
.vol-pop .vol-ind{position:absolute;top:3px;bottom:3px;left:4px;width:2px;border-radius:1px;
  background:var(--phos);box-shadow:0 0 6px var(--phos);transition:left .05s linear}
.vol-pop .vol-label{font-size:9px;letter-spacing:.14em;color:var(--phos-dim)}

/* ---------- shutdown overlay ---------- */
.shutdown{position:absolute;inset:0;z-index:80;background:#000;border-radius:inherit;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px}
.sd-msg{color:var(--phos);font-size:clamp(13px,2vw,18px);letter-spacing:.24em;text-align:center;line-height:1.8;
  text-shadow:0 0 8px var(--glow);animation:pwr 2s ease-in-out infinite}
.sd-btn{border:1px solid var(--phos);color:var(--phos);padding:10px 18px;font-size:12px;letter-spacing:.18em;
  cursor:var(--cur-hand),pointer}
.sd-btn:hover{background:var(--phos);color:#000}

/* ===================== CURSOR APPLICATION ===================== */
.monitor a,.monitor button,.monitor [role="button"],.monitor .btn,.monitor .dicon,.monitor .task,
.monitor .tray-btn,.monitor .tb-start,.monitor .win-btn,.monitor .mode-btn,.monitor .sm-item,
.monitor .rec-row,.monitor .file-card,.monitor .pay-opt,.monitor .smx i,.monitor .thumbs i,
.monitor .cway i,.monitor label,.monitor .kbd{cursor:var(--cur-hand),pointer}
.monitor input,.monitor textarea,.monitor [contenteditable]{cursor:var(--cur-text),text}
.monitor .win-bar{cursor:var(--cur-move),move}
.monitor .vol-wheel{cursor:ew-resize}
body.busy,body.busy *{cursor:var(--cur-busy),progress!important}

/* ===================== MOBILE ===================== */
@media(max-width:780px){
  .desktop-icons{flex-direction:row;flex-wrap:wrap;gap:4px;max-height:none;
    width:calc(100% - 28px);justify-content:flex-start}
  .dicon{width:74px}
  /* windows + drawers go full-area, no dragging */
  .win{left:0!important;top:0!important;width:100%!important;height:100%!important;
    border:none;box-shadow:none;animation:fadein .2s ease both}
  .win-bar{cursor:default}
  .drawer.hilights{width:100%!important}  /* cart becomes a bottom-sheet instead — see store.css */
  .hilights-tab{top:auto;bottom:8px}
  .task{max-width:140px;padding:0 12px}
  .win-body .view{padding:14px}
}
@media(max-width:560px){
  :root{--tb-h:40px}                 /* shorter taskbar — cart bottom-sheet follows via var */
  .tray-clock{font-size:10px}
  /* reclaim space so the CLI field stays usable on a phone */
  .con-hint{display:none}           /* decorative ENTER ⏎ badge — overflows onto the cart pill */
  .tray-cart .tc-label{display:none}/* cart = icon + badge only (matches tray intent) */
  .tray-clock .clk-date{display:none}/* keep the time, drop the date */
  .tb-tray{gap:10px;padding:0 12px 0 10px}
}
