/* ==========================================================================
   Colour schemes — Luna Olive Green, Luna Silver, Windows Classic
   (Luna Blue is the default expressed in xp.css / shell.css)
   ========================================================================== */
html[data-fontsize="large"] body { font-size: 12px; }
html[data-fontsize="large"] .window .title-text { font-size: 15px; }
html[data-fontsize="large"] .xp-menu, html[data-fontsize="large"] .menubar { font-size: 12px; }

/* ---------------- Olive Green ---------------- */
html[data-theme="luna-olive"] {
  --win-frame: #A5B87E; --win-frame-inactive: #C7D2AC;
  --win-title: linear-gradient(to bottom, #CEDAA7 0%, #B6C98A 8%, #A6BC77 40%, #99B067 70%, #92A95E 88%, #8BA255 95%, #778F45 100%);
  --win-title-in: linear-gradient(to bottom, #E5EBD0 0%, #D8E0BD 20%, #CFD9B0 60%, #C9D3A8 100%);
  --win-title-text-in: #F4F6EB;
  --btn-blue: radial-gradient(circle at 90% 90%, #7E9B47 0%, #92AE5C 55%, #A9C37A 70%, #DDE8C3 90%, #fff 100%);
  --btn-blue-hover: radial-gradient(circle at 90% 90%, #8DAA55 0%, #A2BD6C 55%, #B8D08A 70%, #E7F0D2 90%, #fff 100%);
  --btn-blue-press: radial-gradient(circle at 10% 10%, #5E7A2E 0%, #6F8B3C 60%, #93AE62 100%);
  --xp-hilite: #93A070; --xp-menu-hilite: #93A070;
}
html[data-theme="luna-olive"] .window { box-shadow: inset 0 0 0 1px #6F8545, 2px 2px 10px rgba(0,0,0,.35); }
html[data-theme="luna-olive"] .window .title-text { text-shadow: 1px 1px #4F6128; }
html[data-theme="luna-olive"] .window .tbtn { border-color: #fff; }
html[data-theme="luna-olive"] #taskbar { background: linear-gradient(to bottom, #6F8545 0, #C4D3A0 4%, #B3C68A 12%, #A2B775 30%, #97AD69 60%, #93A965 86%, #899F5C 94%, #7B914F 100%); }
html[data-theme="luna-olive"] .task-btn { background: linear-gradient(to bottom, #C9D7A4, #B4C78E 50%, #A7BC7F); color: #fff; text-shadow: 0 0 2px rgba(60,80,20,.8); }
html[data-theme="luna-olive"] .task-btn:hover { background: linear-gradient(to bottom, #D8E4B8, #C2D39F); }
html[data-theme="luna-olive"] .task-btn.active { background: linear-gradient(to bottom, #8BA15B, #95AA66); }
html[data-theme="luna-olive"] .tray { background: linear-gradient(to bottom, #D7E3B6 0%, #C5D6A0 12%, #B9CC92 60%, #AFC386 100%); border-left-color: #8FA466; box-shadow: inset 1px 0 1px #E8F0D2; color: #fff; text-shadow: 0 0 2px rgba(60,80,20,.9); }
html[data-theme="luna-olive"] .sm-head, html[data-theme="luna-olive"] .sm-foot { background: linear-gradient(to bottom, #9EB47A, #8AA262 50%, #7F9757); }
html[data-theme="luna-olive"] .startmenu { border-color: #6F8545; background: #8AA262; }
html[data-theme="luna-olive"] .sm-right { background: #E6EBD6; border-left-color: #B3C191; }
html[data-theme="luna-olive"] .sm-right .sm-item { color: #3F4F1D; }
html[data-theme="luna-olive"] .sm-item:hover, html[data-theme="luna-olive"] .sm-item.hot { background: #93A070; color: #fff; }

/* ---------------- Silver ---------------- */
html[data-theme="luna-silver"] {
  --win-frame: #C0C0D3; --win-frame-inactive: #DADAE6;
  --win-title: linear-gradient(to bottom, #FFFFFF 0%, #F4F4F8 8%, #E4E4EC 30%, #D1D0DE 60%, #C3C2D4 85%, #B1B0C5 95%, #9C9BB5 100%);
  --win-title-in: linear-gradient(to bottom, #FDFDFE 0%, #F4F4F7 40%, #ECECF1 100%);
  --win-title-text: #000; --win-title-text-in: #A9A9B8;
  --btn-blue: radial-gradient(circle at 90% 90%, #B2B1C9 0%, #CBCADB 55%, #DEDDEA 70%, #F4F4F8 90%, #fff 100%);
  --btn-blue-hover: radial-gradient(circle at 90% 90%, #BEBDD4 0%, #D8D7E6 55%, #E9E8F2 70%, #fff 100%);
  --btn-blue-press: radial-gradient(circle at 10% 10%, #8E8DA8 0%, #A9A8C0 60%, #CFCEDD 100%);
  --xp-hilite: #B2B4BF; --xp-menu-hilite: #B2B4BF;
}
html[data-theme="luna-silver"] .window { box-shadow: inset 0 0 0 1px #8A89A6, 2px 2px 10px rgba(0,0,0,.3); }
html[data-theme="luna-silver"] .window .title-text { text-shadow: none; }
html[data-theme="luna-silver"] .window .tbtn:not(.close)::before, html[data-theme="luna-silver"] .window .tbtn:not(.close)::after { border-color: #3E3D56; }
html[data-theme="luna-silver"] .window .tbtn.min::before { background: #3E3D56; }
html[data-theme="luna-silver"] .window .tbtn.help::before { color: #3E3D56; }
html[data-theme="luna-silver"] .window .tbtn { border-color: #8E8DA6; }
html[data-theme="luna-silver"] .window .tbtn.close { border-color: #fff; }
html[data-theme="luna-silver"] #taskbar { background: linear-gradient(to bottom, #A8A7BE 0, #F6F6F9 5%, #E9E9EF 20%, #DAD9E5 45%, #D2D1DF 75%, #C6C5D6 92%, #AFAEC4 100%); }
html[data-theme="luna-silver"] .task-btn { background: linear-gradient(to bottom, #FFFFFF, #ECECF3 50%, #DEDEE8); color: #000; box-shadow: inset 0 0 0 1px #9E9DB5; }
html[data-theme="luna-silver"] .task-btn:hover { background: linear-gradient(to bottom, #fff, #F5F5FA); }
html[data-theme="luna-silver"] .task-btn.active { background: linear-gradient(to bottom, #C4C3D6, #D2D1E0); box-shadow: inset 1px 1px 3px rgba(0,0,0,.35); }
html[data-theme="luna-silver"] .tray { background: linear-gradient(to bottom, #F7F7FA 0%, #E6E6EE 40%, #D9D8E4 100%); border-left-color: #9E9DB5; box-shadow: inset 1px 0 1px #fff; color: #000; }
html[data-theme="luna-silver"] .quicklaunch::before, html[data-theme="luna-silver"] .tasks::before { filter: invert(.7); }
html[data-theme="luna-silver"] .sm-head, html[data-theme="luna-silver"] .sm-foot { background: linear-gradient(to bottom, #EEEEF3, #CFCFDD 50%, #BDBCCF); }
html[data-theme="luna-silver"] .sm-head .sm-name { color: #000; text-shadow: none; }
html[data-theme="luna-silver"] .sm-foot button { color: #000; }
html[data-theme="luna-silver"] .startmenu { border-color: #8E8DA6; background: #C9C8D8; }
html[data-theme="luna-silver"] .sm-right { background: #EDEDF3; border-left-color: #C4C3D6; }
html[data-theme="luna-silver"] .sm-right .sm-item { color: #262640; }
html[data-theme="luna-silver"] .sm-item:hover, html[data-theme="luna-silver"] .sm-item.hot { background: #B2B4BF; color: #000; }
html[data-theme="luna-silver"] .sm-item:hover .sm-sub { color: #333; }

/* ---------------- Windows Classic ---------------- */
html[data-theme="classic"] {
  --xp-face: #D4D0C8; --xp-hilite: #0A246A; --xp-menu-hilite: #0A246A; --xp-border-blue: #808080;
  --win-frame: #D4D0C8; --win-frame-inactive: #D4D0C8;
  --win-title: linear-gradient(to right, #0A246A, #A6CAF0);
  --win-title-in: linear-gradient(to right, #808080, #C0C0C0);
  --win-title-text-in: #D4D0C8;
  --tb-h: 28px;
}
html[data-theme="classic"] .window { border-radius: 0; padding: 4px; box-shadow: inset -1px -1px #404040, inset 1px 1px #D4D0C8, inset -2px -2px #808080, inset 2px 2px #fff, 2px 2px 6px rgba(0,0,0,.25); }
html[data-theme="classic"] .window .titlebar { height: 18px; margin: 0 0 1px; border-radius: 0; padding: 0 2px; box-shadow: none; }
html[data-theme="classic"] .window .titlebar::before { display: none; }
html[data-theme="classic"] .window .title-text { font: bold 11px Tahoma, sans-serif; text-shadow: none; }
html[data-theme="classic"] .window .tbtn, html[data-theme="classic"] .window .tbtn:hover, html[data-theme="classic"] .window .tbtn.close, html[data-theme="classic"] .window .tbtn.close:hover {
  width: 16px; height: 14px; border-radius: 0; border: 0; background: #D4D0C8; opacity: 1;
  box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080, inset 2px 2px #D4D0C8; }
html[data-theme="classic"] .window .tbtn:active { box-shadow: inset 1px 1px #404040, inset -1px -1px #fff, inset 2px 2px #808080; }
html[data-theme="classic"] .window .tbtn.close { margin-left: 2px; }
html[data-theme="classic"] .window .tbtn::before, html[data-theme="classic"] .window .tbtn::after { background-color: #000; border-color: #000 !important; }
html[data-theme="classic"] .window .tbtn.min::before { left: 4px; bottom: 3px; width: 6px; height: 2px; }
html[data-theme="classic"] .window .tbtn.max::before { left: 3px; top: 2px; width: 9px; height: 8px; border-width: 1px; border-top-width: 2px; background: transparent; }
html[data-theme="classic"] .window.maximized .tbtn.max::before { left: 5px; top: 1px; width: 7px; height: 6px; }
html[data-theme="classic"] .window.maximized .tbtn.max::after { left: 2px; top: 4px; width: 7px; height: 6px; border-width: 1px; border-top-width: 2px; background: #D4D0C8; border-style: solid; }
html[data-theme="classic"] .window .tbtn.close::before, html[data-theme="classic"] .window .tbtn.close::after { left: 7px; top: 3px; width: 1.5px; height: 8px; }
html[data-theme="classic"] .window .tbtn.help::before { color: #000; font-size: 11px; background: none; }
html[data-theme="classic"] .window.maximized { padding: 0; }
html[data-theme="classic"] .window.inactive .tbtn { opacity: 1; }
html[data-theme="classic"] .xp-btn { border-radius: 0; border: 0; background: #D4D0C8; box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080, inset 2px 2px #D4D0C8; }
html[data-theme="classic"] .xp-btn:hover:not(:disabled) { box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080, inset 2px 2px #D4D0C8; }
html[data-theme="classic"] .xp-btn:active:not(:disabled) { box-shadow: inset 1px 1px #404040, inset -1px -1px #fff; }
html[data-theme="classic"] .xp-btn.default { outline: 1px solid #000; outline-offset: -1px; }
html[data-theme="classic"] .xp-menu { border: 0; box-shadow: inset -1px -1px #404040, inset 1px 1px #D4D0C8, inset -2px -2px #808080, inset 2px 2px #fff; background: #D4D0C8; padding: 3px; }
html[data-theme="classic"] .xp-input, html[data-theme="classic"] .xp-select, html[data-theme="classic"] .xp-list { border: 0; box-shadow: inset 1px 1px #808080, inset -1px -1px #fff, inset 2px 2px #404040, inset -2px -2px #D4D0C8; }
html[data-theme="classic"] #taskbar { background: #D4D0C8; box-shadow: inset 0 1px #D4D0C8, inset 0 2px #fff; }
html[data-theme="classic"] .start-button { margin: 2px 4px 2px 2px; height: auto; padding: 0 6px; border-radius: 0; color: #000; font: bold 11px Tahoma, sans-serif; text-shadow: none; font-style: normal;
  background: #D4D0C8; box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080, inset 2px 2px #D4D0C8; }
html[data-theme="classic"] .start-button .ico { width: 16px; height: 16px; filter: none; }
html[data-theme="classic"] .start-button.pressed { box-shadow: inset 1px 1px #404040, inset -1px -1px #fff, inset 2px 2px #808080; }
html[data-theme="classic"] .start-button span::first-letter { text-transform: uppercase; }
html[data-theme="classic"] .task-btn { color: #000; border-radius: 0; height: 22px; background: #D4D0C8; box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080, inset 2px 2px #D4D0C8; }
html[data-theme="classic"] .task-btn:hover { background: #D4D0C8; }
html[data-theme="classic"] .task-btn.active { font-weight: bold; background: repeating-conic-gradient(#fff 0 25%, #D4D0C8 0 50%) 0 0 / 2px 2px; box-shadow: inset 1px 1px #404040, inset -1px -1px #fff, inset 2px 2px #808080; }
html[data-theme="classic"] .tray { margin: 3px 2px; background: #D4D0C8; border: 0; color: #000; box-shadow: inset 1px 1px #808080, inset -1px -1px #fff; }
html[data-theme="classic"] .quicklaunch::before, html[data-theme="classic"] .tasks::before { background: none; box-shadow: inset 1px 0 #808080, inset -1px 0 #fff; width: 2px; }
html[data-theme="classic"] .startmenu { border-radius: 0; background: #D4D0C8; border: 0; box-shadow: inset -1px -1px #404040, inset 1px 1px #D4D0C8, inset -2px -2px #808080, inset 2px 2px #fff; padding: 3px; }
html[data-theme="classic"] .sm-head { background: linear-gradient(to right, #0A246A, #A6CAF0); border-radius: 0; box-shadow: none; }
html[data-theme="classic"] .sm-orange { display: none; }
html[data-theme="classic"] .sm-left, html[data-theme="classic"] .sm-right { background: #D4D0C8; border-left-color: #808080; }
html[data-theme="classic"] .sm-right .sm-item { color: #000; }
html[data-theme="classic"] .sm-foot { background: #D4D0C8; box-shadow: inset 0 1px #808080, inset 0 2px #fff; }
html[data-theme="classic"] .sm-foot button { color: #000; }
html[data-theme="classic"] .sm-item:hover, html[data-theme="classic"] .sm-item.hot { background: #0A246A; color: #fff; }
html[data-theme="classic"] ::-webkit-scrollbar-thumb { border-radius: 0; border: 0; background: #D4D0C8; box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080; }
html[data-theme="classic"] ::-webkit-scrollbar-track { background: repeating-conic-gradient(#fff 0 25%, #D4D0C8 0 50%) 0 0 / 2px 2px; }
html[data-theme="classic"] ::-webkit-scrollbar-button:single-button { border-radius: 0; background-color: #D4D0C8; box-shadow: inset -1px -1px #404040, inset 1px 1px #fff, inset -2px -2px #808080; }
html[data-fontsize="xlarge"] body { font-size: 13px; }
html[data-fontsize="xlarge"] .window .title-text { font-size: 16px; }
html[data-fontsize="xlarge"] .xp-menu, html[data-fontsize="xlarge"] .menubar { font-size: 13px; }
html[data-fontsize="xlarge"] .menubar { height: 22px; }
