:root{--bg:#f2f4ee;--surface:#fff;--ink:#1c2620;--muted:#5e6b62;--line:#dce2d8;--on:#0e6656;--on-ink:#fff;--tile:#e3e9df;--tile-ink:#1c2620;--accent:#e8a33a;--accent-ink:#2a1c05;--danger:#b3402f;--display:"Bricolage Grotesque", "Avenir Next", system-ui, sans-serif;--body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;--r:14px;--tabbar:calc(60px + env(safe-area-inset-bottom,0px))}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121815;--surface:#1a221e;--ink:#e7ede8;--muted:#9aa79f;--line:#2b3530;--on:#2e9a84;--on-ink:#04140f;--tile:#222c27;--tile-ink:#e7ede8;--accent:#f0b457;--accent-ink:#2a1c05;--danger:#e0715f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#121815;--surface:#1a221e;--ink:#e7ede8;--muted:#9aa79f;--line:#2b3530;--on:#2e9a84;--on-ink:#04140f;--tile:#222c27;--tile-ink:#e7ede8;--accent:#f0b457;--accent-ink:#2a1c05;--danger:#e0715f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font:15px/1.45 var(--body);padding:0 16px calc(var(--tabbar) + 90px);-webkit-tap-highlight-color:transparent;max-width:760px;margin:0 auto}body.wide{max-width:1320px}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}img{max-width:100%}a{color:var(--on)}.hint{color:var(--muted);font-size:12.5px}.btn{cursor:pointer;background:var(--tile);height:44px;color:var(--ink);border:0;border-radius:12px;padding:0 16px;font-weight:700}.btn.primary{background:var(--on);color:var(--on-ink)}.msg{background:var(--tile);border-radius:10px;padding:10px 12px;font-size:14px}.tabbar{z-index:15;height:var(--tabbar);padding:0 max(8px,env(safe-area-inset-left,0px)) env(safe-area-inset-bottom,0px);background:color-mix(in srgb,var(--surface) 92%,transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:saturate(1.4)blur(14px);backdrop-filter:saturate(1.4)blur(14px);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar button{max-width:160px;color:var(--muted);font:600 11.5px/1.1 var(--body);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0;flex:1;align-content:center;justify-items:center;gap:2px;padding:6px 0;display:grid}.tabbar button.on{color:var(--on)}.tabbar button.on svg{stroke-width:2.4px}body:has(dialog[open]) .tabbar{visibility:hidden}.signin{place-items:center;min-height:100svh;padding-block:32px;display:grid}.signin form{background:var(--surface);border:1px solid var(--line);border-radius:18px;gap:14px;width:min(380px,100%);padding:22px;display:grid}.signin h1{font:800 32px/1.05 var(--display);letter-spacing:-.01em;margin:0}.signin p{color:var(--muted);margin:0}.signin label{color:var(--muted);gap:4px;font-size:13px;font-weight:500;display:grid}.signin input{border:1px solid var(--line);background:var(--bg);height:46px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:16px}.signin-logo{line-height:0}.sheet-top{z-index:2;background:var(--surface);touch-action:none;cursor:grab;justify-content:space-between;align-items:center;gap:8px;min-height:36px;margin:-10px -6px -4px;padding:10px 6px 4px;display:flex;position:sticky;top:0}.grabber{background:var(--line);border-radius:3px;width:40px;height:5px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.sheet-title{font:800 22px/1.15 var(--display);padding-top:8px}.sheet-x{background:var(--tile);width:34px;height:34px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;place-items:center;margin-left:auto;padding:0;display:grid}.emoji-btn{border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:10px;flex:none;place-items:center;width:56px;height:46px;padding:0;display:grid}.emoji-sheet .sheet{gap:10px}.emoji-sheet .emoji-group{gap:6px;display:grid}.emoji-sheet .emoji-group h4{font:700 12px/1 var(--body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0}.emoji-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:4px;display:grid}.emoji-btn>span,.emoji-grid button>span{font-size:26px;line-height:1}.emoji-grid button{cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:10px;height:44px;padding:0}.emoji-grid button:hover{background:var(--tile)}.emoji-grid button.on{background:color-mix(in srgb,var(--on) 18%,transparent);box-shadow:inset 0 0 0 2px var(--on)}.emoji-sheet .emoji-own{gap:8px;display:flex}.emoji-sheet .emoji-own input{flex:1;min-width:0}.emoji-sheet .emoji-search,.emoji-sheet .emoji-own input{border:1px solid var(--line);background:var(--bg);height:44px;color:var(--ink);border-radius:10px;width:100%;padding:0 12px;font-size:16px}html.standalone,html.standalone body{overscroll-behavior-y:none}.ptr{left:50%;top:calc(env(safe-area-inset-top,0px) + 8px);z-index:30;background:var(--surface);color:var(--ink);border:1px solid var(--line);pointer-events:none;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:600;display:flex;position:fixed;box-shadow:0 4px 16px #00000026}.ptr-icon{color:var(--on);place-items:center;transition:transform .1s;display:grid}.ptr-icon.spin{animation:.8s linear infinite ptr-spin}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ptr-icon.spin{animation:none}}dialog.lightbox{color:#fff;overscroll-behavior:contain;background:#081012f7;border:0;border-radius:0;flex-direction:column;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}dialog.lightbox::backdrop{background:0 0}.lb-bar{padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px;flex:none;justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.lb-btn{color:#13262b;cursor:pointer;background:#ffffffeb;border:0;border-radius:20px;min-width:40px;height:40px;padding:0 12px;font-size:1.3rem;font-weight:700}.lb-btn.lb-wide{font-size:.95rem}.lb-btn.lb-x{right:12px;top:calc(10px + env(safe-area-inset-top,0px));font-size:1.5rem;position:absolute}.lb-pct{color:#fff;text-align:center;font-variant-numeric:tabular-nums;min-width:52px;font-weight:700}.lb-scroll{overscroll-behavior:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;flex:1;padding:16px;position:relative;overflow:auto}.lb-stage{width:max-content;min-width:100%;min-height:100%;display:flex}.lb-sizer{flex:none;margin:auto;position:relative}.lb-img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;background:#fff;border-radius:4px;width:100%;height:100%;display:block}.tab-basket button,.tab-basket input,.tab-basket select{font:inherit;color:inherit}.tab-basket header{background:var(--bg);gap:10px;padding-block:12px 10px;display:grid;position:relative}.tab-basket .bar{align-items:center;gap:8px;display:flex}.tab-basket .listbtn{cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-width:0;padding:4px 0;display:flex}.tab-basket .listbtn h1{font:800 26px/1.1 var(--display);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.tab-basket .listbtn .chev{color:var(--muted);font-size:14px}.tab-basket .spacer{flex:1}.tab-basket .status{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.tab-basket .dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.tab-basket .status.live .dot{background:var(--on)}.tab-basket .iconbtn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;height:36px;padding:0 10px;font-size:13px;font-weight:500}.tab-basket .search{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:8px;height:46px;padding:0 12px;display:flex}.tab-basket .search input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:16px}.tab-basket .search .clear{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:18px}.tab-basket .banner{background:var(--tile);color:var(--muted);border-radius:10px;padding:8px 12px;font-size:13px}.tab-basket section{gap:10px;padding-block:14px 4px;display:grid}.tab-basket .sechead{align-items:baseline;gap:8px;display:flex}.tab-basket .sechead h2{font:700 13px/1 var(--body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0}.tab-basket .sechead .count{font-variant-numeric:tabular-nums;color:var(--muted);font-size:13px}.tab-basket .sechead .act{color:var(--on);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:13px;font-weight:700}.tab-basket .cathead{font:600 15px/1.2 var(--display);color:var(--ink);margin:6px 0 0}.tab-basket .grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.tab-basket .tile{aspect-ratio:1;border-radius:var(--r);background:var(--tile);max-width:100%;color:var(--tile-ink);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;transition:transform .12s;display:flex;position:relative}.tab-basket .tile:active{transform:scale(.96)}.tab-basket .tile.on{background:var(--on);color:var(--on-ink)}.tab-basket .tile .ic{place-items:center;height:34px;font-size:30px;line-height:1;display:grid}.tab-basket .tile .letter{background:color-mix(in srgb,currentColor 16%,transparent);width:34px;height:34px;font:800 17px/34px var(--display);text-align:center;border-radius:50%}.tab-basket .tile .nm{text-align:center;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.15;display:-webkit-box;overflow:hidden}.tab-basket .tile .sp{opacity:.85;text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11.5px;line-height:1.1;overflow:hidden}.tab-basket .who{background:var(--accent);color:#1a1a1a;min-width:20px;height:20px;font:800 11px/1 var(--body);border-radius:10px;place-items:center;padding:0 4px;display:grid}.tab-basket .tile .who{position:absolute;top:6px;right:6px}.tab-basket .tile.ghost{border:1.5px dashed var(--line);color:var(--muted);background:0 0}.tab-basket .tile.inlist:not(.on):after{content:"✓";color:var(--on);font-size:12px;font-weight:800;position:absolute;top:6px;right:8px}.tab-basket .rows{gap:6px;display:grid}.tab-basket .row{background:var(--surface);border:1px solid var(--line);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:12px;align-items:center;gap:12px;width:100%;padding:8px 12px;display:flex}.tab-basket .row .ic{text-align:center;width:30px;font-size:24px}.tab-basket .row .letter{background:var(--tile);width:30px;height:30px;font:800 15px/30px var(--display);text-align:center;border-radius:50%}.tab-basket .row .txt{flex:1;min-width:0}.tab-basket .row .nm{font-weight:500}.tab-basket .row .sp{color:var(--muted);font-size:13px}.tab-basket .row .box{border:2px solid var(--on);border-radius:50%;width:22px;height:22px}.tab-basket .empty{background:var(--surface);border:1px dashed var(--line);border-radius:var(--r);color:var(--muted);text-align:center;padding:18px}.tab-basket .empty strong{color:var(--ink);font:600 17px/1.3 var(--display);margin-bottom:4px;display:block}.tab-basket .hint{color:var(--muted);font-size:12.5px}.tab-basket details.cat{border-top:1px solid var(--line);padding-block:10px}.tab-basket details.cat summary{cursor:pointer;font:600 16px/1.2 var(--display);align-items:center;gap:8px;list-style:none;display:flex}.tab-basket details.cat summary::-webkit-details-marker{display:none}.tab-basket details.cat summary .n{font:400 13px var(--body);color:var(--muted)}.tab-basket details.cat summary:after{content:"+";color:var(--muted);font:400 20px var(--body);margin-left:auto}.tab-basket details.cat[open] summary:after{content:"–"}.tab-basket details.cat .grid{margin-top:10px}.tab-basket dialog{background:var(--surface);width:100%;max-width:560px;color:var(--ink);border:0;border-radius:18px 18px 0 0;margin:auto auto 0;padding:0}@media (width>=600px){.tab-basket dialog{border-radius:18px;margin:auto}}.tab-basket dialog::backdrop{background:#0006}.tab-basket .sheet{padding:18px 18px calc(18px + env(safe-area-inset-bottom,0px));gap:14px;display:grid}.tab-basket .sheet h3{font:800 22px/1.15 var(--display);align-items:center;gap:10px;margin:0;display:flex}.tab-basket .sheet label{color:var(--muted);gap:4px;font-size:13px;font-weight:500;display:grid}.tab-basket .sheet input,.tab-basket .sheet select{border:1px solid var(--line);background:var(--bg);height:44px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:16px}.tab-basket .chips{flex-wrap:wrap;gap:6px;display:flex}.tab-basket .chip{border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px}.tab-basket .btns{flex-wrap:wrap;gap:8px;display:flex}.tab-basket .btn{cursor:pointer;background:var(--tile);height:44px;color:var(--ink);border:0;border-radius:12px;padding:0 16px;font-weight:700}.tab-basket .btn.primary{background:var(--on);color:var(--on-ink)}.tab-basket .btn.danger{color:var(--danger);border:1px solid var(--line);background:0 0}.tab-basket .btn.grow{flex:1}.tab-basket .listopt{border:1px solid var(--line);background:var(--bg);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.tab-basket .listopt.cur{border-color:var(--on);box-shadow:inset 0 0 0 1px var(--on)}.tab-basket .listopt .n{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.tab-basket .inline{gap:8px;display:flex}.tab-basket .menuopt{min-height:56px}.tab-basket .menuopt .txt{flex:1;gap:2px;min-width:0;display:grid}.tab-basket .menuopt strong{font-size:16px}.tab-basket .menuopt .sub{color:var(--muted);font-size:13px}.tab-basket .menuopt .go{color:var(--muted);font-size:22px;line-height:1}.tab-basket .back{color:var(--on);cursor:pointer;background:0 0;border:0;justify-self:start;padding:6px 0;font-size:15px;font-weight:700}.tab-basket .seg{flex-wrap:wrap;gap:6px;display:flex}.tab-basket .seg button{border:1px solid var(--line);background:var(--bg);min-height:44px;color:var(--ink);cursor:pointer;border-radius:12px;flex:140px;padding:6px 10px;font-size:14px;font-weight:600}.tab-basket .seg button.on{border-color:var(--on);box-shadow:inset 0 0 0 1px var(--on)}.tab-basket .listbtn .kind{font-size:22px;line-height:1}.tab-basket .inline input{flex:1;min-width:0}.tab-basket .toast{left:50%;bottom:calc(var(--tabbar) + 14px);background:var(--ink);color:var(--bg);z-index:20;border-radius:12px;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:10px 14px;font-size:14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #0003}.tab-basket .toast button{color:var(--accent);cursor:pointer;background:0 0;border:0;font-weight:800}@media (prefers-reduced-motion:reduce){.tab-basket .tile{transition:none}}.tab-basket .menu{position:relative}.tab-basket .msg{background:var(--tile);border-radius:10px;padding:10px 12px;font-size:14px}.tab-basket .foot{color:var(--muted);justify-content:center;gap:12px;padding-block:24px 0;font-size:13px;display:flex}.tab-basket .person{border-bottom:1px solid var(--line);gap:8px;padding-bottom:12px;display:grid}.tab-basket .person-top{align-items:center;gap:12px;display:flex}.tab-basket .person .names input{flex:1;width:0;min-width:0}.tab-basket .sheet .person .pname{min-width:0;color:var(--ink);flex:1;font-size:16px;font-weight:600;display:block}.tab-basket .swatches{flex-wrap:wrap;gap:8px;display:flex}.tab-basket .swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:32px;height:32px;padding:0;box-shadow:inset 0 0 0 1px #00000014}.tab-basket .swatch.on{border-color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface)}.tab-basket .person .sub{color:var(--muted);font-weight:500}.tab-basket .who.big{border-radius:16px;min-width:32px;height:32px;padding:0 6px;font-size:14px}.tab-basket .sheet input.ini{text-align:center;text-transform:uppercase;letter-spacing:.05em;width:64px;font-weight:700}.tab-basket .foot button{color:var(--on);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.tab-basket .pic{object-fit:cover;background:var(--surface);border-radius:10px;width:40px;height:40px}.tab-basket .row .pic{border-radius:8px;width:30px;height:30px}.tab-basket .sheet h3 .pic{width:34px;height:34px}.tab-basket .search .scan{cursor:pointer;background:0 0;border:0;padding:4px;font-size:20px;line-height:1}.tab-basket .scanner{aspect-ratio:4/3;background:#000;border-radius:14px;max-width:100%;position:relative;overflow:hidden}.tab-basket .scanner video{object-fit:cover;width:100%;height:100%;display:block}.tab-basket .scanner-line{background:var(--accent);height:2px;box-shadow:0 0 12px var(--accent);position:absolute;top:50%;left:10%;right:10%}.tab-basket .scanlog{gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.tab-basket .scanlog li:before{content:"✓ ";color:var(--on);font-weight:800}.tab-basket .qty{justify-content:center;align-items:center;gap:16px;display:flex}.tab-basket .qty b{text-align:center;font-variant-numeric:tabular-nums;min-width:1.6em;font-size:20px}.tab-basket .qty-btn{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--ink);font:700 22px/1 var(--body);cursor:pointer;border-radius:50%;place-items:center;padding:0;display:grid}.tab-basket .qty-btn:disabled{opacity:.35;cursor:default}.tab-basket .tile .count-badge{font:800 13px/1 var(--body);font-variant-numeric:tabular-nums;position:absolute;top:6px;left:8px}.tab-basket .rowcell{align-items:center;gap:8px;display:flex}.tab-basket .rowcell .row{flex:1;min-width:0}.tab-basket .tile .ic:has(.pic){height:auto}.tab-basket .tile .pic{border-radius:12px;width:52px;height:52px}.tab-basket .picrow{align-items:center;gap:12px;display:flex}.tab-basket .picbox{background:var(--tile);border-radius:16px;flex:none;place-items:center;width:84px;height:84px;display:grid;overflow:hidden}.tab-basket .picbox img{object-fit:cover;width:100%;height:100%}.tab-basket .picbox .ic{height:auto;font-size:40px}.tab-basket .picbtns{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.tab-basket .picbtns .btn{align-items:center;height:38px;padding:0 12px;font-size:14px;display:inline-flex}.tab-basket .btn.disabled{opacity:.5;pointer-events:none}.tab-basket .why-box{background:var(--tile);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.tab-basket .why-box span{flex:1;min-width:0}.tab-basket .status.saving .dot{background:var(--accent)}.tab-basket .status.off .dot{background:var(--danger)}.tab-basket .status.off{color:var(--ink)}.tab-basket .picker{background:var(--bg);border:1px solid var(--line);border-radius:14px;gap:10px;padding:10px;display:grid}.tab-basket .picgrid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;max-height:300px;display:grid;overflow-y:auto}.tab-basket .pick{aspect-ratio:1;background:var(--surface);cursor:pointer;border:2px solid #0000;border-radius:12px;max-width:100%;padding:0;position:relative;overflow:hidden}.tab-basket .pick img{object-fit:contain;width:100%;height:100%;display:block}.tab-basket .pick .src{color:#fff;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#0000008c;padding:2px 4px;font-size:10px;line-height:1.3;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.tab-basket .pick.chosen{border-color:var(--on);box-shadow:0 0 0 2px var(--on)}.tab-basket .hero{position:relative}.tab-basket .hero-pic{background:var(--surface);cursor:zoom-in;border:0;border:1px solid var(--line);border-radius:18px;place-items:center;width:100%;max-width:100%;height:220px;padding:0;display:grid;overflow:hidden}.tab-basket .hero-pic img{object-fit:contain;width:100%;height:100%;display:block}.tab-basket .hero-pic.empty{cursor:default;background:var(--tile);border-color:#0000}.tab-basket .hero-pic.empty .ic{height:auto;font-size:72px}.tab-basket .hero-pic.empty .letter{width:88px;height:88px;font-size:40px;line-height:88px}.tab-basket .hero-pic.small{cursor:default;height:140px}.tab-basket .pictools{gap:8px;display:grid}.tab-basket .pictools .btn{text-align:left;align-items:center;gap:10px;display:flex}.tab-basket .btn:disabled{opacity:.5;cursor:default}.tab-basket .sheet h3{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.tab-basket .h3note{font:500 15px/1.2 var(--body);color:var(--muted)}.tab-basket dialog{overscroll-behavior:contain}.tab-basket .hero-pic{cursor:pointer;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;transition:transform .15s}.tab-basket .hero-pic img{-webkit-touch-callout:none;pointer-events:none}.tab-basket .hero-pic:active{transform:scale(.985)}@media (prefers-reduced-motion:reduce){.tab-basket .hero-pic{transition:none}}.tab-basket .emoji-row{align-items:center;gap:12px;display:flex}.cal-ui button,.cal-ui input,.cal-ui select,.cal-ui textarea{font:inherit;color:inherit}.cal-ui header{z-index:5;background:var(--bg);padding:calc(env(safe-area-inset-top,0px) + 10px) 0 8px;gap:8px;display:grid;position:sticky;top:0}.cal-ui .bar{align-items:center;gap:10px;display:flex}.cal-ui .bar h1{font:800 26px/1.1 var(--display);letter-spacing:-.01em;white-space:nowrap;margin:0}.cal-ui .spacer{flex:1}.cal-ui .status{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.cal-ui .dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.cal-ui .status.live .dot{background:var(--on)}.cal-ui .status.saving .dot{background:var(--accent)}.cal-ui .me-btn{background:var(--tile);color:#1a1a1a;width:36px;height:36px;font:800 13px/1 var(--body);cursor:pointer;border:0;border-radius:50%;flex:none}.cal-ui .weekbar{align-items:center;gap:6px;min-width:0;display:flex}.cal-ui .wk-month{font:700 19px/1.1 var(--display);white-space:nowrap;margin:0 auto 0 0}.cal-ui .wk-month span{color:var(--muted)}.cal-ui .wk-nav{border:1px solid var(--line);background:var(--surface);border-radius:999px;flex:none;align-items:center;display:flex;overflow:hidden}.cal-ui .wk-view{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;flex:none;height:34px;padding:0 13px;font-size:13px;font-weight:600}.cal-ui .wk-nav button{cursor:pointer;background:0 0;border:0;height:32px;padding:0 10px;font-size:19px;font-weight:600;line-height:1}.cal-ui .wk-nav .wk-today{border-left:1px solid var(--line);border-right:1px solid var(--line);padding:0 11px;font-size:13px}@media (width<=370px){.cal-ui .wk-month{font-size:17px}.cal-ui .wk-view,.cal-ui .wk-nav .wk-today{padding:0 8px}.cal-ui .wk-nav button{padding:0 7px}}.cal-ui .week{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-ui .wd{cursor:pointer;background:0 0;border:0;border-radius:12px;justify-items:center;gap:2px;min-width:0;padding:6px 0 5px;display:grid}.cal-ui .wd-name{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:700}.cal-ui .wd-num{font:700 18px/1.1 var(--display);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.cal-ui .wd.today .wd-num{color:var(--on)}.cal-ui .wd.on .wd-num{background:var(--on);color:var(--on-ink)}.cal-ui .wd.past:not(.on) .wd-num{color:var(--muted)}.cal-ui .wd-dots{gap:2px;height:6px;display:flex}.cal-ui .wd-dots i{border-radius:50%;width:6px;height:6px}.cal-ui .people{scrollbar-width:none;gap:6px;margin:0 -16px;padding:0 16px 2px;display:flex;overflow-x:auto}.cal-ui .people::-webkit-scrollbar{display:none}.cal-ui .pchip{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:5px 12px;font-size:13px;font-weight:600;display:flex}.cal-ui .pchip i{border-radius:50%;width:10px;height:10px}.cal-ui .pchip.on{border-color:var(--on);box-shadow:inset 0 0 0 1px var(--on)}.cal-ui main{gap:4px;display:grid}.cal-ui .kit{background:color-mix(in srgb,var(--accent) 22%,var(--surface));border-radius:var(--r);gap:6px;margin-top:6px;padding:10px 12px;display:grid}.cal-ui .kit-day{grid-template-columns:92px 1fr;align-items:baseline;gap:10px;display:grid}.cal-ui .kit-when{white-space:nowrap;font-size:13px;font-weight:800}.cal-ui .kit-list{flex-wrap:wrap;gap:4px 14px;font-size:14px;display:flex}.cal-ui .kit-item{text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px}.cal-ui .kit-item b{margin-right:5px}.cal-ui .kit-item small{color:var(--muted);font-weight:600}.cal-ui .kit-item.all{opacity:.6}.cal-ui .day{gap:6px;padding-top:12px;display:grid}.cal-ui .dayhead{font:700 13px/1 var(--body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:baseline;gap:8px;margin:0;display:flex}.cal-ui .dayhead small{letter-spacing:0;text-transform:none;font-size:13px;font-weight:500}.cal-ui .day.is-today .dayhead span{color:var(--on)}.cal-ui .rows{gap:6px;display:grid}.cal-ui .ev{--card:var(--surface);text-align:left;background:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;width:100%;padding:10px 12px 10px 16px;display:flex;position:relative;overflow:hidden}.cal-ui .ev:active{transform:scale(.99)}.cal-ui .ev-stripe{width:6px;position:absolute;top:0;bottom:0;left:0}.cal-ui .ev-time{font-variant-numeric:tabular-nums;flex:none;width:60px;padding-top:1px;font-size:13px;font-weight:700;line-height:1.25;display:grid}.cal-ui .ev-time small{color:var(--muted);font-weight:500}.cal-ui .ev-txt{flex:1;grid-template-columns:minmax(0,1fr);gap:3px;min-width:0;display:grid}.cal-ui .ev-title{overflow-wrap:anywhere;font-size:15.5px;font-weight:600;line-height:1.25}.cal-ui .ev-emo{margin-right:6px}.no-emoji .cal-ui .ev-emo{display:none}.cal-ui .mo-ev .ev-emo{margin-right:3px}.cal-ui .ev-span{color:var(--muted);font-size:13px;font-weight:400}.cal-ui .ev-sub{color:var(--muted);flex-wrap:wrap;gap:4px 10px;font-size:13px;display:flex}.cal-ui .ev-sub .ev-loc{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.cal-ui .ev-sub:has(.ev-loc){flex-wrap:nowrap}.cal-ui .ev-title .ev-kit{vertical-align:1px;font-size:13px;display:inline-block}.cal-ui .ev-kit{color:var(--ink);background:color-mix(in srgb,var(--accent) 28%,transparent);border-radius:6px;padding:0 6px;font-weight:600}.cal-ui .ev-kit.all{background:color-mix(in srgb,var(--on) 18%,transparent)}.cal-ui .ev-who{flex:none;align-self:center;display:flex}.cal-ui .ev-who .bdg{box-shadow:0 0 0 2px var(--card,var(--surface))}.cal-ui .ev-who .bdg+.bdg{margin-left:-4px}.cal-ui .tag{color:#1a1a1a;border-radius:6px;padding:0 6px;font-size:12.5px;font-weight:700;line-height:1.5;display:inline-block}.cal-ui .tag.all{background:var(--on);color:var(--on-ink)}.cal-ui .ev.busy{background:repeating-linear-gradient(135deg,var(--surface) 0 8px,var(--tile) 8px 16px)}.cal-ui .ev.busy .ev-title{color:var(--muted)}.cal-ui .bdg{background:var(--tile);color:#1a1a1a;min-width:24px;height:24px;font:800 11px/1 var(--body);border-radius:12px;place-items:center;padding:0 5px;display:inline-grid}.cal-ui .bdg.all{background:var(--on);color:var(--on-ink)}.cal-ui .bdg.more{background:var(--tile);color:var(--ink)}.cal-ui .empty{background:var(--surface);border:1px dashed var(--line);border-radius:var(--r);color:var(--muted);text-align:center;margin-top:12px;padding:18px}.cal-ui .empty strong{color:var(--ink);font:600 17px/1.3 var(--display);margin-bottom:4px;display:block}.cal-ui .hint{color:var(--muted);margin:0;font-size:12.5px}.cal-ui .center{text-align:center;padding:24px 0}.cal-ui .more{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--muted);border-radius:12px;margin:16px auto 0;padding:10px 16px;font-weight:600;display:block}.cal-ui dialog{background:var(--surface);width:100%;max-width:560px;max-height:92svh;color:var(--ink);border:0;border-radius:18px 18px 0 0;margin:auto auto 0;padding:0}@media (width>=600px){.cal-ui dialog{border-radius:18px;margin:auto}}.cal-ui dialog::backdrop{background:#0006}.cal-ui .sheet{padding:18px 18px calc(18px + env(safe-area-inset-bottom,0px));gap:12px;display:grid}.cal-ui .sheet h3{font:800 24px/1.15 var(--display);overflow-wrap:anywhere;align-items:flex-start;gap:10px;margin:0;display:flex}.cal-ui .sheet h4{font:700 16px/1.2 var(--display);margin:0}.cal-ui .sheet label{color:var(--muted);gap:4px;font-size:13px;font-weight:500;display:grid}.cal-ui .sheet input:not([type=checkbox]),.cal-ui .sheet select,.cal-ui .sheet textarea{border:1px solid var(--line);background:var(--bg);min-height:44px;color:var(--ink);border-radius:10px;width:100%;min-width:0;padding:0 12px;font-size:16px}.cal-ui .sheet textarea{resize:vertical;padding:10px 12px}.cal-ui .sheet input[type=date],.cal-ui .sheet input[type=time]{appearance:none;align-items:center;display:flex}.cal-ui .sheet fieldset{border:0;gap:6px;margin:0;padding:0;display:grid}.cal-ui .sheet legend{color:var(--muted);margin-bottom:6px;padding:0;font-size:13px;font-weight:500}.cal-ui .opt{opacity:.8;font-weight:400}.cal-ui .chips{flex-wrap:wrap;gap:6px;display:flex}.cal-ui .chip{border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13.5px;display:inline-flex}.cal-ui .chip.on{border-color:var(--on);background:color-mix(in srgb,var(--on) 12%,var(--bg));box-shadow:inset 0 0 0 1px var(--on);font-weight:600}.cal-ui .chip.person i{border-radius:50%;width:12px;height:12px}.cal-ui .seg{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.cal-ui .seg button{border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:12px;justify-items:center;gap:2px;min-height:56px;padding:6px 2px;font-size:12.5px;font-weight:600;display:grid}.cal-ui .seg button span{font-size:20px;line-height:1}.cal-ui .seg button.on{border-color:var(--on);box-shadow:inset 0 0 0 1px var(--on);background:color-mix(in srgb,var(--on) 10%,var(--bg))}.cal-ui .inline{align-items:flex-end;gap:10px;display:flex}.cal-ui .inline .grow{flex:1;min-width:0}.cal-ui .switch{cursor:pointer;align-items:center;gap:10px;color:var(--ink)!important;font-size:15px!important;display:flex!important}.cal-ui .switch input{width:22px;height:22px;accent-color:var(--on);flex:none;margin:0}.cal-ui .when-row .switch{padding-bottom:10px}.cal-ui .switch.private{background:var(--bg);border:1px solid var(--line);border-radius:12px;align-items:flex-start;padding:10px 12px}.cal-ui .switch.private span{gap:2px;display:grid}.cal-ui .switch.private small{color:var(--muted);font-size:12.5px}.cal-ui .switch.disabled{opacity:.6}.cal-ui .days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-ui .days button{border:1px solid var(--line);background:var(--bg);cursor:pointer;aspect-ratio:1;border-radius:50%;justify-self:center;width:100%;max-width:44px;height:40px;font-weight:700}.cal-ui .days button.on{background:var(--on);color:var(--on-ink);border-color:var(--on)}.cal-ui .btns{flex-wrap:wrap;gap:8px;display:flex}.cal-ui .btn{cursor:pointer;background:var(--tile);height:44px;color:var(--ink);border:0;border-radius:12px;place-items:center;padding:0 16px;font-weight:700;text-decoration:none;display:inline-grid}.cal-ui .btn.primary{background:var(--on);color:var(--on-ink)}.cal-ui .btn.danger{color:var(--danger);border:1px solid var(--line);background:0 0}.cal-ui .btn.grow{flex:1}.cal-ui .btn.small{height:36px;padding:0 12px;font-size:13px}.cal-ui .btn:disabled{opacity:.6}.cal-ui .back{color:var(--on);cursor:pointer;background:0 0;border:0;justify-self:start;padding:4px 0;font-size:14px;font-weight:700}.cal-ui .msg{background:var(--tile);border-radius:10px;padding:10px 12px;font-size:14px}.cal-ui .facts{gap:8px;display:grid}.cal-ui .facts p,.cal-ui .sheet>p{margin:0}.cal-ui .when{font-size:16px}.cal-ui .sub{color:var(--muted);font-size:13px}.cal-ui .who-line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.cal-ui .dotbig{border-radius:50%;flex:none;width:18px;height:18px}.cal-ui .notes{white-space:pre-wrap;background:var(--bg);border-radius:10px;padding:10px 12px}.cal-ui .set{border-bottom:1px solid var(--line);gap:10px;padding-bottom:14px;display:grid}.cal-ui .made{background:var(--bg);border-radius:12px;gap:8px;padding:12px;display:grid}.cal-ui .made p{margin:0}.cal-ui .listopt{border:1px solid var(--line);background:var(--bg);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.cal-ui .listopt .txt{flex:1;gap:2px;min-width:0;display:grid}.cal-ui .person-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding-bottom:10px;display:flex}.cal-ui .person-row:last-child{border-bottom:0}.cal-ui .person-row .pname{flex:1;min-width:90px;font-weight:600}.cal-ui .bdg.big{border-radius:17px;min-width:34px;height:34px;font-size:13px}.cal-ui .sheet input.initials{text-align:center;text-transform:uppercase;flex:none;width:64px;min-width:64px;min-height:38px;padding:0 6px;font-weight:800}.cal-ui .back.small{font-size:13px}.cal-ui .swatches{flex-wrap:wrap;gap:6px;display:flex}.cal-ui .swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;padding:0;box-shadow:inset 0 0 0 1px #00000014}.cal-ui .swatch.on{border-color:var(--ink);box-shadow:inset 0 0 0 2px var(--surface)}.cal-ui .toast{left:50%;bottom:calc(var(--tabbar) + 88px);background:var(--ink);color:var(--bg);z-index:20;border-radius:12px;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:10px 14px;font-size:14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #0003}.cal-ui .toast button{color:var(--accent);cursor:pointer;background:0 0;border:0;font-weight:800}.cal-ui dialog{overscroll-behavior:contain}.cal-ui .say{position:relative}.cal-ui .sheet .say textarea{border-radius:14px;width:100%;min-height:76px;padding:12px 56px 12px 14px;font-size:17px;line-height:1.35}.cal-ui .mic{background:var(--tile);width:42px;height:42px;color:var(--ink);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:8px;right:8px}.cal-ui .mic.on{background:var(--danger);color:#fff;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--danger) 25%,transparent)}}@media (prefers-reduced-motion:reduce){.cal-ui .mic.on{animation:none}}.cal-ui .examples .chip{text-align:left;font-size:13px}.cal-ui .preview{background:var(--bg);border:1px solid var(--line);border-radius:14px;gap:6px;padding:12px 14px;display:grid}.cal-ui .pv-title{font:700 18px/1.25 var(--display);gap:8px;display:flex}.cal-ui .pv-title i{color:var(--muted);font-weight:500}.cal-ui .pv-line{flex-wrap:wrap;align-items:center;gap:6px;font-size:14.5px;display:flex}.cal-ui .files{gap:8px;display:grid}.cal-ui .file-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.cal-ui .file{position:relative}.cal-ui .file-open{width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none;display:grid}.cal-ui .file-open img,.cal-ui .file-ico{aspect-ratio:1;object-fit:cover;background:var(--tile);border:1px solid var(--line);border-radius:10px;width:100%}.cal-ui .file-ico{place-items:center;font-size:30px;display:grid}.cal-ui .file-open.off{opacity:.6}.cal-ui .file.pending .file-ico{border-style:dashed}.cal-ui .file-x{background:var(--ink);width:26px;height:26px;color:var(--bg);cursor:pointer;border:0;border-radius:50%;font-size:16px;line-height:1;position:absolute;top:-6px;right:-6px}.cal-ui .pv-by{font:600 12px/1.6 var(--body);color:var(--muted);white-space:nowrap;margin-left:auto}.cal-ui .type-tabs{background:var(--tile);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.cal-ui .type-tabs button{height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:15px;font-weight:700}.cal-ui .type-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001f}.cal-ui .tick{border:2px solid var(--on);background:var(--surface);cursor:pointer;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;padding:0;display:grid}.cal-ui .tick.on{background:var(--on)}.cal-ui .tick.on:after{content:"";border:solid var(--on-ink);border-width:0 0 2.5px 2.5px;width:10px;height:6px;transform:translateY(-1px)rotate(-45deg)}.cal-ui .ev.done{opacity:.55}.cal-ui .ev.done .ev-title{text-decoration:line-through}.cal-ui .ev.rem .ev-time{color:var(--on);align-content:start;gap:6px}.cal-ui .ev .tick{width:28px;height:28px}.cal-ui .nudges{gap:6px;margin-top:6px;display:grid}.cal-ui .nudge{--card:color-mix(in srgb,var(--on) 10%,var(--surface));background:var(--card);border:1px solid color-mix(in srgb,var(--on) 30%,var(--line));border-radius:12px;align-items:center;gap:10px;padding:10px 12px 10px 16px;display:flex}.cal-ui .nudge .tick{border-width:1.5px;border-color:color-mix(in srgb,var(--on) 45%,var(--line));background:0 0;width:20px;height:20px;margin-right:40px}.cal-ui .nudge .tick.on{background:var(--on);border-color:var(--on)}.cal-ui .nudge .tick.on:after{border-width:0 0 2px 2px;width:8px;height:4px}.cal-ui .nudge.late{--card:color-mix(in srgb,var(--danger) 10%,var(--surface));background:var(--card);border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}.cal-ui .nudge.late .tick{border-color:color-mix(in srgb,var(--danger) 60%,var(--line))}.cal-ui .nudge{cursor:pointer;text-align:left}.cal-ui .nudge.late .ev-span{color:var(--danger);font-weight:600}.cal-ui .nudge.done{opacity:.55;padding-top:6px;padding-bottom:6px}.cal-ui .nudge.done .ev-title{white-space:nowrap;text-overflow:ellipsis;text-decoration:line-through;overflow:hidden}.cal-ui .sheet h3.done{opacity:.7;text-decoration:line-through}.cal-ui .sheet fieldset.remind{gap:6px;display:grid}.cal-ui .person-row .also{color:var(--muted);flex-basis:100%;gap:4px;font-size:13px;font-weight:500;display:grid}.cal-ui .person-row .also input{border:1px solid var(--line);background:var(--bg);min-height:40px;color:var(--ink);border-radius:10px;padding:0 12px;font-size:16px}.cal-ui .person-row .also-list{flex-basis:100%}.cal-ui .fab{left:50%;bottom:calc(var(--tabbar) + 14px);z-index:6;background:var(--on);width:62px;height:62px;color:var(--on-ink);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 6px 18px #00000038}.cal-ui .fab:active{transform:translate(-50%)scale(.94)}.cal-ui .items-edit ul,.cal-ui .checklist ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.cal-ui .items-edit li{align-items:center;gap:8px;display:flex}.cal-ui .items-edit .box{border:2px solid var(--line);border-radius:5px;flex:none;width:18px;height:18px}.cal-ui .items-edit li input{flex:1}.cal-ui .items-edit .x{background:var(--tile);cursor:pointer;border:0;border-radius:50%;flex:none;width:36px;height:36px;font-size:20px;line-height:1}.cal-ui .item-add{align-items:center;gap:8px;display:flex}.cal-ui .item-add input{flex:1}.cal-ui .checklist{background:color-mix(in srgb,var(--accent) 16%,var(--surface));border-radius:12px;gap:6px;padding:10px 12px;display:grid}.cal-ui .checklist .cl-head{justify-content:space-between;gap:8px;margin:0;font-weight:700;display:flex}.cal-ui .sheet .checklist label{color:var(--ink);cursor:pointer;align-items:center;gap:10px;min-height:36px;font-size:16px;font-weight:500;display:flex}.cal-ui .checklist input{width:22px;height:22px;accent-color:var(--on);flex:none;margin:0}.cal-ui .checklist label.on span{color:var(--muted);text-decoration:line-through}.cal-ui .month-page{gap:14px;padding-top:8px}.cal-ui .month{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:0 6px 6px;overflow:hidden}.cal-ui .mo-head{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);display:grid}.cal-ui .mo-head span{text-align:center;text-transform:uppercase;color:var(--muted);padding:8px 0;font-size:11px;font-weight:700}.cal-ui .mo-week{grid-template-columns:repeat(7,1fr);display:grid}.cal-ui .mo-week:first-of-type{padding-top:4px}.cal-ui .mo-day{cursor:pointer;background:0 0;border:0;align-content:center;justify-items:center;gap:2px;min-width:0;height:50px;padding:0;display:grid}.cal-ui .mo-day .mo-num{font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:32px;height:32px;font-size:14px;display:grid}.cal-ui .mo-day.out .mo-num{color:var(--muted);opacity:.5}.cal-ui .mo-day.today .mo-num{background:color-mix(in srgb,var(--on) 12%,transparent);color:var(--on);font-weight:700}.cal-ui .mo-day.sel .mo-num{background:var(--on);color:var(--on-ink);opacity:1;font-weight:700}.cal-ui .mo-dots{gap:2px;height:6px;display:flex}.cal-ui .mo-dots i{border-radius:50%;width:6px;height:6px}.cal-ui .daypanel{align-content:start;gap:8px;display:grid}.cal-ui .dp-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.cal-ui .dp-head small{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:12px;font-weight:700;display:block}.cal-ui .dp-head h2{font:800 24px/1.15 var(--display);margin:0}.cal-ui .dp-add{background:var(--on);width:42px;height:42px;color:var(--on-ink);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.cal-ui .empty.small{margin-top:0;padding:16px}.cal-ui .month-page.wide{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px}.cal-ui .month.wide{padding:0}.cal-ui .month.wide .mo-head span{text-align:right;padding:8px 10px 8px 0}.cal-ui .month.wide .mo-week{border-top:1px solid var(--line)}.cal-ui .month.wide .mo-week:first-of-type{border-top:0;padding-top:0}.cal-ui .mo-cell{cursor:pointer;align-content:start;gap:4px;min-width:0;min-height:118px;padding:6px;display:grid}.cal-ui .mo-cell+.mo-cell{border-left:1px solid var(--line)}.cal-ui .mo-cell.out{background:color-mix(in srgb,var(--tile) 55%,transparent)}.cal-ui .mo-cell.sel{background:color-mix(in srgb,var(--on) 8%,transparent)}.cal-ui .mo-cell .mo-num{cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:14px;justify-self:end;min-width:28px;height:28px;padding:0 6px;font-size:14px;font-weight:500}.cal-ui .mo-cell.out .mo-num{color:var(--muted)}.cal-ui .mo-cell.sel .mo-num{font-weight:800}.cal-ui .mo-cell.today .mo-num{background:var(--on);color:var(--on-ink);font-weight:800}.cal-ui .mo-evs{gap:2px;min-width:0;display:grid}.cal-ui .mo-ev{text-align:left;cursor:pointer;border:0;border-radius:6px;align-items:center;gap:4px;min-width:0;padding:2px 6px;font-size:11.5px;display:flex}.cal-ui .mo-ev i{border-radius:50%;flex:none;width:6px;height:6px}.cal-ui .mo-ev b{flex:none;font-weight:700}.cal-ui .mo-ev span{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.cal-ui .mo-more{color:var(--muted);padding:0 6px;font-size:11px;font-weight:600}.cal-ui .month-page.wide .daypanel{background:var(--surface);border:1px solid var(--line);border-radius:18px;max-height:calc(100svh - 170px);padding:14px;position:sticky;top:150px;overflow:auto}.tab-jobs .bar h1{flex:none}.tab-jobs .me-chip{background:var(--tile);color:#1a1a1a;width:36px;height:36px;font:800 13px/1 var(--body);border-radius:50%;flex:none;place-items:center;display:grid}.tab-jobs .pchip .stars{color:var(--muted);font-size:12px;font-weight:600}.tab-jobs main{gap:2px}.tab-jobs section{gap:8px;padding-top:14px;display:grid}.tab-jobs .sechead{font:700 13px/1 var(--body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);align-items:baseline;gap:8px;margin:0;display:flex}.tab-jobs .sechead small,.tab-jobs .sechead .count{letter-spacing:0;text-transform:none;font-size:13px;font-weight:500}.tab-jobs .job{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;min-height:58px;padding:8px 10px 8px 14px;display:flex}.tab-jobs .job-txt{text-align:left;min-width:0;color:inherit;cursor:pointer;background:0 0;border:0;flex:1;gap:2px;padding:0;display:grid}.tab-jobs .job-txt:disabled{cursor:default}.tab-jobs .job-name{overflow-wrap:anywhere;font-size:15.5px;font-weight:600;line-height:1.25}.tab-jobs .job-emo{margin-right:7px}.tab-jobs .job-sub{color:var(--muted);flex-wrap:wrap;gap:2px 10px;font-size:13px;display:flex}.tab-jobs .job-sub:empty{display:none}.tab-jobs .late-txt{color:var(--danger);font-weight:600}.tab-jobs .job.late{border-color:color-mix(in srgb,var(--danger) 35%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.tab-jobs .job.soon{border-style:dashed}.tab-jobs .job.done{opacity:.6}.tab-jobs .job.done .job-name{text-decoration:line-through}.tab-jobs .ticks{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:6px;max-width:55%;display:flex}.tab-jobs .jtick{--c:var(--on);border:2.5px solid var(--c);background:var(--surface);width:40px;height:40px;color:var(--ink);font:800 12px/1 var(--body);cursor:pointer;touch-action:manipulation;border-radius:50%;place-items:center;padding:0;transition:transform .12s;display:grid}.tab-jobs .jtick:active{transform:scale(.92)}.tab-jobs .jtick.done{background:var(--c)}.tab-jobs .jtick.done:after,.tab-jobs .jtick.waiting:after{content:"";border:0 solid #1a1a1a;border-width:0 0 3px 3px;width:12px;height:7px;transform:translateY(-2px)rotate(-45deg)}.tab-jobs .jtick.waiting{background:color-mix(in srgb,var(--c) 35%,var(--surface));border-style:dashed}.tab-jobs .jtick.other{opacity:.35}@media (prefers-reduced-motion:reduce){.tab-jobs .jtick{transition:none}}.tab-jobs .waiting{background:color-mix(in srgb,var(--accent) 18%,var(--surface));border-radius:var(--r);margin-top:10px;padding:12px}.tab-jobs .wait-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tab-jobs .wait-row .job-txt{cursor:default;flex:180px}.tab-jobs .wait-btns{gap:6px;margin-left:auto;display:flex}.tab-jobs .wait-row+.wait-row{border-top:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));padding-top:8px}.tab-jobs .job-all{text-align:left;background:var(--surface);border:1px solid var(--line);cursor:pointer;width:100%;color:inherit;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}.tab-jobs .job-all .job-emo{margin:0;font-size:20px}.tab-jobs .job-all.paused{opacity:.55}.tab-jobs .inline.what{align-items:flex-end}.tab-jobs .inline.every{color:var(--ink);align-items:center;font-size:14px}.tab-jobs .inline.every select{flex:1}.tab-jobs .sheet input.time-in{border-radius:999px;flex:none;width:auto;min-width:0;min-height:34px;padding:0 12px;font-size:14px}.tab-jobs .rota{gap:10px;display:grid}.tab-jobs .rota-row{grid-template-columns:1fr auto;align-items:center;gap:6px 8px;display:grid}.tab-jobs .rota-row .days{grid-column:1/-1}.tab-jobs .rota-who{align-items:center;gap:6px;font-size:14.5px;font-weight:600;display:flex}.tab-jobs .rota-who i{border-radius:50%;width:12px;height:12px}.tab-jobs .rota .days button.on{background:var(--c,var(--on));border-color:var(--c,var(--on));color:#1a1a1a}.tab-jobs .rota .days button.taken{opacity:.45;border-style:dashed}.tab-jobs .chip.small{padding:4px 10px;font-size:12.5px}.tab-jobs .share{gap:6px;display:grid}.tab-jobs .share button{text-align:left;border:1px solid var(--line);background:var(--bg);cursor:pointer;border-radius:12px;gap:2px;padding:8px 12px;display:grid}.tab-jobs .share button small{color:var(--muted);font-size:12.5px}.tab-jobs .share button.on{border-color:var(--on);box-shadow:inset 0 0 0 1px var(--on);background:color-mix(in srgb,var(--on) 10%,var(--bg))}.tab-jobs .turn-no{background:var(--on);min-width:18px;height:18px;color:var(--on-ink);border-radius:9px;place-items:center;margin-left:2px;font-size:11px;font-weight:800;display:inline-grid}.tab-jobs .sheet input.points-in{text-align:center;border-radius:999px;flex:none;width:84px;min-width:84px;min-height:34px}.tab-jobs .job-by{color:var(--on);font-size:12.5px;font-weight:600}.tab-jobs .subhead{font:600 13px/1.2 var(--body);color:var(--muted);margin:10px 0 0}.tab-jobs .subhead small{font-weight:400}.tab-jobs .lately{gap:4px;display:grid}.tab-jobs .lately-row{background:var(--surface);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;padding:8px 12px;font-size:14.5px;display:flex}.tab-jobs .lately-row .grow{overflow-wrap:anywhere;flex:1;min-width:0}.tab-jobs .lately-row small,.tab-jobs .lately-when{color:var(--muted);font-size:12.5px}.tab-jobs .lately-when{white-space:nowrap}.tab-jobs .done-sheet .hint{margin:-6px 0 0}.tab-jobs .done-line{background:color-mix(in srgb,var(--on) 9%,var(--bg));border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.tab-jobs .done-line .grow{flex:1;min-width:0}.tab-jobs .done-line small{color:var(--muted)}.tab-jobs .who-did{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;display:grid}.tab-jobs .who-btn{border:1px solid var(--line);background:var(--bg);text-align:left;cursor:pointer;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;min-height:54px;padding:8px 12px;font-size:15px;font-weight:600;display:flex}.tab-jobs .who-btn small{color:var(--muted);flex-basis:100%;margin:-4px 0 0 46px;font-size:12px;font-weight:400}.tab-jobs .who-btn:active{transform:scale(.98)}.tab-jobs .done-hist{gap:4px;display:grid}.tab-jobs .done-hist h4{margin:4px 0 2px}.tab-jobs .hist-line{align-items:baseline;gap:10px;font-size:14px;display:flex}.tab-jobs .hist-line span{min-width:96px;color:var(--muted)}.tab-jobs .hist-line small{color:var(--muted)}
