:root{--card-bg: rgba(255, 255, 255, .88);--text: #0b0b0b;--muted: #666;--danger: #b00020;--radius: 16px;--shadow: 0 10px 30px rgba(0, 0, 0, .25)}@media(prefers-color-scheme:dark){:root{--card-bg: rgba(22, 22, 24, .82);--text: #f0f0f3;--muted: #a2a2a8}}html,body,#root{height:100%}.auth-bg{position:relative;min-height:100dvh;background-image:url(/Jb-wallpaper.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;color:var(--text)}.auth-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#00000059,#00000026,#00000059);pointer-events:none}.auth-wrap{position:relative;min-height:100dvh;display:grid;place-items:center;padding:4dvh 1rem}.auth-card{width:min(420px,92vw);display:grid;gap:.85rem;padding:1.25rem 1.25rem 1.5rem;border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.auth-title{margin:0 0 .25rem;font-size:1.5rem;text-align:center}.auth-label{font-size:.9rem}.auth-input{width:100%;padding:.65rem .75rem;border-radius:10px;border:1px solid rgba(0,0,0,.15);outline:none}@media(prefers-color-scheme:dark){.auth-input{border-color:#ffffff2e;background:#ffffff0f;color:var(--text)}}.auth-button{margin-top:.35rem;padding:.7rem .9rem;border:0;border-radius:12px;font-weight:600;cursor:pointer;background:#0a66c2;color:#fff}.auth-button[disabled]{opacity:.7;cursor:not-allowed}.auth-error{color:var(--danger);font-size:1.1rem;font-weight:600}.auth-footnote{margin:.25rem 0 0;text-align:center;color:var(--muted);font-size:.85rem}@media(max-width:420px){.auth-card{padding:1rem;gap:.75rem;width:94vw}.auth-title{font-size:1.35rem}}@media(prefers-reduced-motion:reduce){.auth-card{transition:none}}:root{--cps-bg: #f6f8fb;--cps-card: #fff;--cps-ink: #111827;--cps-ink-dim: #4b5563;--cps-border: #dbe3f0;--cps-accent: #5a8dee;--cps-accent-2: #6b6bd6;--cps-tab: #eef2f9;--cps-tab-active: #ffffff}*{box-sizing:border-box}.cps-wrap{background:var(--cps-bg);min-height:100%;padding:8px 6px 4px;color:var(--cps-ink);font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji";margin:8px -10px 4px}.cps-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--cps-border);margin-bottom:12px}.cps-title{margin:0;font-size:22px;font-weight:700;letter-spacing:.2px}.cps-userbar{display:flex;align-items:center;gap:8px}.cps-logout{appearance:none;border:1px solid var(--cps-border);background:#fff;color:var(--cps-ink);padding:6px 10px;border-radius:8px;cursor:pointer}.cps-logout:hover{background:#fafcff}.cps-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px;padding-bottom:4px;border-bottom:1px solid var(--cps-border)}.cps-tab{background:var(--cps-tab);border:1px solid var(--cps-border);color:var(--cps-ink);padding:6px 10px;border-radius:10px;cursor:pointer}.cps-tab.is-active{background:var(--cps-tab-active);box-shadow:0 1px #fff inset,0 0 0 2px var(--cps-accent) inset}.cps-grid{display:grid;gap:12px;grid-template-columns:repeat(8,360px);overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:6px}@media(max-width:1100px){.cps-grid{grid-template-columns:1fr;overflow-x:visible}}.cps-day{background:transparent;min-width:320px;display:flex;flex-direction:column;gap:10px}.cps-daybar{position:sticky;top:0;z-index:1;background:linear-gradient(180deg,#edf3ff,#e8eefc);border:1px solid var(--cps-accent);border-radius:8px;padding:8px 10px;box-shadow:0 1px #fff inset;text-align:center}.cps-dayname{font-weight:700;color:#233866}.cps-day[data-day=Week] .cps-daybar{background:linear-gradient(180deg,#efeaff,#e7e2ff);border-color:var(--cps-accent-2)}.cps-card{background:var(--cps-card);border:1px solid var(--cps-border);border-radius:10px;box-shadow:0 1px #11182708;overflow:hidden}.cps-card-title{margin:0;padding:8px 10px;font-size:14px;font-weight:700;color:#1e2b4a;background:#f0f5ff;border-bottom:1px solid var(--cps-border);text-align:center}.cps-subgrid{display:grid;grid-template-rows:repeat(3,1fr);gap:8px;padding:10px}.cps-subcard{border:1px solid var(--cps-accent);border-radius:8px;overflow:hidden}.cps-subcard-head{font-weight:700;padding:6px 8px;background:#eaf1ff;border-bottom:1px solid var(--cps-accent);text-align:center}.cps-table{width:100%;border-collapse:collapse}.cps-daily-totals{width:100%}.cps-daily-totals th,.cps-daily-totals td{padding:6px 8px;border-bottom:1px dashed var(--cps-border);text-align:left}.cps-daily-totals th{color:var(--cps-ink-dim);font-weight:600;width:20%}.cps-mini th,.cps-mini td{padding:4px 3px;border-bottom:1px solid #eef2fb;font-size:12px;text-align:left}.cps-mini th{color:var(--cps-ink-dim);font-weight:600}.cps-rows thead th{background:#e8fff7;border-bottom:1px solid var(--cps-border);padding:4px 1px;font-weight:700;text-align:center;vertical-align:bottom;white-space:wrap;font-size:12px}.cps-rows tbody td{padding:4px 1px;border-bottom:1px solid #f0f2f7;vertical-align:center;font-size:12px;text-align:left}.cps-rows tbody tr:hover{background:#fafcff}.cps-col-name{width:30%}.cps-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.cps-rows td:nth-child(2),.cps-rows td:nth-child(3),.cps-rows td:nth-child(4),.cps-rows td:nth-child(5),.cps-rows td:nth-child(6){text-align:center}.cps-empty td{color:#9aa5b1;text-align:center;padding:12px 6px}.cps-panel{background:var(--cps-card);border:1px dashed var(--cps-border);border-radius:10px;padding:3px 0 3px 10px;margin:0}
