:root{font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.5;color:#19243b;background:#f4f6fa;font-synthesis:none;--blue:#3454dc;--navy:#16243e;--muted:#68768e;--line:#e3e8f0}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #94b4ff;outline-offset:3px}[hidden]{display:none!important}.loading{padding:80px;text-align:center}.logo{font-size:32px;line-height:1;font-weight:400}.brand{display:flex;gap:12px;align-items:center;color:white;font-size:24px;text-decoration:none;font-weight:650;letter-spacing:-.6px}.shell{display:grid;grid-template-columns:234px minmax(0,1fr);min-height:100vh}aside{background:var(--navy);color:white;position:sticky;top:0;height:100vh;padding:34px 20px;display:flex;flex-direction:column}.sidebar-label{font-size:12px;letter-spacing:1.4px;color:#8393ae;margin:48px 12px 14px}nav{display:grid;gap:8px}.nav{display:flex;align-items:center;gap:14px;border:0;background:none;color:#bbc7dc;padding:13px 14px;text-align:left;font-size:18px;border-radius:9px}.nav span{font-size:14px;font-weight:600}.nav.active{background:#344662;color:white}.nav:hover{background:#293b57}.sidebar-bottom{margin-top:auto;padding:32px 12px 0;color:#a8b5cc;font-size:14px}.local-badge{font-size:11px;letter-spacing:1.4px;color:#a9bbff}.account{display:flex;gap:11px;border-top:1px solid #35435b;padding-top:22px;margin-top:26px}.account>span{background:#3b4e6d;color:white;width:36px;height:36px;border-radius:50%;display:grid;place-items:center}.account strong{font-size:14px;color:white;display:block}.account .link{color:#abbad4;font-size:13px;padding:0}.workspace{max-width:1600px;width:100%;margin:auto;padding:34px 38px 18px;align-self:start}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:16px}h1{font-size:30px;line-height:1.2;letter-spacing:-.7px;margin:6px 0 0}h2{font-size:19px;line-height:1.4;margin:0;font-weight:650}h3{font-size:17px;margin:0 0 10px}p{margin:10px 0 20px}.eyebrow{font-size:12px;letter-spacing:1.4px;font-weight:600;color:var(--muted)}.primary,.secondary{padding:11px 17px;border-radius:8px;font-weight:600;font-size:14px;border:1px solid transparent;white-space:nowrap;min-height:43px}.primary{background:var(--blue);color:white}.primary:hover{background:#2543c4}.secondary{background:white;color:#273854;border-color:#d8dfeb}.secondary:hover{background:#f0f3f9}.link{padding:5px 0;border:0;background:none;color:var(--blue);font-size:14px}.danger{color:#b13848}.muted{color:var(--muted);font-size:14px}.error{color:#b02d40;font-size:14px}.error:empty{display:none}label{display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:7px}input,select,textarea{border:1px solid #d5ddea;background:white;color:#24334c;padding:10px 11px;border-radius:7px;width:100%;min-width:0;font-size:14px}input::placeholder,textarea::placeholder{color:#8a95a8}textarea{resize:vertical;min-height:100px}.check{flex-direction:row;align-items:center;gap:8px;font-weight:400}.check input{width:17px;height:17px;accent-color:var(--blue)}.timer-panel{background:#fff;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;padding:22px 25px;margin-bottom:23px;box-shadow:0 3px 10px #25335304}.timer-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.timer-heading h2{margin-top:5px}.timer-readout{font-size:34px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:1px;color:#273a64}.timer-fields{display:grid;grid-template-columns:1.05fr 1.7fr auto;align-items:end;gap:14px}.timer-fields button{min-width:120px}.timer-extra{display:flex;align-items:center;gap:20px;margin-top:16px;flex-wrap:wrap}.timer-extra>label:first-child{flex-direction:row;align-items:center;font-weight:400}.timer-extra input[name=tags]{width:210px;padding:7px 9px}.timer-extra .muted{font-size:12px;margin-left:auto}.filter-panel{margin:0 0 22px;padding:0 1px}.filters{display:grid;grid-template-columns:1fr 1fr 1.4fr 1.4fr auto;gap:12px;align-items:end}.filters-sub{display:flex;align-items:center;gap:15px;margin-top:14px;flex-wrap:wrap}.filters-sub input{max-width:270px}.filters-sub select{max-width:200px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.stat{background:white;border:1px solid var(--line);border-radius:10px;padding:20px 21px}.stat>span{display:block;color:#60708a;font-size:14px}.stat strong{display:block;font-size:29px;letter-spacing:-.5px;font-weight:650;margin:7px 0 2px}.stat small{color:#8390a4;font-size:12px}.records{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:24px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading p{margin:5px 0 0}.actions{display:flex;gap:9px}.table-wrap{overflow:auto;margin:0 -24px}table{border-collapse:collapse;width:100%;font-size:14px}th{color:#76839a;font-size:12px;text-transform:uppercase;letter-spacing:.4px;font-weight:600;text-align:left;background:#f8f9fc;padding:11px 16px;border-block:1px solid var(--line)}td{padding:16px;border-bottom:1px solid #edf0f5;vertical-align:top}td:first-child,th:first-child{padding-left:24px}td:last-child,th:last-child{padding-right:24px}td:nth-child(3){min-width:180px;max-width:420px;white-space:pre-wrap;overflow-wrap:anywhere}td .muted{font-size:12px}td strong{font-weight:600}td.time{white-space:nowrap;font-variant-numeric:tabular-nums}.table-day td{padding-block:9px;background:#fafbfe;color:#4d5e78;font-size:12px;font-weight:600}.table-day span{float:right;font-variant-numeric:tabular-nums}.tag{background:#eff2f8;padding:3px 7px;border-radius:5px;font-size:12px;color:#5a6a84;display:inline-block}.row-actions{display:flex;gap:12px}.icon-button{background:none;border:0;color:#687b98;font-size:22px;line-height:1;padding:3px}.empty{text-align:center;padding:45px 20px;color:#6b7a91}.empty h3{color:#314260;margin:12px 0 6px}.empty p{font-size:14px}.empty-icon{font-size:40px;color:#97a8c5}.list-filter{display:flex;align-items:center;gap:18px;margin-bottom:22px;flex-wrap:wrap}.list-filter input:not([type=checkbox]),.list-filter select{max-width:270px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}.entity-card{border:1px solid var(--line);border-radius:10px;padding:20px;overflow-wrap:anywhere}.entity-card p{font-size:14px;color:#748198;margin:8px 0 16px;white-space:pre-wrap}.entity-card h3{margin-bottom:4px}.entity-card .eyebrow{font-size:11px;letter-spacing:.6px}.entity-actions{display:flex;flex-wrap:wrap;gap:15px;border-top:1px solid var(--line);padding-top:12px;margin-top:16px}.entity-actions button{font-size:13px}.archived{opacity:.7}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.settings-grid form{display:grid;gap:18px;margin-top:20px}.settings-grid p{color:#68768e;font-size:14px}.settings-grid button{justify-self:start}hr{border:0;border-top:1px solid var(--line);margin:28px 0}.workspace-footer{display:flex;justify-content:space-between;color:#8994a5;font-size:12px;padding-top:5px;gap:20px}dialog{border:1px solid var(--line);border-radius:15px;padding:26px;width:min(620px,94vw);max-height:92vh;box-shadow:0 24px 90px #17264230;color:#19243b}dialog::backdrop{background:#15223f66;backdrop-filter:blur(2px)}.dialog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dialog-actions{display:flex;justify-content:end;gap:10px;margin-top:24px}#editorFields{display:grid;gap:17px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}#confirmDialog p{white-space:pre-wrap;color:#68768e}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#182942;color:white;padding:14px 22px;border-radius:10px;box-shadow:0 5px 20px #17264222;z-index:100;max-width:min(600px,90vw);font-size:14px}.auth{max-width:440px;margin:7vh auto;padding:20px}.auth-brand{display:flex;align-items:center;gap:12px;font-size:26px;font-weight:650;margin-bottom:35px;color:#2941a0}.auth-card{background:white;border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 16px 60px #26396309}.auth h1{font-size:27px;margin:12px 0}.auth form{display:grid;gap:18px;margin-top:28px}.auth-foot{font-size:13px;color:#8190a8;text-align:center;margin-top:24px}@media(min-width:1600px){.workspace{padding-inline:50px}}@media(max-width:1150px){.shell{grid-template-columns:195px minmax(0,1fr)}aside{padding-inline:12px}.workspace{padding:25px}.stats{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(2,1fr)}.filters button{grid-column:2}.timer-extra .muted{margin-left:0}.timer-fields{grid-template-columns:1fr 1fr}.timer-fields button{grid-column:2}.settings-grid{grid-template-columns:1fr}}@media(max-width:760px){.shell{display:block}aside{height:auto;position:static;padding:16px}.brand{font-size:22px}.sidebar-label,.sidebar-bottom{display:none}nav{display:flex;flex-wrap:wrap;margin-top:15px;gap:4px}.nav{padding:9px;font-size:16px}.nav span{font-size:12px}.workspace{padding:22px 15px}h1{font-size:26px}.timer-panel{padding:18px}.timer-fields{display:flex;flex-direction:column;align-items:stretch}.timer-heading{align-items:start}.timer-readout{font-size:24px}.timer-extra{gap:12px}.stats{gap:10px}.stat{padding:15px}.stat strong{font-size:24px}.records{padding:18px}.table-wrap{margin-inline:-18px}.section-heading{align-items:start;flex-wrap:wrap}.actions{flex-wrap:wrap}.filters{gap:10px}.field-row{grid-template-columns:1fr}.workspace-footer{flex-direction:column;gap:4px}}
@media(max-width:760px){.sidebar-bottom{display:block;padding:0 8px}.sidebar-bottom>p,.sidebar-bottom>.local-badge{display:none}.account{margin-top:14px;padding-top:12px}.account>div{display:flex;align-items:center;gap:18px}.account .link{font-size:14px}}
.brand,.auth-brand{flex-wrap:wrap}.brand-logo{display:block;width:145px;height:35px;object-fit:contain;background:white;border-radius:5px}.brand{gap:12px}.brand>span{font-size:23px}.auth-brand{gap:15px}.timer-extra select{min-width:180px;max-width:250px}.month-toolbar{display:flex;align-items:end;gap:18px;margin-bottom:20px}.month-toolbar>label{flex:0 0 90px}.month-buttons{display:flex;flex-wrap:wrap;gap:6px}.month-button{border:1px solid #dce3f0;background:white;border-radius:7px;padding:8px 10px;font-size:14px;color:#5f6e87;min-height:39px}.month-button:hover{background:#eaf0ff}.month-button.selected{background:#3454dc;border-color:#3454dc;color:white;font-weight:600}.filters-sub #filterWorker{max-width:200px}.analytics{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:18px}.analytics .records{padding:20px}.analytics .section-heading{margin-bottom:12px;align-items:baseline}.analytics h2{font-size:17px}.chart-caption{font-size:12px;line-height:1.5;margin:12px 0 0}#yearChart svg{width:100%;height:auto;display:block;min-height:120px}.chart-value,.chart-month{font-size:14px;fill:#66768d}.chart-value{font-weight:600;fill:#31476e}.chart-limit-label{font-size:13px;fill:#95610d}.limits-list{max-height:225px;overflow:auto;padding-right:4px}.limit-card+.limit-card{margin-top:18px;padding-top:16px;border-top:1px solid #e5eaf3}.limit-heading,.limit-numbers{display:flex;align-items:start;justify-content:space-between;gap:12px}.limit-heading strong{font-size:14px;display:block}.limit-heading small{display:block;color:#7b879c;font-size:12px}.limit-heading .link{font-size:12px;white-space:nowrap}.limit-numbers{margin-top:10px;font-size:13px}.limit-numbers strong{font-weight:600;color:#3853ba;text-align:right}.over .limit-numbers strong{color:#bc3544}progress{appearance:none;display:block;width:100%;height:7px;border:0;border-radius:5px;overflow:hidden;margin-top:8px;background:#edf0f7}progress::-webkit-progress-bar{background:#edf0f7;border-radius:5px}progress::-webkit-progress-value{background:#4163dc;border-radius:5px}progress::-moz-progress-bar{background:#4163dc;border-radius:5px}.over progress::-webkit-progress-value{background:#c33e4f}.over progress::-moz-progress-bar{background:#c33e4f}.worker-archive-toggle{margin-bottom:20px}.project-limit-label{font-size:13px!important;color:#3e5684!important}@media(max-width:1150px){.analytics{grid-template-columns:1fr}.month-toolbar{align-items:start}.brand-logo{width:135px;height:auto}}@media(max-width:760px){.month-toolbar{gap:10px}.month-toolbar>label{flex-basis:80px}.month-button{padding:7px 9px}.brand{align-items:center}.brand-logo{width:145px}.analytics .records{padding:17px}.limit-numbers{flex-wrap:wrap}}
.limit-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 17px;margin-bottom:18px;border:1px solid #edc4cc;background:#fff4f5;border-radius:9px;font-size:14px;color:#a72d40}.limit-alert .link{color:#a72d40;white-space:nowrap}@media(max-width:760px){.limit-alert{flex-wrap:wrap}}
.period-toolbar{display:flex;align-items:end;gap:18px;margin-bottom:18px}.period-toolbar label{min-width:240px}.period-toolbar .muted{margin-bottom:10px}.timer-extra{row-gap:12px}#timeCalculationHint{margin:0;font-size:13px}@media(max-width:760px){.period-toolbar{flex-wrap:wrap}.period-toolbar label{min-width:0;width:100%}}

/* MyTime by JWSYS — midnight, ocean and mint */
:root{--blue:#087d91;--navy:#102b40;--muted:#62788a;--line:#dfe9ed;background:#f3f7f8;color:#173247}
.brand,.auth-brand{flex-wrap:nowrap;gap:12px;letter-spacing:-1px}.brand-mark{width:48px;height:48px;flex-shrink:0}.brand>span,.brand-wordmark{font-size:29px;font-weight:750;line-height:1.05}.brand-wordmark small{display:block;font-size:11px;font-weight:500;letter-spacing:2.5px;margin-top:8px;color:#88b9c6}.auth-brand .brand-wordmark small{color:#52778b}.auth-brand{color:#14364c}
aside{background:radial-gradient(ellipse at 0 0,#1b4861 0,transparent 65%),#102b40;border-right:1px solid #234258}.sidebar-label{color:#87a9ba}.nav{border-radius:10px}.nav.active{background:#236276;color:#fff;box-shadow:inset 3px 0 #56d9ce}.nav:hover{background:#21475a;color:white}.local-badge{color:#76decf;border-color:#386273;background:#183e4d}.primary{background:#087d91;border-color:#087d91;box-shadow:0 3px 7px #087d9118}.primary:hover{background:#066779;border-color:#066779}.secondary:hover{background:#eef7f7}.workspace{background:radial-gradient(ellipse at 90% 0,#e5f2f4,transparent 40%)}h1{letter-spacing:-1px}.eyebrow{color:#528191}.timer-panel{border-left:4px solid #20aaa9;background:linear-gradient(115deg,#fff 55%,#edf9f8);box-shadow:0 8px 26px #16364706}.timer-readout{color:#087d91;letter-spacing:2px}.records,.stat{box-shadow:0 5px 20px #153c5004}.stat{border-top:3px solid #82c5cc}.stat:first-child{background:#12394d;border-color:#12394d}.stat:first-child>span,.stat:first-child small{color:#a9cbd5}.stat:first-child strong{color:#fff}.stat strong{color:#173e52}.month-button.selected{background:#087d91;border-color:#087d91}.month-button:hover{background:#e1f3f3;color:#155d69}.table-day td{background:#edf6f7;color:#215b6b}progress::-webkit-progress-value{background:#159eab}progress::-moz-progress-bar{background:#159eab}.limit-numbers strong{color:#087d91}.over .limit-numbers strong{color:#bc3544}.chart-value{fill:#246073}.auth{position:relative;max-width:1060px;margin:8vh auto;padding:36px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:70px;align-items:start}.auth-brand{grid-column:1/-1;margin-bottom:60px}.auth-intro h2{font-size:38px;line-height:1.25;letter-spacing:-1.3px;margin:20px 0}.auth-intro h2 em{font-style:normal;color:#087d91}.auth-intro p{color:#647f8e;line-height:1.8}.auth-card{padding:36px;border-radius:22px;box-shadow:0 24px 70px #153f5010;border-color:#dce8ed}.auth-foot{grid-column:2;font-size:12px}.time-art{height:230px;position:relative;margin-top:25px}.orbit{position:absolute;border:1px solid #b9d9df;border-radius:50%;width:220px;height:220px;left:72px;top:0}.orbit-two{width:166px;height:166px;left:99px;top:27px;border-style:dashed}.art-clock{position:absolute;width:120px;height:120px;top:50px;left:122px;border:9px solid white;border-radius:50%;background:linear-gradient(135deg,#173c53,#0e7788);box-shadow:0 16px 35px #143e5226}.art-clock i,.art-clock b{position:absolute;width:4px;background:#91f2df;left:49px;bottom:49px;border-radius:4px;transform-origin:bottom}.art-clock i{height:32px;transform:rotate(0deg)}.art-clock b{height:24px;transform:rotate(120deg)}.art-clock>span{position:absolute;width:10px;height:10px;background:white;border-radius:50%;top:46px;left:46px}.art-chip{position:absolute;background:white;border:1px solid #d8e9ed;box-shadow:0 10px 28px #234c5a0c;border-radius:12px;padding:14px 18px;color:#5b7d8c;font-size:10px;letter-spacing:1px}.art-chip strong{display:block;font-size:13px;color:#244859;letter-spacing:0;margin-top:4px}.chip-one{left:0;top:135px}.chip-two{right:0;top:30px;font-size:12px;letter-spacing:0}.status-dot{display:inline-block;width:7px;height:7px;background:#16b79c;border-radius:50%;margin-right:6px}
@media(max-width:1150px){.brand>span{font-size:24px}.brand-mark{width:40px;height:40px}.brand{gap:9px}.brand-wordmark small{font-size:10px;letter-spacing:1.5px}}@media(max-width:800px){.auth{max-width:470px;display:block;margin:3vh auto;padding:20px}.auth-brand{margin-bottom:28px}.auth-intro{display:none}.auth-card{padding:26px}.auth-foot{text-align:center}.brand>span{font-size:27px}}
#yearChart rect[fill="#3454dc"]{fill:#087d91}#yearChart rect[fill="#9aaef2"]{fill:#86c8cd}
.portal-shell{max-width:1150px;margin:0 auto;padding:30px}.portal-shell header{display:flex;justify-content:space-between;gap:20px}.portal-shell .auth-brand{margin:0;text-decoration:none}.portal-shell .workspace-footer{margin-top:40px}.portal-shell form,#ticketDialog form,#portalAccountForm{display:grid;gap:16px}.portal-shell #portalLoginBox,.portal-shell #portalPasswordBox{max-width:460px;margin:30px auto}.ticket-description,.ticket-message p{white-space:pre-wrap;overflow-wrap:anywhere}.ticket-message{padding:14px 16px;border:1px solid var(--line);border-radius:10px;margin:12px 0}.ticket-message small{color:var(--muted)}.ticket-message.internal{background:#fff6e3;border-color:#edcf91}.ticket-badges{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}#ticketDialog,#portalDialog{width:min(780px,94vw)}#ticketDialog .actions{flex-wrap:wrap}.portal-shell h3,#ticketCards h3{overflow-wrap:anywhere}@media(max-width:600px){.portal-shell{padding:16px}.portal-shell header{flex-wrap:wrap}}
#portalDialog form{display:grid;gap:16px}

/* Actual and reported time remain comparable at every viewport. */
@media(min-width:1250px){.stats{grid-template-columns:repeat(5,minmax(0,1fr));}}
.table-day span{white-space:normal}.limit-numbers small{font-weight:400;color:var(--muted)}
