:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 8px;--radius: 12px;--radius-xl: 16px;--radius-2xl: 20px;--shadow-1: 0 1px 2px rgba(15, 23, 42, .06);--shadow-2: 0 4px 10px rgba(15, 23, 42, .08);--z-appbar: 50;--z-dropdown: 60}:root{color-scheme:light;--bg-body: #f8fafc;--bg-surface: #ffffff;--bg-sidebar: #f1f5f9;--bg-elevated: #f8fafc;--bg-hover: #e2e8f0;--border-muted: #e2e8f0;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--accent: #10b981;--accent-dark: #047857}html.light{background-color:var(--bg-body)}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;background:var(--bg-body);color:var(--text-primary);line-height:1.5}#root{min-height:100vh;background:var(--bg-body)}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,[role=menuitem]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skip-link{position:absolute;top:-999px;left:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--accent);color:#fff;border-radius:var(--radius);z-index:var(--z-appbar)}.skip-link:focus{top:var(--space-4)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:var(--bg-body)}.shell.no-sidebar{grid-template-columns:1fr}.sidebar{display:none;background:var(--bg-sidebar);border-right:1px solid var(--border-muted);padding:var(--space-6) var(--space-4);color:var(--text-primary);position:relative;overflow:visible}.brand-link{display:inline-flex;align-items:center;gap:var(--space-3);font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--text-primary)}.brand-link--sidebar{display:block;width:calc(100% + (var(--space-4) * 2));margin:calc(-1 * var(--space-6)) calc(-1 * var(--space-4)) var(--space-6);padding:0}.brand-logo{height:56px;width:auto;display:block}.brand-logo--full{width:100%;height:auto}.brand-word{font-size:1.05rem}.sidebar .brand-link{margin-bottom:var(--space-6)}.navlist{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.navlink{display:block;padding:var(--space-2) var(--space-3);border-radius:var(--radius);color:var(--text-secondary);text-decoration:none;transition:background .15s ease,color .15s ease}.navlink:hover{background:var(--bg-hover);color:var(--text-primary)}.navlink.active{background:#10b98124;color:var(--accent);font-weight:600}.grow{flex:1 1 auto}.sidebar-account{position:relative}.main{display:flex;flex-direction:column;min-width:0;background:var(--bg-body)}.appbar{position:sticky;top:0;z-index:var(--z-appbar);height:64px;background:var(--bg-surface);border-bottom:1px solid var(--border-muted);box-shadow:var(--shadow-1)}.appbar__inner{height:100%;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-4);margin:0 auto;max-width:1200px;padding:0 var(--space-4)}.appbar__actions{display:flex;align-items:center;gap:var(--space-2)}.timer-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-muted);background:var(--bg-elevated);font-size:.9rem}.timer-chip__dot{color:#ef4444;font-weight:700}.timer-chip__time{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.timer-chip__stop{background:#ef4444;color:#fff;border:none;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease}.timer-chip__stop:hover:not(:disabled){background:#dc2626;transform:translateY(-1px)}.timer-chip__stop:disabled{opacity:.65;cursor:not-allowed}.icon-button{height:36px;width:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid transparent;background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease}.icon-button:hover{background:var(--bg-hover)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;justify-content:center;align-items:center;z-index:calc(var(--z-appbar) + 10);padding:var(--space-4)}.modal-card{width:min(420px,100%);background:var(--bg-surface);border:1px solid var(--border-muted);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-2)}.profile-card{display:grid;gap:var(--space-6)}.profile-header{display:flex;align-items:center;gap:var(--space-4)}.profile-avatar{width:88px;height:88px;border-radius:50%;object-fit:cover}.profile-avatar--initials{display:flex;align-items:center;justify-content:center;background:var(--bg-hover);border:2px solid var(--border-muted);color:var(--text-primary);font-weight:700;font-size:1.75rem}.profile-email{margin-top:4px;color:var(--text-secondary);font-size:.95rem}.profile-name{font-size:1.5rem;font-weight:700}.profile-role{font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.link-button{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;font-weight:600}.link-button:hover{text-decoration:underline}.text-danger{background:none;border:none;color:#ef4444;padding:0;cursor:pointer;font-weight:600}.profile-section{border:1px solid var(--border-muted);border-radius:var(--radius-xl);padding:var(--space-5);background:var(--bg-elevated);display:grid;gap:var(--space-4)}.profile-row{display:flex;justify-content:space-between;align-items:center}.profile-label{font-weight:600;margin-bottom:var(--space-1)}.profile-button-group{display:grid;gap:var(--space-2)}.profile-setting{display:grid;gap:var(--space-1)}.profile-footer{text-align:center;font-size:.85rem;color:var(--text-muted)}.dashboard-grid{display:grid;gap:var(--space-4)}.dashboard-sections{display:grid;gap:var(--space-6)}.dashboard-section{background:var(--bg-sidebar);border-radius:var(--radius-xl);padding:var(--space-6);display:grid;gap:var(--space-4)}.dashboard-section__header{font-size:1.25rem;font-weight:700}.dashboard-cards{display:grid;gap:var(--space-4)}@media (min-width: 768px){.dashboard-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.dashboard-card{background:var(--bg-surface);border:1px solid var(--border-muted);border-radius:var(--radius-xl);padding:var(--space-4);display:grid;gap:var(--space-3)}.dashboard-card__title{font-weight:600}.dashboard-gauge{text-align:center}.dashboard-gauge__value{font-size:2.5rem;font-weight:700;line-height:1.1}.dashboard-gauge__label{color:var(--text-muted);font-size:.9rem}.dashboard-breakdown,.dashboard-list{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}.dashboard-breakdown li,.dashboard-list li{display:flex;justify-content:space-between;align-items:center;font-size:.95rem;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.dashboard-breakdown li span,.dashboard-list li span{word-break:break-word}.dashboard-list__empty{color:var(--text-muted);font-style:italic}.appbar__search-toggle{display:none}.appbar__search{position:relative;display:flex;align-items:center;gap:var(--space-2)}.appbar__search-input{width:220px;height:36px;border-radius:var(--radius);border:1px solid var(--border-muted);background:var(--bg-elevated);padding:0 var(--space-3);color:var(--text-primary)}.appbar__search-input::placeholder{color:var(--text-muted)}.avatar-button{height:36px;width:36px;border-radius:999px;border:1px solid var(--border-muted);background:var(--bg-elevated);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:600;text-transform:uppercase}.avatar-button:hover{background:var(--bg-hover)}.appbar__dropdown{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:200px;background:var(--bg-surface);border:1px solid var(--border-muted);border-radius:var(--radius);box-shadow:var(--shadow-2);padding:var(--space-2);z-index:var(--z-dropdown)}.appbar__menu-item{display:block;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);color:var(--text-secondary);cursor:pointer}.appbar__menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.appbar__menu-divider{margin:var(--space-2) 0;height:1px;background:var(--border-muted)}.appbar__overflow{display:none}.page{padding:var(--space-6) 0}.page__container,.content,.container{max-width:1280px;margin:0 auto;padding:0 var(--space-4)}.page__container,.dashboard-grid{display:grid;gap:var(--space-6)}.page-header{display:flex;flex-direction:column;gap:var(--space-3)}.page-header__title{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.page-header__subtitle{margin:0;color:var(--text-muted);font-size:.95rem}.page-header__meta{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.page-header__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.card{background:var(--bg-surface);border:1px solid var(--border-muted);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-1)}.card+.card{margin-top:var(--space-6)}.filter-form{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-top:var(--space-4)}.filter-form__field{display:flex;flex-direction:column;gap:var(--space-1);min-width:220px;flex:1 1 220px}.filter-form__actions{display:flex;gap:var(--space-2);align-self:flex-end}.button{background:var(--accent);color:var(--accent-dark);border:none;border-radius:var(--radius);padding:var(--space-2) var(--space-4);cursor:pointer;font-weight:600;transition:transform .15s ease,box-shadow .15s ease}.button:hover{transform:translateY(-1px);box-shadow:0 8px 14px #10b9813d}.button.secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-muted)}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid var(--border-muted);padding:var(--space-2) var(--space-3);text-align:left;color:var(--text-secondary);word-break:break-word}.table th{color:var(--text-primary);font-weight:600}.note-cell{max-width:260px;word-break:break-word;white-space:normal}.small{color:var(--text-muted);font-size:.8125rem}.badge{background:var(--bg-hover);color:var(--text-secondary);padding:var(--space-1) var(--space-2);border-radius:999px;font-size:.8125rem}.progress{height:10px;background:var(--bg-hover);border-radius:999px;overflow:hidden}.progress>div{height:100%;background:var(--accent);width:0%}.dropdown{position:relative}.dropdown-menu{position:absolute;z-index:var(--z-dropdown);right:0;top:calc(100% + var(--space-2));background:var(--bg-surface);border:1px solid var(--border-muted);border-radius:var(--radius);min-width:260px;padding:var(--space-2);display:none;box-shadow:var(--shadow-2)}.dropdown.open .dropdown-menu{display:block}.sidebar .dropdown-menu{top:auto;bottom:44px}.form-control{background:var(--bg-surface);border:1px solid var(--border-muted);color:var(--text-primary);border-radius:var(--radius);padding:var(--space-2) var(--space-3)}.form-control::placeholder{color:var(--text-muted)}@media (min-width: 768px){.sidebar{display:flex;flex-direction:column}.page-header{flex-direction:row;justify-content:space-between;align-items:center}}@media (min-width: 1024px){.appbar__center{display:flex}.appbar__title--mobile{display:none}}@media (max-width: 1023px){.appbar__search{position:relative}.appbar__search-input{display:none}.appbar__search.appbar__search-open .appbar__search-input{display:block;position:absolute;top:calc(100% + var(--space-2));right:0;width:min(260px,90vw);background:var(--bg-surface);box-shadow:var(--shadow-2)}.appbar__actions{gap:var(--space-1)}.appbar__overflow,.appbar__search-toggle{display:inline-flex}.dashboard-grid{gap:var(--space-4)}}@media (max-width: 640px){.page__container,.content,.container{padding:0 var(--space-3)}.brand-word{font-size:1rem}}
