:root{--bg:#f3f4f8;--bg-card:#fff;--bg-hover:#1c1d240d;--bg-sidebar:#ffffffc7;--glass:#ffffffb8;--glass-border:#ffffffd1;--glass-popup:#f8f9fceb;--glass-modal:#f8f9fcf7;--blur:18px;--blur-popup:120px;--text:#1c1d24;--text-secondary:#7a7e8c;--text-muted:#a4a8b5;--accent:#1c1d24;--accent-hover:#2e3038;--accent-light:#1c1d2414;--on-accent:#fff;--lime:#3d9a6a;--lime-bg:#3d9a6a1f;--green:#3d9a6a;--green-bg:#3d9a6a1f;--red:#e05555;--orange:#e8a04a;--border:#1c1d2412;--radius:24px;--radius-sm:16px;--radius-xs:12px;--radius-pill:999px;--ease-out:cubic-bezier(.22, 1, .36, 1);--shadow:0 10px 36px #1c1d240f, 0 1px 2px #1c1d240a;--shadow-hover:0 16px 44px #1c1d2414, 0 2px 6px #1c1d240a;--shadow-btn:0 8px 20px #1c1d2429;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", Inter, "Helvetica Neue", sans-serif;--sidebar-margin:16px;--sidebar-pad-top:28px;--logo-size:40px;--logo-gap:28px;--nav-bg:linear-gradient(165deg, #ffffffc7 0%, #ecedf2b8 100%);--nav-active:linear-gradient(135deg, #c9cbd2, #f2f3f6);--nav-hover:linear-gradient(135deg, #c9cbd266, #f2f3f64d)}[data-theme=dark]{--bg:#12131a;--bg-card:#1c1e28;--bg-hover:#ffffff0f;--bg-sidebar:#1e202ac7;--glass:#1e202ac7;--glass-border:#ffffff1a;--glass-popup:#181a22eb;--glass-modal:#181a22f7;--text:#ececf2;--text-secondary:#8b8fa0;--text-muted:#5c6170;--accent:#ececf2;--accent-hover:#c8cad4;--accent-light:#ffffff14;--on-accent:#12131a;--lime:#4ade80;--lime-bg:#4ade801f;--green:#4ade80;--green-bg:#4ade801f;--border:#ffffff14;--shadow:0 10px 36px #00000059, 0 1px 2px #0003;--shadow-hover:0 16px 44px #0000006b, 0 2px 6px #00000040;--shadow-btn:0 8px 20px #0006;--nav-bg:linear-gradient(165deg, #30323cc7 0%, #20222c8c 100%);--nav-active:linear-gradient(135deg, #3a3c48, #2a2c36);--nav-hover:linear-gradient(135deg, #3a3c4873, #2a2c364d)}*{box-sizing:border-box;margin:0;padding:0}@media (display-mode:standalone){html,body{overscroll-behavior-y:none}}body{font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.011em;background:radial-gradient(1100px 520px at 92% -8%, #ffe8cc61, transparent 58%), radial-gradient(900px 480px at -8% 108%, #d6e2ff57, transparent 52%), var(--bg);color:var(--text);min-height:100dvh}[data-theme=dark] body{background:radial-gradient(1100px 520px at 92% -8%, #5a4e7847, transparent 58%), radial-gradient(900px 480px at -8% 108%, #28345a52, transparent 52%), var(--bg)}#root{min-width:450px;max-width:1024px;min-height:100dvh;margin:0 auto;display:flex}#root:has(.auth-page){width:100%;min-width:0;max-width:none}.sidebar{width:240px;padding:var(--sidebar-pad-top) 16px;margin:var(--sidebar-margin);background:0 0;flex-direction:column;flex-shrink:0;display:flex}.sidebar-logo{width:72%;margin-bottom:var(--logo-gap);color:var(--accent);justify-content:center;align-self:center;align-items:center;padding:0;display:flex}.sidebar-logo>span,.mobile-logo>span,.auth-visual-logo>span,.auth-mark>span{align-items:center;line-height:0;display:flex}.sidebar-logo>span{width:100%}.sidebar-logo svg{width:100%;height:auto;display:block}.sidebar-create-btn{border-radius:var(--radius-pill);background:var(--accent);width:100%;color:var(--on-accent);font-family:var(--font);cursor:pointer;transition:transform .22s var(--ease-out), background .22s ease-out, box-shadow .22s ease-out;box-shadow:var(--shadow-btn);animation:animFadeUpSoft .26s var(--ease-out) both;border:none;align-items:center;gap:10px;margin-bottom:24px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.sidebar-create-btn:hover{background:var(--accent-hover);box-shadow:var(--shadow-btn);transform:translateY(-1px)}.sidebar-nav{background:var(--nav-bg);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(var(--blur));flex-direction:column;gap:2px;padding:8px;display:flex}.sidebar-card{background:var(--bg-sidebar);border-radius:var(--radius);flex-direction:column;gap:4px;min-height:80px;margin-top:15px;padding:16px 20px;display:flex}.sidebar-card:hover{transform:translateY(-1px)}.sidebar-offline-hint{color:var(--text-secondary);background:var(--bg-hover);border-radius:var(--radius-xs);margin-top:12px;padding:8px 12px;font-size:12px;line-height:1.35}.sidebar-link{border-radius:var(--radius-xs);color:var(--text-secondary);transition:transform .18s var(--ease-out), background .2s ease-out, color .2s ease-out;align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{background:var(--nav-hover);color:var(--text);transform:translate(2px)}.sidebar-link.active{background:var(--nav-active);color:var(--text);font-weight:600}.sidebar-link svg{opacity:.7;flex-shrink:0;width:20px;height:20px}.sidebar-link.active svg{opacity:1}.main-content{padding:calc(var(--sidebar-margin) + var(--sidebar-pad-top)) 40px 32px;-ms-overflow-style:none;scrollbar-width:none;flex:1;max-height:100dvh;overflow-y:auto}.main-content::-webkit-scrollbar{display:none}:is(.main-content:has(.clients-page),.main-content:has(.projects-page),.main-content:has(.statistics-page),.main-content:has(.archive-page)){flex-direction:column;display:flex;overflow:hidden}.page-title{font-size:30px;font-weight:600;line-height:var(--logo-size);margin-bottom:var(--logo-gap);letter-spacing:-.03em;color:var(--text)}.card{background:var(--glass);border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--blur));padding:24px}.btn{border-radius:var(--radius-pill);font-family:var(--font);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s ease-out;display:inline-flex}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-btn)}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-btn);transform:translateY(-1px)}.btn-soft{background:var(--nav-active);color:var(--text);box-shadow:none}.btn-soft:hover{background:var(--nav-hover);box-shadow:none;transform:none}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{opacity:.85;transform:translateY(-1px)}.btn-outline{background:var(--glass);color:var(--text-secondary);border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-outline:hover{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow)}.btn-outline:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}[data-theme=dark] .btn-outline{color:var(--text);background:#ffffff12;border-color:#fff3}[data-theme=dark] .btn-outline:hover:not(:disabled){color:var(--text);box-shadow:none;background:#ffffff1f;border-color:#ffffff52}.btn-sm{border-radius:var(--radius-pill);padding:6px 14px;font-size:12px}.btn-sm svg{display:block}.list-item-actions .btn-sm:not(.btn-danger){-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:none;padding:6px;line-height:0}.list-item-actions .btn-sm:not(.btn-danger):hover{box-shadow:none;background:0 0}.list-item-actions .btn-icon-danger{color:var(--red);opacity:.7;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;border:none;padding:6px;line-height:0}.list-item-actions .btn-icon-danger:hover{opacity:1;box-shadow:none;background:0 0;transform:none}input,select,textarea{font-family:var(--font);background:var(--bg);color:var(--text);border-radius:var(--radius-sm);border:1px solid #0000;outline:none;width:100%;padding:10px 14px;font-size:14px;transition:all .2s ease-out}input:hover,select:hover,textarea:hover{background:var(--bg-hover)}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:var(--bg-card);box-shadow:0 0 0 4px var(--accent-light)}select option{background:var(--bg-card);color:var(--text)}input[type=date],input[type=time],input[type=datetime-local]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:42px}[data-theme=dark] input[type=date],[data-theme=dark] input[type=time],[data-theme=dark] input[type=datetime-local]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55}input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55}input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.85);opacity:.75}[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.85);opacity:.75}[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.85);opacity:.75}.form-datetime-row{grid-template-columns:minmax(0,1fr) minmax(100px,120px);align-items:stretch;gap:8px;width:100%;max-width:100%;display:grid}.picker-field{min-width:0;max-width:100%}.picker-field-time{width:auto}.picker-field .native-picker{box-sizing:border-box;width:100%;max-width:100%;min-height:42px}button.custom-select.picker-trigger{text-align:left;cursor:pointer;width:100%;font-family:var(--font);min-width:0}.picker-trigger-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.picker-panel{box-sizing:border-box;max-width:100%;padding:8px}.custom-select-dropdown--viewport{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;left:12px!important;right:12px!important}.picker-calendar-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.picker-calendar-title{color:var(--text);text-align:center;flex:1;font-size:14px;font-weight:600}.picker-nav-btn{background:var(--bg-hover);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;font-size:20px;line-height:1;transition:background .15s,color .15s;display:flex}.picker-nav-btn:hover{background:var(--accent-light);color:var(--text)}.picker-weekdays{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px;display:grid}.picker-weekday{color:var(--text-muted);text-align:center;padding:4px 0;font-size:11px;font-weight:600}.picker-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.picker-day{aspect-ratio:1;color:var(--text);font-family:var(--font);cursor:pointer;background:0 0;border:none;border-radius:10px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.picker-day:hover:not(:disabled){background:var(--bg-hover)}.picker-day.today{box-shadow:inset 0 0 0 1px var(--border)}.picker-day.selected{background:var(--nav-active);color:var(--text);font-weight:600}.picker-day.outside{color:var(--text-muted);opacity:.55}.picker-day.disabled{opacity:.28;cursor:not-allowed}.picker-today-btn{background:var(--bg-hover);width:100%;color:var(--text-secondary);font-family:var(--font);cursor:pointer;border:none;border-radius:10px;margin-top:8px;padding:8px 12px;font-size:13px;font-weight:500;transition:background .15s,color .15s}.picker-today-btn:hover:not(:disabled){background:var(--accent-light);color:var(--text)}.picker-today-btn:disabled{opacity:.35;cursor:not-allowed}.picker-time-head{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:6px;padding:0 4px;display:grid}.picker-time-head span{color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.picker-time-columns{grid-template-columns:1fr 1fr;gap:6px;display:grid}.picker-time-col{background:var(--bg-hover);scrollbar-width:thin;border-radius:12px;max-height:200px;padding:4px;overflow-y:auto}.picker-time-item{width:100%;color:var(--text-secondary);font-family:var(--font);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px 10px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:block}.picker-time-item:hover{color:var(--text);background:#ffffff1f}.picker-time-item.selected{background:var(--nav-active);color:var(--text);font-weight:600}.form-date-range{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-date-range .picker-field{flex:180px;min-width:160px}.custom-select{border:1px solid var(--glass-border);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff2e;align-items:center;gap:8px;padding:10px 14px;font-size:14px;transition:all .2s ease-out;display:flex}[data-theme=dark] .custom-select{background:#ffffff0f}.custom-select:hover{background:var(--bg-hover)}.custom-select span:first-child{color:var(--text);flex:1}.custom-select-arrow{color:var(--text-secondary);font-size:14px;line-height:1}.custom-select-overlay{z-index:400;background:0 0;position:fixed;inset:0}.glass-float,.chart-tooltip{isolation:isolate;-webkit-backdrop-filter:blur(var(--blur-popup)) saturate(1.8);background:0 0;overflow:hidden}.modal{isolation:isolate;background:0 0}.glass-float:before,.modal:before,.chart-tooltip:before{content:"";background:var(--glass-popup);border-radius:inherit;pointer-events:none;z-index:0;position:absolute;inset:0}.modal:before{background:var(--glass-modal)}.glass-float>*,.modal>*,.chart-tooltip>*{z-index:1;position:relative}.custom-select-dropdown{border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:var(--shadow);z-index:401;box-sizing:border-box;animation:animModalIn .18s var(--ease-out) both;padding:6px;position:fixed}.filter-menu{isolation:auto;background:var(--glass-popup);-webkit-backdrop-filter:blur(48px)saturate(160%);overflow:hidden}[data-theme=dark] .filter-menu{background:var(--glass-popup)}.filter-menu:before{content:none;display:none}.custom-select-dropdown-scroll{border-radius:inherit;overflow:hidden auto}.custom-select-option{cursor:pointer;color:var(--text);border-radius:10px;padding:8px 12px;font-size:14px;transition:background .15s}.custom-select-option:hover{background:var(--bg-hover)}.custom-select-option.selected{background:var(--accent-light);font-weight:600}.filter-bar{border-radius:var(--radius-pill);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(40px)saturate(1.6);max-width:100%;box-shadow:var(--shadow);background:#ffffff24;align-items:center;gap:2px;padding:4px;display:flex}[data-theme=dark] .filter-bar{background:#1c1e282e}.filter-bar-item{color:var(--text-secondary);font-family:var(--font);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:background .2s ease-out, color .2s ease-out, transform .18s var(--ease-out);background:0 0;border:none;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;line-height:1;display:inline-flex}.filter-bar-item:hover{color:var(--text);background:var(--bg-hover)}.filter-bar-item.on{background:var(--nav-active);color:var(--text);font-weight:600}.filter-bar-item:active{transform:scale(.96)}.filter-bar-caret{color:var(--text-muted);font-size:12px;line-height:1}.filter-bar-sep{background:var(--border);flex-shrink:0;width:1px;height:16px;margin:0 4px}.filter-bar-dropdown{min-width:0;position:relative}.filter-bar-sort-icon{display:none}.filter-bar-client-label{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.list-header-tools{min-width:0;margin-left:auto}.list-header-lead{flex-wrap:wrap;align-items:center;gap:10px 12px;min-width:0;display:flex}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-row{gap:16px;display:flex}.form-row>*{flex:1}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(16px)saturate(1.3);background:#1c1d2461;justify-content:center;align-items:center;animation:.2s ease-out both animFadeIn;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius);border:1px solid var(--glass-border);width:440px;max-width:90vw;box-shadow:var(--shadow-hover);box-sizing:border-box;animation:animModalIn .32s var(--ease-out) both;padding:32px;position:relative;overflow-x:hidden}.modal input:not([type=checkbox]),.modal select,.modal textarea,.modal .stat-display{background:var(--bg-card);border:1px solid var(--border)}.modal-wide{width:520px}.modal-title{letter-spacing:-.3px;margin-bottom:24px;font-size:18px;font-weight:600}.modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.client-details{isolation:isolate;width:100%;margin-bottom:0;padding:32px 36px 28px;position:relative;overflow:visible}.client-details:after{content:"";border-radius:inherit;background:radial-gradient(ellipse 80% 90% at 8% 10%, var(--item-color) 0%, transparent 62%);opacity:.3;pointer-events:none;z-index:0;position:absolute;inset:0}.client-details>*{z-index:1;position:relative}.client-details-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.client-details-head .modal-title{margin-bottom:0;font-size:32px}.client-details-head .period-pill{background:#ffffff0f;padding:6px 16px;font-size:15px}.client-details-ranges{flex-wrap:wrap;gap:8px;margin-bottom:36px;display:flex}.client-details-range{color:var(--text-secondary);font-family:var(--font);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:none;padding:8px 16px;font-size:15px;font-weight:500;transition:background .2s ease-out,color .2s ease-out}.client-details-range:hover{color:var(--text);background:var(--bg-hover)}.client-details-range.on{background:var(--nav-active);color:var(--text);font-weight:600}.client-details-kicker{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;font-size:12px;font-weight:600}.client-details-hero{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px;display:grid}.client-details-num{letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:44px;font-weight:600}.client-details-meta{border-top:1px solid var(--border);grid-template-columns:1fr 1fr 1fr;gap:24px;padding-top:28px;display:grid}.client-details-sub{letter-spacing:-.2px;font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.client-details-more{color:var(--text-secondary);font-family:var(--font);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-top:20px;padding:0;font-size:14px;font-weight:600;transition:color .15s ease-out;display:inline-flex}.client-details-more:hover{color:var(--text)}.client-details-more svg{transition:transform .2s ease-out}.client-details-more.is-open svg{transform:rotate(180deg)}.client-details-projects{border-top:1px solid var(--border);overscroll-behavior:contain;max-height:min(220px,28vh);animation:animFadeUpSoft .28s var(--ease-out) both;-ms-overflow-style:none;scrollbar-width:none;flex-direction:column;gap:0;margin-top:14px;display:flex;overflow-y:auto}.client-details-projects::-webkit-scrollbar{display:none}.client-details-project{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.client-details-project:last-child{border-bottom:none;padding-bottom:2px}.client-details-project-main{align-items:center;gap:8px;min-width:0;display:flex}.client-details-project-name{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.client-details-project-badge{color:var(--text-secondary);border-radius:var(--radius-pill);background:#ffffff14;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:600}.client-details-project-stats{font-variant-numeric:tabular-nums;color:var(--text);flex-shrink:0;align-items:baseline;gap:16px;font-size:14px;font-weight:600;display:flex}.client-details-project-stats span:first-child{color:var(--text-secondary);text-align:right;min-width:4.5em;font-weight:500}.client-details-projects-empty{color:var(--text-secondary);margin:14px 0 4px;font-size:14px}.timer-section{flex-direction:column;align-items:center;gap:24px;padding:40px 24px;display:flex}.timer-display{font-variant-numeric:tabular-nums;letter-spacing:2px;color:var(--text);font-size:64px;font-weight:500}.timer-display.running{color:var(--accent)}.timer-btn{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:16px;font-weight:700;transition:all .25s ease-out;display:flex}.timer-btn-start{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-btn)}.timer-btn-start:hover{box-shadow:var(--shadow-btn);transform:scale(1.05)}.timer-btn-stop{background:var(--red);color:#fff;box-shadow:0 4px 20px #e55c5c4d}.timer-btn-stop:hover{transform:scale(1.05);box-shadow:0 6px 30px #e55c5c73}.timer-project-select{text-align:center;min-width:280px}.list-header{min-height:var(--logo-size);margin-bottom:var(--logo-gap);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.list-header .page-title{margin-bottom:0}.list-grid{gap:12px;display:grid}.list-item{border-radius:var(--radius-xs);transition:transform .18s var(--ease-out), background .2s ease-out, box-shadow .2s ease-out;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.list-item-left{align-items:center;gap:12px;display:flex}.color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.list-item-name{font-size:14px;font-weight:600}.list-item-sub{color:var(--text-secondary);font-size:12px}.list-item-actions{opacity:0;align-items:center;gap:20px;transition:opacity .2s;display:flex}.list-item:hover .list-item-actions{opacity:1}.card-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.card-item{isolation:isolate;min-width:0;transition:transform .22s var(--ease-out), box-shadow .22s ease-out;animation:animFadeUpSoft .28s var(--ease-out) both;flex-direction:column;gap:12px;padding:16px;display:flex;position:relative}.card-item:before{content:"";border-radius:inherit;background:radial-gradient(ellipse 90% 85% at 8% 12%, var(--item-color) 0%, transparent 62%);opacity:.3;pointer-events:none;z-index:0;position:absolute;inset:0}.card-item>*{z-index:1;position:relative}.card-item:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.card-item .list-item-left{align-items:center;gap:10px;min-width:0;display:flex}.card-item .list-item-left>div{min-width:0;overflow:hidden}.card-item .color-dot{width:12px;height:12px}.card-item .list-item-name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.card-item .list-item-actions{opacity:1;border-top:1px solid var(--border);align-items:center;gap:8px;margin-top:auto;padding-top:8px;display:flex}.card-item-actions-right{align-items:center;gap:8px;display:flex}.card-item:hover .list-item-actions{opacity:1}.card-item .list-item-actions .btn-sm{opacity:.5;transition:opacity .15s}.card-item .list-item-actions .btn-sm:hover{opacity:1}.card-item-time{color:var(--text-secondary);padding:4px 0;font-size:35px;font-weight:600}.card-item:has(.card-item-income) .list-item-left{padding-right:88px}.card-item .card-item-income{z-index:1;background:color-mix(in srgb, var(--item-color) 28%, transparent);border:1px solid color-mix(in srgb, var(--item-color) 42%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.6);color:var(--text);border-radius:10px;flex-direction:column;align-items:flex-end;gap:4px;padding:4px 10px;font-size:14px;font-weight:600;line-height:1.2;display:inline-flex;position:absolute;top:12px;right:12px}.card-item-income-earned{color:var(--text-secondary);font-size:12px;font-weight:500}.card-item .card-item-income.card-item-income-unknown{justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;padding:0;font-size:16px;font-weight:700;line-height:1}.rate-unknown-hint{color:var(--text-secondary);margin-top:8px;font-size:13px}.card-grid-compact{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:8px}.card-grid-compact .card-item{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 8px;padding:12px 10px 10px 14px;display:grid}.card-grid-compact .card-item .list-item-left{grid-area:1/1;gap:6px;min-width:0;padding-right:0}.card-grid-compact .card-item:has(.card-item-income) .list-item-left{padding-right:0}.card-grid-compact .card-item .list-item-name{white-space:normal;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:13px;line-height:1.3;display:-webkit-box;overflow:hidden}.card-grid-compact .card-item .list-item-sub{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.card-item-dates{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;margin-top:4px;font-size:11px;font-weight:500;line-height:1.2;display:flex;overflow:hidden}.card-item-dates-sep{opacity:.55;flex-shrink:0}.card-grid-compact .card-item-time{white-space:nowrap;grid-area:2/1/auto/-1;padding:0;font-size:22px}.card-grid-compact .card-item-income{white-space:normal;flex-shrink:0;grid-area:1/2;place-self:start end;max-width:7.5rem;padding:2px 8px;font-size:12px;position:static;top:auto;right:auto;overflow:hidden}.card-grid-compact .card-item-income-earned{font-size:11px}.card-grid-compact .card-item .card-item-income.card-item-income-unknown{width:32px;min-width:32px;max-width:none;height:32px;padding:0;font-size:14px;overflow:visible}.card-grid-compact .card-item .list-item-actions{grid-area:3/1/auto/-1;gap:6px;margin-top:0;padding-top:6px}.empty-state{text-align:center;color:var(--text-muted);padding:48px 24px}.empty-state svg{opacity:.3;width:48px;height:48px;margin-bottom:16px}.empty-state p{margin-bottom:16px;font-size:14px}.settings-tabs-bar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.settings-tabs{flex-shrink:1;width:max-content;min-width:0;max-width:100%;margin-bottom:0}.settings-panel{border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(40px)saturate(1.6);animation:animFadeUpSoft .26s var(--ease-out) both;background:#ffffff24;padding:8px 22px 12px}[data-theme=dark] .settings-panel{background:#1c1e282e}.settings-panel .settings-row:first-child{padding-top:12px}.settings-panel .settings-field-row:last-child,.settings-panel .settings-msg:last-child,.settings-panel .settings-row:last-child{padding-bottom:12px}.settings-logout-btn{flex-shrink:0}.settings-row{justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.settings-row-title{color:var(--text);font-size:16px;font-weight:600}.settings-row-desc{color:var(--text-secondary);margin-top:4px;font-size:13px}.settings-row a.btn{flex-shrink:0;text-decoration:none}.settings-field-row{flex-wrap:wrap;align-items:center;gap:10px;padding:0 0 16px;display:flex}.settings-msg{padding-bottom:16px;font-size:13px}.privacy-shell{box-sizing:border-box;max-width:720px;min-height:100vh;margin:0 auto;padding:24px 20px 48px}.privacy-page .list-header{align-items:flex-start;gap:12px}.privacy-updated{color:var(--text-secondary);margin:0;font-size:13px}.privacy-panel{max-width:720px}.privacy-intro,.privacy-para{color:var(--text);margin:0 0 12px;font-size:14px;line-height:1.55}.privacy-section{border-top:1px solid var(--border);margin-top:22px;padding-top:18px}.privacy-section-title{margin:0 0 10px;font-size:16px;font-weight:600}.pwa-shortcut{border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(40px)saturate(1.6);background:#ffffff24;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}[data-theme=dark] .pwa-shortcut{background:#1c1e282e}.pwa-shortcut-copy{flex:1;min-width:0}.pwa-shortcut-logo{object-fit:cover;width:72px;height:72px;box-shadow:var(--shadow-btn);border:1px solid var(--glass-border);background:var(--accent);border-radius:18px;flex-shrink:0}.admin-users{border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(40px)saturate(1.6);background:#ffffff24;padding:6px 20px}[data-theme=dark] .admin-users{background:#1c1e282e}.admin-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:14px 0;display:flex}.admin-row-title{align-items:baseline;gap:10px;min-width:0;display:flex}.admin-row-num{width:1.5em;font-size:inherit;font-variant-numeric:tabular-nums;color:var(--text-muted);text-align:right;flex-shrink:0;font-weight:600}.admin-row-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.admin-row-meta{color:var(--text-secondary);margin-top:2px;padding-left:calc(1.5em + 10px);font-size:12px}.admin-users-pager{color:var(--text-secondary);justify-content:center;align-items:center;gap:12px;padding:12px 0 8px;font-size:13px;display:flex}.admin-users-pager button:disabled{opacity:.4;cursor:default}.admin-row:last-child{border-bottom:none}.admin-row-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.admin-row-actions .btn{justify-content:center;align-items:center;display:inline-flex}.admin-reset-desc,.admin-reset-hint{color:var(--text-secondary);margin:0 0 12px;font-size:14px;line-height:1.45}.admin-reset-password{background:var(--bg-elevated,#7f7f7f14);border-radius:12px;align-items:center;gap:10px;margin-bottom:12px;padding:12px 14px;display:flex}.admin-reset-password code{letter-spacing:.04em;word-break:break-all;min-width:0;color:var(--text);flex:1;font-size:16px;font-weight:600}.admin-badge{background:var(--lime-bg);color:var(--text);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600}.admin-badge-you{background:var(--accent-light)}.admin-activity{border-radius:999px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600}.admin-activity-active{color:#00a86b;background:#00d68f2e}.admin-activity-dormant{color:#c77800;background:#ffa7262e}.admin-activity-inactive{color:var(--text-secondary);background:#7b7f9226}.admin-activity-none{color:var(--text-muted);background:#7b7f921a}[data-theme=dark] .admin-activity-active{color:#3ee6a8}[data-theme=dark] .admin-activity-dormant{color:#ffb74d}.admin-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.admin-stat{border:1px solid var(--glass-border);border-radius:var(--radius);text-align:left;-webkit-backdrop-filter:blur(40px)saturate(1.6);box-shadow:var(--shadow);background:#ffffff24;padding:14px 16px}[data-theme=dark] .admin-stat{background:#1c1e282e}.admin-stat-label{color:var(--text-secondary);margin-bottom:6px;font-size:12px}.admin-stat-value{color:var(--text);font-size:28px;font-weight:700;line-height:1}.admin-stat-value-active{color:#00a86b}.admin-stat-value-dormant{color:#c77800}.admin-stat-value-inactive{color:var(--text-secondary)}.admin-stat-value-none{color:var(--text-muted)}[data-theme=dark] .admin-stat-value-active{color:#3ee6a8}[data-theme=dark] .admin-stat-value-dormant{color:#ffb74d}.admin-filter-bar{margin-bottom:12px}.admin-quota{border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(40px)saturate(1.6);background:#ffffff24;margin-bottom:16px;padding:16px 20px 12px}[data-theme=dark] .admin-quota{background:#1c1e282e}.admin-quota-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.admin-quota-updated,.admin-quota-note{color:var(--text-secondary);font-size:12px}.admin-quota-error{color:var(--red);margin-bottom:10px;font-size:12px}.admin-quota-list{flex-direction:column;gap:12px;display:flex}.admin-quota-row{flex-direction:column;gap:6px;display:flex}.admin-quota-meta{color:var(--text);justify-content:space-between;gap:12px;font-size:13px;display:flex}.admin-quota-meta span:last-child{color:var(--text-secondary);white-space:nowrap}.admin-quota-track{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.admin-quota-fill{background:var(--accent);border-radius:999px;min-width:0;height:100%}.admin-quota-fill.warn{background:#c77800}.admin-quota-fill.danger{background:var(--red)}.section{margin-bottom:32px}.section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px;font-size:16px;font-weight:600}.stat-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:16px;display:grid}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes animFadeUp{0%{opacity:0;transform:translateY(18px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes animFadeUpSoft{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes animFadeIn{0%{opacity:0}to{opacity:1}}@keyframes animModalIn{0%{opacity:0;transform:translateY(16px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes animDashPulse{0%,to{border-color:color-mix(in srgb, var(--text-muted) 28%, transparent);background:0 0}50%{border-color:color-mix(in srgb, var(--text-muted) 78%, transparent);background:color-mix(in srgb, var(--text-muted) 6%, transparent)}}@keyframes animActiveGlow{0%,to{box-shadow:0 0 0 1px color-mix(in srgb, var(--project-color,var(--green)) 28%, transparent), 0 10px 28px color-mix(in srgb, var(--project-color,var(--green)) 16%, transparent), var(--shadow)}50%{box-shadow:0 0 0 1px color-mix(in srgb, var(--project-color,var(--green)) 42%, transparent), 0 14px 36px color-mix(in srgb, var(--project-color,var(--green)) 28%, transparent), var(--shadow-hover)}}@keyframes animTimerLive{0%,to{opacity:.78}50%{opacity:1}}@keyframes animBtnPop{0%{transform:scale(.86)}45%{transform:scale(1.12)}to{transform:scale(1)}}.today-hero-card{border:1px solid var(--glass-border);min-height:170px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(56px)saturate(1.8);isolation:isolate;background:#ffffff6b;border-radius:28px;align-items:center;margin-bottom:16px;padding:40px;animation:.32s ease-out heroFadeIn;display:flex;position:relative;overflow:hidden}.today-hero-card:before{content:"";border-radius:inherit;pointer-events:none;z-index:0;filter:blur(28px);background:radial-gradient(55% 48% at 88% 12%,#a494ff8c,#0000 62%),radial-gradient(50% 44% at 8% 92%,#ffba8e7a,#0000 58%),radial-gradient(42% 38% at 42% 38%,#76c6ff6b,#0000 60%),radial-gradient(36% 32% at 72% 78%,#ff94c447,#0000 58%);position:absolute;inset:-20%;transform:scale(1.05)}.today-hero-card:after{content:"";border-radius:inherit;pointer-events:none;z-index:0;background:linear-gradient(145deg,#ffffff57 0%,#ffffff0f 42%,#0000 72%);position:absolute;inset:0}[data-theme=dark] .today-hero-card{background:#1c1e2885}[data-theme=dark] .today-hero-card:before{filter:blur(32px);background:radial-gradient(55% 48% at 88% 12%,#7862dc6b,#0000 62%),radial-gradient(50% 44% at 8% 92%,#d2785047,#0000 58%),radial-gradient(42% 38% at 42% 38%,#4682d252,#0000 60%),radial-gradient(36% 32% at 72% 78%,#b45a9638,#0000 58%)}[data-theme=dark] .today-hero-card:after{background:linear-gradient(145deg,#ffffff14 0%,#ffffff05 42%,#0000 72%)}.today-hero-date-col{z-index:1;flex-direction:column;align-items:center;gap:4px;padding-right:48px;display:flex;position:relative}.stat-today-date{color:var(--text);letter-spacing:-3px;font-size:76px;font-weight:200;line-height:1}.today-hero-month{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:14px;font-weight:500}.today-hero-divider{background:color-mix(in srgb, var(--text) 12%, transparent);z-index:1;flex-shrink:0;width:1px;height:70px;position:relative}.today-hero-work-col{z-index:1;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;min-width:0;padding-left:48px;display:flex;position:relative}.stat-today-time{color:var(--text);letter-spacing:-2px;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:68px;font-weight:200;line-height:1;overflow:hidden}.today-hero-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin-top:12px;font-size:14px;font-weight:500}.stat-card{background:var(--glass);border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--blur));transition:transform .2s var(--ease-out), box-shadow .2s ease-out;animation:animFadeUpSoft .28s var(--ease-out) both;padding:20px}.stat-card-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;font-size:12px;font-weight:600}.stat-card-value{color:var(--text);letter-spacing:-.5px;font-size:28px;font-weight:600}.chart-container{background:var(--glass);border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--blur));color:var(--text);transition:transform .2s var(--ease-out), box-shadow .2s ease-out;animation:animFadeUpSoft .3s var(--ease-out) both;padding:24px}.charts-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.charts-grid .chart-container{min-width:0;margin:0}.chart-container-duo{flex-direction:column;display:flex;position:relative;overflow:hidden}.chart-container-duo .chart-title{text-align:left;padding-top:4px}.chart-desc{color:var(--text-secondary);text-align:left;margin-bottom:8px;font-size:14px;line-height:1.4}.chart-plot{border-radius:14px;width:100%;height:clamp(240px,30vw,300px);overflow:hidden}.chart-plot--pie{margin-top:-12px}.chart-container-wide{grid-column:1/-1;overflow:hidden}.chart-container-wide:has(.timeline-chart){overflow:visible}.chart-container-wide .chart-title{text-align:left;padding-top:4px}.area-chart-plot{border-radius:14px;width:100%;height:200px;margin-top:30px;overflow:visible}.area-chart-caption{min-height:1.45em;color:var(--text-secondary);margin-top:12px;font-size:14px;line-height:1.45}.area-chart-caption-date{color:var(--text);font-weight:600}.area-chart-caption-placeholder{visibility:hidden}.timeline-chart{flex-direction:column;gap:4px;min-width:0;margin-top:18px;display:flex}.timeline-head{grid-template-columns:minmax(120px,180px) minmax(0,1fr);align-items:end;gap:12px;margin-bottom:6px;display:grid}.timeline-head-label{min-height:1px}.timeline-axis{min-width:0;height:22px;position:relative}.timeline-tick{color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;position:absolute;top:0;transform:translate(-50%)}.timeline-body{flex-direction:column;gap:14px;display:flex}.timeline-group-title{letter-spacing:.3px;text-transform:uppercase;color:var(--text-secondary);margin:2px 0 6px;padding-left:2px;font-size:12px;font-weight:700}.timeline-row{grid-template-columns:minmax(120px,180px) minmax(0,1fr);align-items:center;gap:12px;min-height:40px;display:grid}.timeline-meta{min-width:0}.timeline-meta-name{min-width:0;color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.timeline-meta-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.timeline-meta-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.timeline-meta-dates{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;margin-left:16px;font-size:11px;overflow:hidden}.timeline-track{background:#ffffff0a;border-radius:999px;height:28px;position:relative;overflow:visible}[data-theme=dark] .timeline-track{background:#ffffff09}.timeline-gridline{background:var(--border);opacity:.7;pointer-events:none;width:1px;position:absolute;top:0;bottom:0}.timeline-now{background:color-mix(in srgb, var(--accent,#6c5ce7) 55%, transparent);pointer-events:none;z-index:1;width:2px;position:absolute;top:0;bottom:0}.timeline-bar{cursor:pointer;z-index:2;border:none;border-radius:999px;min-width:10px;height:18px;padding:0;transition:filter .15s ease-out;position:absolute;top:5px;box-shadow:0 6px 14px #00000029}.timeline-bar:hover,.timeline-bar.is-active,.timeline-bar:focus-visible{filter:brightness(1.06);outline:none}.timeline-float-tip{z-index:6000;pointer-events:none;border-radius:var(--radius-sm);border:1px solid var(--glass-border);max-width:min(260px,100vw - 24px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--blur-popup)) saturate(1.8);color:var(--text);will-change:transform;background:#fffffff0;padding:12px 16px;font-size:13px;position:fixed;top:0;left:0}[data-theme=dark] .timeline-float-tip{background:#161820f0}.timeline-float-tip-muted{color:var(--text-secondary);margin:0 0 4px}.timeline-float-tip-sub{font-size:12px}.timeline-float-tip-value{margin:0;font-weight:600}.chart-title{color:var(--text);margin-bottom:2px;font-size:25px;font-weight:600}.chart-tooltip{border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:var(--shadow);color:var(--text);padding:12px 16px;font-size:13px;position:relative}.chart-tooltip:before{background:#ffffffe6}[data-theme=dark] .chart-tooltip:before{background:#161820eb}.chart-tooltip-muted{color:var(--text-secondary)}.period-pill{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--glass);padding:4px 14px;font-size:14px}.history-card,.clients-card,.client-details,.card-item{border-radius:var(--radius);border:1px solid var(--glass-border);box-shadow:var(--shadow);isolation:isolate;-webkit-backdrop-filter:blur(40px)saturate(1.6);background:#ffffff24;overflow:hidden}.clients-card,.client-details,.card-item{overflow:visible}.history-card{animation:animFadeUpSoft .28s var(--ease-out) both;padding:18px 20px 12px}[data-theme=dark] .history-card,[data-theme=dark] .clients-card,[data-theme=dark] .client-details,[data-theme=dark] .card-item{background:#1c1e282e}.clients-page{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:visible}.clients-top{z-index:2;flex-shrink:0;padding:0 0 20px;position:relative;overflow:visible}.clients-top .list-header{margin-bottom:var(--logo-gap)}.clients-list{z-index:1;flex:1;min-height:0;margin:0 -28px;position:relative;overflow:hidden}.clients-list-scroll{overscroll-behavior:contain;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none;height:100%;padding:28px;overflow:hidden auto}.clients-list-scroll::-webkit-scrollbar{display:none}.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.projects-page{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:visible}.projects-top{z-index:3;flex-shrink:0;position:relative;overflow:visible}.projects-top .list-header{margin-bottom:0}.projects-list{z-index:1;flex:1;min-height:0;margin:0 -28px;position:relative;overflow:hidden}.projects-list-scroll{overscroll-behavior:contain;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none;height:100%;padding:28px;overflow:hidden auto}.projects-list-scroll::-webkit-scrollbar{display:none}.statistics-page{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex;overflow:visible}.statistics-top{z-index:3;flex-shrink:0;position:relative;overflow:visible}.statistics-top .list-header,.statistics-custom-range{margin-bottom:12px}.statistics-top .today-hero-card{margin-bottom:0}.statistics-list{z-index:1;flex:1;min-height:0;margin:0 -28px;position:relative;overflow:hidden}.statistics-list-scroll{overscroll-behavior:contain;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none;height:100%;padding:20px 28px 36px;overflow:hidden auto}.statistics-list-scroll::-webkit-scrollbar{display:none}.archive-page{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:visible}.archive-top{z-index:3;flex-shrink:0;position:relative;overflow:visible}.archive-top .list-header{margin-bottom:0}.archive-period-panel{flex-direction:column;align-items:stretch;gap:10px;min-width:0;max-width:100%;margin-top:12px;display:flex}.archive-period-range{flex-wrap:nowrap;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;width:100%;min-width:0;max-width:100%;margin:0;display:grid}.archive-period-range .picker-field{flex:none;width:100%;min-width:0;max-width:100%;overflow:hidden}.archive-period-range .native-picker{width:100%;min-width:0;max-width:100%}.archive-period-sep{color:var(--text-secondary);flex-shrink:0;font-size:13px;line-height:1}.archive-period-panel>.btn{align-self:flex-start}.archive-list{z-index:1;flex:1;min-height:0;margin:0 -28px;position:relative;overflow:hidden}.archive-list-scroll{overscroll-behavior:contain;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none;height:100%;padding:28px;overflow:hidden auto}.archive-list-scroll::-webkit-scrollbar{display:none}.clients-card{isolation:isolate;cursor:pointer;min-width:0;transition:transform .2s var(--ease-out), box-shadow .2s ease-out, background .2s ease-out;animation:animFadeUpSoft .28s var(--ease-out) both;padding:12px 14px;position:relative}.clients-card.is-selected{box-shadow:var(--shadow-hover);background:#ffffff47}.clients-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}[data-theme=dark] .clients-card.is-selected{background:#1c1e286b}.clients-card:before{content:"";border-radius:inherit;background:radial-gradient(ellipse 90% 85% at 8% 12%, var(--item-color) 0%, transparent 62%);opacity:.3;pointer-events:none;position:absolute;inset:0}.clients-card>*{z-index:1;position:relative}.clients-card .list-item-left{min-width:0}.clients-card .list-item-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clients-card .list-item-actions{flex-shrink:0;gap:2px}.history-card-head{align-items:center;gap:10px;min-height:28px;margin-bottom:12px;display:flex}.history-card-head.is-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.history-card-title{color:var(--text);font-size:15px;font-weight:600}.history-card-total{font-variant-numeric:tabular-nums;color:var(--text-secondary);margin-left:auto;font-size:15px;font-weight:600}.history-card-chevron{color:var(--text-muted);transition:transform .28s var(--ease-out);display:flex}.history-card-chevron.open{transform:rotate(180deg)}.history-empty{color:var(--text-secondary);padding:8px 0 12px;font-size:14px}.history-anim{animation:animFadeUp .32s var(--ease-out) both}.history-list{flex-direction:column;display:flex}.history-groups{flex-direction:column;gap:14px;padding-bottom:8px;display:flex}.history-group-head{align-items:center;gap:8px;min-width:0;padding-bottom:4px;display:flex}.history-group-total{font-variant-numeric:tabular-nums;color:var(--text-secondary);white-space:nowrap;margin-left:auto;font-size:13px;font-weight:600}.history-toggle{color:var(--accent);font-family:var(--font);cursor:pointer;text-align:left;background:0 0;border:none;padding:8px 0 0;font-size:13px;font-weight:600;transition:opacity .2s}.history-toggle:hover{opacity:.7}.history-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.history-row:last-child{border-bottom:none}.history-row-nested{padding-left:18px}.history-row-nested .history-time:before{content:none;margin:0}.history-row-left{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.history-project{white-space:nowrap;font-weight:600}.history-client{color:var(--text-secondary);white-space:nowrap}.history-client:before{content:"·";margin-right:8px}.history-time{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.history-time:before{content:"·";margin-right:8px}.history-duration{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-secondary)}.history-duration:before{content:"·";margin-right:8px}.history-edit{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:opacity .2s,background .2s,color .2s;display:flex}body:has(.tour-root) .history-edit{opacity:1}.history-row:hover .history-edit{opacity:1}.history-edit:hover{color:var(--accent);background:var(--bg-hover)}@media (hover:none){.history-edit{opacity:1}}.stat-display{background:var(--bg);border-radius:var(--radius-sm);letter-spacing:-.3px;padding:10px 14px;font-size:20px;font-weight:600}.switch-row{flex-wrap:nowrap;align-items:center;gap:10px;display:flex}.switch-label{color:var(--text-secondary);white-space:nowrap;font-size:13px;font-weight:500}.switch{cursor:pointer;flex-shrink:0;line-height:0}.switch-track{background:#e0e2e8;border-radius:12px;width:44px;height:24px;transition:background .25s ease-out;position:relative}.switch-on .switch-track{background:var(--accent)}.switch-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .25s ease-out;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #0000001a}.switch-on .switch-knob{transform:translate(20px)}.payment-fields{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.payment-billing{min-width:160px;position:relative}.color-picker{flex-wrap:wrap;gap:8px;display:flex}.color-option{cursor:pointer;border:2px solid #0000;border-radius:50%;width:32px;height:32px;transition:all .2s ease-out}.color-option:hover{transform:scale(1.15)}.color-option.selected{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.today-label{color:var(--text-secondary);align-items:center;gap:12px;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.today-label .history-toggle{margin-left:auto}.history-close{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;color:var(--text-muted)!important;padding:0!important}.history-close:hover{background:var(--bg-hover)}.section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;margin-top:0;margin-bottom:12px;font-size:13px;font-weight:600}.project-grid{border-radius:var(--radius);grid-template-columns:repeat(3,1fr);gap:16px;min-height:120px;margin-bottom:32px;transition:background .2s,border-color .2s;display:grid}.project-grid:has(.empty-state-grid){border:1.5px dashed color-mix(in srgb, var(--text-muted) 42%, transparent);box-sizing:border-box;padding:10px;animation:2.8s ease-in-out infinite animDashPulse}.project-grid-sm{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;min-height:80px;margin-bottom:24px}.project-grid.drag-over{border-radius:var(--radius);border:2px dashed color-mix(in srgb, var(--accent) 48%, transparent);background:0 0;outline:none;transition:border-color .18s ease-out;animation:none;transform:none}.project-card{background:color-mix(in srgb, var(--project-color,transparent) 12%, var(--glass));border:1px solid var(--glass-border);cursor:grab;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;aspect-ratio:1;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--blur));animation:animFadeUp .42s var(--ease-out) both;animation-delay:var(--enter-delay,0s);border-radius:28px;flex-direction:column;transition:transform .25s ease-out,box-shadow .25s ease-out,border-color .2s ease-out;display:flex;position:relative;overflow:visible;container:project-card/inline-size}.project-card button,.project-card a,.project-card svg,.project-card img{-webkit-user-drag:none}.project-card-gradient{border-radius:inherit;pointer-events:none;opacity:.2;position:absolute;inset:0}.project-card-sm{aspect-ratio:auto;border-radius:20px;height:56px}.project-card-sm .project-card-accent{display:none}.project-card-sm-row{flex:1;align-items:center;gap:8px;min-width:0;padding:0 0 0 15px;display:flex}.project-card-sm-row .project-card-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.project-card-sm-row .project-card-actions{flex-shrink:0;padding:0}.project-card-sm-row .timer-btn-start-small,.project-card-sm-row .timer-btn-stop-small{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:28px;height:28px;box-shadow:none;background:#ffffffe6}.project-card-sm-row .timer-btn-start-small:hover{background:#ffffffb3}.project-card-sm-row .timer-btn-stop-small{background:#ffffffe6}.project-card-sm-row .timer-btn-stop-small:hover{background:#ffffffb3}.project-card-sm-row .timer-btn-start-small svg,.project-card-sm-row .timer-btn-stop-small svg{width:12px;height:12px}.project-card:active{cursor:grabbing}.project-card:hover{box-shadow:0 16px 40px color-mix(in srgb, var(--project-color,var(--accent)) 18%, transparent), var(--shadow-hover);transform:translateY(-3px)scale(1.012)}.project-card.is-dragging,.project-card.is-dragging:hover{cursor:grabbing;opacity:1;box-shadow:var(--shadow);z-index:2;transition:box-shadow .16s ease-out;transform:none}.project-card.is-touch-dragging,.project-card.is-touch-dragging:hover{box-shadow:0 18px 38px color-mix(in srgb, var(--project-color,var(--accent)) 24%, transparent), var(--shadow-hover);z-index:5;transition:transform .16s var(--ease-out), box-shadow .16s ease-out;transform:rotate(10deg)scale(1.03)}.project-card-drag-preview-wrap{pointer-events:none}.project-card.project-card-drag-preview,.project-card.project-card-drag-preview:hover{cursor:grabbing;width:100%;height:100%;box-shadow:0 18px 38px color-mix(in srgb, var(--project-color,var(--accent)) 24%, transparent), var(--shadow-hover);margin:0;transition:none;transform:rotate(10deg)scale(1.03);opacity:1!important;animation:none!important}.project-card.active{animation:2.4s ease-in-out infinite animActiveGlow}.project-card.active .project-card-timer{color:var(--text);animation:1.8s ease-in-out infinite animTimerLive}.project-card-accent{display:none}.project-card-body{text-align:left;z-index:1;box-sizing:border-box;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:6px;width:100%;min-width:0;min-height:0;padding:24px;display:flex;position:relative;overflow:hidden}.project-card-name{letter-spacing:-.3px;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;max-width:100%;font-size:clamp(14px,8.5cqi,20px);font-weight:600;line-height:1.2;overflow:hidden}.project-card-client{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;font-size:clamp(11px,5.5cqi,13px);overflow:hidden}.project-card-timer{font-variant-numeric:tabular-nums;letter-spacing:clamp(0px,.4cqi,2px);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;margin-top:12px;font-size:clamp(16px,12cqi,29px);font-weight:600;overflow:hidden}.project-card-actions{z-index:1;justify-content:flex-start;padding:0 24px 24px;display:flex;position:relative}.timer-btn-start-small,.timer-btn-stop-small{cursor:pointer;width:48px;height:48px;transition:transform .18s var(--ease-out), background .2s ease-out, box-shadow .2s ease-out, color .2s ease-out;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.timer-btn-start-small{background:var(--accent);color:var(--on-accent);box-shadow:none}.timer-btn-start-small:hover{background:var(--accent-hover);transform:scale(1.08)}.timer-btn-start-small:active,.timer-btn-stop-small:active{animation:animBtnPop .28s var(--ease-out);transform:scale(.92)}.timer-btn-stop-small{background:var(--red);color:#fff;box-shadow:0 4px 20px #e55c5c40}.timer-btn-stop-small:hover{transform:scale(1.08);box-shadow:0 6px 22px #e55c5c57}.timer-btn-start-small:disabled{opacity:.3;cursor:not-allowed;box-shadow:none;transform:none}.timer-btn-start-small svg{width:18px;height:18px}.timer-btn-stop-small svg{width:16px;height:16px}.empty-state-grid{grid-column:1/-1;margin:0;padding:28px 16px}.empty-state-grid p{opacity:.85;margin-bottom:0}@media (width<=1024px){.project-card-body{gap:4px;padding:16px 14px}.project-card-timer{margin-top:8px}.project-card-actions{padding:0 14px 16px}.timer-btn-start-small,.timer-btn-stop-small{width:42px;height:42px}}@media (width<=800px) and (width>=769px){.project-grid{grid-template-columns:repeat(2,1fr);gap:12px}.main-content{padding-left:28px;padding-right:28px}}.mobile-page-header,.sidebar-nav-mobile{display:none}@media (width<=768px){#root{min-width:0;max-width:100%}.sidebar{bottom:calc(16px + env(safe-area-inset-bottom,0px));width:max-content;max-width:calc(100vw - 32px);height:auto;box-shadow:var(--shadow);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(24px)saturate(1.6);z-index:100;background:#ffffffd1;border-radius:36px;flex-direction:row;justify-content:center;align-items:center;margin:0;padding:11px 12px;position:fixed;left:50%;transform:translate(-50%)}[data-theme=dark] .sidebar{background:#1e202ae0}.sidebar-offline-hint{text-align:center;background:var(--glass-modal);border:1px solid var(--glass-border);width:max-content;max-width:min(340px,100vw - 32px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px)saturate(1.4);color:var(--text-secondary);z-index:101;pointer-events:none;border-radius:14px;margin-top:0;padding:8px 14px;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.sidebar-logo,.sidebar-create-btn,.sidebar-card,.sidebar-nav-desktop{display:none}.sidebar-nav-mobile{display:flex}.sidebar-nav{width:100%;box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:none;border-radius:0;flex-direction:row;justify-content:center;gap:17px;padding:0}.sidebar-link{border-radius:999px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:0;width:40px;height:40px;padding:0;font-size:10px;transition:all .2s ease-out;position:relative}.sidebar-link.active{color:var(--accent);background:0 0}.sidebar-link.active svg{opacity:.9}.sidebar-link-label{display:none}.sidebar-link svg{opacity:.45;width:24px;height:24px}.mobile-page-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.mobile-logo{color:var(--accent);align-items:center;display:flex}.mobile-logo svg{width:auto;height:22px;display:block}.sidebar-create-nav{font-family:var(--font);cursor:pointer;background:var(--accent);color:var(--on-accent);border:none;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex;opacity:1!important}.sidebar-create-nav svg{opacity:1!important}.sidebar-more-wrap{display:flex;position:relative}.sidebar-more-btn{font-family:var(--font);cursor:pointer;color:var(--text-secondary);background:0 0;border:none}.sidebar-more-btn.active{color:var(--accent);background:0 0}.sidebar-more-btn.active svg{opacity:.9}.sidebar-more-popover{border:1px solid var(--glass-border);box-shadow:var(--shadow);z-index:200;border-radius:16px;min-width:180px;padding:6px;position:fixed;bottom:90px;right:16px}.sidebar-more-popover.glass-float{-webkit-backdrop-filter:blur(40px)saturate(1.5)}.sidebar-more-popover.glass-float:before{background:var(--glass-modal)}.sidebar-more-item{width:100%;color:var(--text);font-family:var(--font);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;font-weight:500;transition:background .15s;display:flex}.sidebar-more-item:hover{background:var(--bg-hover)}.sidebar-more-item.active{background:var(--accent-light);color:var(--accent);font-weight:600}.sidebar-more-item svg{opacity:.6;flex-shrink:0;width:20px;height:20px}.sidebar-more-item.active svg{opacity:1}.main-content{padding:0 16px calc(90px + env(safe-area-inset-bottom,0px));min-height:100dvh}:is(.main-content:has(.clients-page),.main-content:has(.projects-page),.main-content:has(.statistics-page),.main-content:has(.archive-page)){height:100dvh;min-height:100dvh;max-height:100dvh;padding-bottom:0}.clients-page{gap:4px}.clients-top{padding-bottom:16px}.clients-list{margin:0 -16px}.clients-list-scroll{padding:16px 16px calc(90px + env(safe-area-inset-bottom,0px))}.projects-list{margin:0 -16px}.projects-list-scroll{padding:16px 16px calc(90px + env(safe-area-inset-bottom,0px))}.statistics-list{margin:0 -16px}.statistics-list-scroll{padding:12px 16px calc(90px + env(safe-area-inset-bottom,0px))}.archive-list{margin:0 -16px}.archive-list-scroll{padding:16px 16px calc(90px + env(safe-area-inset-bottom,0px))}.archive-period-panel>.btn{align-self:stretch;width:100%}.archive-period-range{grid-template-columns:1fr;gap:8px}.archive-period-sep{display:none}.timer-display{font-size:20px}.form-row{flex-direction:column}.card-grid{grid-template-columns:repeat(2,1fr);gap:8px}.list-grid{gap:8px}.list-item{padding:10px 12px}.list-item-actions{opacity:1;flex-shrink:0;gap:2px}.list-item-actions .btn-sm{width:28px;height:28px;color:var(--text-secondary);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.list-item-actions .btn-icon-danger{width:28px;height:28px;color:var(--red);opacity:.75}.list-header{flex-wrap:wrap;gap:10px;margin-bottom:14px}.list-header .page-title{font-size:26px}.list-header-tools{flex:100%;width:100%;margin-left:0}.list-header .btn-soft{padding:8px 14px;font-size:13px}.filter-bar:not(.settings-tabs){-webkit-overflow-scrolling:touch;scrollbar-width:none;border-radius:16px;flex-wrap:nowrap;width:100%;padding:3px;overflow:auto hidden}.filter-bar:not(.settings-tabs)::-webkit-scrollbar{display:none}.filter-bar:not(.settings-tabs) .filter-bar-item{flex-shrink:0;padding:7px 10px;font-size:12px}.filter-bar-sort-icon{display:inline-flex}.filter-bar-sort-label{display:none}.filter-bar-client-label{max-width:28vw}.filter-bar-sep{height:14px;margin:0 2px}.btn{white-space:nowrap}body{overflow-x:hidden}.settings-panel,.admin-users,.admin-quota,.card-item{background:#ffffffc7}[data-theme=dark] .settings-panel,[data-theme=dark] .admin-users,[data-theme=dark] .admin-quota,[data-theme=dark] .card-item{background:#1e202ad6}.settings-page .section{padding:12px 16px}.settings-page input[type=password],.settings-page input[type=number],.settings-page input[type=text]{box-sizing:border-box;min-width:0;width:100%!important}.settings-page .btn-primary{flex-shrink:0}.settings-tabs-bar{gap:8px}.settings-tabs{border-radius:16px;flex:1;width:auto}.settings-tabs .filter-bar-item{flex:1;justify-content:center;padding:8px;font-size:12px}.list-header .custom-select{padding:7px 12px;font-size:12px}.modal{width:min(440px,100vw - 24px);max-width:calc(100vw - 24px);padding:22px 18px}.form-datetime-row{grid-template-columns:minmax(0,1fr) minmax(96px,110px);gap:6px}.settings-row{flex-wrap:wrap}.pwa-shortcut{gap:14px;padding:16px}.pwa-shortcut-logo{border-radius:14px;width:56px;height:56px}.admin-row{flex-wrap:wrap}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-quota-head{flex-direction:column}.admin-quota-meta{flex-wrap:wrap}.admin-stats .admin-stat:first-child{grid-column:1/-1}.admin-row-actions{flex-wrap:wrap;width:100%}.card-item{padding:12px}.card-item .list-item-name{font-size:13px}.card-item-time{font-size:28px}.card-item-income{padding:3px 8px;font-size:13px}.project-grid{grid-template-columns:repeat(2,1fr);gap:8px}.project-grid-sm{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.project-card{aspect-ratio:auto;touch-action:none;padding-bottom:0}.project-card-body{gap:3px;padding:14px}.project-card-name{font-size:14px}.project-card-client{font-size:11px}.project-card-timer{letter-spacing:.3px;margin-top:6px;font-size:clamp(18px,6vw,26px)}.project-card-actions{padding:0 14px 14px}.timer-btn-start-small,.timer-btn-stop-small{width:36px;height:36px}.project-card-gradient{display:none}.project-card-accent{border-radius:inherit;opacity:.08;pointer-events:none;display:block;position:absolute;inset:0}.stat-grid{grid-auto-rows:auto;gap:8px;grid-template-columns:1fr 1fr!important}.stat-card{padding:12px}.stat-card:first-child,.stat-card:nth-child(2),.stat-card:nth-child(4),.stat-card:nth-child(5){padding:10px 12px}.stat-card:first-child{grid-area:1/1!important}.stat-card:nth-child(2){grid-area:1/2!important}.stat-card:nth-child(3){grid-area:4/1/auto/span 2!important}.stat-card:nth-child(4){grid-area:2/1!important}.stat-card:nth-child(5){grid-area:2/2!important}.stat-card:nth-child(6){grid-area:3/1!important}.stat-card:nth-child(7){grid-area:3/2!important}.stat-today-time{letter-spacing:-1px;font-size:34px!important}.stat-today-date{letter-spacing:-2px;font-size:48px}.today-hero-card{min-height:120px;padding:24px 20px}.today-hero-date-col{padding-right:24px}.today-hero-work-col{padding-left:24px}.today-hero-divider{height:56px}.today-hero-month,.today-hero-label{font-size:11px}.stat-card-value{font-size:22px}.charts-grid{grid-template-columns:1fr!important;gap:8px!important}.timeline-head,.timeline-row{grid-template-columns:minmax(96px,128px) minmax(0,1fr);gap:8px}.timeline-meta-name{font-size:12px}.timeline-meta-dates{margin-left:14px;font-size:10px}.timeline-group-title{font-size:11px}.timeline-track{height:24px}.timeline-bar{height:16px;top:4px}.chart-plot{height:clamp(220px,56vw,280px)}.chart-container{min-height:0;aspect-ratio:auto!important;justify-self:stretch!important}.today-label{font-size:11px}.clients-grid{gap:8px}.history-card{padding:14px 14px 8px}.clients-card{padding:8px 10px}.history-row{padding:6px 0;font-size:11px}.history-project{font-size:12px}.history-edit{opacity:1}.client-details{width:100%;padding:20px 16px 16px}.client-details-head .modal-title{font-size:22px}.client-details-head .period-pill{padding:4px 10px;font-size:12px}.client-details-ranges{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;margin-bottom:18px;margin-left:-4px;margin-right:-4px;padding:0 4px 2px;overflow-x:auto}.client-details-ranges::-webkit-scrollbar{display:none}.client-details-range{flex-shrink:0;padding:6px 11px;font-size:12px}.client-details-hero{gap:16px;margin-bottom:20px}.client-details-num{font-size:24px}.client-details-meta{gap:12px;padding-top:16px}.client-details-sub{font-size:16px}.client-details-more{margin-top:14px;font-size:13px}.client-details-project{gap:10px;padding:12px 0}.client-details-project-name{font-size:14px}.client-details-project-stats{gap:10px;font-size:13px}}.auth-page{background:0 0;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:24px;display:flex}.auth-card{background:var(--glass);border-radius:var(--radius);width:100%;max-width:980px;min-height:620px;box-shadow:var(--shadow);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(40px)saturate(1.6);animation:animFadeUpSoft .32s var(--ease-out) both;grid-template-columns:1fr 1fr;padding:0;display:grid;overflow:hidden}.auth-visual{min-height:0;color:var(--text);background:url(/auth-panel.svg) 50%/cover no-repeat;border-radius:20px;flex-direction:column;justify-content:space-between;margin:12px 0 12px 12px;padding:28px 32px;display:flex;position:relative;overflow:hidden}.auth-visual:after{content:"";pointer-events:none;background:linear-gradient(#ffffff2e 0%,#f3f4f81f 100%);position:absolute;inset:0}[data-theme=dark] .auth-visual:after{background:linear-gradient(#1c1e2847 0%,#12131a38 100%)}.auth-visual-logo,.auth-visual-copy{z-index:1;position:relative}.auth-visual-logo{color:var(--text);align-items:center;width:fit-content;display:flex}.auth-visual-logo svg{width:auto;height:36px;display:block}.auth-visual-kicker{color:var(--text-secondary);max-width:28ch;margin-top:10px;font-size:15px;line-height:1.35}.auth-visual-title{letter-spacing:-.04em;max-width:18ch;font-size:32px;font-weight:700;line-height:1.15}.auth-panel{background:#ffffff38;flex-direction:column;justify-content:center;padding:36px 48px 32px;display:flex}[data-theme=dark] .auth-panel{background:#1c1e2838}.auth-mark{color:var(--text);align-items:center;width:fit-content;margin-bottom:16px;display:flex}.auth-mark svg{width:auto;height:22px;display:block}.auth-title{letter-spacing:-.04em;color:var(--text);margin-bottom:8px;font-size:34px;font-weight:700}.auth-lead{color:var(--text-secondary);max-width:36ch;margin-bottom:28px;font-size:14px;line-height:1.5}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:8px;display:flex}.auth-field>span{color:var(--text);font-size:13px;font-weight:500}.auth-form input{border:1px solid var(--glass-border);border-radius:var(--radius-xs);width:100%;color:var(--text);background:#ffffff59;outline:none;padding:12px 14px;font-size:15px}[data-theme=dark] .auth-form input{border-color:var(--border);background:#ffffff0d}.auth-form input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-light)}.auth-password{position:relative}.auth-password input{padding-right:44px}.auth-password-toggle{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.auth-password-toggle:hover{color:var(--text)}.auth-forgot{margin-top:-4px}.auth-forgot-toggle{font:inherit;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:13px}.auth-forgot-toggle:hover{color:var(--text)}.auth-forgot-hint{color:var(--text-secondary);background:#7f7f7f14;border-radius:10px;margin-top:8px;padding:10px 12px;font-size:13px;line-height:1.45}.auth-forgot-hint p{margin:0 0 6px}.auth-forgot-hint a{color:var(--text);font-weight:600;text-decoration:none}.auth-forgot-hint a:hover{color:var(--accent-hover)}.auth-error{color:var(--red);font-size:13px}.auth-submit{width:100%;margin-top:8px;padding:13px 20px}.auth-switch{text-align:center;color:var(--text-secondary);margin-top:22px;font-size:13px}.auth-switch button{color:var(--text);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit}.auth-switch button:hover{color:var(--accent-hover)}.auth-privacy{text-align:center;margin:16px 0 0;font-size:13px}.auth-privacy a{color:var(--text-secondary);text-underline-offset:2px;text-decoration:underline}.auth-privacy a:hover{color:var(--accent)}@media (width<=860px){.auth-card{grid-template-columns:1fr;max-width:440px;min-height:0}.auth-visual{border-radius:16px;min-height:180px;margin:12px 12px 0;padding:20px 22px}.auth-visual-title{font-size:22px}.auth-panel{padding:24px 20px 20px}.auth-title{font-size:28px}}.page-loading{justify-content:center;align-items:center;padding:80px 0;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.tour-demo{pointer-events:none;-webkit-user-select:none;user-select:none}.tour-demo.project-card,.tour-demo.card-item{opacity:.92}body:has(.tour-root) .tour-demo .list-item-actions .btn-sm{opacity:1}body:has(.tour-root) .tour-demo .history-edit{opacity:1}.tour-root{z-index:500;pointer-events:none;position:fixed;inset:0}.tour-shield{pointer-events:auto;z-index:500;background:0 0;position:fixed;inset:0}.tour-shield-dim{background:#1c1d2475}[data-theme=dark] .tour-shield-dim{background:#08090ead}.tour-spot{z-index:501;pointer-events:none;box-shadow:0 0 0 2px var(--glass-border), 0 0 0 9999px #1c1d2475;border-radius:16px;transition:top .28s,left .28s,width .28s,height .28s;position:fixed}[data-theme=dark] .tour-spot{box-shadow:0 0 0 2px var(--glass-border), 0 0 0 9999px #08090ead}.tour-tooltip{z-index:502;pointer-events:auto;border-radius:var(--radius);border:1px solid var(--glass-border);width:min(340px,100vw - 24px);box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;touch-action:pan-y;padding:28px 22px 18px;position:fixed}.tour-tooltip.is-ready{opacity:1;visibility:visible;transition:opacity .18s,top .28s,left .28s}.tour-close{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:12px;right:12px}.tour-close:hover{color:var(--text)}.tour-progress{gap:6px;margin-bottom:14px;display:flex}.tour-dot{background:var(--border);border-radius:50%;width:7px;height:7px;transition:background .2s,transform .2s}.tour-dot.active{background:var(--text);transform:scale(1.15)}.tour-dot.done{background:var(--text-secondary)}.tour-title{letter-spacing:-.3px;margin:0 0 8px;padding-right:20px;font-size:18px;font-weight:600}.tour-body{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.tour-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.tour-actions-side{min-width:0;display:flex}.tour-actions-side--end{justify-content:flex-end;margin-left:auto}.tour-actions-spacer{width:1px;height:1px;display:inline-block}@media (prefers-reduced-motion:reduce){.tour-spot,.tour-tooltip.is-ready,.today-hero-card,.project-card,.project-card.active,.project-card.active .project-card-timer,.modal-overlay,.modal,.custom-select-dropdown,.settings-panel,.history-anim,.card-item,.clients-card,.history-card,.stat-card,.chart-container,.sidebar-create-btn,.auth-card{animation:none!important}.project-grid:has(.empty-state-grid){animation:none!important}.project-card,.project-card:hover,.project-card.is-dragging,.project-card.is-touch-dragging,.project-card.project-card-drag-preview,.timer-btn-start-small,.timer-btn-stop-small,.timer-btn-start-small:hover,.timer-btn-stop-small:hover,.timer-btn-start-small:active,.timer-btn-stop-small:active,.filter-bar-item,.filter-bar-item:active,.history-card-chevron{transition:none!important;transform:none!important}}
