:root[data-appearance-theme=starosta][data-appearance-scheme=dark]{
  --paper:#0f1018;--surface:#1a1d2a;--ink:#f1f2fa;--muted:#a7aabd;
  --line:#303344;--on-accent:#161328;--starosta-panel:#242239;
  --starosta-present:#76dfb2;--starosta-late:#ffcc80;--starosta-absent:#ff9a9c;--starosta-excused:#9fbaff;
}
:root[data-appearance-theme=starosta][data-appearance-scheme=light]{
  --paper:#f3f3f9;--surface:#fff;--ink:#1f2030;--muted:#555970;
  --line:#ddddec;--starosta-panel:#f0edf9;
  --starosta-present:#087047;--starosta-late:#805306;--starosta-absent:#a12f36;--starosta-excused:#335da8;
}
[data-appearance-theme=starosta] #main{padding-block-end:calc(104px + env(safe-area-inset-bottom, 0px))}
[data-starosta-home] #main,[data-starosta-home] #navigation{display:none}
[data-appearance-theme=starosta] :is(.calendar,.list,.gradebook-scroll,dialog){border-radius:14px}
[data-appearance-theme=starosta] .list:has(> .lesson){display:grid;gap:6px;border:0;background:transparent}
[data-appearance-theme=starosta] .lesson{background:var(--surface);border:1px solid var(--line);border-radius:10px}
[data-appearance-theme=starosta] .calendar .week button[aria-pressed=true]{background:var(--wash);color:var(--accent)}
[data-appearance-theme=starosta] .calendar .week button[aria-pressed=true]:focus-visible{--control-focus:var(--focus)}
.starosta-dashboard{padding-block:16px calc(104px + env(safe-area-inset-bottom, 0px))}
.starosta-group{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.starosta-group>span{
  display:grid;place-items:center;width:44px;height:44px;flex:none;
  border-radius:12px;background:var(--accent);color:var(--on-accent);font-weight:750;
}
.starosta-group h1{font-size:1.25rem;overflow-wrap:anywhere}
.starosta-summary{
  border:1px solid color-mix(in srgb,var(--accent),var(--line) 68%);
  border-radius:16px;padding:16px;background:var(--starosta-panel);
  background:linear-gradient(155deg,color-mix(in srgb,var(--starosta-panel),var(--accent) 13%),var(--starosta-panel) 72%);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--accent),transparent 80%),0 10px 24px #0002;
}
.starosta-summary-label{color:var(--accent);font-size:12px;font-weight:650;margin-bottom:6px}
.starosta-summary h2{font-size:1.25rem}
.starosta-numbers{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;
  margin:12px 0 4px;font-variant-numeric:tabular-nums;
}
.starosta-numbers div{
  min-width:0;padding:4px;border-radius:8px;
  border:1px solid color-mix(in srgb,currentColor,transparent 82%);
  background:color-mix(in srgb,currentColor,transparent 94%);
}
.starosta-numbers dd{margin:0;font-size:1.5rem;font-weight:750}
.starosta-numbers dt{font-size:11px;line-height:1.3;color:var(--muted);overflow-wrap:anywhere}
.starosta-text-button{padding-inline:0;border-color:transparent;background:transparent;color:var(--accent);font-size:13px;text-align:left}
.starosta-section-title{font-size:1rem;margin-block:20px 8px}
.starosta-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.starosta-actions button{
  display:grid;justify-items:start;gap:4px;text-align:left;min-width:0;
  padding:12px;border-radius:12px;overflow-wrap:anywhere;
  border-color:color-mix(in srgb,var(--accent),var(--line) 87%);
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--accent),transparent 92%);
}
.starosta-actions button:hover{border-color:var(--accent)}
.starosta-tile-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--wash);font-size:17px}
.starosta-actions svg,.starosta-dock [aria-current] svg{color:var(--accent)}
.starosta-actions small{font-weight:400;color:var(--muted)}
.starosta-dock{
  position:fixed;z-index:4;inset:auto 0 0;background:var(--surface);
  border-top:1px solid var(--line);padding-block-end:env(safe-area-inset-bottom, 0px);
}
.starosta-dock .frame{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding-block:4px}
.starosta-dock button{
  display:grid;justify-items:center;gap:2px;border:0;padding:4px 2px;
  font-size:11px;line-height:1.2;min-width:0;color:var(--muted);overflow-wrap:anywhere;
}
.starosta-dock button[aria-current]{color:var(--accent);background:var(--wash)}
:root[data-appearance-theme=starosta] :is([data-mark=present],[data-status=present]){color:var(--starosta-present)}
:root[data-appearance-theme=starosta] :is([data-mark=late],[data-status=late]){color:var(--starosta-late)}
:root[data-appearance-theme=starosta] :is([data-mark=absent],[data-status=absent]){color:var(--starosta-absent)}
:root[data-appearance-theme=starosta] [data-status=excused]{color:var(--starosta-excused)}
:root[data-appearance-theme=starosta] [data-action=group-mark][data-status]:not([data-status=""]){
  background:color-mix(in srgb,currentColor,transparent 88%);border-radius:8px;
}

.app-back{display:block;margin:8px max(12px, calc((100% - 940px)/2)) 0}
.shared-attendance-summary{margin-block:0 16px}
:root:not([data-appearance-theme=starosta]) .shared-attendance-summary{--starosta-panel:var(--surface)}
[data-appearance-theme=starosta] .shared-attendance-summary{display:none}
