/* CuzzCraft: Windows XP desktop theme.
   Window frames and title-bar buttons come from css/xp-window.css (XP.css, MIT).
   No inline styles anywhere: the site's Content-Security-Policy forbids them. */

@font-face{font-family:"Jersey 15";src:url(/fonts/jersey-15.woff2) format("woff2");font-display:swap}

:root{
  --tb-h:30px;
  --ui:Tahoma,"Segoe UI",Verdana,Geneva,sans-serif;
  --title:"Trebuchet MS","Segoe UI",Tahoma,sans-serif;
  --doc:"Times New Roman",Times,"Liberation Serif",serif;
  --doc-head:Arial,"Helvetica Neue",Helvetica,"Liberation Sans",sans-serif;
  --pixel:"Jersey 15","Trebuchet MS",sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0}
body{font:11px/1.35 var(--ui);color:#000;background:#3a6fd8 url(/img/wallpaper.jpg?v=20261019) center/cover fixed no-repeat}
img{border:0}
a{color:#0b3fa8}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:1px dotted #000;outline-offset:1px}
.hidden{display:none!important}

/* ---------- desktop ---------- */
#desktop{position:relative;padding:16px}
.desk-icons{display:none}
.dicon{display:flex;flex-direction:column;align-items:center;width:84px;text-align:center;color:#fff;text-decoration:none;font-size:11px;padding:4px 2px;border:1px dotted transparent}
.dicon img{width:32px;height:32px;image-rendering:pixelated;margin-bottom:4px}
.dicon span{text-shadow:1px 1px 1px #000,0 0 2px #000;padding:1px 2px}
.dicon:focus-visible{outline:none;border-color:#fff}
.dicon:focus-visible span,.dicon:active span{background:#316ac5}

/* ---------- windows (shared) ---------- */
.window{font-family:var(--ui);margin:0 auto 16px;max-width:760px}
.window .title-bar{height:29px;padding:0 5px 0 6px}
.window .title-bar-text{display:flex;align-items:center;gap:5px;font:700 13px var(--title);min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.window .title-bar-text img{width:16px;height:16px;image-rendering:pixelated;flex:none}
.window .title-bar-controls{flex:none}
.window .status-bar-field{font-family:var(--ui)!important;font-size:11px}
.window.inactive .title-bar{background:linear-gradient(180deg,#9db7f0,#7d9de6 8%,#7b9be6 40%,#86a5ec 88%,#7f9fe9 96%,#6f8fde);border-color:#7593e0}
.window.inactive .title-bar-text{color:#d8e4f8;text-shadow:none}
.window.inactive .title-bar-controls button{opacity:.55}
.window.inactive{box-shadow:inset -1px -1px #6f87d8,inset 1px 1px #7d9de6,inset -2px -2px #7d9de6,inset 2px 2px #9db7f0,inset -3px -3px #8aa6ea,inset 3px 3px #8aa6ea}

/* ---------- home ---------- */
.home-body{margin:3px;background:#fff;border:1px solid #919b9c;padding:26px 30px 14px;text-align:center}
.greet{font-size:16px;font-weight:700;margin:0 0 8px}
.status-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;background:#f4f4f4;border:1px solid #c9c9c9;border-radius:3px;padding:3px 8px;margin:0 0 12px}
.status-chip.on{background:#f1f6e8;border-color:#b9d39a}
.status-chip.off{background:#fbf0ee;border-color:#e3b8ae}
.dot{width:9px;height:9px;border-radius:50%;flex:none;background:radial-gradient(circle at 35% 35%,#e8e8e8,#a0a0a0 60%,#777);border:1px solid #666}
.dot.on{background:radial-gradient(circle at 35% 35%,#b9f59a,#2fa82f 60%,#1d7a1d);border-color:#1a6a1a}
.dot.off{background:radial-gradient(circle at 35% 35%,#ffc2b5,#d9432a 60%,#9a2412);border-color:#7a1c0e}
.join{display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;margin:4px 0 2px}
.join b{font:700 20px var(--title);color:#0b3fa8;letter-spacing:.2px}
.join .copybtn{font-size:11px}
.join-sub{margin:4px 0 0;color:#555;font-size:12px}
.icons{display:flex;justify-content:center;gap:28px;margin:24px 0 8px}
.ficon{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:#000;padding:6px 8px;border:1px solid transparent;border-radius:2px;width:116px}
.ficon:hover,.ficon:focus-visible{background:#e3ecfb;border-color:#9dbbe9;outline:none}
.ficon picture{display:contents}
.ficon source{display:none}
img.smooth{image-rendering:auto!important}
.ficon img{width:64px;height:64px;image-rendering:pixelated;filter:drop-shadow(2px 3px 0 rgba(0,0,0,.18))}
.ft{display:flex;flex-direction:column;align-items:center;gap:2px}
.ft b{font-size:13px;color:#0b3fa8}
.ft small{font-size:10px;color:#6b6b6b}
.fine{margin:14px 0 0;font-size:10px;color:#7a7a7a;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
#win-home .status-bar{margin:0 3px}

/* ---------- start menu + taskbar (only with JS) ---------- */
.startmenu,#taskbar{display:none}
#taskbar{position:fixed;left:0;right:0;bottom:0;height:var(--tb-h);align-items:stretch;z-index:900;
  background:linear-gradient(180deg,#3168d5 0%,#4993e6 3%,#2157d7 6%,#2663e0 10%,#245edb 50%,#2257d4 85%,#1941a5 100%)}
#start{display:flex;align-items:center;gap:6px;padding:0 20px 0 9px;margin:0 10px 0 0;border:0;flex:none;
  border-radius:0 12px 12px 0;color:#fff;font:italic 700 19px/1 var(--title);text-shadow:1px 1px 2px rgba(0,0,0,.65);
  background:linear-gradient(180deg,#3b9a3b 0%,#5cc05c 8%,#3fae3f 20%,#379f37 50%,#2f912f 80%,#257a25 100%);
  box-shadow:inset -2px 0 3px rgba(0,0,0,.3),inset 1px 1px 2px rgba(255,255,255,.35),1px 0 2px rgba(0,0,0,.4)}
#start:hover{filter:brightness(1.08)}
#start img{width:22px;height:22px;image-rendering:pixelated;filter:drop-shadow(1px 1px 1px rgba(0,0,0,.5))}
#start[aria-expanded=true]{background:linear-gradient(180deg,#1e6e1e,#2b8a2b 30%,#2a822a 70%,#1f6a1f)}
.tasks{display:flex;gap:3px;align-items:center;flex:1;min-width:0;overflow:hidden}
.task{display:none;align-items:center;gap:6px;height:24px;width:160px;min-width:0;flex:0 1 160px;padding:0 8px;color:#fff;font-size:11px;border:0;border-radius:3px;white-space:nowrap;overflow:hidden;text-align:left;
  background:linear-gradient(180deg,#5ea1ff,#3c81f3 20%,#3a7ef0 80%,#2f6edc);box-shadow:inset 1px 1px 1px rgba(255,255,255,.4),inset -1px -1px 1px rgba(0,0,0,.3)}
.task.shown{display:flex}
.task span{overflow:hidden;text-overflow:ellipsis}
.task:hover{filter:brightness(1.1)}
.task.active{background:linear-gradient(180deg,#1b4bb4,#1e52b7 30%,#2257c2);box-shadow:inset 1px 1px 2px rgba(0,0,0,.5)}
.task img{width:16px;height:16px;image-rendering:pixelated;flex:none}
.tray{display:flex;align-items:center;gap:8px;padding:0 12px;color:#fff;font-size:11px;flex:none;
  background:linear-gradient(180deg,#0c59b9 0%,#139ee9 3%,#18b9ff 6%,#119fe8 10%,#0f8ae0 50%,#0d7bd6 85%,#095bb5 100%);
  border-left:1px solid #092e8a;box-shadow:inset 1px 0 1px #1ea8f2}
.tcount{display:flex;align-items:center;gap:4px}
.tcount img{width:16px;height:16px;image-rendering:pixelated}
.tcount:empty{display:none}

.startmenu{position:fixed;left:0;bottom:var(--tb-h);width:410px;max-height:calc(100% - var(--tb-h));z-index:950;border-radius:8px 8px 0 0;overflow:hidden;
  background:#1f5ed6;box-shadow:2px -2px 10px rgba(0,0,0,.45);border:1px solid #1652c4;border-bottom:0;flex-direction:column}
.startmenu.open{display:flex}
.sm-head{display:flex;align-items:center;gap:10px;padding:8px 10px;min-height:64px;flex:none;
  background:linear-gradient(180deg,#1868ce 0%,#3d8af0 5%,#1d6fe0 15%,#1868ce 60%,#0f5bc4 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.3)}
.sm-head .pic{width:48px;height:48px;border:2px solid #fff;border-radius:4px;box-shadow:1px 1px 3px rgba(0,0,0,.5);background:#fff;flex:none}
.sm-head .pic img{width:100%;height:100%;display:block}
.sm-head .addr{display:flex;flex-direction:column;gap:2px;color:#fff;flex:1;min-width:0}
.sm-head .addr small{font-size:10px;opacity:.85;text-shadow:1px 1px 1px rgba(0,0,0,.5)}
.sm-head .addr b{font:700 18px var(--title);text-shadow:1px 1px 2px rgba(0,0,0,.6);letter-spacing:.2px}
.copybtn{display:flex;align-items:center;gap:5px;font:11px var(--ui);color:#000;padding:4px 9px;border-radius:3px;border:1px solid #003c74;flex:none;
  background:linear-gradient(180deg,#fff,#ecebe6 86%,#d6d0c5);box-shadow:inset -1px -1px #d6d0c5}
.copybtn:hover{box-shadow:inset 0 0 0 2px #f8b636}
.copybtn img{width:14px;height:14px;image-rendering:pixelated}
.sm-orange{height:2px;flex:none;background:linear-gradient(90deg,transparent,#f6a243 15%,#f6a243 85%,transparent)}
.sm-body{display:flex;background:#fff;min-height:330px;flex:1;overflow:auto}
.sm-left{flex:1.1;padding:8px 6px;display:flex;flex-direction:column;min-width:0}
.sm-label{font-weight:700;color:#5a6577;font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:4px 6px 6px;border-bottom:1px solid #e1e4ea;margin:0 0 4px}
.players{list-style:none;margin:0;padding:0;flex:1}
.players li{display:flex;align-items:center;gap:9px;padding:5px 6px;border-radius:2px;font-size:12px;font-weight:700;min-width:0}
.players li span{overflow:hidden;text-overflow:ellipsis}
.players li:hover{background:#316ac5;color:#fff}
.players li.empty{font-weight:400;color:#6b6b6b;font-size:11px}
.players li.empty:hover{background:none;color:#6b6b6b}
.players img{width:32px;height:32px;image-rendering:pixelated;box-shadow:0 0 0 1px rgba(0,0,0,.25);flex:none}
.sm-left .note{color:#7a7a7a;font-size:10px;padding:6px;border-top:1px solid #e1e4ea;margin:6px 0 0}
.sm-right{flex:1;background:#d3e5fa;border-left:1px solid #95bdee;padding:8px 6px}
.sm-item{display:flex;align-items:center;gap:8px;padding:5px 6px;color:#00136b;font-weight:700;font-size:11px;border-radius:2px;text-decoration:none}
.sm-item img{width:24px;height:24px;image-rendering:pixelated;flex:none}
.sm-item small{display:block;font-weight:400;color:#4d5a78;font-size:10px}
.sm-item:hover,.sm-item:focus-visible{background:#316ac5;color:#fff;outline:none}
.sm-item:hover small,.sm-item:focus-visible small{color:#dde7f8}
.sm-sep{height:1px;background:linear-gradient(90deg,transparent,#a7c3ea,transparent);margin:5px 4px}
.sm-foot{display:flex;justify-content:space-between;align-items:center;height:40px;flex:none;padding:0 12px;color:#fff;font-size:11px;
  background:linear-gradient(180deg,#4282d6 0%,#3b85e0 5%,#1d63d1 30%,#1858c8 100%)}
.sm-foot .st{display:flex;align-items:center;gap:6px}

/* ---------- instructions book ---------- */
.book-body{margin:3px;padding:22px 16px 18px;background:radial-gradient(ellipse at center,#4a4038 0%,#2a2420 75%);display:flex;flex-direction:column;align-items:center;gap:14px}
.page{position:relative;width:100%;max-width:420px;background:#f4e7c3;padding:44px 32px 64px;font-family:var(--pixel);color:#2b2116;font-size:22px;line-height:1.3;
  box-shadow:0 0 0 3px #b89a62,0 0 0 6px #5b3d1f,0 0 0 9px #2b1a0b,8px 10px 0 9px rgba(0,0,0,.35);margin:9px;
  background-image:linear-gradient(90deg,rgba(150,110,50,.18),transparent 7%,transparent 93%,rgba(150,110,50,.12)),repeating-linear-gradient(0deg,transparent 0 3px,rgba(140,100,40,.04) 3px 4px)}
.pno{position:absolute;top:12px;right:20px;font-size:19px;color:#5e4a2c;margin:0;display:none}
.bpage h2{font:28px/1.1 var(--pixel);margin:0 0 8px;color:#3a2410}
.bpage h2:not(:first-child){margin-top:14px}
.bpage p{margin:0 0 12px}
.bpage a{color:#1f3fa6}
.bpage + .bpage{border-top:2px dashed #c9b07a;margin-top:18px;padding-top:18px}
.bpage .aside{font-size:19px;color:#5e4a2c}
.bpage .steps{margin:0 0 12px;padding-left:28px}
.bpage .steps li{margin:0 0 6px;padding-left:2px}
.bpage .steps li::marker{color:#7a5530}
.addr-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pxbtn{display:inline-flex;align-items:center;gap:8px;font:24px/1 var(--pixel);color:#fff!important;text-decoration:none;text-shadow:2px 2px 0 #3a3a3a;padding:7px 14px;border:0;
  background:#7d7d7d;box-shadow:inset 2px 2px 0 #b5b5b5,inset -2px -2px 0 #4c4c4c,0 0 0 2px #1d1d1d}
.pxbtn:hover,.pxbtn:focus-visible{background:#8c97c4;box-shadow:inset 2px 2px 0 #c3cbec,inset -2px -2px 0 #4f5a8a,0 0 0 2px #fff;outline:none}
.pxbtn.small{font-size:20px;padding:4px 10px}
.pxbtn img{width:20px;height:20px;image-rendering:pixelated}
.arrows{position:absolute;left:22px;right:22px;bottom:16px;display:none;justify-content:space-between}
.arrow{background:none;border:0;padding:4px}
.arrow img{width:36px;height:30px;image-rendering:pixelated;display:block}
.arrow:hover img{filter:brightness(1.8)}
.arrow:disabled{visibility:hidden}
.booknav{display:none;gap:6px;flex-wrap:wrap;justify-content:center;max-width:460px}
.booknav button{font:19px var(--pixel);color:#e9dcb8;padding:2px 8px;border:1px solid #6a5a44;background:rgba(0,0,0,.25)}
.booknav button[aria-current=true]{background:#e9dcb8;color:#2b2116}
.donebtn{display:none;justify-content:center;font:24px var(--pixel);color:#fff;text-shadow:2px 2px 0 #3a3a3a;width:220px;padding:7px 0;border:0;
  background:#7d7d7d;box-shadow:inset 2px 2px 0 #b5b5b5,inset -2px -2px 0 #4c4c4c,0 0 0 2px #1d1d1d}
.donebtn:hover{background:#8c97c4}

/* ---------- mod details (CuzzWord) ---------- */
.word-body{margin:0 3px;display:flex;flex-direction:column;min-height:0;background:#ece9d8}
.menubar{display:flex;padding:2px;font-size:11px;border-bottom:1px solid #d6d2c2}
.menubar span{padding:2px 7px}
.toolbars{background:linear-gradient(180deg,#f7f6f1,#e5e2d5);border-bottom:1px solid #b7b2a0}
.tbrow{display:flex;align-items:center;gap:2px;padding:2px 4px;height:26px;overflow:hidden}
.tbrow + .tbrow{border-top:1px solid #fff}
.grip{width:3px;height:18px;margin-right:4px;flex:none;background:repeating-linear-gradient(180deg,#9c9a8d 0 2px,transparent 2px 4px)}
.tb{width:23px;height:22px;flex:none;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:2px}
.tb img{width:16px;height:16px;image-rendering:pixelated}
.tb.txt{font-family:var(--doc);font-size:14px;width:22px}
.tb.on{background:#c1d2ee;border-color:#316ac5}
.tsep{width:1px;height:18px;flex:none;background:#a7a49a;box-shadow:1px 0 #fff;margin:0 4px}
.combo{display:flex;align-items:center;height:20px;flex:none;border:1px solid #7f9db9;background:#fff;font-size:11px;padding-left:4px;margin-right:4px;white-space:nowrap;overflow:hidden}
.combo.serif{font-family:var(--doc);font-size:12px}
.w40{width:40px}.w62{width:62px}.w100{width:100px}.w132{width:132px}
.combo i{width:15px;height:18px;margin-left:auto;flex:none;background:linear-gradient(180deg,#c8d9f7,#a6c1ef);border-left:1px solid #7f9db9;position:relative}
.combo i:after{content:"";position:absolute;left:4px;top:7px;border:3px solid transparent;border-top:4px solid #1b2f6b}
.ruler{height:20px;border-bottom:1px solid #b7b2a0;display:flex;align-items:center;padding-left:58px;overflow:hidden}
.ruler div{height:14px;width:720px;flex:none;background:#fff;border:1px solid #9d9a8c;position:relative;
  background-image:repeating-linear-gradient(90deg,#666 0 1px,transparent 1px 12px);background-size:100% 3px;background-repeat:repeat-x;background-position:0 9px}
.ruler div:before,.ruler div:after{content:"";position:absolute;top:0;bottom:0;width:60px;background:#b9b5a4}
.ruler div:before{left:0}.ruler div:after{right:0}
.wmain{flex:1;display:flex;min-height:0}
.docarea{flex:1;background:#8a8f99;padding:18px 12px;display:flex;justify-content:center;min-width:0}
.docarea:focus-visible{outline:none}
.paper{width:100%;max-width:780px;background:#fff;box-shadow:2px 2px 0 #3b3e44;padding:56px 72px 48px;font:16px/1.4 var(--doc);color:#000;height:max-content}
.paper h1{font:700 26px var(--doc-head);margin:0 0 2px}
.paper .sub{font-style:italic;color:#444;margin:0 0 14px}
.paper h2.grp{font:700 13px var(--doc-head);text-transform:uppercase;letter-spacing:.6px;color:#1d3f8f;margin:30px 0 4px;padding:4px 6px;background:#e8eef9;border:1px solid #b6c6ec}
.paper h3{font:700 18px var(--doc-head);margin:20px 0 6px;border-bottom:1px solid #000;padding-bottom:2px;scroll-margin-top:12px}
.paper table{border-collapse:collapse;width:100%;font-size:14px;margin:10px 0 4px}
.paper th,.paper td{border:1px solid #000;padding:3px 6px;text-align:left;vertical-align:top}
.paper th{background:#d9d9d9;font:700 13px var(--doc-head)}
.paper p{margin:0 0 8px}
.paper .links{font-size:14px;color:#444}
.paper code{font:14px "Courier New",Courier,monospace;background:#f4f4f4;padding:0 3px}
.tip{border:1px solid #000;border-left:5px solid #2c5fc9;background:#eef3fc;padding:6px 10px;margin:6px 0 10px;font-size:15px}
.tip b{font:700 12px var(--doc-head);color:#1d3f8f;margin-right:6px}
.tip.warn{border-left-color:#c8401f;background:#fdf0ec}
.tip.warn b{color:#a3321a}
.req{font:700 10px var(--doc-head);padding:1px 5px;border:1px solid #000;margin-left:6px;vertical-align:3px;white-space:nowrap}
.req.y{background:#d8f0c8}.req.o{background:#fff2b8}.req.n{background:#eee}.req.p{background:#dfe7fb}
.endnote{margin-top:28px!important;font-size:13px;color:#666;font-style:italic}
.taskpane{width:220px;flex:none;background:#fff;border-left:1px solid #9d9a8c;display:flex;flex-direction:column;font-size:11px;min-height:0}
.tp-head{padding:5px 8px;font-weight:700;color:#fff;background:linear-gradient(180deg,#7ba2e7,#6375d6);flex:none}
.tp-body{padding:6px 10px 12px;background:linear-gradient(180deg,#d6dff7,#fff 120px);overflow:auto;flex:1}
.tp-sec{font-weight:700;color:#215dc6;margin:8px 0 4px;border-bottom:1px solid #b6c6ec;padding-bottom:3px}
.tp-link{display:flex;align-items:center;gap:6px;color:#0b3fa8;padding:2px}
.tp-link:before{content:"";width:10px;height:10px;flex:none;background:#215dc6;box-shadow:inset 0 0 0 2px #7aa2ec}
.wstatus{display:flex;font-size:11px;border-top:1px solid #b7b2a0;background:#ece9d8;margin:0 3px;overflow:hidden}
.wstatus span{padding:3px 10px;border-right:1px solid #b7b2a0;white-space:nowrap}
.wstatus span.dim{color:#a09d92}

/* ---------- stats (CuzzExcel) ---------- */
.xl-body{margin:0 3px;display:flex;flex-direction:column;min-height:0;background:#ece9d8}
.fxbar{display:flex;align-items:center;gap:4px;padding:3px 4px;border-bottom:1px solid #b7b2a0;flex:none}
.namebox{width:64px;flex:none;height:20px;display:flex;align-items:center;border:1px solid #7f9db9;background:#fff;padding:0 4px;font:11px var(--ui)}
.fx{flex:none;width:26px;text-align:center;font:italic 700 13px var(--doc);color:#555}
.fx i{font-style:italic}
.fxtext{flex:1;min-width:0;height:20px;line-height:18px;border:1px solid #7f9db9;background:#fff;padding:0 6px;font:12px var(--doc-head);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sheetwrap{flex:1;min-height:0;overflow:auto;background:#fff;border-bottom:1px solid #9c9a8d}
.sheetwrap:focus-visible{outline:none}
.grid{border-collapse:separate;border-spacing:0;font:13px var(--doc-head);font-variant-numeric:tabular-nums}
.grid th,.grid td{border-right:1px solid #d4d0c8;border-bottom:1px solid #d4d0c8;padding:3px 8px;text-align:left;white-space:nowrap;height:24px;background:#fff}
.grid thead th{position:sticky;top:0;z-index:3}
.grid .colh,.grid .rowh,.grid .corner{background:linear-gradient(180deg,#faf9f4,#e6e3d6);border-color:#a8a596;color:#3a3a3a;font:11px var(--ui);text-align:center;padding:2px 6px;font-weight:400}
.grid .colh{min-width:64px;height:19px}
.grid .rowh{position:sticky;left:0;z-index:2;width:32px;min-width:32px}
.grid .corner{position:sticky;left:0;z-index:4;width:32px}
.grid .hdr{background:#c5d9f1;font-weight:700;border-bottom:1px solid #7a95c0}
.grid .num{text-align:right}
.grid .best{background:#ffff99;font-weight:700}
.grid .dim{color:#808080}
.grid .rec{font-weight:700}
.grid td.name{position:sticky;left:33px;z-index:1}
.grid .sel{box-shadow:inset 0 0 0 2px #000}
.sorter{display:inline-flex;align-items:center;gap:4px;background:none;border:0;padding:0;font:700 13px var(--doc-head);color:#000;width:100%;justify-content:inherit}
.grid .num .sorter{justify-content:flex-end}
.sorter:hover{color:#0b3fa8;text-decoration:underline}
.sorter i{width:0;height:0;border:4px solid transparent;flex:none}
.sorter i.dn{border-top:5px solid #1b2f6b;margin-top:4px}
.sorter i.up{border-bottom:5px solid #1b2f6b;margin-bottom:4px}
.plink{display:inline-flex;align-items:center;gap:5px;background:none;border:0;padding:0;font:13px var(--doc-head);color:#0b3fa8}
.plink:hover span{text-decoration:underline}
.plink .head{width:16px;height:16px;image-rendering:pixelated;box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.who{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap}
.who .rv{color:#555}
.lead-list{gap:0;flex-wrap:wrap}
.lead-list .comma{margin-right:6px}
.lead-list .more{margin-left:6px;color:#555}
.pv{display:none}
.xl-msg{margin:0;padding:18px 16px;font:13px var(--doc-head);color:#333;max-width:520px;white-space:normal}
.pcard{display:flex;align-items:center;gap:14px;padding:14px 16px 12px}
.pcard .head{width:64px;height:64px;image-rendering:pixelated;box-shadow:0 0 0 1px rgba(0,0,0,.3),2px 3px 0 rgba(0,0,0,.18)}
.pc-text h2{margin:0;font:700 20px var(--doc-head)}
.pc-text p{margin:2px 0 0;color:#666;font:12px var(--doc-head)}
.sheettabs{display:flex;align-items:flex-start;gap:0;padding:0 4px 3px;flex:none;background:#ece9d8;overflow-x:auto}
.tabnav{display:flex;gap:1px;padding:3px 6px 0 0;flex:none}
.tabnav i{width:13px;height:13px;border:1px solid #a8a596;background:linear-gradient(180deg,#fff,#e6e3d6);border-radius:2px}
.stab{margin-left:-1px;padding:2px 14px 3px;font:11px var(--ui);background:#d4d0c8;border:1px solid #808080;border-top:0;border-radius:0 0 5px 5px;white-space:nowrap}
.stab[aria-selected=true]{background:#fff;font-weight:700;position:relative;top:-1px;padding-top:3px}
.stab:hover{background:#eef3fc}
.stab[aria-selected=true]:hover{background:#fff}
.wstatus .grow{flex:1;border-right:0}
.wstatus .warn{color:#a3321a;font-weight:700}
.js #win-xl{width:min(1000px,96vw);height:min(640px,calc(100% - 20px))}
.js .xl-body{flex:1}

/* ---------- news popup (old-school ad) ---------- */
@keyframes nb-flash{0%,49%{color:#ff1a1a}50%,100%{color:#ffd400}}
@keyframes nb-border{0%,49%{border-color:#ff1a1a}50%,100%{border-color:#ffd400}}
@keyframes nb-bob{50%{transform:translateY(-6px) rotate(-3deg)}}
@keyframes nb-pulse{50%{transform:rotate(14deg) scale(1.08)}}
.newsbox[hidden],.js .newsbox[hidden]{display:none!important}
.js .newsbox{position:fixed;left:calc(50% - 220px);top:22%;width:440px;height:auto;margin:0;z-index:990}
.newsbox .window-body{margin:3px;padding:0;background:#fff}
.js .newsbox .title-bar{cursor:default;touch-action:none}
.newsbox.dragging{user-select:none}
.nb-body{position:relative;overflow:hidden;padding:16px 18px 14px 152px;min-height:206px;border:4px dashed #ff1a1a;animation:nb-border .6s steps(1) infinite;
  background:repeating-linear-gradient(45deg,#fff7c2 0 14px,#fff1a0 14px 28px)}
.nb-pic{position:absolute;left:14px;top:34px;width:128px;height:auto;animation:nb-bob 1.2s ease-in-out infinite}
.nb-star{position:absolute;right:12px;top:12px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;transform:rotate(14deg);animation:nb-pulse 1.2s ease-in-out infinite;
  font:700 17px "Trebuchet MS",sans-serif;color:#fff;text-shadow:1px 1px 0 #900;background:#e01b1b;
  clip-path:polygon(50% 0,61% 18%,82% 9%,79% 31%,100% 38%,84% 54%,96% 73%,74% 76%,70% 98%,52% 84%,33% 99%,28% 77%,5% 74%,17% 55%,0 38%,21% 30%,17% 8%,39% 18%)}
.nb-title{margin:2px 72px 8px 0;font:900 26px/1.05 Impact,"Arial Black",sans-serif;letter-spacing:.5px;text-transform:uppercase;color:#ff1a1a;-webkit-text-stroke:1px #600;animation:nb-flash .6s steps(1) infinite}
.nb-body p{margin:0 0 12px;font-size:13px;line-height:1.35;color:#222}
.nb-go{display:inline-block;font:700 15px var(--ui);color:#fff;text-decoration:none;padding:8px 16px;border-radius:4px;border:2px solid #0a5d0a;
  background:linear-gradient(180deg,#5fd35f,#2e9b2e 55%,#237d23);box-shadow:0 2px 0 #0a5d0a;text-shadow:1px 1px 0 #0a5d0a}
.nb-go:hover,.nb-go:focus-visible{filter:brightness(1.1);outline:2px dotted #000;outline-offset:2px}
.nb-skip{display:inline-block;margin-top:9px;font-size:11px;color:#555}
@media (max-width:600px){
  .js .window.newsbox{left:10px!important;right:10px;top:64px!important;bottom:auto;width:auto!important;height:auto!important;border-radius:8px 8px 0 0}
  .js .window.newsbox .title-bar{border-radius:8px 7px 0 0}
  .nb-body{padding:14px 14px 14px 104px;min-height:0}
  .nb-pic{left:10px;top:44px;width:86px}
  .nb-star{right:10px;top:10px;width:52px;height:52px;font-size:15px}
  .nb-title{font-size:21px;margin-right:60px}
  .nb-go{font-size:14px;padding:8px 12px}
}
@media (prefers-reduced-motion:reduce){.nb-body,.nb-pic,.nb-star,.nb-title{animation:none}}

/* ---------- no JavaScript: a plain scrolling page ---------- */
html:not(.js) #win-xl,html:not(.js) .jsonly{display:none}
html:not(.js) .toolbars,html:not(.js) .menubar,html:not(.js) .ruler,html:not(.js) .taskpane,html:not(.js) .wstatus,html:not(.js) .title-bar-controls{display:none}
html:not(.js) .page{max-width:none}
html:not(.js) .status-chip{display:none}

/* ---------- with JavaScript: the desktop ---------- */
.js body{overflow:hidden;height:100vh;height:100dvh}
.js #desktop{position:fixed;inset:0 0 var(--tb-h) 0;padding:0;overflow:hidden}
.js #taskbar{display:flex}
.js .desk-icons{position:absolute;top:14px;left:10px;display:flex;flex-direction:column;gap:14px;z-index:1}
.js .window{position:absolute;margin:0;max-width:none;display:flex;flex-direction:column}
.js .window.closed,.js .window.minimized{display:none}
.js .window.max{left:0!important;top:0!important;width:100%!important;height:100%!important;border-radius:0}
.js .window.max .title-bar{border-radius:0}
.js .window.dragging{user-select:none}
.js .window .title-bar{cursor:default;flex:none;touch-action:none}
.js #win-home{width:640px}
.js #win-book{width:520px;max-height:100%}
.js #win-word{width:min(1180px,96vw);height:min(800px,calc(100% - 20px))}
.js .book-body{flex:1;min-height:0;overflow:auto}
.js .page{height:min(540px,calc(100vh - 260px));min-height:400px;overflow:hidden}
.js .pno,.js .booknav,.js .donebtn{display:flex}
.js .pno{display:block}
.js .arrows{display:flex}
.js .bpage{display:none}
.js .bpage.on{display:block}
.js .bpage + .bpage{border-top:0;margin-top:0;padding-top:0}
.js .word-body{flex:1}
.js .docarea{overflow:auto;display:block;padding:18px 0}
.js .paper{margin:0 auto}
.js #win-home .status-bar,.js .wstatus{flex:none}

/* ---------- phones ---------- */
@media (max-width:600px){
  :root{--tb-h:44px}
  .js .desk-icons{display:none}
  .js .window{left:0!important;right:0;top:0!important;width:auto!important;height:auto!important;bottom:0;border-radius:0}
  .js .window .title-bar{border-radius:0}
  .js #win-home{left:12px!important;right:12px;top:14px!important;bottom:auto;max-height:calc(100% - 28px);border-radius:8px 8px 0 0}
  .js #win-home .title-bar{border-radius:8px 7px 0 0}
  .js .window.max{left:0!important;right:0;top:0!important;bottom:0;max-height:none}
  .home-body{padding:20px 14px 12px;overflow:auto}
  .icons{flex-direction:column;gap:10px;margin:20px 0 0;align-items:stretch}
  .ficon{flex-direction:row;width:auto;gap:14px;text-align:left;border:1px solid #d5dbe6;background:#f7f9fd;padding:10px 12px}
  .ficon img{width:48px;height:48px}
  .ft{align-items:flex-start}
  .ft b{font-size:15px}
  .ft small{font-size:12px}
  .greet{font-size:20px}
  .join{flex-wrap:wrap;font-size:15px}
  .fine{flex-direction:column;gap:2px;margin-top:16px;text-align:center}
  #win-home .status-bar{display:none}
  #start{font-size:21px;padding:0 22px 0 12px}
  #start img{width:26px;height:26px}
  .task{flex:0 0 auto;width:auto;padding:0 10px;height:32px}
  .task span{display:none}
  .tray{font-size:13px}
  .tcount{display:none}
  .startmenu{width:auto;right:0}
  .sm-body{flex-direction:column;min-height:0}
  .sm-right{border-left:0;border-top:1px solid #95bdee}
  .sm-head .addr b{font-size:19px}
  .players li{font-size:14px}
  .sm-item{font-size:13px}
  .book-body{padding:14px 10px}
  .js .page{height:auto;flex:1;min-height:0;overflow:auto;max-width:none;padding:42px 20px 64px}
  .booknav{display:none!important}
  .donebtn{width:100%}
  .word-body,.xl-body{margin:0}
  .js .grid th,.js .grid td{padding:3px 6px}
  .grid.records tr>:nth-child(4),.grid.records tr>:nth-child(5){display:none}
  .grid.records td.lead{white-space:normal}
  .pv{display:inline;margin-left:8px;font-weight:700;color:#000;background:#ffff99;padding:0 4px}
  .grid .colh{min-width:44px}
  .menubar,.tbrow.std,.ruler,.taskpane,.combo{display:none!important}
  .docarea,.js .docarea{padding:8px 6px}
  .paper{padding:20px 16px;font-size:15px}
  .paper h1{font-size:22px}
  .paper table .c3{display:none}
  .wstatus span:nth-child(n+4){display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
@media (max-width:600px){body{background-image:url(/img/wallpaper-1280.jpg?v=20261019)}}
