dialog{color:#000;background:#fff;border:solid;width:fit-content;height:fit-content;margin:auto;padding:1em;display:block;position:absolute;left:0;right:0}dialog:not([open]){display:none}dialog+.backdrop{background:#0000001a;position:fixed;top:0;bottom:0;left:0;right:0}._dialog_overlay{position:fixed;top:0;bottom:0;left:0;right:0}dialog.fixed{position:fixed;top:50%;transform:translateY(-50%)}:root{color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1110;--paper:#101916;--ink:#edf4ef;--green:#8fe3b5;--green-ink:#07130d;--muted:#9eada4;--line:#293a31;--soft:#17271f;--hover:#20372b;--warning:#e8c77b;--notice-bg:#302819;--notice-ink:#f1d8a2;--danger:#f0aaa0;--safe-top:max(env(safe-area-inset-top,0px), var(--app-tg-safe-top,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px), var(--app-tg-safe-bottom,0px));--safe-left:max(env(safe-area-inset-left,0px), var(--app-tg-safe-left,0px), var(--app-tg-content-left,0px));--safe-right:max(env(safe-area-inset-right,0px), var(--app-tg-safe-right,0px), var(--app-tg-content-right,0px));--motion-press:.1s;--motion-panel:.18s;--motion-ease:cubic-bezier(.16, 1, .3, 1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% -15%, #8fe3b51c, transparent 34rem), var(--bg);min-width:280px;margin:0}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.5}:is(button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible){outline-offset:3px;outline:3px solid #78a88f}button{transition:background-color var(--motion-press), color var(--motion-press), opacity var(--motion-press), transform var(--motion-press)}button:not(:disabled):active{filter:brightness(.94);transform:translateY(1px)}a{color:inherit;text-underline-offset:3px}::selection{color:var(--paper);background:var(--green)}input,textarea{caret-color:var(--green)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.55px;margin-bottom:0;font-size:25px;font-weight:650;line-height:1.2}h2{letter-spacing:-.15px;margin-bottom:10px;font-size:17px;font-weight:600;line-height:1.3}h3{overflow-wrap:anywhere;margin-bottom:9px;font-size:20px;font-weight:600;line-height:1.3}p{line-height:1.5}.workspace{min-height:100vh;min-height:var(--app-viewport-height,100svh);justify-content:center;display:flex;overflow-x:hidden}.app-shell{background:var(--paper);width:100%;max-width:520px;min-height:100vh;min-height:var(--app-viewport-height,100svh);border-left:1px solid color-mix(in srgb, var(--line) 55%, transparent);border-right:1px solid color-mix(in srgb, var(--line) 55%, transparent);flex-direction:column;display:flex}.flower{color:var(--green);width:45px;height:45px;filter:drop-shadow(0 0 16px color-mix(in srgb, var(--green) 24%, transparent))}.avatar{background:var(--soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:14px;font-weight:600;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-large{width:66px;height:66px;font-size:22px}main{min-width:0;padding:calc(13px + var(--safe-top) + var(--app-tg-content-top,0px)) calc(20px + var(--safe-right)) calc(100px + var(--safe-bottom) + var(--app-tg-content-bottom,0px)) calc(20px + var(--safe-left));flex:1}.screen-heading{justify-content:space-between;align-items:center;gap:12px;min-height:32px;margin-bottom:16px;display:flex}.date-chip{color:var(--muted);white-space:nowrap;font-size:13px}.muted,.caption,.quiet-note{color:var(--muted)}.muted{font-size:15px}.caption{font-size:12px;line-height:1.5}.time-summary{flex-direction:column;justify-content:center;align-items:center;margin:2px 0 15px;display:flex}.clock-face{aspect-ratio:1;background:conic-gradient(from -42deg, var(--green) 0 24%, var(--line) 24% 100%);isolation:isolate;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:0;width:min(100%,238px);padding:34px 28px 25px;display:flex;position:relative;box-shadow:0 18px 42px #00000038}.time-summary.is-working .clock-face{animation:4.8s ease-in-out infinite clock-breathe}.clock-face:after{content:"";z-index:-1;border-radius:inherit;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line);position:absolute;top:8px;bottom:8px;left:8px;right:8px}.time-summary:not(.is-working) .clock-face{background:conic-gradient(from -42deg, var(--line) 0 100%)}.clock-face .presence-status{color:var(--muted);z-index:1;justify-content:center;min-height:20px}.clock-face .presence-status.break-status{color:var(--warning)}.presence-status{align-items:center;gap:7px;font-size:13px;line-height:20px;display:flex}.status-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.status-dot.quiet{background:#83958a}.break-status{color:var(--warning)}.break-status .status-dot{background:var(--warning)}.attendance-time{letter-spacing:-1.8px;font-variant-numeric:tabular-nums;z-index:1;margin:12px 0 3px;font-size:clamp(39px,12vw,50px);font-weight:600;line-height:1.1;display:block}.clock-caption{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;z-index:1;font-size:11px}.time-meta{width:min(100%,238px);color:var(--muted);justify-content:space-between;gap:10px;margin-top:9px;padding:0 10px;font-size:12px;display:flex}.time-meta strong{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:4px;font-size:13px;font-weight:600}.primary,.secondary{border:0;border-radius:12px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:50px;padding:13px 16px;font-size:16px;font-weight:600;line-height:1.35;display:inline-flex}.primary{color:var(--green-ink);background:var(--green);box-shadow:0 9px 24px color-mix(in srgb, var(--green) 18%, transparent)}.secondary{background:var(--soft)}.break-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.break-controls.has-active-break{grid-template-columns:1fr}.break-action,.text-button{background:0 0;border:0;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 3px;font-size:14px;line-height:1.3;display:inline-flex}.break-action{background:var(--soft);border-radius:10px;padding:10px}.break-action small{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:3px;font-size:11px;display:block}.day-details{color:var(--muted);justify-content:space-between;gap:16px;margin-top:14px;font-size:12px;display:flex}.day-details strong{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:4px;font-size:14px;font-weight:600}.day-journal{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:17px}.day-journal summary,.outgoing-requests summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:44px;font-size:14px;font-weight:500;list-style:none;display:flex}.day-journal summary::-webkit-details-marker{display:none}.outgoing-requests summary::-webkit-details-marker{display:none}.day-journal[open] summary svg{transform:rotate(180deg)}.empty-journal{color:var(--muted);align-items:center;gap:10px;padding:6px 0 12px;display:flex}.empty-journal p{margin:0;font-size:13px}.quiet-note{margin:11px 0 0;font-size:11px}.timeline{margin:4px 0 12px;padding:0;list-style:none}.timeline li{grid-template-columns:44px 8px 1fr;align-items:center;gap:12px;min-height:36px;font-size:14px;display:grid;position:relative}.timeline time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.event-dot{background:var(--green);z-index:1;border-radius:50%;width:6px;height:6px}.event-dot.break{background:var(--warning)}.timeline li:not(:last-child):after{content:"";background:var(--line);width:1px;height:30px;position:absolute;top:21px;left:58.5px}.undo-action{color:var(--muted)}.bottom-nav{background:var(--paper);border-top:1px solid var(--line);width:min(100%,520px);padding:5px calc(7px + var(--safe-right)) calc(6px + var(--safe-bottom) + var(--app-tg-content-bottom,0px)) calc(7px + var(--safe-left));z-index:5;flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:6px 1px;font-size:12px;display:flex}.bottom-nav button.selected{color:var(--green);background:var(--soft);font-weight:600}:root[data-keyboard=open] .bottom-nav{display:none}.welcome{padding:22px 0}.welcome>.flower{margin:20px 0}.welcome h1{letter-spacing:-.75px;margin-bottom:18px;font-size:34px}.welcome>.muted{max-width:36ch;margin-bottom:25px}.preferences{flex-direction:column;gap:20px;margin-top:23px;display:flex}label{flex-direction:column;gap:8px;font-size:14px;font-weight:500;display:flex}input,select{border:1px solid var(--line);background:var(--paper);min-height:48px;color:var(--ink);border-radius:10px;width:100%;min-width:0;padding:11px 12px;font-size:16px}input[type=time]{font-variant-numeric:tabular-nums;min-width:145px;max-width:175px;font-size:21px}input::placeholder{color:var(--muted);opacity:1}.preferences p{margin:0}.setting-toggle{border-top:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;gap:18px;padding:17px 0 0}.setting-toggle strong{font-size:14px;font-weight:600;display:block}.setting-toggle small{color:var(--muted);margin-top:5px;font-size:12px;font-weight:400;line-height:1.5;display:block}.setting-toggle input{width:24px;min-height:44px;accent-color:var(--green);flex-shrink:0}.saved{color:var(--green);align-items:center;gap:7px;font-size:13px;display:flex}.notice{background:var(--notice-bg);color:var(--notice-ink);border-radius:11px;margin:14px 0;padding:12px 13px;font-size:14px}.notice .text-button{color:inherit}.loading{min-height:240px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.loading .flower,.welcome>.flower{animation:flower-arrive .9s var(--motion-ease) both}.loading p,.welcome>h1,.welcome>.muted,.welcome>.preferences{animation:content-arrive .65s var(--motion-ease) both}.loading-copy{color:var(--muted);padding:22px 0;font-size:14px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sheet{padding:19px 20px calc(22px + var(--safe-bottom) + var(--app-tg-content-bottom,0px));background:var(--paper);color:var(--ink);width:min(100%,520px);max-height:calc(var(--app-visible-height,100dvh) - var(--safe-top) - var(--app-tg-content-top,0px) - 14px);overscroll-behavior:contain;margin:auto auto var(--app-keyboard-offset,0px);animation:sheet-enter var(--motion-panel) var(--motion-ease);border:0;border-radius:20px 20px 0 0;overflow-y:auto}.sheet+.backdrop{background:#1025196b}.sheet::backdrop{background:#1025196b}.sheet-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.sheet-head h2{overflow-wrap:anywhere;min-width:0;margin:0;font-size:20px}.icon-button,.round-action{background:var(--soft);border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.sheet .primary{margin-top:20px}.time-options{grid-template-columns:1fr 1fr;gap:9px;margin:20px 0;display:grid}.time-options button{background:var(--paper);border:1px solid var(--line);text-align:left;border-radius:11px;min-height:78px;padding:13px 10px;font-size:13px}.time-options strong{margin-top:8px;font-size:15px;font-weight:600;display:block}.time-options .chosen{border-color:var(--green);background:var(--soft)}.departure-total{flex-direction:column;gap:10px;margin:22px 0;display:flex}.departure-total span{color:var(--muted);font-size:14px}.departure-total strong{font-variant-numeric:tabular-nums;font-size:42px;font-weight:550}.recovery{padding:20px 0 5px}.recovery h2{margin-bottom:14px;font-size:23px;line-height:1.25}.recovery p{color:var(--muted);font-size:15px}.recovery .primary{margin-top:8px}.stat-overview,.detail-stats{gap:24px;padding:15px 0;display:flex}.stat-overview strong{letter-spacing:-.6px;font-variant-numeric:tabular-nums;font-size:32px;font-weight:550;display:block}.stat-overview span,.detail-stats span{color:var(--muted);margin-top:6px;font-size:12px;display:block}.week-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:15px;height:170px;margin:23px 0 12px;padding:15px 5px;display:flex}.week-chart>div{color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:10px;font-size:12px;display:flex}.bar{background:var(--green);border-radius:5px 5px 1px 1px;width:100%;max-width:25px}.bar.provisional{background:#97b09b}.history-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.history-row strong{font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.history-row span{color:var(--muted);margin-top:5px;font-size:12px;display:block}.empty-copy{color:var(--muted);padding:20px 0;font-size:14px}.settings-links{border-top:1px solid var(--line);margin-top:26px}.settings-links button{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-height:60px;display:flex}.settings-links button span{flex:1}.settings-links>div{padding:18px 0}.settings-links strong{margin-top:5px;font-size:14px;font-weight:500;display:block}.search{margin-top:22px;display:block;position:relative}.search svg{color:var(--muted);position:absolute;top:15px;left:12px}.search input{padding-left:39px}.user-list{margin-top:13px}.user-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:11px;width:100%;padding:14px 0;display:flex}.user-row>span:nth-child(2){flex:1;min-width:0}.user-row strong{overflow-wrap:anywhere;font-size:15px;font-weight:500;display:block}.user-row small{color:var(--muted);margin-top:5px;font-size:12px;display:block}.pagination{justify-content:space-between;align-items:center;gap:9px;margin-top:12px;display:flex}.detail-stats{gap:15px;margin:12px 0}.detail-stats>div{flex:1;min-width:0}.detail-stats strong{font-variant-numeric:tabular-nums;font-size:21px;font-weight:500}.admin-actions{gap:10px;margin-top:16px;display:grid}.back{color:var(--muted);padding-left:0}.people-tabs{border-bottom:1px solid var(--line);gap:24px;margin-bottom:16px;display:flex}.people-tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;padding:5px 0 12px;font-size:15px}.people-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--green);font-weight:600}.people-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.people-toolbar p{max-width:28ch;margin:0;font-size:13px}.requests-section{margin-bottom:23px}.requests-section h2 span{color:var(--muted);margin-left:5px;font-size:13px;font-weight:400}.requests-section .caption{margin-bottom:6px}.list-heading{justify-content:space-between;align-items:center;gap:12px;padding:5px 0 8px;display:flex}.list-heading h2{margin:0}.list-heading>span{color:var(--muted);font-size:11px}.person-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:11px;width:100%;min-height:75px;padding:14px 0;display:flex}.person-copy{flex:1;min-width:0;display:block}.person-copy strong{overflow-wrap:anywhere;font-size:14px;font-weight:550;line-height:1.35;display:block}.person-copy small{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.4;display:block}.person-copy small.friend-status{align-items:center;gap:5px;display:flex}.friend-status.smoking,.friend-status.on_break{color:var(--warning)}.friend-status.away .status-dot,.friend-status.needs_checkout .status-dot{background:#83958a}.person-hours{font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.person-row>svg{color:var(--muted)}.request-actions{align-items:center;gap:5px;display:flex}.request-row{gap:9px}.request-row .avatar{width:36px;height:36px;font-size:12px}.request-row .person-copy strong{font-size:13px}.accept-request{background:var(--green);width:44px;height:44px;color:var(--green-ink);border:0;border-radius:50%}.outgoing-requests{border-top:1px solid var(--line);margin-top:18px}.outgoing-requests summary span{color:var(--muted);font-size:12px}.status-explanation{margin:20px 0 0}.people-empty{text-align:center;padding:30px 16px}.people-empty>svg{color:var(--green);margin-bottom:15px}.people-empty h2{margin-bottom:10px;font-size:20px}.people-empty p{color:var(--muted);max-width:29ch;margin:0 auto 20px;font-size:14px}.people-empty .secondary{max-width:270px}.friend-profile,.invite-person{text-align:center;padding:5px 0 15px}.friend-profile h3,.invite-person h3{margin-top:14px}.friend-profile .friend-status{color:var(--muted);font-size:13px}.period-label{margin-top:10px;font-size:13px}.friend-time{font-variant-numeric:tabular-nums;margin:22px 0;font-size:40px;font-weight:550}.friend-time span{color:var(--muted);margin-top:5px;font-size:13px;font-weight:400;display:block}.danger-action{color:var(--danger)}.invite-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:17px;display:grid}.invite-actions .primary{margin-top:0}.invite-actions .secondary{font-size:14px}.invite-actions+.caption{margin:14px 0 0}.ranking-controls{align-items:center;gap:13px;margin-bottom:14px;display:flex}.scope-control{background:var(--soft);border-radius:10px;flex-shrink:0;padding:3px;display:inline-flex}.scope-control button{color:var(--muted);background:0 0;border:0;border-radius:8px;min-height:38px;padding:7px 13px;font-size:13px}.scope-control .selected{background:var(--paper);color:var(--ink);font-weight:600}.ranking-controls select{min-height:44px;font-size:13px}.ranking-consent{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin:18px 0;padding:8px 0;display:flex}.ranking-consent p{color:var(--muted);max-width:23ch;margin:0;font-size:12px}.ranking-consent .text-button{color:var(--green);text-align:left;font-size:12px;font-weight:600}.ranking-heading{color:var(--muted);grid-template-columns:34px 1fr auto;gap:10px;padding:9px 0;font-size:11px;display:grid}.ranking-list{margin:0;padding:0;list-style:none}.ranking-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:70px;padding:12px 0;display:flex}.ranking-row.is-self{background:var(--soft);border-bottom-color:#0000;border-radius:10px;padding-left:9px;padding-right:9px}.rank-number{font-variant-numeric:tabular-nums;width:24px;color:var(--muted);text-align:center;flex-shrink:0;font-size:15px}.ranking-row .avatar{width:34px;height:34px;font-size:12px}.ranking-hours{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:15px;font-weight:600}.my-ranking{border-top:1px solid var(--line);margin-top:20px;padding-top:17px}.my-ranking>.caption{margin-bottom:7px;display:block}@keyframes sheet-enter{0%{opacity:.65;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes clock-breathe{0%,to{box-shadow:0 18px 42px #00000038}50%{box-shadow:0 20px 48px color-mix(in srgb, var(--green) 15%, transparent)}}@keyframes flower-arrive{0%{opacity:0;transform:scale(.72)rotate(-12deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes content-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (hover:hover){button:not(:disabled):hover{background-color:var(--hover)}.primary:not(:disabled):hover,.accept-request:not(:disabled):hover{background-color:var(--green);filter:brightness(.92)}}@media (min-width:720px){.workspace{padding:24px 20px}.app-shell{border-radius:20px;min-height:calc(100svh - 48px);box-shadow:0 12px 48px #1a392414}.bottom-nav{border-radius:0 0 20px 20px;bottom:24px}.sheet{border-radius:18px;margin:auto}main{padding-bottom:100px}}@media (max-width:340px){main{padding-left:calc(16px + var(--safe-left));padding-right:calc(16px + var(--safe-right))}.attendance-time{font-size:44px}.day-details{gap:9px;font-size:11px}.day-details strong{font-size:13px}.ranking-controls{gap:8px}.scope-control button{padding:7px 10px}.request-actions{gap:2px}.request-actions .icon-button,.accept-request{width:44px}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#edf2ee;--paper:#fff;--ink:#183d32;--green:#2d7158;--green-ink:#fff;--muted:#5d6e64;--line:#d9e2dc;--soft:#edf4ee;--hover:#e2eee5;--warning:#86602e;--notice-bg:#fbf1e5;--notice-ink:#81582d;--danger:#a44335}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1110;--paper:#101916;--ink:#edf4ef;--green:#8fe3b5;--green-ink:#07130d;--muted:#9eada4;--line:#293a31;--soft:#17271f;--hover:#20372b;--warning:#e8c77b;--notice-bg:#302819;--notice-ink:#f1d8a2;--danger:#f0aaa0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}body.has-sheet{overflow:hidden}.skip-link{background:var(--paper);color:var(--ink);z-index:100;padding:12px 16px;position:fixed;top:8px;bottom:auto;left:8px;right:auto;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}h1,h2,h3{text-wrap:balance;scroll-margin-top:calc(var(--safe-top) + 16px)}
