:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;--radius: 18px;--shadow: 0 10px 30px rgba(0, 0, 0, .25);--cardRadius: 22px}*,*:before,*:after{box-sizing:border-box}body.theme-dark{color-scheme:dark;--primary: #60a5fa;--onPrimary: #071a3a;--primaryContainer: #1e3a8a;--onPrimaryContainer: #dbeafe;--secondary: #94a3b8;--onSecondary: #0b1220;--secondaryContainer: #1f2937;--onSecondaryContainer: #e2e8f0;--tertiary: #5eead4;--onTertiary: #042f2e;--tertiaryContainer: #115e59;--onTertiaryContainer: #ccfbf1;--error: #fca5a5;--onError: #3f0a0a;--background: #0b1220;--onBackground: #e2e8f0;--surface: #0f172a;--onSurface: #e2e8f0;--surfaceVariant: #111c33;--onSurfaceVariant: #cbd5e1;--outline: #334155}body.theme-light{color-scheme:light;--primary: #1d4ed8;--onPrimary: #ffffff;--primaryContainer: #dbeafe;--onPrimaryContainer: #0b1f4d;--secondary: #334155;--onSecondary: #ffffff;--secondaryContainer: #e2e8f0;--onSecondaryContainer: #0f172a;--tertiary: #0f766e;--onTertiary: #ffffff;--tertiaryContainer: #ccfbf1;--onTertiaryContainer: #042f2e;--error: #b91c1c;--onError: #ffffff;--background: #f8fafc;--onBackground: #0f172a;--surface: #ffffff;--onSurface: #0f172a;--surfaceVariant: #f1f5f9;--onSurfaceVariant: #334155;--outline: #cbd5e1}body{margin:0;background:var(--background);color:var(--onBackground)}.container{max-width:980px;margin:0 auto;padding:24px 16px}.card{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid color-mix(in srgb,var(--outline) 65%,transparent);border-radius:var(--radius);padding:16px}.loginPage{min-height:calc(100svh - 56px);display:flex;align-items:center;justify-content:center}.loginCard{width:min(560px,100%)}.loginLogoWrap{display:flex;justify-content:center;margin-top:2px;margin-bottom:10px}.loginLogo{width:92px;height:92px;filter:drop-shadow(0 10px 18px rgba(0,0,0,.25))}.loginInput{display:block;text-align:center!important}.loginInput::placeholder{text-align:center!important}.loginField{width:100%;display:flex;justify-content:center}.loginFieldBlock{width:100%;max-width:320px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spacer{flex:1}input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--outline) 75%,transparent);background:color-mix(in srgb,var(--surfaceVariant) 92%,transparent);color:var(--onSurface);outline:none;font-size:16px}label{display:block;font-size:12px;opacity:.85;margin-bottom:6px}button{padding:10px 14px;border-radius:12px;border:1px solid color-mix(in srgb,var(--outline) 75%,transparent);background:var(--primary);color:var(--onPrimary);cursor:pointer;min-height:44px}button.secondary{background:color-mix(in srgb,var(--surfaceVariant) 92%,transparent);color:var(--onSurface)}button:disabled{opacity:.6;cursor:not-allowed}.error{color:var(--error)}.ok{color:color-mix(in srgb,var(--tertiary) 80%,white)}.list{display:grid;gap:10px;margin-top:12px}.item{padding:12px;border-radius:16px;background:color-mix(in srgb,var(--surfaceVariant) 85%,transparent);border:1px solid color-mix(in srgb,var(--outline) 55%,transparent)}.itemTitle{font-weight:600}.muted{color:var(--onSurfaceVariant)}.photo{margin-top:10px;width:100%;max-width:420px;border-radius:12px;border:1px solid color-mix(in srgb,var(--outline) 55%,transparent)}.topbar{position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color-mix(in srgb,var(--background) 80%,transparent);border-bottom:1px solid color-mix(in srgb,var(--outline) 45%,transparent)}.topbarInner{max-width:980px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.topTitle{font-size:24px;font-weight:700;letter-spacing:.2px}.topAction{background:transparent;border:none;padding:6px 10px;min-height:unset;color:var(--primary);font-weight:600}.topActionDanger{color:var(--error)}.statsHeader{margin-top:14px;margin-bottom:14px;display:flex;align-items:flex-start;gap:12px}.statsHeaderLeft{flex:1;min-width:0}.statsHeaderLine{color:var(--onSurfaceVariant);font-size:14px;line-height:1.25;margin-bottom:6px}.statsHeaderRight{display:flex;align-items:center;gap:10px}.textButton{background:transparent;border:none;padding:6px 0;min-height:unset;color:var(--primary);font-weight:600}.datePickerWrap{position:relative;display:inline-flex;align-items:center}.datePickerOverlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.sectionDate{margin:14px 0 10px;color:var(--onSurfaceVariant);font-weight:700;font-size:16px}.footer{margin:22px 0 10px;padding:14px 16px;border-radius:18px;border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surfaceVariant) 75%,transparent);text-align:center}.footerTitle{font-weight:700;font-size:13px;color:var(--onSurfaceVariant);line-height:1.25}.footerSub{margin-top:6px;font-size:12px;color:var(--onSurfaceVariant);opacity:.9}.recordCard{border-radius:var(--cardRadius);background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);box-shadow:0 12px 28px #00000038;padding:16px}.recordGrid{display:grid;grid-template-columns:1fr auto 86px;gap:12px;align-items:center}.recordName{font-weight:800;font-size:20px;line-height:1.15;margin-bottom:8px}.recordJob{color:var(--onSurfaceVariant);font-size:14px;margin-bottom:12px}.chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:14px;font-weight:700;font-size:14px;border:none}.chipExit{background:color-mix(in srgb,var(--primary) 28%,transparent);color:var(--primary)}.chipEnter{background:color-mix(in srgb,var(--tertiary) 28%,transparent);color:var(--tertiary)}.chipLate{background:color-mix(in srgb,var(--error) 22%,transparent);color:var(--error)}.times{text-align:right;min-width:110px}.timeLabel{color:var(--onSurfaceVariant);font-size:13px;margin-bottom:2px}.timeValue{color:var(--tertiary);font-weight:800;font-size:20px;margin-bottom:10px}.timeValueExit{color:color-mix(in srgb,var(--primary) 80%,white)}.thumb{width:86px;height:96px;border-radius:14px;overflow:hidden;border:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surfaceVariant) 92%,transparent)}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:12px;border:1px solid color-mix(in srgb,var(--outline) 55%,transparent);background:color-mix(in srgb,var(--surfaceVariant) 85%,transparent);color:var(--onSurfaceVariant)}.pillStrong{border:none;background:color-mix(in srgb,var(--primary) 18%,transparent);color:var(--primary);font-weight:600}.pillError{border:none;background:color-mix(in srgb,var(--error) 16%,transparent);color:var(--error);font-weight:600}.pillTertiary{border:none;background:color-mix(in srgb,var(--tertiary) 18%,transparent);color:var(--tertiary);font-weight:600}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d1;display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{width:min(980px,100%);max-height:95vh;display:flex;flex-direction:column;gap:12px}.modal img{width:100%;max-height:78vh;object-fit:contain;border-radius:14px;border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow)}.field{flex:1;min-width:0}.stackOnMobile{align-items:flex-start}@media (max-width: 520px){.container{padding:16px 12px}.card{padding:14px;border-radius:16px}.row{gap:10px}.stackOnMobile{flex-direction:column;align-items:stretch}button{min-height:52px}.topbarInner{padding:10px 12px}.topTitle{font-size:22px}.pill{width:100%;justify-content:center}.photo{max-width:100%}.modal{width:100%}.modal .row{flex-direction:column;align-items:stretch}.modal a{width:100%}.modal a>button{width:100%}.recordGrid{grid-template-columns:1fr auto 76px}.thumb{width:76px;height:92px}.footer{margin:18px 0 8px}.loginPage{min-height:calc(100svh - 54px);padding-top:10px;padding-bottom:18px}.loginCard button{width:100%}}
