[data-wallpaper] {
  --wallpaper-fill: url("/wallpapers/doj-1.webp");
  --desktop-accent: #8dbaff;
}
[data-wallpaper="doj_courthouse"] { --wallpaper-fill: url("/wallpapers/doj-2.webp"); }
[data-wallpaper="doj_gold"] { --wallpaper-fill: url("/wallpapers/doj-3.webp"); }
[data-wallpaper="doj_blue"] { --wallpaper-fill: url("/wallpapers/doj-4.webp"); }
[data-wallpaper="custom"] { --wallpaper-fill: var(--desktop-wallpaper,url("/wallpapers/doj-1.webp")); }
.workspace-tab-icon { display: none; }
html:has(#app[data-interface="computer"]),body:has(> #app[data-interface="computer"]) {
  height:100%; overflow:hidden; overscroll-behavior:none;
}
#app[data-interface="computer"] { position:fixed; inset:0; overflow:hidden; overscroll-behavior:none; }
.workspace-embedded { overscroll-behavior:none; }
#app[data-interface="computer"] > .sidebar { display: none; }
#app[data-interface="computer"] > .main {
  --taskbar-size: 54px;
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  height: 100dvh;
  min-height: 0;
  margin: 0;
  transition: none;
  isolation: isolate;
  background: var(--wallpaper-fill) center / cover;
}
#app[data-interface="computer"] .topbar:not(.is-maintenance) { display: none; }
#app[data-interface="computer"] .topbar .menu-toggle { display: none; }
.desktop-window { display:contents; }
#app[data-interface="computer"] .desktop-window {
  position:absolute;
  z-index:2;
  left:var(--window-x,8%);
  top:var(--window-y,20px);
  width:var(--window-w,84%);
  height:var(--window-h,75vh);
  display:grid;
  grid-template-rows:39px minmax(0,1fr);
  min-height: 0;
  margin:0;
  overflow: hidden;
  border: 1px solid #8196ae68;
  border-radius: 9px;
  background: var(--page,#f3f5f7);
  box-shadow: 0 14px 30px #050c263b;
}
#app[data-interface="computer"] .workspace-tab-panels { min-height:0; overflow:hidden; }
#app[data-interface="computer"] .workspace-frame { height: 100%; }
#app[data-interface="computer"] .desktop-showing-home .desktop-window { display:none; }
.desktop-window-bar {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  background: var(--surface,#fff);
  border-bottom:1px solid var(--line);
  margin:0;
  overflow: hidden;
}
.desktop-window-label,.desktop-window-actions { display: flex; align-items: center; }
.desktop-window-label { flex:1; min-width:0; gap:8px; padding-inline:12px; cursor:grab; touch-action:none; user-select:none; }
.desktop-moving .desktop-window-label { cursor:grabbing; }
.desktop-moving .workspace-frame { pointer-events:none; }
.desktop-moving .desktop-window { will-change:transform; }
.desktop-moving .desktop-taskbar { backdrop-filter:none; }
.desktop-resizing .workspace-frame { visibility:hidden; }
.desktop-window-resize { display:none; }
#app[data-interface="computer"] .main:not(.desktop-showing-home,.desktop-window-maximized) .desktop-window-resize {
  display:block; position:absolute; z-index:4; width:22px; height:22px; touch-action:none; cursor:nwse-resize;
  right:0;
  bottom:0;
  background:linear-gradient(135deg,transparent 50%,#8b9db2 50% 55%,transparent 55% 67%,#8b9db2 67% 72%,transparent 72%);
  background-size:12px 12px; background-repeat:no-repeat; background-position:5px 5px;
}
.desktop-window-label strong { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: .9rem; }
.desktop-window-label .ico { width: 18px; height: 18px; vertical-align: middle; color: var(--muted); }
.desktop-window-actions button { height: 100%; min-height: 0; width: 42px; padding: 0; background: transparent; color: var(--ink); border: 0; border-radius: 0; box-shadow: none; font-size: 1.15rem; }
.desktop-window-actions button:hover { background: var(--hover,#edf2f6); }
.desktop-window-actions [data-close]:hover { background: #ab293c; color: white; }
#app[data-interface="computer"] .desktop-window-maximized .desktop-window { border-radius:0; }
.desktop-home {
  --shortcut-icon:45px; flex:1; min-height:0; overflow:auto hidden; overscroll-behavior:contain;
  padding:12px 14px; scrollbar-width:thin;
}
.desktop-home[data-icon-size="small"] { --shortcut-icon:34px; }
.desktop-home[data-icon-size="large"] { --shortcut-icon:58px; }
.desktop-shortcuts { display:grid; grid-auto-flow:column; align-content:start; justify-content:start; width:max-content; min-width:100%; }
.desktop-shortcuts .desktop-app-item,.desktop-empty-slot { min-height:0; }
.desktop-app {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 7px;
  min-height: 83px;
  min-width: 0;
  padding: 7px 4px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: inherit;
  box-shadow: none;
  font-size: .8rem;
  font-weight: 500;
  text-align: center;
  overflow-wrap: anywhere;
}
.desktop-app:hover,.desktop-app:focus-visible { background: #9fb7da22; border-color: #a9bdda50; }
.desktop-app { transition: background-color 150ms ease, transform 170ms ease; }
.desktop-app:active { transform:scale(.94); }
.desktop-app-item.is-drag-target { outline:2px solid var(--desktop-accent); outline-offset:-2px; border-radius:9px; }
.desktop-shortcuts .desktop-app {
  position:relative; color:#fff; text-shadow:0 1px 2px #000,0 0 4px #000;
  line-height:1.2; min-height:0; height:100%; padding:6px 4px; gap:4px; touch-action:none;
}
.desktop-shortcuts .desktop-app > span:last-child {
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; hyphens:auto;
}
.desktop-shortcuts .desktop-app::after {
  content:"↗"; position:absolute; top:calc(var(--shortcut-icon) - 4px); left:calc(50% - var(--shortcut-icon)/2);
  width:12px; height:12px; border-radius:2px; background:#f9fcff; box-shadow:0 1px 2px #0005;
  color:#075aba; font:700 11px/12px system-ui; text-shadow:none;
}
.desktop-icon {
  --section-tint: #fff;
  --icon-cut: color-mix(in srgb,var(--section-tint) 65%,white);
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 49px;
  height: 49px;
  color: #161c25;
  border-radius: 23%;
  background: linear-gradient(145deg,#ffffffcf 0%,#ffffff30 30%,#202c392e 100%),var(--section-tint);
  border: 1px solid #ffffff87;
  box-shadow: inset 0 1px 1px #ffffffe6,inset 0 -1px 2px #1c2e412b,0 3px 7px #0004;
}
.desktop-icon .ico { width: 29px; height: 29px; filter: drop-shadow(2px 3px 1.6px #1521305c); }
.desktop-icon-art .icon-cut { fill: none; stroke: var(--icon-cut); stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; }
.desktop-icon-art .icon-check { stroke-width: 2.15; }
.desktop-icon-art .icon-back { fill:var(--icon-back,#d99720); }
.desktop-icon-art .icon-paper { fill:#f5f9ff; }
.desktop-icon[data-section="secretariat"] { --section-tint: #b9e7a6; }
.desktop-icon[data-section="press"] { --section-tint: #f3d476; }
.desktop-icon[data-section="exams"] { --section-tint: #d6b9f4; }
.desktop-icon[data-section="register"] {
  --section-tint: #174b36;
  --icon-cut: #204936;
  color: #f5fff9;
  background: linear-gradient(145deg,#ffffff55,#ffffff08 45%,#080f1645),var(--section-tint);
}
.desktop-icon[data-section="judges"] { --section-tint: #f39c9c; }
.desktop-icon[data-section="prosecution"] { --section-tint: #91c8ff; }
.desktop-icon[data-section="management"] { --section-tint: #f1bd83; }
.desktop-icon[data-section="admin"] { --section-tint: #e0c477; }
.desktop-icon[data-app-icon="overview"] rect:nth-child(2),
.desktop-icon[data-app-icon="overview"] rect:nth-child(3) { opacity:.65; }
.desktop-icon[data-app-icon="overview"] rect:nth-child(4) { opacity:.46; }
.desktop-shortcuts .desktop-icon {
  width:var(--shortcut-icon); height:var(--shortcut-icon);
}
#app[data-interface="computer"] .desktop-icon {
  --symbol:#0a66c8; --shade:#063878; --icon-cut:#dcf3ff;
  color:var(--symbol); border:0; border-radius:0; background:none; box-shadow:none;
}
#app[data-interface="computer"] .desktop-icon .ico {
  width:100%; height:100%; filter:drop-shadow(0 1px 0 var(--shade)) drop-shadow(0 2px 2px #101b3c70);
}
.desktop-icon-supplied img {
  display:block; width:100%; height:100%; object-fit:contain; pointer-events:none;
  mask:var(--icon-mask) center / contain no-repeat;
}
[data-icon-source="overview"] { --icon-mask:url("/desktop-app-icons/overview-mask.svg"); }
[data-icon-source="information"] { --icon-mask:url("/desktop-app-icons/information-mask.svg"); }
[data-icon-source="suggestions"] { --icon-mask:url("/desktop-app-icons/suggestions-mask.svg"); }
[data-icon-source="sentencing"] { --icon-mask:url("/desktop-app-icons/sentencing-mask.svg"); }
[data-icon-source="calendar"] { --icon-mask:url("/desktop-app-icons/calendar-mask.svg"); }
[data-icon-source="staff"] { --icon-mask:url("/desktop-app-icons/staff-mask.svg"); }
[data-icon-source="tasks"] { --icon-mask:url("/desktop-app-icons/tasks-mask.svg"); }
[data-icon-source="handbook"] { --icon-mask:url("/desktop-app-icons/handbook-mask.svg"); }
[data-icon-source="press"] { --icon-mask:url("/desktop-app-icons/press-mask.svg"); }
[data-icon-source="register"] { --icon-mask:url("/desktop-app-icons/register-mask.svg"); }
[data-icon-source="cases"] { --icon-mask:url("/desktop-app-icons/cases-mask.svg"); }
[data-icon-source="prosecution-warrant"] { --icon-mask:url("/desktop-app-icons/prosecution-warrant-mask.svg"); }
[data-icon-source="prosecution-search"] { --icon-mask:url("/desktop-app-icons/prosecution-search-mask.svg"); }
[data-icon-source="ruling"] { --icon-mask:url("/desktop-app-icons/ruling-mask.svg"); }
[data-icon-source="court-warrant"] { --icon-mask:url("/desktop-app-icons/court-warrant-mask.svg"); }
[data-icon-source="payout"] { --icon-mask:url("/desktop-app-icons/payout-mask.svg"); }
[data-icon-source="discord"] { --icon-mask:url("/desktop-app-icons/discord-mask.svg"); }
.desktop-window-label .desktop-icon { width:21px; height:21px; }
#app[data-interface="computer"] .desktop-icon[data-section="secretariat"] { --symbol:#48ae60; --shade:#16553c; --icon-cut:#e3ffe9; }
#app[data-interface="computer"] .desktop-icon[data-section="press"] { --symbol:#ffc645; --shade:#8a4a05; --icon-cut:#593008; }
#app[data-interface="computer"] .desktop-icon[data-section="exams"] { --symbol:#a478f8; --shade:#4a2080; --icon-cut:#f3e6ff; }
#app[data-interface="computer"] .desktop-icon[data-section="register"] { --symbol:#24a083; --shade:#075143; --icon-cut:#e2fff2; }
#app[data-interface="computer"] .desktop-icon[data-section="judges"] { --symbol:#e6616a; --shade:#5a1d25; --icon-cut:#ffe5e7; }
#app[data-interface="computer"] .desktop-icon[data-section="prosecution"] { --symbol:#59a9ee; --shade:#14497c; --icon-cut:#e7f6ff; }
#app[data-interface="computer"] .desktop-icon[data-section="management"] { --symbol:#f5ad66; --shade:#733606; --icon-cut:#fff4e3; }
#app[data-interface="computer"] .desktop-icon[data-section="admin"] { --symbol:#efc75e; --shade:#6c4a02; --icon-cut:#fff4ca; }
#app[data-interface="computer"] .desktop-icon[data-app-icon="case"] { --symbol:#ffd065; --shade:#ae6414; --icon-back:#e69b17; }
#app[data-interface="computer"] .desktop-icon[data-app-icon="information"] { --symbol:#34a2ed; }
#app[data-interface="computer"] .desktop-icon[data-app-icon="attendance"] { --symbol:#39b378; --shade:#1b6448; --icon-cut:#effff8; }
#app[data-interface="computer"] .desktop-icon[data-app-icon="handbook"] { --symbol:#f3f8ff; --shade:#135fb8; --icon-cut:#4288cf; }
.desktop-app-group h2 { margin: 0 0 8px; font-size: .84rem; }
.desktop-app-grid { display:grid; gap:2px; }
.desktop-app-grid .desktop-app { flex-direction:row; align-items:center; min-height:44px; padding:4px 35px 4px 7px; text-align:left; }
.desktop-app-grid .desktop-icon { width:27px; height:27px; }
.desktop-app-grid .desktop-pin-action { top:50%; translate:0 -50%; }
.desktop-app-grid .desktop-icon,.desktop-dock-pins .desktop-icon { touch-action:none; }
.desktop-app-item { position: relative; min-width: 0; }
.desktop-app-item > .desktop-app { width: 100%; }
.desktop-shortcuts .desktop-icon { touch-action:none; }
.desktop-pin-action {
  position: absolute; right: 2px; top: 0; width: 25px; min-height: 25px; padding: 0;
  background: var(--surface,#fff); border: 1px solid var(--line); border-radius: 50%; box-shadow: 0 2px 5px #12213824;
}
.desktop-taskbar {
  position:relative;
  z-index:5;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 var(--taskbar-size);
  gap: 8px;
  padding: 4px 14px;
  min-width: 0;
  background:linear-gradient(180deg,#ffffff24,transparent 52%),color-mix(in srgb,#101b2dd0 91%,var(--desktop-accent));
  backdrop-filter:blur(22px) saturate(1.45);
  border-top:0;
  box-shadow:inset 0 1px color-mix(in srgb,var(--desktop-accent) 33%,transparent),0 -6px 24px #10182e26;
  color: #fff;
}
.desktop-version { color:#e0e9f8; font-size:.72rem; white-space:nowrap; }
.desktop-dock-center { display:flex; align-items:center; justify-content:center; gap:6px; flex:1; min-width:0; padding-left:75px; }
.desktop-dock-pins { display:flex; align-items:center; flex:0 1 auto; overflow:auto; scrollbar-width:none; }
.desktop-dock-pins .desktop-app-item { flex:none; }
.desktop-dock-pins .desktop-app { position:relative; padding:3px 3px 6px; min-height:0; }
.desktop-dock-pins .desktop-app::after {
  content:""; position:absolute; left:50%; bottom:1px; translate:-50% 0; width:0; height:2px;
  border-radius:4px; transition:width 140ms ease; background:#ffffffa3;
}
.desktop-dock-pins [data-running="true"]::after { width:9px; }
.desktop-dock-pins [data-active="true"]::after { width:19px; background:var(--desktop-accent); }
.desktop-dock-pins .desktop-icon { width:31px; height:31px; }
.desktop-dock-pins .desktop-icon .ico { width:19px; height:19px; }
.desktop-taskbar-tabs { min-width: 0; max-width: min(64vw,980px); }
.desktop-taskbar .workspace-tabs { height: 38px; padding: 0; background: transparent; border: 0; }
.desktop-taskbar .workspace-tab { background: transparent; border: 0; }
.desktop-taskbar .workspace-tab.selected { border-radius: 5px; background: #050e2380; box-shadow: inset 0 -2px var(--desktop-accent); }
.desktop-taskbar .workspace-tab-select { display: flex; align-items: center; gap: 6px; max-width: 130px; color: #fff; font-weight: 600; overflow: hidden; text-overflow: ellipsis; }
.desktop-taskbar .workspace-tab-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.desktop-taskbar .workspace-tab-icon { display: inline-flex; }
.desktop-taskbar .workspace-tab-icon .desktop-icon { width: 22px; height: 22px; }
.desktop-taskbar .workspace-tab-icon .ico { width: 14px; height: 14px; filter:drop-shadow(1px 1px .65px #15213060); }
.desktop-taskbar :is(.workspace-tab-close,.desktop-show-home) { color: #fff; border: 0; background: transparent; box-shadow: none; }
.desktop-taskbar :is(.workspace-tab-close,.desktop-show-home):hover { background: #ffffff26; }
.desktop-taskbar .desktop-gg {
  min-height: 36px;
  min-width: 39px;
  padding: 0;
  background: transparent;
  border-color: transparent;
  border-radius: 8px;
  box-shadow: none;
}
.desktop-gg-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  border: 1px solid #dfc5839c;
  background: linear-gradient(145deg,#263d64,#111c32 78%);
  box-shadow: inset 0 1px #ffffff1f,0 2px 5px #02091650;
  color: #f3dfa5;
  font: 750 15px/1 'Segoe UI',system-ui,sans-serif;
  letter-spacing: -.045em;
}
.desktop-gg-mark span + span { color: #cba96a; }
.desktop-taskbar .desktop-gg:hover,.desktop-taskbar .desktop-gg[aria-expanded="true"] { background: #ffffff19; }
.desktop-task-search {
  position:relative; flex:0 0 clamp(100px,16vw,210px); color:#f2f5fa;
}
.desktop-task-search svg { position:absolute; left:9px; top:50%; translate:0 -50%; width:19px; pointer-events:none; }
.desktop-taskbar .desktop-task-search input {
  display:block; width:100%; min-width:0; height:34px; margin:0; padding:0 9px 0 33px;
  color:inherit; font-size:.88rem; border:1px solid #ffffff38; border-radius:999px;
  background:#ffffff16; box-shadow:inset 0 1px 2px #101b2d52;
}
.desktop-taskbar .desktop-task-search input::placeholder { color:#e1e8f5; opacity:1; }
.desktop-taskbar .desktop-task-search input:is(:hover,:focus) { background:#ffffff23; }
.desktop-taskbar .desktop-task-search input:focus { outline:1px solid var(--desktop-accent); outline-offset:1px; }
.desktop-search-results {
  position:absolute; z-index:16; bottom:calc(var(--taskbar-size) + 9px); left:50%; transform:translateX(-50%);
  width:min(410px,calc(100% - 20px)); animation:desktop-panel-in 180ms ease-out;
}
.desktop-search-results [data-results] { max-height:min(56dvh,410px); overflow:auto; padding:6px; }
.desktop-search-results [data-results] > p { padding:8px; margin:0; }
.desktop-search-results header small,.desktop-search-results button small { color:#d2cbd9; }
.desktop-search-results [data-results] button {
  display:flex; align-items:center; gap:10px; width:100%; padding:6px 9px;
  text-align:left; background:transparent; border-color:transparent;
}
.desktop-search-results [data-results] button + button { margin-top:2px; }
.desktop-search-results [data-results] button:hover { background:#ffffff18; }
.desktop-search-results button :is(strong,small) { display:block; }
.desktop-search-results .desktop-icon { flex:none; width:32px; height:32px; }
.desktop-search-results .desktop-icon .ico { width:20px; height:20px; }
.desktop-time { display:grid; gap:2px; text-align:right; font-size:.8rem; line-height:1.1; font-variant-numeric:tabular-nums; }
.desktop-time small { font-size: .66rem; }
.desktop-taskbar .desktop-clock { padding:5px 8px; background:transparent; color:#fff; border:1px solid transparent; box-shadow:none; }
.desktop-taskbar .desktop-clock:hover,.desktop-taskbar .desktop-clock[aria-expanded="true"] { background:#ffffff20; border-color:#ffffff28; }
.desktop-taskbar .desktop-quick-toggle { padding:5px 6px; background:transparent; color:#fff; border:1px solid transparent; box-shadow:none; }
.desktop-taskbar .desktop-quick-toggle:is(:hover,[aria-expanded="true"]) { background:#ffffff20; border-color:#ffffff28; }
.desktop-quick-toggle svg { display:block; width:32px; height:16px; }
.desktop-taskbar .desktop-show-home { padding: 3px 7px; min-height: 32px; min-width: 30px; }
.desktop-start,.desktop-agenda {
  --glass: #f2f7ff8f;
  position:absolute;
  z-index:16;
  bottom:calc(var(--taskbar-size) + 10px);
  color:var(--ink,#192b45);
  border:1px solid #ffffffb5;
  border-radius:20px;
  background:linear-gradient(135deg,#ffffff58,transparent 45%),var(--glass);
  backdrop-filter:blur(26px) saturate(1.65);
  box-shadow:inset 0 1px 1px #ffffffdc,inset 0 -1px 1px #ffffff4d,0 16px 62px #071a3c75;
  animation:desktop-panel-in 180ms cubic-bezier(.2,.8,.3,1);
}
:root[data-theme="dark"] :is(.desktop-start,.desktop-agenda) {
  --glass:#152334aa; border-color:#d7ecff58;
  background:linear-gradient(135deg,#b5dcff29,transparent 45%),var(--glass);
  box-shadow:inset 0 1px 1px #ffffff55,0 16px 62px #02081299;
}
.desktop-start {
  display: grid;
  grid-template-rows: auto minmax(0,1fr) auto;
  left: 50%;
  transform: translateX(-50%);
  width: min(680px,calc(100% - 24px));
  max-height: min(72dvh,650px);
}
.desktop-agenda,.desktop-quick {
  position:absolute; z-index:16; bottom:calc(var(--taskbar-size) + 9px); right:10px;
  width:min(348px,calc(100% - 20px)); max-height:calc(100dvh - var(--taskbar-size) - 18px);
  overflow:auto; color:#f8f6fa; animation:desktop-panel-in 180ms ease-out;
}
.desktop-agenda { display:grid; gap:9px; background:none!important; backdrop-filter:none; border:0; border-radius:0; box-shadow:none!important; }
.desktop-tray-card {
  color:#f8f6fa; border:1px solid #ffffff26; border-radius:11px;
  background:linear-gradient(145deg,#222128e8,#282330d9 64%,#34272ee3);
  backdrop-filter:blur(24px) saturate(1.35); box-shadow:inset 0 1px #ffffff13,0 8px 28px #0003;
}
.desktop-tray-card header { display:flex; justify-content:space-between; align-items:center; gap:8px; padding:11px 13px; border-bottom:1px solid #ffffff13; }
.desktop-tray-card h2 { margin:0; font-size:.91rem; font-weight:600; }
.desktop-tray-card button { color:inherit; background:#ffffff12; border:1px solid #ffffff18; box-shadow:none; min-height:28px; padding:4px 8px; font-size:.78rem; }
.desktop-tray-card button:hover { background:#ffffff22; }
.desktop-tray-empty { padding:9px 13px; margin:0; color:#d2cbd9; font-size:.81rem; }
.desktop-notifications [data-notifications] { max-height:min(31dvh,260px); overflow:auto; padding:6px; }
.desktop-notification { padding:9px; margin-bottom:5px; background:#ffffff0c; border:1px solid #ffffff10; border-radius:6px; overflow-wrap:anywhere; }
.desktop-notification small,.desktop-calendar-card header time { color:#d2cbd9; font-size:.74rem; }
.desktop-notification p { margin:4px 0 8px; }
.desktop-calendar-card header time { display:block; font-variant-numeric:tabular-nums; }
.desktop-month-heading { display:flex; align-items:center; justify-content:space-between; padding:9px 13px 3px; }
.desktop-month-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); padding:4px 9px; text-align:center; font-size:.78rem; }
.desktop-month-grid span { padding:6px 0; font-weight:600; }
.desktop-month-grid button { position:relative; justify-self:center; width:min(34px,100%); height:31px; padding:0; background:none; border-color:transparent; border-radius:50%; }
.desktop-month-grid .outside-month { color:#aeabb6; }
.desktop-month-grid button[aria-pressed="true"] { background:#ffffff33; }
.desktop-month-grid .today { background:#7ad4fa; color:#0d2430; font-weight:700; }
.desktop-month-grid .has-event::after { content:""; position:absolute; bottom:2px; left:calc(50% - 2px); width:4px; height:4px; border-radius:50%; background:currentColor; }
.desktop-calendar-card [data-events] { padding:4px 8px 8px; max-height:125px; overflow:auto; }
.desktop-calendar-card [data-events] button { display:block; width:100%; text-align:left; margin:3px 0; }
.desktop-focus { display:flex; justify-content:space-between; align-items:center; gap:6px; border-top:1px solid #ffffff13; padding:9px; }
.desktop-focus > div { display:flex; align-items:center; gap:5px; white-space:nowrap; }
.desktop-focus span { font-size:.81rem; font-variant-numeric:tabular-nums; }
.desktop-quick { width:min(372px,calc(100% - 20px)); color-scheme:dark; color:#f7f7f7; background:#242424eb; border-radius:12px; }
.desktop-quick-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:17px 16px 13px; }
.desktop-quick-tile { min-width:0; display:grid; grid-template-rows:46px auto; text-align:center; gap:6px; font-size:.8rem; }
.desktop-quick-tile > :is(button,.desktop-network) {
  display:grid; place-items:center; width:100%; padding:0; min-width:0; color:#fff; background:#3a3a3a; border:1px solid #ffffff22; border-radius:6px; box-shadow:none;
}
.desktop-quick-tile button:hover { background:#494949; }
.desktop-quick-tile > :is([aria-pressed="true"],.is-online),.desktop-quick-tile button[aria-pressed="true"]:hover { color:#082430; background:#50c5f2; }
.desktop-quick-tile svg,.desktop-quick-controls svg { width:19px; height:19px; }
.desktop-quick-controls { display:grid; gap:12px; padding:14px 16px; border-block:1px solid #ffffff15; }
.desktop-quick-controls label { display:grid; grid-template-columns:1fr minmax(86px,45%); align-items:center; gap:10px; margin:0; color:#f7f7f7; font-size:.85rem; }
.desktop-quick-controls .desktop-volume { grid-template-columns:19px minmax(0,1fr) 46px; }
.desktop-quick-controls input[type="range"] { margin:0; padding:0; min-width:0; min-height:28px; width:100%; accent-color:#50c5f2; border:0; background:none; box-shadow:none; }
.desktop-volume output { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.desktop-quick-controls select { min-width:0; margin:0; padding:4px 7px; min-height:31px; background:#343434; color:#fff; border:1px solid #5a5a5a; }
.desktop-quick footer { display:flex; justify-content:flex-end; padding:8px 12px; background:#18181856; }
.desktop-quick footer button { display:flex; align-items:center; gap:6px; }
@keyframes desktop-panel-in { from { opacity:0; scale:.98; translate:0 8px; } to { opacity:1; scale:1; translate:0 0; } }
@media(prefers-reduced-motion:reduce) {
  #app[data-interface="computer"] :is(.desktop-start,.desktop-agenda,.desktop-quick,.desktop-search-results,.desktop-window) { animation:none!important; }
  .desktop-app { transition:none; }
}
.desktop-start-heading { display: flex; align-items: center; gap: 15px; padding: 15px; border-bottom: 1px solid var(--line); }
.desktop-start-heading input { min-width: 0; margin: 0; }
.desktop-start-apps { overflow: auto; padding: 15px; }
.desktop-start-apps .desktop-app-group + .desktop-app-group { margin-top: 13px; padding-top: 13px; border-top: 1px solid var(--line); }
.desktop-start footer { position:relative; display:flex; justify-content:space-between; align-items:center; gap:8px; padding: 10px 15px; border-top: 1px solid var(--line); }
.desktop-start footer button { display: inline-flex; align-items: center; gap: 7px; }
.desktop-start footer .ico { width: 18px; height: 18px; }
.desktop-account { min-width:0; }
.desktop-account summary { cursor:pointer; display:flex; align-items:center; gap:7px; padding:6px; }
.desktop-account summary span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.desktop-account-menu { position:absolute; z-index:2; left:12px; bottom:calc(100% + 6px); display:grid; gap:5px; min-width:150px; padding:8px; background:var(--surface); border:1px solid var(--line); border-radius:9px; box-shadow:0 8px 24px #12233d44; }
.desktop-account-menu button { justify-content:flex-start; }
.appearance-settings { margin: 0 0 18px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; }
.appearance-settings legend { padding-inline: 5px; font-weight: 700; }
.appearance-layout { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: center; gap: 20px; }
.appearance-controls { display: grid; gap: 8px; min-width: 0; }
.appearance-controls label { display: grid; gap: 4px; }
.appearance-controls input[type="color"] { width: 58px; height: 36px; padding: 3px; }
.appearance-controls input[type="file"] { min-width: 0; max-width: 100%; }
.appearance-preview {
  aspect-ratio: 16 / 9;
  display: grid;
  grid-template-rows: 1fr auto;
  place-items: center;
  background: var(--wallpaper-fill) center / cover;
  border-radius: 8px;
  overflow: hidden;
}
.appearance-preview-window { width: 59%; height: 68%; border: 1px solid #ffffff75; border-top: 8px solid #a8b5c8; border-radius: 4px; background: #e3eaf3; box-shadow: 0 4px 12px #07132766; }
.appearance-preview-bar { display: flex; justify-content: center; align-items: center; gap: 5px; width: 100%; padding: 3px; background: color-mix(in srgb,#14223a 76%,var(--desktop-accent)); border-top: 2px solid var(--desktop-accent); color: #fff; font-size: .67rem; }
.appearance-preview-bar i { width: 10px; height: 8px; border-radius: 2px; background: var(--desktop-accent); }
@media(max-width:650px) {
  #app[data-interface="computer"] .desktop-window { border-radius:0; }
  .desktop-home { padding: 14px; }
  .desktop-taskbar { gap: 5px; padding-inline: 6px; }
  .desktop-dock-center { padding-left:0; justify-content:flex-start; }
  .desktop-task-search { flex-basis:clamp(78px,22vw,135px); }
  .desktop-taskbar .desktop-task-search input { font-size:16px; padding-left:29px; }
  .desktop-task-search svg { left:7px; width:17px; }
  .desktop-version { max-width:58px; white-space:normal; line-height:1.1; }
  .desktop-dock-pins { max-width:27vw; }
  .desktop-taskbar-tabs { max-width: 65vw; }
  .desktop-taskbar .workspace-tab-select { max-width: 85px; }
  .desktop-time small { display: none; }
  .appearance-layout { grid-template-columns: minmax(0,1fr); }
  .appearance-preview { width: min(100%,350px); }
}
