/* ==========================================================
   WangsOS XP · Luna reskin (loads after y2k.css)
   ========================================================== */

body.theme-xp{
  --xp-blue:#245edb;
  --xp-border:#0831d9;
  --xp-face:#ece9d8;
  font-family:Tahoma,Verdana,Geneva,sans-serif;
}

/* ---------- Bliss desktop ---------- */
body.theme-xp #desktop{
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900' preserveAspectRatio='xMidYMax slice'%3E%3Cdefs%3E%3ClinearGradient id='sky' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%232a63c9'/%3E%3Cstop offset='.45' stop-color='%235d9de6'/%3E%3Cstop offset='.6' stop-color='%23b6dbf7'/%3E%3C/linearGradient%3E%3ClinearGradient id='hill' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%2394d454'/%3E%3Cstop offset='.5' stop-color='%234ca032'/%3E%3Cstop offset='1' stop-color='%23276e1e'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='1600' height='900' fill='url(%23sky)'/%3E%3Cg fill='%23ffffff' opacity='.95'%3E%3Ccircle cx='305' cy='195' r='40'/%3E%3Ccircle cx='362' cy='168' r='54'/%3E%3Ccircle cx='422' cy='192' r='42'/%3E%3Crect x='268' y='192' width='192' height='42' rx='21'/%3E%3C/g%3E%3Cellipse cx='364' cy='230' rx='88' ry='9' fill='%23cfe3f8' opacity='.7'/%3E%3Cg fill='%23ffffff' opacity='.93'%3E%3Ccircle cx='1258' cy='150' r='34'/%3E%3Ccircle cx='1308' cy='128' r='46'/%3E%3Ccircle cx='1360' cy='150' r='36'/%3E%3Crect x='1226' y='148' width='168' height='36' rx='18'/%3E%3C/g%3E%3Cellipse cx='1310' cy='182' rx='76' ry='8' fill='%23cfe3f8' opacity='.7'/%3E%3Cg fill='%23ffffff' opacity='.88'%3E%3Ccircle cx='125' cy='84' r='22'/%3E%3Ccircle cx='157' cy='70' r='29'/%3E%3Ccircle cx='191' cy='85' r='23'/%3E%3Crect x='105' y='83' width='108' height='24' rx='12'/%3E%3C/g%3E%3Cg fill='%23ffffff' opacity='.85'%3E%3Ccircle cx='1030' cy='300' r='18'/%3E%3Ccircle cx='1056' cy='288' r='24'/%3E%3Ccircle cx='1084' cy='300' r='19'/%3E%3Crect x='1014' y='298' width='88' height='20' rx='10'/%3E%3C/g%3E%3Cpath d='M0 640 C260 520 560 560 820 610 C1080 660 1330 570 1600 650 L1600 900 0 900 Z' fill='url(%23hill)'/%3E%3Cpath d='M0 700 C300 620 700 680 1000 700 C1250 716 1450 680 1600 710 L1600 900 0 900 Z' fill='%23276e1e' opacity='.45'/%3E%3C/svg%3E") center/cover no-repeat;
}
/* headline in the sky */
body.theme-xp #desktop::before{
  color:rgba(255,255,255,.9);
  font-size:clamp(20px,3vw,42px);
  letter-spacing:.09em;
  top:4.5vh;bottom:auto;
  transform:translate(-50%,0);
  text-shadow:0 2px 14px rgba(42,99,201,.4);
}
body.theme-xp #desktop::after{
  color:rgba(255,255,255,.75);
  font-size:clamp(10px,1.2vw,15px);
  top:calc(4.5vh + clamp(34px,4.6vw,60px));bottom:auto;
  transform:translate(-50%,0);
  text-shadow:0 1px 8px rgba(42,99,201,.4);
}
body.theme-xp .icon.selected .icon-label{background:#316ac5}
body.theme-xp .icon:hover .icon-label{background:rgba(49,106,197,.5)}

/* ---------- XP boot ---------- */
body.theme-xp #boot{background:#000}
.xplogo{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:46px}
.xpflag{display:grid;grid-template-columns:26px 26px;gap:4px;transform:skewX(-8deg) rotate(-2deg);margin-bottom:10px}
.xpflag span{width:26px;height:22px;border-radius:4px 7px 4px 7px}
.xpflag span:nth-child(1){background:#c2402a}
.xpflag span:nth-child(2){background:#7ec850}
.xpflag span:nth-child(3){background:#3a93ff}
.xpflag span:nth-child(4){background:#dd9c2e}
.xpname{font:bold 44px "Trebuchet MS",Tahoma,sans-serif;color:#fff;letter-spacing:-1px}
.xpname sup{font-size:22px;color:#ff8c26;font-style:italic;margin-left:4px}
.xped{font:15px "Trebuchet MS",Tahoma,sans-serif;color:#9aa5b5;letter-spacing:.3em;text-transform:uppercase}
.xp-bar{
  width:210px;height:16px;margin:0 auto;
  border:2px solid #8a919d;border-radius:9px;
  overflow:hidden;position:relative;
}
.xp-bar span{
  position:absolute;top:2px;bottom:2px;width:58px;
  background:
    linear-gradient(90deg,#1b46c2 0 14px,transparent 14px 18px,#2f6cf5 18px 32px,transparent 32px 36px,#5b93ff 36px 50px,transparent 50px);
  border-radius:3px;
  animation:xp-slide 1.5s linear infinite;
}
@keyframes xp-slide{from{left:-60px}to{left:210px}}
body.theme-xp .boot-skip{color:#4a5568}

/* ---------- Luna windows ---------- */
body.theme-xp .win{
  background:var(--xp-face);
  border:3px solid var(--xp-border);
  border-top:none;
  border-radius:8px 8px 4px 4px;
  box-shadow:2px 6px 16px rgba(4,16,54,.45);
}
body.theme-xp .win-title{
  height:29px;
  padding:0 4px 0 8px;
  border-radius:6px 6px 0 0;
  background:linear-gradient(180deg,#7ba7ee 0%,#3a80f0 6%,#1e62d9 12%,#2a6ee8 50%,#1d5fd6 86%,#1451b8 94%,#2f6ee0 100%);
  font:bold 13px "Trebuchet MS",Tahoma,sans-serif;
  text-shadow:1px 1px 1px rgba(9,35,86,.7);
}
body.theme-xp .win.inactive .win-title{
  background:linear-gradient(180deg,#a6bdf0 0%,#7d9de4 12%,#7796da 88%,#6785c8 100%);
  color:#eef2fb;
}
body.theme-xp .win-btn{
  width:22px;height:22px;
  border:1px solid rgba(255,255,255,.75);
  border-radius:4px;
  color:#fff;font-size:12px;
  background:linear-gradient(180deg,#7fa8f4 0%,#3672e0 45%,#2a5fd0 50%,#4b83ea 100%);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.55);
}
body.theme-xp .win-btn:hover{filter:brightness(1.12)}
body.theme-xp .win-btn:active{filter:brightness(.9);border-color:rgba(255,255,255,.75)}
body.theme-xp .win-btn.close{
  background:linear-gradient(180deg,#f2a086 0%,#e0603a 45%,#cc4024 50%,#e47852 100%);
}
body.theme-xp .win-menu{background:var(--xp-face);border-bottom:1px solid #c6c3b3}
body.theme-xp .win-body{border:1px solid #9db9f0;margin:3px}
body.theme-xp .win-status span{border-color:#c6c3b3 #fff #fff #c6c3b3}

/* ---------- XP buttons + fields ---------- */
body.theme-xp .btn{
  border:1px solid #003c74;
  border-radius:4px;
  background:linear-gradient(180deg,#fff 0%,#f4f3ee 45%,#e9e7dc 80%,#d8d0c4 100%);
  padding:5px 16px;
  box-shadow:inset 0 -1px 0 #c9c2b2;
}
body.theme-xp .btn:hover{box-shadow:inset 0 0 0 2px #f8d38a,inset 0 -1px 0 #c9c2b2}
body.theme-xp .btn:active{background:linear-gradient(180deg,#d8d4c8,#eceade);box-shadow:none}
body.theme-xp .btn-primary{box-shadow:inset 0 0 0 2px #7da2e4;font-weight:bold}
body.theme-xp .btn[disabled]{border-color:#b4ac98;box-shadow:none}
body.theme-xp input[type=text],body.theme-xp input[type=email],body.theme-xp textarea{
  border:1px solid #7f9db9;border-radius:2px;
}
body.theme-xp .tab{border-radius:4px 4px 0 0}

/* ---------- XP taskbar ---------- */
body.theme-xp #taskbar{
  border-top:1px solid #0831d9;
  background:linear-gradient(180deg,#4b8bf5 0%,#2663e0 9%,#215ad7 45%,#1d51c4 88%,#1544a8 100%);
  padding:3px 0 3px 0;
  gap:6px;
}
body.theme-xp #startbtn{
  height:30px;
  margin:-3px 0;
  border:none;
  border-radius:0 14px 14px 0;
  padding:0 20px 0 10px;
  background:linear-gradient(180deg,#8ade7c 0%,#4eb84e 8%,#31a033 45%,#2b8f2e 88%,#1e7522 100%);
  color:#fff;
  font:bold italic 16px "Trebuchet MS",Tahoma,sans-serif;
  text-shadow:1px 1px 2px rgba(6,49,10,.8);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.5),2px 0 4px rgba(6,20,60,.4);
}
body.theme-xp #startbtn.open,body.theme-xp #startbtn:active{filter:brightness(.88)}
body.theme-xp .tb-sep{display:none}
body.theme-xp .taskbtn{
  border:1px solid rgba(9,40,120,.55);
  border-radius:3px;
  background:linear-gradient(180deg,#5f97f7 0%,#3d7bef 45%,#356fe0 50%,#4c86f0 100%);
  color:#fff;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.4);
  text-shadow:1px 1px 1px rgba(9,35,86,.55);
}
body.theme-xp .taskbtn.active{
  background:linear-gradient(180deg,#1c48ae 0%,#255ac2 60%,#2c63cf 100%);
  box-shadow:inset 1px 1px 3px rgba(4,14,44,.6);
  font-weight:bold;
}
body.theme-xp #tray{
  border:none;
  border-left:1px solid #092e51;
  margin:-3px 0;height:34px;
  padding:0 14px 0 12px;
  background:linear-gradient(180deg,#31a8f0 0%,#1793e0 45%,#1287d2 88%,#0e6eb8 100%);
  color:#fff;
  box-shadow:inset 1px 1px 1px rgba(255,255,255,.35);
  text-shadow:1px 1px 1px rgba(9,35,86,.5);
}

/* ---------- XP start menu ---------- */
body.theme-xp #startmenu{
  flex-direction:column;
  width:320px;
  border:2px solid var(--xp-border);
  border-radius:8px 8px 0 0;
  background:#fff;
  overflow:hidden;
  box-shadow:3px 5px 14px rgba(4,16,54,.5);
}
.sm-head{display:none}
body.theme-xp .sm-head{
  display:flex;align-items:center;gap:10px;
  padding:10px 12px;
  background:linear-gradient(180deg,#5a8fe8 0%,#2a63d5 55%,#1c50c0 100%);
  color:#fff;
  font:bold 15px "Trebuchet MS",Tahoma,sans-serif;
  text-shadow:1px 1px 2px rgba(9,35,86,.7);
}
body.theme-xp .sm-head svg{
  width:38px;height:38px;
  background:#fff;
  border:2px solid #9db9f0;border-radius:6px;
  padding:2px;
}
body.theme-xp .sm-items{padding:6px 4px;border-left:5px solid #ff9c2a00;background:#fff}
body.theme-xp .sm-item:hover{background:#316ac5}
body.theme-xp .sm-sep{border-top:1px solid #d9d2c2;border-bottom:none}
body.theme-xp #shutdown-btn{color:#a33f28;font-weight:bold}
body.theme-xp #shutdown-btn:hover{color:#fff;background:#c2402a}

/* ---------- misc ---------- */
body.theme-xp .wiz-side{background:linear-gradient(180deg,#2a63d5,#7ba7ee)}
body.theme-xp .poppy-bubble{border-radius:8px}
body.theme-xp #watermark{color:rgba(255,255,255,.55)}
