:root,:root[data-theme=light]{--paper: #FFFFFF;--panel: #F7F6F1;--panel-sunk: #EDEBE2;--ink: #1A1D18;--ink-soft: #5C635A;--ink-faint: #8E948A;--rule: #E2E0D5;--rule-strong: #C3C0B2;--gold: #946A11;--gold-wash: #FDF7EA;--green: #337047;--green-wash: #E3EFE7;--magenta: #A82563;--magenta-wash: #FAE4EE;--shadow: 0 12px 40px rgba(26, 29, 24, .14);color-scheme:light}:root[data-theme=dark]{--paper: #12160F;--panel: #1B211A;--panel-sunk: #0D110C;--ink: #E4E8DF;--ink-soft: #98A294;--ink-faint: #626C60;--rule: #2E3630;--rule-strong: #48524A;--gold: #D9A83C;--gold-wash: #34290F;--green: #5FA377;--green-wash: #1A2C20;--magenta: #DE639C;--magenta-wash: #351726;--shadow: 0 12px 40px rgba(0, 0, 0, .5);color-scheme:dark}:root{--font-ui: "Archivo", system-ui, -apple-system, sans-serif;--font-data: "IBM Plex Mono", ui-monospace, "Courier New", monospace;--step--1: .78rem;--step-0: .94rem;--step-1: 1.12rem;--step-2: 1.45rem;--step-3: 2rem;--s1: .25rem;--s2: .5rem;--s3: .75rem;--s4: 1rem;--s5: 1.5rem;--s6: 2.25rem;--radius: 3px;--tap: 44px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-ui);font-size:var(--step-0);line-height:1.45;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.shell{display:flex;flex-direction:column;height:100%;max-width:780px;margin:0 auto;background:var(--paper)}.topbar{display:flex;align-items:baseline;gap:var(--s3);padding:var(--s4) var(--s4) var(--s3);border-bottom:1px solid var(--rule)}.wordmark{font-family:var(--font-data);font-weight:600;font-size:var(--step--1);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.wordmark b{color:var(--gold);font-weight:600}.netstate{margin-left:auto;font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-faint);display:flex;align-items:center;gap:var(--s2)}.netdot{width:7px;height:7px;border-radius:50%;background:var(--green)}.netdot[data-state=offline]{background:var(--ink-faint)}.netdot[data-state=syncing]{background:var(--gold)}.datehead{display:flex;align-items:flex-end;gap:var(--s4);padding:var(--s5) var(--s4) var(--s3)}.datehead .dow{font-family:var(--font-data);font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.datehead .dnum{font-family:var(--font-data);font-size:var(--step-3);font-weight:500;line-height:.9;letter-spacing:-.02em}.datehead .tally{margin-left:auto;font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);text-align:right}.datehead .tally b{color:var(--ink);font-weight:600}.daynav{display:flex;gap:var(--s1);padding:0 var(--s4) var(--s3)}.daynav button{min-height:34px;padding:0 var(--s3);background:transparent;border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);cursor:pointer}.daynav button:hover{border-color:var(--rule-strong);color:var(--ink)}.daynav button[data-active=true]{border-color:var(--ink);color:var(--ink);background:var(--panel)}.strip{position:relative;flex:1;overflow-y:auto;padding-bottom:calc(var(--s6) + env(safe-area-inset-bottom))}.spine{position:absolute;left:calc(var(--s4) + 2.35rem);top:0;bottom:0;width:1px;background:var(--rule);pointer-events:none}.task{position:relative;display:grid;grid-template-columns:2.35rem 1fr auto;gap:var(--s3);align-items:start;padding:var(--s3) var(--s4);border-bottom:1px solid var(--rule);min-height:var(--tap)}.task:hover{background:var(--panel)}.task .seq{font-family:var(--font-data);font-size:var(--step--1);font-weight:500;color:var(--gold);padding-top:.15rem;cursor:pointer;-webkit-user-select:none;user-select:none}.task[data-status=done] .seq{color:var(--ink-faint)}.task[data-status=done] .title{color:var(--ink-faint);text-decoration:line-through}.task .body{min-width:0}.task .title{display:block;width:100%;background:transparent;border:0;padding:0;font-size:var(--step-0);resize:none;overflow:hidden}.task .title:focus{outline:none}.task .meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-top:var(--s1);font-family:var(--font-data);font-size:.7rem;color:var(--ink-faint)}.chip{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;border-radius:var(--radius);border:1px solid var(--rule);line-height:1.5}.chip[data-tone=cat]{border-color:transparent}.chip[data-tone=time]{color:var(--ink-soft)}.drag{color:var(--magenta);letter-spacing:-1px;font-weight:600}.drag[title]{cursor:help}.task .acts{display:flex;gap:var(--s1);align-items:center}.iconbtn{min-width:34px;min-height:34px;display:grid;place-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius);color:var(--ink-faint);font-family:var(--font-data);font-size:var(--step--1);cursor:pointer}.iconbtn:hover{border-color:var(--rule);color:var(--ink)}.composer{display:flex;gap:var(--s2);padding:var(--s3) var(--s4);border-top:1px solid var(--rule);background:var(--panel);position:sticky;bottom:0;padding-bottom:calc(var(--s3) + env(safe-area-inset-bottom))}.composer input{flex:1;min-height:var(--tap);padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius)}.composer input::placeholder{color:var(--ink-faint)}.composer button{min-height:var(--tap);padding:0 var(--s4);background:var(--ink);color:var(--paper);border:0;border-radius:var(--radius);font-weight:600;cursor:pointer}.composer button:disabled{opacity:.4;cursor:default}.week{flex:1;overflow-y:auto}.weekday{display:grid;grid-template-columns:3.5rem 1fr;width:100%;border:0;border-bottom:1px solid var(--rule);background:transparent;text-align:left;cursor:pointer;min-height:var(--tap)}.weekday:hover{background:var(--panel)}.weekday>.wd{display:block;padding:var(--s3) var(--s2) var(--s3) var(--s4);border-right:1px solid var(--rule);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);background:var(--panel-sunk)}.weekday[data-today=true]>.wd{color:var(--gold)}.weekday>.wd .n{display:block;font-size:var(--step-1);color:var(--ink)}.weekday[data-today=true]>.wd .n{color:var(--gold)}.weekday .items{display:block;padding:var(--s2) var(--s4) var(--s2) var(--s3);min-width:0}.weekday .wentry{display:block;padding:var(--s1) 0;font-size:var(--step--1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekday .none{display:block;padding:var(--s1) 0;color:var(--ink-faint);font-family:var(--font-data);font-size:.7rem}.weekday:hover .none{color:var(--gold)}.empty{padding:var(--s6) var(--s4);text-align:center;color:var(--ink-soft)}.empty p{margin:0 0 var(--s2)}.empty .hint{font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-faint)}.auth{max-width:360px;margin:0 auto;padding:var(--s6) var(--s4);display:flex;flex-direction:column;gap:var(--s3);height:100%;justify-content:center}.auth h1{font-family:var(--font-data);font-size:var(--step-1);letter-spacing:.2em;text-transform:uppercase;margin:0 0 var(--s4);font-weight:600}.auth h1 b{color:var(--gold);font-weight:600}.auth label{font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);display:block;margin-bottom:var(--s1)}.auth input{width:100%;min-height:var(--tap);padding:0 var(--s3);background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius)}.auth button{min-height:var(--tap);background:var(--ink);color:var(--paper);border:0;border-radius:var(--radius);font-weight:600;cursor:pointer}.auth .err{font-family:var(--font-data);font-size:var(--step--1);color:var(--magenta);background:var(--magenta-wash);padding:var(--s2) var(--s3);border-radius:var(--radius)}.sheet-backdrop{position:fixed;inset:0;background:#141a1673;display:grid;place-items:center;padding:var(--s4);padding-bottom:calc(var(--s4) + env(safe-area-inset-bottom));z-index:20;overflow-y:auto}.sheet{width:100%;max-width:680px;max-height:min(85vh,900px);overflow-y:auto;background:var(--panel);border:1px solid var(--rule-strong);border-radius:var(--radius);padding:var(--s4);box-shadow:var(--shadow)}.sheet h2{font-family:var(--font-data);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 var(--s3);font-weight:500}.sheet .opts{display:grid;gap:var(--s1)}.sheet .opts button{display:flex;justify-content:space-between;align-items:center;min-height:var(--tap);padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;text-align:left}.sheet .opts button span:last-child{font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-faint)}.sheet .opts button:hover{border-color:var(--rule-strong)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{flex:1 0 auto;min-height:42px;padding:0 var(--s4);background:transparent;border:0;border-bottom:2px solid transparent;font-family:var(--font-data);font-size:var(--step--1);letter-spacing:.06em;color:var(--ink-faint);cursor:pointer;white-space:nowrap}.tabs button:hover{color:var(--ink-soft)}.tabs button[data-active=true]{color:var(--ink);border-bottom-color:var(--gold)}.daynav.wrap{flex-wrap:wrap}.monthgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--rule);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin:0 var(--s4) var(--s5)}.mh{background:var(--paper);padding:var(--s2) 0;text-align:center;font-family:var(--font-data);font-size:.66rem;letter-spacing:.1em;color:var(--ink-faint)}.mcell{position:relative;aspect-ratio:1;background:var(--paper);border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;font-family:var(--font-data)}.mcell.blank{background:var(--panel-sunk);cursor:default}.mcell .d{font-size:var(--step--1);color:var(--ink-soft)}.mcell .c{font-size:.66rem;min-width:15px;padding:0 3px;border-radius:7px;background:var(--gold-wash);color:var(--gold)}.mcell .c.done{background:transparent;color:var(--green)}.mcell[data-load=light] .d{color:var(--ink)}.mcell[data-load=medium] .d{color:var(--ink);font-weight:600}.mcell[data-load=heavy] .d{color:var(--magenta);font-weight:700}.mcell[data-load=heavy] .c{background:var(--magenta-wash);color:var(--magenta)}.mcell[data-today=true]{background:var(--panel);box-shadow:inset 0 0 0 1px var(--gold)}.mcell[data-today=true] .d{color:var(--gold);font-weight:700}.yeargrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);padding:0 var(--s4) var(--s5)}.ycell{display:flex;flex-direction:column;gap:var(--s1);padding:var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;text-align:left;font-family:var(--font-data)}.ycell:hover{border-color:var(--rule-strong)}.ycell[data-current=true]{border-color:var(--gold)}.ycell .ym{font-size:.7rem;letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase}.ycell .yn{font-size:var(--step-2);line-height:1;color:var(--ink)}.ycell[data-current=true] .yn{color:var(--gold)}.ycell .ybar{display:block;height:2px;background:var(--rule);margin-top:var(--s1)}.ycell .ybar span{display:block;height:100%;background:var(--green)}.sheet.tall{max-height:min(85vh,900px);display:flex;flex-direction:column;padding:0;overflow:hidden}.sheet-head{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-bottom:1px solid var(--rule)}.sheet-head.standalone{border-bottom:1px solid var(--rule);background:var(--panel)}.sheet-head h2{margin:0;flex:1}.sheet-body{overflow-y:auto;padding:var(--s4);display:grid;gap:var(--s4)}.field{display:grid;gap:var(--s1)}.field>span{font-family:var(--font-data);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.field input,.field select,.sheet-head select,.notetitle-input{min-height:var(--tap);padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);width:100%}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3)}.ghost{min-height:var(--tap);padding:0 var(--s3);background:transparent;border:1px dashed var(--rule-strong);border-radius:var(--radius);color:var(--ink-soft);cursor:pointer}.ghost:hover{color:var(--ink);border-color:var(--ink-soft)}.repeat{display:grid;gap:var(--s2)}.repeat>span{font-family:var(--font-data);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.repeat .units{display:flex;flex-wrap:wrap;gap:var(--s1)}.repeat .units button{min-height:38px;padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);cursor:pointer}.repeat .units button:hover{border-color:var(--gold);color:var(--gold)}.repeat.on{padding:var(--s3);background:var(--gold-wash);border-radius:var(--radius)}.repeat.on>span{color:var(--gold);text-transform:none;letter-spacing:0;font-size:var(--step-0)}.repeat .hint{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.slip{margin:0;padding:var(--s2) var(--s3);background:var(--magenta-wash);color:var(--magenta);border-radius:var(--radius);font-size:var(--step--1)}.editor{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:var(--s2);border-bottom:1px solid var(--rule);background:var(--panel);position:sticky;top:0;z-index:3}.toolbar .sep{width:1px;height:20px;background:var(--rule);margin:0 var(--s1)}.tb{min-width:32px;min-height:32px;background:transparent;border:1px solid transparent;border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);cursor:pointer}.tb:hover{border-color:var(--rule);color:var(--ink)}.tb[data-on=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.swatches{display:flex;gap:2px}.sw{width:26px;height:26px;border:1px solid var(--rule);border-radius:var(--radius);background:transparent;font-family:var(--font-ui);font-weight:700;cursor:pointer}.sw[data-on=true]{border-color:var(--ink);border-width:2px}.sw.hl{color:transparent}.prose{padding:var(--s3);min-height:140px;outline:none}.prose:focus{outline:none}.prose p{margin:0 0 var(--s2)}.prose h2{font-size:var(--step-1);margin:var(--s3) 0 var(--s2)}.prose h3{font-size:var(--step-0);font-weight:600;margin:var(--s3) 0 var(--s1)}.prose ul,.prose ol{margin:0 0 var(--s2);padding-left:1.3em}.prose li{margin-bottom:2px}.prose mark{padding:0 2px;border-radius:2px}.prose code{font-family:var(--font-data);font-size:.85em;background:var(--panel-sunk);padding:1px 4px;border-radius:2px}.prose blockquote{margin:0 0 var(--s2);padding-left:var(--s3);border-left:2px solid var(--rule-strong);color:var(--ink-soft)}.dtable{margin:var(--s3) 0;overflow-x:auto}.dtable table{border-collapse:collapse;width:100%;font-family:var(--font-data);font-size:var(--step--1)}.dtable th,.dtable td{border:1px solid var(--rule);padding:0;vertical-align:middle}.dtable th{background:var(--panel-sunk);position:relative}.dtable input{width:100%;min-height:34px;padding:0 var(--s2);background:transparent;border:0;font:inherit}.dtable input:focus{outline:1px solid var(--gold);outline-offset:-1px}.dtable th input{font-weight:600;padding-right:34px}.dtable [data-numeric=true] input{text-align:right}.dtable .colctl{position:absolute;right:2px;top:50%;transform:translateY(-50%);display:flex}.dtable .colctl button,.dtable .gutter button{width:18px;height:22px;background:transparent;border:0;color:var(--ink-faint);font-family:var(--font-data);font-size:.7rem;cursor:pointer}.dtable .colctl button[data-on=true]{color:var(--gold);font-weight:700}.dtable .colctl button:hover,.dtable .gutter button:hover{color:var(--magenta)}.dtable .gutter{width:22px;border:0;text-align:center}.dtable tfoot td{background:var(--gold-wash);color:var(--gold);font-weight:600;padding:var(--s2)}.dtable tfoot [data-numeric=true]{text-align:right}.dtable-acts{display:flex;gap:var(--s1);margin-top:var(--s2)}.dtable-acts button{min-height:32px;padding:0 var(--s3);background:transparent;border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);cursor:pointer}.dtable-acts button:hover{border-color:var(--rule-strong);color:var(--ink)}.dtable-acts .danger:hover{color:var(--magenta);border-color:var(--magenta)}.note{display:grid;grid-template-columns:1fr auto;gap:var(--s2);align-items:center;padding:var(--s3) var(--s4);border-bottom:1px solid var(--rule)}.note:hover{background:var(--panel)}.notebody{display:grid;gap:2px;text-align:left;background:none;border:0;cursor:pointer;min-width:0}.notetitle{font-weight:600}.notesnip{font-size:var(--step--1);color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iconbtn[data-on=true]{color:var(--gold)}.notetitle-input{font-weight:600;border-color:transparent!important;background:transparent!important}.notepad{padding:var(--s4)}.notepad .editor{border:0}.notepad .toolbar{border-radius:var(--radius) var(--radius) 0 0;border:1px solid var(--rule)}.notepad .prose{border:1px solid var(--rule);border-top:0;border-radius:0 0 var(--radius) var(--radius);min-height:50vh}.catman{padding:var(--s3) var(--s4);background:var(--panel);border-bottom:1px solid var(--rule)}.catadd{display:flex;gap:var(--s2);margin-bottom:var(--s2)}.catadd input{flex:1;min-height:38px;padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius)}.catadd button{min-height:38px;padding:0 var(--s3);background:var(--ink);color:var(--paper);border:0;border-radius:var(--radius);cursor:pointer}.catadd button:disabled{opacity:.4}.catman ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}.catman li{display:flex;justify-content:space-between;align-items:center;padding:var(--s1) 0;font-size:var(--step--1)}.catman li.none{color:var(--ink-faint);font-family:var(--font-data);font-size:.7rem}.catman .ghost{min-height:30px;font-size:var(--step--1);border-style:solid}.netstate{background:none;border:0;cursor:pointer}.editor-loading{padding:var(--s5) var(--s4);border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-faint);text-align:center}.chip[data-tone=sum]{border-color:var(--gold);color:var(--gold);background:var(--gold-wash);font-weight:600}.notesnip{display:flex;align-items:center;gap:var(--s2)}.notesnip .chip{flex:none;font-family:var(--font-data);font-size:.7rem}.chip.sumbtn{cursor:pointer;font-family:var(--font-data)}.chip.sumbtn:hover{background:var(--gold);color:var(--paper);border-color:var(--gold)}.noteinfo{display:grid;gap:var(--s1);min-width:0;justify-items:start}.noteinfo .notebody,.dtable.readonly table{width:100%}.dtable.readonly th,.dtable.readonly td{padding:var(--s2) var(--s3);font-family:var(--font-data);font-size:var(--step--1)}.dtable.readonly th{text-align:left;font-weight:600}.dtable.readonly [data-numeric=true]{text-align:right}.dtable.readonly .blankcell{color:var(--ink-faint)}.dtable .tablabel{margin:0 0 var(--s2);font-family:var(--font-data);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.cellbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1);margin-top:var(--s2);padding:var(--s2);background:var(--panel);border:1px solid var(--gold);border-radius:var(--radius)}.cellbar-label{font-family:var(--font-data);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-right:var(--s2)}.cellbar .tb:last-child{margin-left:auto}.dtable input{color:inherit}.updatebar,.installbar{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);background:var(--gold-wash);color:var(--gold);border-bottom:1px solid var(--gold);font-size:var(--step--1);text-align:left;border-left:0;border-right:0;border-top:0;width:100%;cursor:pointer}.installbar{cursor:default}.installbar span{flex:1}.installbar .ghost{border-color:var(--gold);color:var(--gold);min-height:34px}.duebanner{padding:var(--s3) var(--s4);background:var(--magenta-wash);border-bottom:1px solid var(--magenta)}.duehead{font-family:var(--font-data);font-size:var(--step--1);letter-spacing:.1em;text-transform:uppercase;color:var(--magenta);margin-bottom:var(--s2)}.duerow{display:flex;align-items:center;gap:var(--s2);padding:var(--s1) 0;flex-wrap:wrap}.duetitle{flex:1;min-width:40%;font-weight:600}.duewhen{font-family:var(--font-data);font-size:.7rem;color:var(--magenta)}.duerow .ghost{min-height:32px;padding:0 var(--s2);font-size:var(--step--1);border-style:solid;border-color:var(--magenta);color:var(--magenta)}.duemore{font-family:var(--font-data);font-size:.7rem;color:var(--magenta);margin-top:var(--s1)}.alarmsection{border-bottom:1px solid var(--rule)}.alarmsection h3{margin:0;padding:var(--s3) var(--s4) var(--s2);font-family:var(--font-data);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.alarmrow{display:grid;grid-template-columns:4.2rem 1fr auto;gap:var(--s3);align-items:center;padding:var(--s3) var(--s4);border-top:1px solid var(--rule)}.alarmrow[data-done=true]{opacity:.5}.alarmtime{font-family:var(--font-data);line-height:1.2}.alarmtime .t{display:block;font-size:var(--step-1)}.alarmtime .d{display:block;font-size:.66rem;color:var(--ink-faint)}.alarmrow[data-overdue=true] .alarmtime .t{color:var(--magenta);font-weight:600}.alarmbody{min-width:0}.alarmbody .at{display:block;font-weight:600}.alarmbody .am{display:block;font-family:var(--font-data);font-size:.7rem;color:var(--ink-faint)}.snoozegroup{display:flex;gap:1px}.snoozegroup .iconbtn{min-width:30px;font-size:.68rem;border-color:var(--rule)}.alarmchip{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);background:var(--gold-wash);color:var(--gold);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1)}.alarmchip .ghost{margin-left:auto;min-height:30px;border-style:solid;border-color:var(--gold);color:var(--gold)}.alarmcomposer{flex-wrap:wrap}.alarmcomposer input[type=datetime-local]{flex:1 1 180px}.notice{margin:var(--s3) var(--s4);padding:var(--s3);border:1px solid var(--rule);border-left-width:3px;border-radius:var(--radius);font-size:var(--step--1);background:var(--panel)}.notice p{margin:var(--s1) 0 0;color:var(--ink-soft)}.notice .ghost{margin-top:var(--s2);min-height:36px;border-style:solid}.notice.ok{border-left-color:var(--green)}.notice.warn{border-left-color:var(--magenta);background:var(--magenta-wash)}.notice.warn p{color:var(--ink)}.dbview{padding-bottom:var(--s6)}.dbview section{padding:var(--s4);border-bottom:1px solid var(--rule)}.dbview h3{margin:0 0 var(--s3);font-family:var(--font-data);font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.dbview .explain{margin:0 0 var(--s3);color:var(--ink-soft);font-size:var(--step--1)}.dbview .explain.small{margin:var(--s3) 0 0;font-size:.72rem;color:var(--ink-faint)}.statgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);margin-bottom:var(--s3)}.stat{padding:var(--s2) var(--s3);background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data)}.stat .n{display:block;font-size:var(--step-1)}.stat .l{display:block;font-size:.66rem;color:var(--ink-faint)}.stat[data-alert=true]{border-color:var(--gold)}.stat[data-alert=true] .n{color:var(--gold)}.rowacts{display:flex;flex-wrap:wrap;gap:var(--s2)}.rowacts .ghost{border-style:solid}.backuplist{list-style:none;margin:var(--s3) 0 0;padding:0;display:grid;gap:var(--s1)}.backuplist li{display:flex;align-items:center;gap:var(--s2);padding:var(--s2);border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1)}.backuplist .bn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.backuplist .bs{color:var(--ink-faint);font-size:.7rem}.backuplist .ghost{min-height:30px;border-style:solid;font-size:var(--step--1)}.backuplist .none{color:var(--ink-faint);border:0}.calscroll{flex:1;overflow-y:auto;min-height:0}.authtabs{display:flex;gap:0;border-bottom:1px solid var(--rule);margin-bottom:var(--s2)}.authtabs button{flex:1;min-height:40px;background:transparent;border:0;border-bottom:2px solid transparent;font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-faint);cursor:pointer}.authtabs button[data-active=true]{color:var(--ink);border-bottom-color:var(--gold)}.pwwrap{display:flex;gap:var(--s1)}.pwwrap input{flex:1}.pwtoggle{min-width:62px;min-height:var(--tap);padding:0 var(--s2);background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);cursor:pointer}.pwtoggle:hover{border-color:var(--rule-strong);color:var(--ink)}.ok-msg{font-family:var(--font-data);font-size:var(--step--1);color:var(--green);background:var(--green-wash);padding:var(--s2) var(--s3);border-radius:var(--radius)}.authnote{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.auth .notice{margin:0}.userrow{display:grid;grid-template-columns:1fr auto auto;gap:var(--s3);align-items:center;padding:var(--s3) 0;border-top:1px solid var(--rule)}.userinfo{min-width:0}.userinfo .un{display:flex;align-items:center;gap:var(--s2);font-weight:600}.userinfo .ue{display:block;font-family:var(--font-data);font-size:.7rem;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis}.tagadmin,.tagself{font-family:var(--font-data);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;padding:1px 5px;border-radius:2px}.tagadmin{background:var(--gold-wash);color:var(--gold)}.tagself{background:var(--panel-sunk);color:var(--ink-faint)}.ustatus{font-family:var(--font-data);font-size:.7rem;letter-spacing:.06em;color:var(--ink-faint)}.userrow[data-status=aprobado] .ustatus{color:var(--green)}.userrow[data-status=pendiente] .ustatus{color:var(--gold)}.userrow[data-status=bloqueado] .ustatus{color:var(--magenta)}.userrow .ghost{min-height:34px;border-style:solid;font-size:var(--step--1)}.ghost.danger{color:var(--magenta);border-color:var(--magenta)}.alarmrow.editing{grid-template-columns:1fr auto;align-items:end}.editfields{display:grid;gap:var(--s2);min-width:0}.editfields input{min-height:40px;padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);width:100%}.editfields .hint{margin:0;font-size:var(--step--1);color:var(--ink-soft)}.catname{flex:1;min-height:34px;padding:0 var(--s2);background:var(--paper);border:1px solid transparent;border-radius:var(--radius)}.catname:hover,.catname:focus{border-color:var(--rule)}.catman li{gap:var(--s2)}.catman .explain{margin:var(--s2) 0 0;font-size:.72rem;color:var(--ink-faint)}.greeting{background:none;border:0;padding:0 var(--s2);font-size:var(--step--1);color:var(--ink-soft);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}.greeting b{color:var(--ink);font-weight:600}.greeting:hover b{color:var(--gold)}.tagpw{display:inline-block;margin-top:2px;font-family:var(--font-data);font-size:.6rem;letter-spacing:.06em;padding:1px 5px;border-radius:2px;background:var(--gold-wash);color:var(--gold)}.userrow .acts{display:flex;flex-wrap:wrap;gap:var(--s1);justify-content:flex-end}@media(max-width:620px){.topbar{gap:var(--s2);padding:var(--s3) var(--s3) var(--s2);flex-wrap:wrap}.wordmark{font-size:.7rem;letter-spacing:.14em}.greeting{order:3;flex-basis:100%;max-width:100%;padding:0}.netstate{margin-left:auto;font-size:.68rem;line-height:1.2}.userrow{grid-template-columns:1fr;gap:var(--s2);padding:var(--s3) 0}.userinfo .un{flex-wrap:wrap}.userinfo .ue{white-space:normal;word-break:break-all}.ustatus{justify-self:start}.userrow .acts{justify-content:flex-start;width:100%}.userrow .ghost{flex:1 1 auto;min-width:92px}.statgrid,.yeargrid{grid-template-columns:repeat(2,1fr)}.datehead{padding:var(--s4) var(--s3) var(--s2)}.task{grid-template-columns:2rem 1fr auto;padding:var(--s3) var(--s3)}.task .acts{flex-wrap:wrap;justify-content:flex-end;max-width:4.8rem}.dbview section{padding:var(--s4) var(--s3)}.alarmrow{grid-template-columns:3.6rem 1fr}.alarmrow .acts{grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap}}@media(pointer:coarse){input,textarea,select,.task .title,.dtable input,.catname,.notetitle-input,.editfields input{font-size:16px}.composer input{min-height:var(--tap)}.dtable input{min-height:38px}}.topbar{padding-top:calc(var(--s4) + env(safe-area-inset-top))}@media(max-width:620px){.topbar{padding-top:calc(var(--s3) + env(safe-area-inset-top))}.task{grid-template-columns:2rem 1fr;row-gap:var(--s1)}.task .acts{grid-column:2 / -1;max-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:var(--s1)}.task .iconbtn{border-color:var(--rule)}}.clock{display:flex;flex-direction:column;align-items:flex-end;line-height:1.1;font-family:var(--font-data);margin-left:auto}.clock .ct{font-size:var(--step-1);font-weight:500;letter-spacing:.02em;font-variant-numeric:tabular-nums}.clock .cd{display:flex;align-items:center;gap:var(--s1);font-size:.66rem;color:var(--ink-faint)}.clock .cf{padding:0 4px;border-radius:2px;background:var(--magenta-wash);color:var(--magenta);letter-spacing:.04em}.netstate{margin-left:var(--s3)}.datehead .dow .rel{color:var(--gold)}.festivo{display:inline-block;margin-top:var(--s1);padding:1px 6px;border-radius:var(--radius);background:var(--magenta-wash);color:var(--magenta);font-family:var(--font-data);font-size:.68rem;letter-spacing:.04em}.mcell[data-festivo=true]:after{content:"";position:absolute;bottom:5px;left:50%;transform:translate(-50%);width:3px;height:3px;border-radius:50%;background:var(--magenta)}@media(max-width:620px){.clock{margin-left:0}.clock .ct{font-size:var(--step-0)}.netstate{margin-left:auto}}.refresh{display:inline-flex;align-items:center;gap:var(--s1);min-height:34px;padding:0 var(--s3);background:transparent;border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--font-data);font-size:var(--step--1);color:var(--ink-soft);cursor:pointer;white-space:nowrap}.refresh:hover{border-color:var(--rule-strong);color:var(--ink)}.refresh:disabled{cursor:default;opacity:.7}.refresh[data-state=done]{border-color:var(--green);color:var(--green)}.refresh[data-state=update]{border-color:var(--gold);color:var(--gold)}.refresh[data-state=working] .ricon{display:inline-block;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.netstate{background:none;border:0}@media(max-width:620px){.topbar{row-gap:var(--s2)}.wordmark{order:1}.greeting{order:2;flex:1 1 auto;flex-basis:auto;text-align:right}.clock{order:3;align-items:flex-start}.netstate{order:4;margin-left:0}.refresh{order:5;margin-left:auto}.iconbtn{order:6}.refresh .rlabel{display:none}.refresh{min-width:40px;justify-content:center}.refresh[data-state=done] .rlabel,.refresh[data-state=update] .rlabel{display:inline}}.task[data-selected=true]{background:var(--gold-wash)}.task[data-selected=true] .seq{color:var(--gold)}.bulkbar{position:sticky;bottom:0;display:flex;align-items:center;gap:var(--s1);padding:var(--s2) var(--s4);background:var(--ink);color:var(--paper);z-index:5}.bulkbar .bcount{flex:1;font-family:var(--font-data);font-size:var(--step--1);white-space:nowrap}.bulkbar button{min-width:38px;min-height:38px;padding:0 var(--s2);background:transparent;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius);color:var(--paper);font-family:var(--font-data);font-size:var(--step--1);cursor:pointer}.bulkbar button:hover{border-color:var(--paper)}.bulkbar .danger:hover{background:var(--magenta);border-color:var(--magenta)}.bulkbar .cancel{border-color:transparent;opacity:.7}@media(max-width:620px){.topbar{align-items:center;row-gap:var(--s2);column-gap:var(--s2)}.wordmark{order:1;margin-right:auto}.netstate{order:2;margin-left:0}.refresh{order:3}.iconbtn{order:4}.greeting{order:5;flex:1 0 100%;max-width:100%;text-align:center;padding:0}.clock{order:6;flex:1 0 100%;flex-direction:row;align-items:baseline;justify-content:center;gap:var(--s2);margin:0}.clock .cd{font-size:.72rem}.bulkbar{padding:var(--s2) var(--s3)}.bulkbar .bcount{font-size:.68rem}}.task .title.readonly{border:0;background:transparent;padding:0;cursor:pointer;white-space:pre-wrap;resize:none;width:100%}.task .title.readonly:hover{color:var(--gold)}.task .untitled{color:var(--ink-faint);font-style:italic}.strip:not(.editing) .task{padding-top:var(--s2);padding-bottom:var(--s2)}.strip:not(.editing) .task .meta{margin-top:2px}.task.spacer{border:0;padding:0}.task.spacer .spacergap{height:var(--s5)}.task.spacer .spacerline{height:1px;background:repeating-linear-gradient(to right,var(--rule) 0 8px,transparent 8px 14px);margin:var(--s3) 0}.rodoc{font-size:var(--step-0);line-height:1.5}.rodoc p{margin:0 0 var(--s2)}.rodoc ul,.rodoc ol{margin:0 0 var(--s3);padding-left:var(--s5)}.rodoc li{margin:var(--s1) 0}.rodoc h3,.rodoc h4,.rodoc h5{margin:var(--s3) 0 var(--s1)}.rotable{width:100%;border-collapse:collapse;font-family:var(--font-data);font-size:var(--step--1);margin:var(--s2) 0}.rotable th,.rotable td{border:1px solid var(--rule);padding:var(--s1) var(--s2);text-align:left}.rotable th[data-num=true],.rotable td[data-num=true]{text-align:right;font-variant-numeric:tabular-nums}.rotable th{background:var(--panel-sunk);font-weight:600}.rotable tfoot td{border-top:2px solid var(--rule-strong);font-weight:700}.catadd{display:flex;gap:var(--s2);margin:var(--s2) 0 var(--s3)}.catadd input{flex:1;min-height:40px;padding:0 var(--s3);background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius)}.catlist{list-style:none;margin:0;padding:0}.catlist li{display:flex;gap:var(--s2);align-items:center;padding:var(--s1) 0}.catlist .none{color:var(--ink-faint);font-family:var(--font-data);font-size:var(--step--1)}.datehead .tally{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.datehead .tally .tline{white-space:nowrap}.alarmsection{margin-bottom:var(--s3)}.alarmsection h3{margin:0 0 var(--s1);font-family:var(--font-data);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.alarmrow{padding-top:var(--s2);padding-bottom:var(--s2);gap:var(--s2);align-items:center}.alarmrow .alarmbody .am{font-size:.7rem}.alarmrow .acts{gap:var(--s1)}.alarmsection .empty{padding:var(--s2) 0}.alarmsection .empty p{margin:0;font-size:var(--step--1);color:var(--ink-faint)}
