*{box-sizing:border-box} :root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none;color:#101113;background:#eef0f4;--blue:#0782ff;--muted:#8a8e96;--panel:#f3f4f8}body{margin:0;line-height:1.35;font-size:14px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible{outline:3px solid #0782ff55;outline-offset:3px}button{border:0}a{color:var(--blue)}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[hidden]{display:none!important}.app-shell{max-width:440px;min-height:100dvh;margin:0 auto;background:linear-gradient(150deg,#fcfdff,#f9fafc);padding:26px 20px calc(105px + env(safe-area-inset-bottom))}.app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:8px 0 25px;min-height:69px}.app-header h1{font-size:33px;letter-spacing:-1.2px;line-height:1.15;font-weight:800;margin:1px 0 3px;white-space:nowrap}.app-header p{font-size:15px;color:var(--muted);margin:0;letter-spacing:-.25px}.profile-badge{display:flex;flex-direction:column;align-items:center;background:none;padding:0;min-width:65px;max-width:105px;color:#111}.profile-badge>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e5e8ee,#daddE5);color:#717681;font-size:14px;font-weight:600;margin:-3px 0 5px}.profile-badge strong{font-size:11px;font-weight:650;line-height:1.15;max-width:105px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-badge small{font-size:9px;color:#8c919a;line-height:1.7}.start-card{background:var(--panel);border-radius:23px 23px 0 0;padding:18px 15px 10px}.start-card h2{font-size:25px;letter-spacing:-.9px;font-weight:750;margin:0 0 14px}.form-field{display:block;font-size:12px;color:#757b84;margin:18px 0 0;font-weight:500}.form-field input{display:block;width:100%;border:1px solid #eceef2;border-radius:13px;margin-top:7px;padding:12px 15px;color:#1b1d20;background:#fff;min-width:0;font-size:15px;min-height:44px;box-shadow:0 1px 2px #24282e03}.form-field input::placeholder{color:#9b9fa7;opacity:1}.form-field input:focus,select:focus{outline:2px solid #0782ff50;outline-offset:1px}.form-field input:disabled{background:#f9fafb;color:#a5a9b1;box-shadow:none}.job-input{background:#fff;border:1px solid #e9ecf2;border-radius:14px;padding:11px 13px;margin-top:0}.job-input label{font-size:12px;color:#656b73;font-weight:500}.job-input input{border:0;padding:4px 0 0;margin:0;min-height:24px;box-shadow:none;font-size:16px}.job-input:has(input:disabled){opacity:.5}.programme-choice{border:0;margin:18px 0 0;padding:0}.programme-choice legend{padding:0;font-size:12px;font-weight:500;color:#777d86;margin-bottom:8px}.choice-buttons{display:flex;gap:11px}.choice-buttons label{flex:1;display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 14px;border:1px solid #e4e8ef;border-radius:13px;background:#fff;color:#22262c;font-size:14px;cursor:pointer;transition:background .15s}.choice-buttons label:has(input:checked){background:#e2f0ff;border-color:#c8e3ff}.choice-buttons label:has(input:disabled){opacity:.5}.choice-buttons input{appearance:none;-webkit-appearance:none;width:25px;height:25px;border:1.7px solid #969ca5;border-radius:50%;background:#fff;margin:0;position:relative;flex-shrink:0}.choice-buttons input:checked{border:8px solid var(--blue)}.shopwork-toggle{display:flex;align-items:center;gap:8px;font-size:12px;color:#666e78;margin:-3px 0 14px;font-weight:500}.shopwork-toggle input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:5px;border:1.5px solid #abb2bd;background:#fff;margin:0}.shopwork-toggle input:checked{background:var(--blue);border-color:var(--blue)}.shopwork-toggle input:checked:after{content:'✓';display:block;text-align:center;color:#fff;font-size:13px;line-height:15px}.shopwork-toggle:has(input:checked){color:#087add}#shopworkHint{font-size:11px;color:#7c8795;margin:-5px 0 14px}.timer-panel{background:linear-gradient(130deg,#eaf4ff,#edf6ff);border-radius:0 0 22px 22px;padding:17px 12px 12px;margin:0 0 8px;text-align:center}#status{font-size:0;margin:0}#elapsed{font-size:42px;line-height:1.1;letter-spacing:-1.8px;font-weight:750;font-variant-numeric:tabular-nums;color:#050506}#timerHint{font-size:12px;color:#9aa1ab;line-height:1.2;margin:6px 0 15px}.timer-actions{display:flex;gap:12px}.timer-actions button{min-height:50px;border-radius:15px;flex:1;font-size:16px;font-weight:600}.primary{background:linear-gradient(120deg,#0085ff,#007aff);color:white;border:0;border-radius:14px;min-height:47px;padding:12px 17px;font-weight:600}.start-symbol{display:inline-block;font-size:19px;vertical-align:middle;margin-right:9px}.running-panel{border-radius:24px;padding:24px 12px 13px;background:linear-gradient(135deg,#eaf4ff,#eef8ff);min-height:510px}.running-panel #status{font-size:18px;line-height:1.3;color:#1879c9;margin:4px 0 16px;font-weight:650;letter-spacing:-.3px}.running-panel #elapsed{font-size:65px;letter-spacing:-3.2px;font-weight:760;margin:0 -2px}.running-panel #timerHint{display:none}#runningJobLine{font-size:14px;color:#939aa4;margin:10px 0 20px;letter-spacing:-.15px}#runningDetails{margin:0 0 16px;text-align:left;background:#fff;border-radius:17px;padding:7px 15px}.job-detail{display:flex;gap:15px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #f0f1f4}.job-detail:last-child{border:0}.job-detail svg{width:22px;height:22px;color:#91969f;margin-top:4px}.job-detail>div{flex:1;min-width:0}.job-detail span{display:block;color:#949aa3;font-size:11px;margin:0 0 2px}.job-detail strong{display:block;color:#24282e;font-size:13px;font-weight:500;word-break:break-word;line-height:1.35}.job-detail:last-child strong{font-size:11px}.running-panel .timer-actions button{min-height:102px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;font-size:17px;font-weight:500;border-radius:20px}.pause{background:#e2e6ee;color:#08090a}.stop{background:#ff373f;color:#fff}.action-symbol{font-weight:800;font-size:30px;line-height:1.1}.pause .action-symbol{letter-spacing:-4px;margin-left:-3px}.stop .action-symbol{font-size:34px}body:has(.paused) .running-panel #status{color:#aa770f}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:440px;min-height:calc(76px + env(safe-area-inset-bottom));padding:7px 8px calc(8px + env(safe-area-inset-bottom));background:#ffffffed;backdrop-filter:blur(18px);border-top:1px solid #eceef2;display:flex;justify-content:space-around;z-index:20}.nav{background:none;color:#92979f;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;padding:0;min-width:63px}.nav>span{height:35px;min-width:57px;border-radius:18px 18px 0 0;display:flex;align-items:center;justify-content:center}.nav small{font-size:9px;font-weight:400;min-width:57px;padding:1px 4px 7px;border-radius:0 0 15px 15px;line-height:1.1}.nav svg{width:24px;height:24px}.nav.active{color:#0782ff}.nav.active>span,.nav.active small{background:#e9f5ff}.nav.active[aria-label=Start] svg{fill:#0782ff;stroke:#0782ff}.nav.active[aria-label=Start] svg path{fill:white;stroke:white;stroke-width:1}.date-navigation{display:flex;align-items:center;gap:10px;margin:4px 0 0}.date-navigation>button{width:42px;height:44px;border-radius:15px;background:#eaf5ff;color:#2584cf;flex-shrink:0;display:grid;place-items:center}.date-navigation>button svg{width:20px;height:20px}.date-navigation>span{display:flex;align-items:center;justify-content:center;gap:9px;background:#f0f3f9;border-radius:15px;min-height:46px;padding:10px 7px;flex:1;min-width:0}.date-navigation>span svg{width:20px;height:20px;color:#2085d3}.date-navigation strong{font-size:11px;font-weight:500;white-space:nowrap;letter-spacing:-.2px}.this-week{display:block;margin:5px 0 10px auto;background:none;color:#1881d8;font-size:10px;padding:4px 1px}.entry-list{display:flex;flex-direction:column;gap:13px}.entry-card{width:100%;background:#fff;border:1px solid #e9ecf2;border-radius:16px;padding:16px 14px 12px;display:grid;grid-template-columns:1fr auto;gap:3px 9px;text-align:left;box-shadow:0 1px 4px #aab0b505;color:#15181b}.entry-job{font-size:17px;font-weight:750}.entry-duration{font-size:12px;font-weight:650;align-self:center;white-space:nowrap}.entry-description{font-size:12px;color:#8f949c;max-width:210px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.entry-time{font-size:9px;color:#878d96;text-align:right;align-self:center;white-space:nowrap}.entry-operation{display:flex;align-items:center;gap:7px;color:#989fa9;font-size:12px;margin-top:9px}.entry-operation svg{width:18px;height:18px}.entry-chevron{color:#9da3ac;font-size:25px;text-align:right;line-height:1;margin-top:4px}.empty-state{text-align:center;padding:75px 10px;color:#9aa1ab}.empty-state svg{width:35px;height:35px}.empty-state h3{font-size:16px;color:#6f7783;margin:15px 0 6px}.empty-state p{font-size:12px;margin:0}.settings-list{display:flex;flex-direction:column;gap:13px;margin-top:7px}.settings-row{display:flex;align-items:center;gap:15px;min-height:76px;background:white;border:1px solid #edf0f4;border-radius:15px;padding:14px;text-align:left;color:#1384ce;text-decoration:none;width:100%}.settings-row>svg:first-child{width:28px;height:28px;stroke-width:1.7}.settings-row>span{flex:1;min-width:0}.settings-row strong{display:block;font-size:14px;font-weight:500;color:#25282c}.settings-row small{display:block;font-size:11px;color:#90969f;margin-top:3px}.settings-row>svg:last-child{width:16px;height:16px;color:#a5aab2}.sign-out{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:66px;background:#ffe0e2;color:#e1373d;border-radius:16px;margin-top:28px;font-size:15px;font-weight:600}.sign-out svg{width:26px;height:26px}.settings-status{text-align:center;margin:22px 5px 0}.settings-status p{font-size:9px;color:#a0a6af;margin:5px 0;overflow-wrap:anywhere}.report-total{background:#edf4fe;border-radius:18px;padding:20px;margin:20px 0 12px}.report-total span{font-size:13px;color:#7e8998}.report-total b{display:block;font-size:29px;letter-spacing:-1px;margin-top:6px;font-weight:750}.report-stats{display:flex;gap:12px}.report-stats>div{background:#f0f2f7;padding:15px 18px;border-radius:15px;flex:1}.report-stats span{font-size:11px;color:#9097a2}.report-stats b{display:block;font-size:25px;margin-top:5px}.report-title{font-size:19px;margin:25px 0 12px;letter-spacing:-.4px}#daily{background:#fff;border:1px solid #edf0f4;border-radius:15px;padding:5px 15px}#daily>div{display:flex;justify-content:space-between;padding:12px 0;font-size:12px;color:#8b94a1;border-bottom:1px solid #f0f1f4}#daily>div:last-child{border:0}#daily b{font-size:12px;color:#353b44;font-weight:500}.report-action{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:18px}.report-action svg{width:21px;height:21px}.secondary{background:#e9f2fe;color:#1880d4;border:0;border-radius:14px;padding:13px;min-height:46px;font-weight:500}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.auth-pending .app-shell,.auth-pending .bottom-nav{display:none!important}.account-gate{max-width:400px;padding:0 23px;margin:55px auto}.account-brand{font-size:32px;font-weight:800;letter-spacing:-1px;text-decoration:none;color:#111}.account-gate .card{background:#fff;border:1px solid #ebedf2;border-radius:22px;padding:25px;margin-top:22px}.account-gate h1{font-size:24px;line-height:1.2;letter-spacing:-.7px;margin:0 0 10px}.account-gate label{display:block;font-size:12px;color:#737b88;margin:19px 0}.account-gate input,dialog input,dialog select{display:block;width:100%;padding:12px 13px;font-size:16px;border:1px solid #e4e8ee;border-radius:11px;margin-top:7px;min-width:0;color:#252a31;background:#fff}.account-gate .primary{width:100%;margin-top:16px}.muted{font-size:12px;color:#8c949f;line-height:1.5}.account-gate .muted{font-size:11px}#accountError{font-size:12px;color:#c33b42;margin:12px 0}#accountSwitch{background:#e9f2fe;color:#1581d6;display:block;width:100%;min-height:47px;padding:12px 17px;border-radius:14px;font-size:14px;font-weight:600}.account-gate>a:last-child{display:block;text-align:center;font-size:11px;margin:23px}dialog{width:420px;max-width:calc(100vw - 32px);border:1px solid #e8ebf2;background:#fafbfd;border-radius:23px;padding:24px;max-height:90dvh;overflow:auto;box-shadow:0 20px 70px #2b334522}dialog::backdrop{background:#27314944;backdrop-filter:blur(5px)}dialog h2{font-size:24px;letter-spacing:-.6px;margin:0 0 17px}dialog label{display:block;font-size:12px;color:#767f8d;margin:16px 0}dialog .check{display:flex;align-items:center;gap:9px}dialog input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--blue)}dialog input:disabled{background:#f0f2f6;color:#a1a8b3}.dialog-actions{display:flex;gap:8px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:24px}.dialog-actions button:not(.primary){padding:11px;background:#edf0f5;color:#717d90;border-radius:10px}.dialog-actions .delete-entry{color:#e13b44!important;background:none!important;margin-right:auto;font-size:11px}#editFields{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px}#editFields label{margin:5px 0}.wide{grid-column:1/-1}.finish-question{margin-top:22px}#finishSummary{font-variant-numeric:tabular-nums}.check{display:flex;align-items:center;gap:8px}#installDialog p{margin:17px 0;font-size:13px;color:#7e8794}#setupForm>label{margin:20px 0}#message{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(91px + env(safe-area-inset-bottom));width:calc(100vw - 36px);max-width:400px;display:none;background:#242d3bea;color:#fff;backdrop-filter:blur(5px);padding:13px 17px;border-radius:14px;font-size:12px;z-index:50;text-align:center}
@media(min-width:600px){.app-shell{box-shadow:0 0 40px #4654700c}.bottom-nav{box-shadow:0 -4px 20px #64738504}.account-gate{margin-top:80px}}
@media(max-width:360px){.app-shell{padding-left:15px;padding-right:15px}.app-header h1{font-size:30px}.app-header p{font-size:13px}.entry-duration{font-size:10px}.entry-time{font-size:8px}.running-panel #elapsed{font-size:58px}.choice-buttons label{padding:10px;gap:9px}}
@media print{.app-header,.bottom-nav,#tracker,#settingsScreen,#message,.date-navigation,.this-week,.report-action{display:none!important}.app-shell{padding:0;max-width:none;box-shadow:none;min-height:0}#entriesScreen,#reportsScreen{display:block!important}.entry-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.entry-card{break-inside:avoid}.empty-state{display:none}.report-total,.report-stats,#daily{break-inside:avoid}.report-title{margin-top:18px}}

.pause:not(.resume-button) .action-symbol{font-size:0;width:21px;height:25px;letter-spacing:0;margin:0;background:linear-gradient(to right,#07090b 0 34%,transparent 34% 66%,#07090b 66% 100%);border-radius:2px}.pause.resume-button .action-symbol{font-size:27px;letter-spacing:0;margin-left:0}

.form-field textarea,.form-field select{display:block;width:100%;border:1px solid #e4e8ef;border-radius:12px;padding:12px;margin-top:7px;background:white;color:#252a31;font:inherit;font-size:15px;resize:vertical}.extra-job{border-top:1px solid #dce3ed;margin-top:20px;padding-top:15px}.extra-job-head{display:flex;align-items:center;justify-content:space-between}.extra-job-head h3{font-size:16px;margin:0}.extra-job-head button{padding:8px;color:#d94149;border-radius:8px;background:#ffe9eb;font-size:12px}#addJob{width:100%;margin-top:18px}#activeJobNotes{text-align:left;padding:0 8px 16px}.entry-notes{grid-column:1/-1;font-size:12px;color:#737e90;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:6px}.entry-description,.job-detail strong{overflow-wrap:anywhere}textarea:focus{outline:2px solid #0782ff50}.form-field textarea:disabled{background:#f0f2f5}
