@import"https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;800&family=Space+Grotesk:wght@400;500;700&display=swap";:root{color-scheme:light;--font-display: "Archivo", "Arial Narrow", sans-serif;--font-body: "Space Grotesk", "Trebuchet MS", sans-serif;--bg: #f4f7ff;--surface: #ffffff;--surface-alt: #eef3ff;--text: #1a2134;--text-soft: #566178;--accent: #4e7dfc;--accent-soft: rgba(78, 125, 252, .12);--border: rgba(26, 33, 52, .12);--radius: 10px;--shadow: 0 10px 30px rgba(26, 33, 52, .08)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--text)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.04em}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%}.hidden{display:none!important}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px}.auth-card,.panel,.sidebar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.auth-card{width:min(560px,100%);padding:32px;display:grid;gap:18px}.eyebrow,.section-kicker{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:var(--text-soft)}.support-copy,.topbar p,.panel p,.invoice-list__card span,.invoice-sheet p,.invoice-sheet div{color:var(--text-soft)}label{display:grid;gap:8px;font-size:.95rem}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:#fff;color:var(--text)}textarea{resize:vertical}.auth-toggle,.action-row,.sidebar-nav,.sidebar-actions,.file-row,.section-row,.inline-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.auth-toggle button,.sidebar-nav button,.sidebar-actions button,.secondary-button,.text-button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:10px 14px;transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.auth-toggle button:hover,.sidebar-nav button:hover,.sidebar-actions button:hover,.secondary-button:hover,.text-button:hover{border-color:#4e7dfc59;background:#4e7dfc0f;transform:translateY(-1px);box-shadow:0 8px 18px #1a213414}.auth-toggle .active,.sidebar-nav .active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.primary-button{border:0;background:var(--accent);color:#fff;border-radius:8px;padding:12px 16px;transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease}.primary-button:hover{background:#3f6ef0;transform:translateY(-1px);box-shadow:0 10px 22px #4e7dfc3d}.primary-button:focus-visible,.auth-toggle button:focus-visible,.sidebar-nav button:focus-visible,.sidebar-actions button:focus-visible,.secondary-button:focus-visible,.text-button:focus-visible{outline:none;box-shadow:0 0 0 3px #4e7dfc2e}button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.65;transform:none;box-shadow:none}button:disabled:hover,.primary-button:disabled:hover,.secondary-button:disabled:hover{transform:none;box-shadow:none}.status-banner{border-radius:8px;padding:12px 14px}.status-banner--error{background:#fff0f1;color:#a3192d;border:1px solid rgba(163,25,45,.16)}.shift-inline-banner{display:flex;gap:10px;flex-wrap:wrap;align-items:center;background:#ffbc4224;border:1px solid rgba(255,188,66,.28);color:#7f5200}.app-shell{display:grid;grid-template-columns:minmax(340px,380px) minmax(0,1fr);min-height:100vh}.sidebar{margin:20px;padding:28px;display:grid;align-content:start;gap:24px;height:calc(100vh - 40px);position:sticky;top:20px;overflow:hidden}.sidebar h2{margin:0;font-size:clamp(1.2rem,1.6vw,1.8rem);line-height:1.15;overflow-wrap:anywhere}.main-shell{padding:20px 20px 32px 0;display:grid;gap:20px}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:start}.topbar h1,.panel h3,.auth-card h1{margin:0}.dashboard-grid,.workspace-grid{display:grid;gap:20px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-grid{grid-template-columns:minmax(360px,1.1fr) minmax(320px,.9fr);align-items:stretch}.panel{padding:22px;display:grid;gap:18px}.workspace-grid>.panel:not(.panel--full):not(.panel--form){align-self:stretch}.panel--full,.panel--form{grid-column:1 / -1}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.form-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.full-width{grid-column:1 / -1}.section-block{display:grid;gap:14px;padding-top:8px;border-top:1px solid var(--border)}.item-card{border:1px solid var(--border);border-radius:8px;padding:16px;display:grid;gap:12px;background:var(--surface-alt)}.text-button{justify-self:start}.summary-strip{display:flex;gap:20px;flex-wrap:wrap;font-weight:700}.invoice-list{display:grid;gap:12px}.saved-clients-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(340px,1.2fr);gap:18px}.saved-client-list,.saved-client-form{display:grid;gap:12px}.saved-client-card{border:1px solid var(--border);border-radius:8px;background:var(--surface-alt);padding:14px;display:grid;gap:14px}.saved-client-card__main{border:0;background:transparent;padding:0;text-align:left;display:grid;gap:4px;color:var(--text)}.saved-client-card__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.saved-client-card__actions .secondary-button,.saved-client-card__actions .text-button{padding:8px 12px;min-height:40px;font-size:.95rem}.saved-client-card__actions .secondary-button{min-width:124px}.saved-client-card__actions .text-button{min-width:88px}.sidebar-nav{gap:14px}.sidebar-nav button{padding:13px 18px}.sidebar-actions{margin-top:8px;padding-top:18px;border-top:1px solid var(--border);gap:14px}.sidebar-action{min-width:128px;padding:12px 16px}.sidebar-action--new{border-color:var(--accent);background:var(--accent);color:#fff}.sidebar-action--new:hover{background:#3f6ef0;border-color:#3f6ef0}.sidebar-action--logout{border-color:#a3192d59;color:#a3192d;background:#fff}.sidebar-action--logout:hover{background:#fff0f1}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.stat-row>div{display:grid;gap:8px;min-width:0}.stat-row strong{font-size:1.9rem;line-height:1}.stat-row span{line-height:1.35}.stat-row--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.invoice-list__card{display:flex;justify-content:space-between;gap:24px;text-align:left;padding:16px;border-radius:8px;border:1px solid var(--border);background:var(--surface-alt)}.invoice-list__card>div{display:grid;gap:8px;min-width:0}.invoice-list__card>div:last-child{justify-items:end}.file-input{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--border);border-radius:8px;padding:12px 14px;background:var(--surface-alt);color:var(--text);cursor:pointer;transition:border-color .18s ease,background-color .18s ease,transform .18s ease,box-shadow .18s ease}.file-input:hover{border-color:var(--accent);background:#4e7dfc14;box-shadow:0 8px 20px #4e7dfc1f;transform:translateY(-1px)}.file-input:focus-within{border-color:var(--accent);background:#4e7dfc14;box-shadow:0 0 0 3px #4e7dfc29}.file-input input{display:none}.shift-list{display:grid;gap:12px}.shift-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;border:1px solid var(--border);border-radius:8px;padding:16px;background:var(--surface-alt)}.shift-card--selected{border-color:#4e7dfc80;box-shadow:0 10px 22px #4e7dfc1f}.shift-card__select input{width:18px;height:18px;margin-top:4px}.shift-card__body,.shift-card__meta{display:grid;gap:8px;min-width:0}.shift-card__meta{grid-template-columns:repeat(3,minmax(0,1fr));color:var(--text-soft);font-size:.94rem}.shift-break-list{display:grid;gap:6px;color:var(--text-soft);font-size:.9rem}.shift-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:700;text-transform:capitalize;border:1px solid var(--border);background:#f5f7fb;color:var(--text-soft)}.shift-status-pill--clocked-in{background:#4e7dfc1f;color:var(--accent);border-color:#4e7dfc47}.shift-status-pill--on-break{background:#ffbc422e;color:#9a6300;border-color:#ffbc4252}.shift-status-pill--completed{background:#25b46d1f;color:#0f7a43;border-color:#25b46d47}.invoice-sheet{background:var(--surface);border:0;border-radius:0;box-shadow:none;padding:34px 38px;display:grid;gap:20px;font-size:.92rem;line-height:1.32;align-content:start}.invoice-sheet__hero,.invoice-sheet__meta,.invoice-sheet__payments,.invoice-sheet__totals{display:grid;grid-template-columns:1fr 1fr;gap:18px}.invoice-sheet__hero{align-items:center;break-inside:avoid;page-break-inside:avoid}.invoice-sheet__line{border-top:1px solid var(--text);height:1px}.invoice-sheet__title-group{display:grid;justify-items:end;gap:8px;break-inside:avoid;page-break-inside:avoid}.invoice-sheet__title-group h2{margin:0;font-size:clamp(2rem,3.3vw,3.6rem);letter-spacing:.18em;font-weight:300;line-height:.95}.invoice-sheet__logo{display:block;max-width:min(240px,100%);max-height:56px;object-fit:contain;object-position:right center}.invoice-sheet__numbers,.invoice-sheet__summary{display:grid;gap:8px;justify-items:end}.invoice-sheet__numbers div,.invoice-sheet__summary div{display:flex;gap:10px}.invoice-sheet p,.invoice-sheet div,.invoice-sheet th,.invoice-sheet td,.invoice-sheet strong,.invoice-sheet span{font-size:inherit}.invoice-sheet p{margin:0}.invoice-sheet__table{width:100%;border-collapse:collapse;break-inside:auto}.invoice-sheet__table th,.invoice-sheet__table td{padding:10px 0;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.invoice-sheet__table thead,.invoice-sheet__table tr{break-inside:avoid;page-break-inside:avoid}.invoice-sheet__table th{font-size:.94rem}.invoice-sheet__table th:last-child,.invoice-sheet__table td:last-child,.invoice-sheet__table th:nth-child(2),.invoice-sheet__table td:nth-child(2),.invoice-sheet__table th:nth-child(3),.invoice-sheet__table td:nth-child(3),.invoice-sheet__table th:nth-child(4),.invoice-sheet__table td:nth-child(4){text-align:right}.invoice-sheet__summary-total{padding-top:4px;font-size:1rem}.invoice-sheet__signature{justify-self:end;max-width:220px;break-inside:avoid;page-break-inside:avoid}.invoice-sheet__signature img{display:block;max-width:100%;max-height:84px;object-fit:contain}@media (max-width: 1100px){.app-shell,.workspace-grid,.dashboard-grid,.saved-clients-grid,.invoice-sheet__hero,.invoice-sheet__meta,.invoice-sheet__payments,.invoice-sheet__totals,.form-grid{grid-template-columns:1fr}.sidebar{position:static;height:auto;overflow:visible}.main-shell{padding:0 20px 20px}.stat-row,.shift-card__meta{grid-template-columns:1fr}}@media print{body{background:#fff}.sidebar,.topbar,.panel--form,.dashboard-grid,.workspace-grid>.panel,.workspace-grid>.panel--form{display:none!important}.app-shell,.main-shell,.workspace-grid{display:block;padding:0;margin:0}.invoice-sheet{box-shadow:none;border:0;margin:0;min-height:auto;width:100%;padding:28px 32px}}.workspace-shell{min-height:100vh;padding:20px;display:grid;gap:20px}.workspace-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.workspace-brand,.workspace-header__stack{display:grid;gap:12px}.workspace-brand h1,.dashboard-hero-panel h2{margin:0;font-size:clamp(2rem,4vw,3.6rem);line-height:.95}.workspace-brand p:last-child,.workspace-user{color:var(--text-soft)}.workspace-header__stack{justify-items:end}.workspace-nav,.workspace-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.workspace-nav button,.workspace-actions button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:10px 14px;transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.workspace-nav button:hover,.workspace-actions button:hover{border-color:#4e7dfc59;background:#4e7dfc0f;transform:translateY(-1px);box-shadow:0 8px 18px #1a213414}.workspace-nav .active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.workspace-actions .text-button{background:transparent;box-shadow:none}.dashboard-home{display:grid;gap:20px}.dashboard-hero-panel{display:grid;gap:16px}.dashboard-app-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-app-card{text-align:left;border:1px solid var(--border);border-radius:24px;padding:24px;background:radial-gradient(circle at top right,rgba(255,255,255,.6),transparent 32%),linear-gradient(180deg,#fffffff5,#eef3fff2);box-shadow:var(--shadow);display:grid;gap:12px}.dashboard-app-card h3,.dashboard-app-card p,.dashboard-app-card strong{margin:0}.dashboard-app-card--clock{background:radial-gradient(circle at top right,rgba(255,255,255,.22),transparent 32%),linear-gradient(180deg,#49b847,#2e9534);color:#fff}.dashboard-app-card--clock .section-kicker,.dashboard-app-card--clock p{color:#ffffffd6}.dashboard-app-card--profile{background:radial-gradient(circle at top right,rgba(255,255,255,.45),transparent 32%),linear-gradient(180deg,#fff6d8,#ffeec1)}.timekeeper-page{position:relative;min-height:calc(100vh - 180px);padding:12px 0 0;display:grid;place-items:center}.timekeeper-page--off{--tk-bg: #42b83f;--tk-accent: #24933d}.timekeeper-page--on{--tk-bg: #ff4b54;--tk-accent: #f1434d}.timekeeper-page--break{--tk-bg: #f26d3c;--tk-accent: #db5b30}.time-card,.settings-drawer,.detail-panel,.settings-section{color:#fff}.time-card{width:min(100%,460px);border-radius:34px;padding:2rem 1.5rem 1.6rem;border:1px solid rgba(255,255,255,.22);background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.12),transparent 28%),linear-gradient(180deg,#ffffff14,#ffffff0a),var(--tk-bg);box-shadow:0 32px 70px #00000029;display:grid;gap:1rem}.micro-label{font-size:.76rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#ffffffd1}.card-top,.settings-header,.panel-heading-row{display:flex;gap:.85rem;align-items:center;justify-content:space-between}.icon-btn{width:3rem;height:3rem;padding:.7rem;border:0;border-radius:999px;background:#fffffff5;color:var(--tk-accent)}.icon-btn svg{width:100%;height:100%;fill:currentColor}.status-pill{justify-self:center;padding:.5rem .9rem;border:2px solid rgba(255,255,255,.6);border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#fffffff5}.clock-hero{justify-items:center;text-align:center}.main-clock{display:grid;gap:.7rem}.clock-illustration{position:relative;width:15.5rem;aspect-ratio:1}.clock-illustration:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:.8rem solid rgba(255,255,255,.96);border-bottom-color:transparent}.tick{position:absolute;left:50%;top:50%;width:.26rem;height:1rem;margin-left:-.13rem;margin-top:-6.55rem;border-radius:999px;background:#fffffff5;transform:rotate(var(--rotation));transform-origin:center 6.55rem}.tick:nth-child(1),.tick:nth-child(4),.tick:nth-child(7),.tick:nth-child(10){height:1.45rem}.clock-hand{position:absolute;left:50%;bottom:50%;width:.22rem;border-radius:999px;background:#fffffffa;transform-origin:center bottom;margin-left:-.11rem}.hour-hand{height:4rem}.minute-hand{height:5.4rem}.second-hand{height:5.9rem;width:.12rem;margin-left:-.06rem;opacity:.85}.clock-readout{font-family:var(--font-display);font-size:clamp(3rem,10vw,4rem);line-height:.9;letter-spacing:-.06em}.timekeeper-headline{font-size:1.9rem}.status-subtext,.entry-meta,.muted-text,.tiny-note{color:#ffffffbf}.metric-row{display:flex;gap:.85rem;justify-content:center;flex-wrap:wrap}.metric-chip{min-width:8.7rem;padding:.8rem 1rem;border-radius:20px;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);text-align:center}.metric-chip span{display:block;margin-bottom:.2rem;font-size:.82rem;color:#ffffffa6;text-transform:uppercase;letter-spacing:.1em}.metric-chip strong{font-family:var(--font-display);font-size:1.5rem}.action-stack,.primary-actions,.secondary-actions,.stacked-actions,.selection-list,.recent-list,.button-pair{display:grid;gap:.85rem}.primary-actions,.button-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.secondary-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.primary-btn,.secondary-btn,.ghost-btn{border-radius:20px;padding:.95rem 1rem;font-weight:800;border:0}.primary-btn{background:#fffffff5;color:var(--tk-accent)}.secondary-btn{background:transparent;border:3px solid rgba(255,255,255,.92);color:#fff}.ghost-btn{background:#ffffff1f;color:#fff}.feedback{min-height:1.3rem;color:#fff1bd}.center-feedback{text-align:center}.detail-panel,.settings-section,.selection-card,.timeline-card,.empty-state{padding:1rem;border-radius:24px;background:#ffffff1a;border:1px solid rgba(255,255,255,.18)}.entry-topline,.checkbox-row{display:flex;gap:.7rem;justify-content:space-between;align-items:center}.settings-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000052;z-index:20}.settings-drawer{position:fixed;top:20px;right:20px;bottom:20px;width:min(420px,calc(100vw - 32px));overflow:auto;padding:1.25rem;border-radius:28px;background:radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 30%),linear-gradient(180deg,#171d2ef5,#1d243af5);box-shadow:0 30px 80px #00000047;z-index:21;display:grid;align-content:start;gap:1rem}.full-width{width:100%}.panel-label{color:#fff}@media (max-width: 1100px){.workspace-header{flex-direction:column}.workspace-header__stack{justify-items:start;width:100%}.workspace-nav,.workspace-actions{justify-content:flex-start}.dashboard-app-grid{grid-template-columns:1fr}}@media (max-width: 720px){.workspace-shell{padding:16px}.primary-actions,.secondary-actions,.button-pair{grid-template-columns:1fr}.time-card{padding:1.5rem 1.1rem 1.2rem}.clock-illustration{width:13rem}.tick{margin-top:-5.45rem;transform-origin:center 5.45rem}}
