@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;700;800&display=swap";:root{font-family:Orbitron,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#f1f1f1;background-color:#090909;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{min-height:100%}html{background:#090909}body{margin:0;min-width:320px;background:#090909;color:#f1f1f1}a{color:#9ec0ff;text-decoration:none}a:hover{color:#c0d5ff}button,input,select,textarea{font:inherit;color:inherit}button{border:1px solid #2f2f2f;background:#101010}input,select,textarea{background:#111;border:1px solid #2b2b2b}input::placeholder,textarea::placeholder{color:#8b8b8b}.page{max-width:980px;margin:28px auto;padding:16px;min-height:calc(100vh - 56px)}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.topbarGroups{justify-content:center}.h1{margin:0;font-size:22px}.attendanceRate{margin-top:6px;font-size:34px;font-weight:800;line-height:1.1;text-align:center}.attendanceMeta{margin-top:4px;font-size:12px;color:#9a9a9a;text-align:center}.groupScreenTitle{margin-top:6px;font-size:34px;font-weight:800;line-height:1.1;text-align:center}.appFooter{position:fixed;left:0;right:0;bottom:18px;text-align:center;pointer-events:none}.footerBrand{font-size:22px;font-weight:800}.footerBy{margin-top:2px;font-size:12px;color:#9a9a9a}.btn{border:1px solid #303030;background:#0e0e0e;color:#f1f1f1;padding:8px 10px;border-radius:10px;cursor:pointer}.btn:disabled{opacity:.6;cursor:not-allowed}.iconBtn{width:40px;height:40px;padding:8px;display:inline-flex;align-items:center;justify-content:center}.inlineIcon{width:20px;height:20px}.menuIconBtn{width:40px;height:40px;padding:8px;display:inline-flex;align-items:center;justify-content:center}.menuCogIcon{width:20px;height:20px;opacity:.92}.menuIconBtnHighlighted{border-color:#bbb}.menuGridItem{justify-self:end}.groupScreenControls{display:flex;align-items:center;justify-content:space-between;gap:10px}.insertMarker{border-top:2px solid #f1f1f1;margin:-6px 0 10px;border-radius:99px}.grid{margin-top:18px;display:grid;gap:16px}.card{border:1px solid #2b2b2b;border-radius:16px;padding:14px;background:#101010}.cardHeader{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.groupTitle{font-weight:700}.rowCenter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.pill{border:1px solid #2d2d2d;background:#0d0d0d;color:#f1f1f1;border-radius:999px;padding:10px 12px;cursor:pointer;min-width:140px;text-align:center}.pill:hover{border-color:#505050}.dropdown{width:100%;margin-top:10px;border-top:1px solid #2a2a2a;padding-top:12px}.formRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:10px}.input{border:1px solid #2c2c2c;background:#121212;color:#f1f1f1;border-radius:10px;padding:10px;font-size:14px}.actions{display:flex;gap:10px}.small{font-size:12px;color:#b5b5b5}.entryOverview{display:inline-flex;align-items:baseline;justify-content:space-between;gap:10px;width:100%}.entryOverviewMain{line-height:1.35;min-width:0}.entryOverviewDate{margin-left:auto;text-align:right;color:#a2a2a2;font-size:11px;white-space:nowrap}.entryValue{color:#f5f5f5;font-weight:700}.modalRow{display:grid;gap:10px}.modalActions{display:flex;gap:10px;justify-content:flex-end}.historyChartWrap{display:grid;gap:6px;margin-bottom:10px}.historyChartHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.historyChartTitle{font-size:13px;font-weight:600}.historyChartFrame{width:100%;border:1px solid #2a2a2a;border-radius:12px;overflow:hidden;background:#000}.historyChartTick{font-size:10px;fill:#b0b0b0}.historyChartAxisLabel{font-size:11px;fill:#f5f5f5;font-weight:600}.historyChartModal{position:fixed;inset:0;z-index:1000;background:#000000eb;padding:14px;display:flex}.historyChartModalInner{width:100%;height:100%;display:grid;grid-template-rows:auto 1fr;gap:10px}.historyChartModalTop{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#fff}.historyChartFrameFullscreen{width:100%;height:calc(100vh - 78px);background:#000}@media(max-width:900px){.historyChartFrameFullscreen{height:calc(100vh - 88px)}}@media(max-width:900px)and (orientation:portrait){.historyChartModal{padding:8px}.historyChartFrameFullscreen{height:calc(100vw - 18px)}}
