:root{--bg:#F2F5F4;--surface:#FFFFFF;--surface-2:#E7EEEC;--fg:#13201E;--muted:#5A6B68;--line:#D3DDDA;--accent:#12695F;--accent-fg:#FFFFFF;--accent-soft:#D5EDE8;--warm:#B8661A;--warm-soft:#F7E6D3;--ok:#1C8A4C;--ok-soft:#DBF1E3;--danger:#C2362C;--danger-soft:#F8DEDA;--soon:#A26B10;--shadow:0 1px 2px rgba(19,32,30,.06),0 6px 20px rgba(19,32,30,.06);--f-display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;--f-body:"Figtree","Segoe UI",system-ui,sans-serif;--f-mono:"JetBrains Mono",ui-monospace,Consolas,monospace;--r:14px}:root[data-theme=dark]{--bg:#0D1413;--surface:#141E1C;--surface-2:#1B2826;--fg:#E3ECE9;--muted:#93A4A0;--line:#283633;--accent:#4DBEAF;--accent-fg:#06201C;--accent-soft:#163A35;--warm:#E9A25C;--warm-soft:#3A2A19;--ok:#4CC27F;--ok-soft:#173523;--danger:#F07263;--danger-soft:#3D1D1A;--soon:#E0AE4F;--shadow:0 1px 2px rgba(0,0,0,.3),0 6px 20px rgba(0,0,0,.25);color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}h1,h2,h3{font-family:var(--f-display);line-height:1.15;margin:0;text-wrap:balance;font-weight:700}h1{font-size:clamp(1.6rem,3vw,2.1rem);letter-spacing:-.01em}h2{font-size:1.2rem}h3{font-size:1rem;font-family:var(--f-body);font-weight:700}p{margin:0}.i{flex:none;display:block}.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:.85rem}.eyebrow{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100%}.side{position:sticky;top:0;height:100vh;padding:22px 14px;border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:4px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:1.25rem;padding:0 10px 18px}.brand-mark{width:30px;height:30px;border-radius:9px;background:var(--accent);color:var(--accent-fg);display:grid;place-items:center}.nav-btn{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;border:0;background:none;text-align:left;color:var(--muted);font-weight:600}.nav-btn:hover{background:var(--surface-2);color:var(--fg)}.nav-btn[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.side-foot{margin-top:auto;padding:12px;border-radius:12px;background:var(--surface-2);font-size:.82rem;color:var(--muted)}.main{min-width:0;display:flex;flex-direction:column}.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;gap:12px;padding-block:14px;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.brand-m{display:none}.search{position:relative;flex:1;max-width:560px}.search input[type=text]{width:100%;padding:10px 14px 10px 40px;border-radius:12px;border:1px solid var(--line);background:var(--surface)}.search .i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted)}.qres{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);max-height:60vh;overflow:auto;padding:6px}.qres button{display:flex;gap:10px;align-items:flex-start;width:100%;padding:9px 10px;border:0;background:none;border-radius:8px;text-align:left}.qres button:hover,.qres button:focus-visible{background:var(--surface-2)}.qres .tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);min-width:78px;padding-top:2px}.streak{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:var(--warm-soft);color:var(--warm);font-weight:700;font-size:.9rem;white-space:nowrap}#view{padding-block:24px 120px;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));max-width:1180px;width:100%}.bottom{display:none}.stack{display:flex;flex-direction:column;gap:18px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.grid{display:grid;gap:18px}.g-home{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px;min-width:0}.card-h{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:.92rem}.btn:hover{background:var(--surface-2)}.btn.pri{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.btn.pri:hover{filter:brightness(1.07)}.btn.ghost{border-color:transparent;background:none}.btn.sm{padding:6px 10px;font-size:.84rem}.btn:disabled{opacity:.5;cursor:default}.pill{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:.76rem;font-weight:700;white-space:nowrap}.p-ok{background:var(--ok-soft);color:var(--ok)}.p-urgent{background:var(--danger-soft);color:var(--danger)}.p-next{background:var(--accent-soft);color:var(--accent)}.p-past{background:var(--surface-2);color:var(--muted)}.p-warm{background:var(--warm-soft);color:var(--warm)}.bar{height:8px;border-radius:99px;background:var(--surface-2);overflow:hidden}.bar>i{display:block;height:100%;background:var(--accent);border-radius:99px}.bar.ok>i{background:var(--ok)}.bar.bad>i{background:var(--danger)}.bar.warn>i{background:var(--soon)}.back{display:inline-flex;align-items:center;gap:4px;border:0;background:none;color:var(--muted);font-weight:600;padding:0}.back:hover{color:var(--fg)}.tabs{display:flex;gap:4px;padding:4px;background:var(--surface-2);border-radius:12px;overflow-x:auto;max-width:100%}.tabs button{border:0;background:none;padding:8px 14px;border-radius:9px;font-weight:600;color:var(--muted);white-space:nowrap}.tabs button[aria-selected=true]{background:var(--surface);color:var(--fg);box-shadow:var(--shadow)}select,input[type=text],input[type=number],input[type=date],input[type=time],textarea{padding:9px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);width:100%}textarea{resize:vertical;min-height:90px}label.f{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:.88rem}.empty{padding:24px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r)}.note{font-size:.82rem;color:var(--muted);padding:10px 12px;border-radius:10px;background:var(--surface-2)}.alert{display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:12px;background:var(--danger-soft);color:var(--danger);font-weight:600;border:0;width:100%;text-align:left}.alert .num{font-size:1.3rem}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-dow{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:center;padding-bottom:4px;font-weight:600}.cal-day{aspect-ratio:1/1.05;max-width:100%;border-radius:10px;border:1px solid transparent;background:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:6px;gap:4px;font-family:var(--f-mono);font-size:.85rem;color:var(--fg);min-width:0}.cal-day.out{color:var(--muted);opacity:.45}.cal-day.today{border-color:var(--accent);font-weight:700}.cal-day.has{background:var(--surface-2)}.cal-day.has:hover{border-color:var(--line)}.dots{display:flex;gap:3px;flex-wrap:wrap;justify-content:center}.dot{width:7px;height:7px;border-radius:50%;background:transparent;box-shadow:inset 0 0 0 2px var(--accent)}.dot.ok,.dot.urgent,.dot.past{box-shadow:none}.dot.ok{background:var(--ok)}.dot.urgent{background:var(--danger)}.dot.past{background:var(--muted)}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:.78rem;color:var(--muted);margin-top:12px}.legend span{display:inline-flex;align-items:center;gap:6px}.ev{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border-radius:12px;border:1px solid var(--line);background:var(--surface);width:100%;text-align:left}.ev:hover{border-color:var(--accent)}.ev-date{width:46px;text-align:center;border-radius:10px;padding:5px 0;background:var(--surface-2);line-height:1.1}.ev-date b{display:block;font-family:var(--f-mono);font-size:1.15rem}.ev-date span{font-size:.68rem;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.ev.urgent .ev-date{background:var(--danger-soft);color:var(--danger)}.ev.ok .ev-date{background:var(--ok-soft);color:var(--ok)}.ev-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.count{font-family:var(--f-mono);font-weight:700;font-size:.9rem;text-align:right;white-space:nowrap}.count small{display:block;font-family:var(--f-body);font-weight:500;font-size:.7rem;color:var(--muted)}.mat{display:flex;flex-direction:column;gap:12px;text-align:left;cursor:pointer;transition:border-color .15s}.mat:hover{border-color:var(--accent)}.mat-ico{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;color:#fff;font-size:1.05rem}.ring{position:relative;width:64px;height:64px;flex:none}.ring b{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--f-mono);font-size:.9rem}.unit{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.unit>summary{list-style:none;display:flex;gap:12px;align-items:center;padding:12px 14px;cursor:pointer}.unit>summary::-webkit-details-marker{display:none}.unit>summary .bar{flex:1;max-width:120px}.topic{display:flex;gap:10px;align-items:center;padding:9px 14px;border-top:1px solid var(--line);cursor:pointer}.topic input{width:18px;height:18px;accent-color:var(--ok);flex:none}.topic.done>span{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line)}.doc{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.doc-ico{width:38px;height:38px;border-radius:10px;background:var(--surface-2);display:grid;place-items:center;color:var(--accent);flex:none}.drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px;border:1.5px dashed var(--line);border-radius:12px;color:var(--muted);text-align:center;cursor:pointer}.drop:hover{border-color:var(--accent);color:var(--accent)}.countdown{display:flex;gap:10px;flex-wrap:wrap}.cd{min-width:74px;padding:10px 12px;border-radius:12px;background:var(--surface-2);text-align:center}.cd b{display:block;font-family:var(--f-mono);font-size:1.8rem;line-height:1.1}.cd span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.hero-urgent .cd{background:var(--danger-soft);color:var(--danger)}.plan-day{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--line)}.plan-day:first-child{border-top:0}.flip{perspective:1400px;width:100%;max-width:620px;margin-inline:auto}.flip-in{position:relative;width:100%;min-height:280px;transition:transform .5s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d;cursor:pointer}.flip.on .flip-in{transform:rotateY(180deg)}.face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:18px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;gap:12px}.face.back{transform:rotateY(180deg);background:var(--accent-soft)}.face .big{font-family:var(--f-display);font-size:clamp(1.5rem,4vw,2.2rem);font-weight:700}.face .def{font-size:1.08rem;max-width:48ch}.face .corner{position:absolute;top:14px;left:16px;right:16px;display:flex;justify-content:space-between;font-size:.76rem;color:var(--muted)}.boxes{display:flex;gap:4px}.boxes i{width:16px;height:6px;border-radius:3px;background:var(--line)}.boxes i.on{background:var(--accent)}.score{display:flex;gap:10px;flex-wrap:wrap}.score>div{padding:8px 14px;border-radius:12px;background:var(--surface-2);font-weight:600;font-size:.88rem}.score b{font-family:var(--f-mono);font-size:1.1rem;margin-right:4px}.s-ok{color:var(--ok)}.s-bad{color:var(--danger)}.prompt{padding:22px;border-radius:16px;background:var(--surface-2);font-size:1.1rem}.prompt .big{font-family:var(--f-display);font-size:1.6rem;font-weight:700}.opt{display:flex;gap:12px;align-items:center;width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);text-align:left;font-weight:500}.opt:hover:not(:disabled){border-color:var(--accent)}.opt .k{width:26px;height:26px;border-radius:8px;background:var(--surface-2);display:grid;place-items:center;font-family:var(--f-mono);font-size:.8rem;flex:none}.opt.right{border-color:var(--ok);background:var(--ok-soft)}.opt.wrong{border-color:var(--danger);background:var(--danger-soft)}.opt:disabled{cursor:default}.fb{padding:14px 16px;border-radius:12px;border:1px solid var(--line)}.fb.ok{background:var(--ok-soft);border-color:transparent}.fb.bad{background:var(--danger-soft);border-color:transparent}.fb h3{margin-bottom:4px}.fb.ok h3{color:var(--ok)}.fb.bad h3{color:var(--danger)}.ai-out{white-space:pre-wrap}.kpi b{display:block;font-family:var(--f-mono);font-size:1.8rem;line-height:1.1}.kpi span{font-size:.82rem;color:var(--muted)}.weak{display:grid;grid-template-columns:minmax(0,1fr) 120px 46px;gap:12px;align-items:center;padding:8px 0;border-top:1px solid var(--line)}.weak:first-of-type{border-top:0}.act{display:flex;align-items:flex-end;gap:5px;height:90px}.act i{flex:1;background:var(--accent);border-radius:4px 4px 0 0;min-height:3px;opacity:.85}.act i.z{background:var(--line)}.tip{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.tip:first-of-type{border-top:0}.tip .n{width:28px;height:28px;border-radius:50%;background:var(--warm-soft);color:var(--warm);display:grid;place-items:center;font-weight:700;flex:none;font-family:var(--f-mono);font-size:.85rem}.yr h3{margin-bottom:8px}.subj{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.subj select{width:auto;padding:5px 8px;font-size:.84rem}.fab{position:fixed;right:max(24px,calc(env(safe-area-inset-right,0px) + 16px));bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:8px;padding:13px 18px;border-radius:999px;border:0;background:var(--fg);color:var(--bg);font-weight:700;box-shadow:0 8px 28px #00000040}.fab:hover{transform:translateY(-1px)}.ai{position:fixed;z-index:60;right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(420px,calc(100vw - 32px));height:min(620px,calc(100vh - 32px));background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 60px #00000047;display:flex;flex-direction:column;overflow:hidden}.ai-h{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line)}.ai-log{flex:1;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.msg{max-width:88%;padding:10px 13px;border-radius:14px;white-space:pre-wrap;word-wrap:break-word;font-size:.94rem}.msg.u{align-self:flex-end;background:var(--accent);color:var(--accent-fg);border-bottom-right-radius:4px}.msg.a{align-self:flex-start;background:var(--surface-2);border-bottom-left-radius:4px}.msg.sys{align-self:center;background:none;color:var(--muted);font-size:.82rem;text-align:center}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 11px;font-size:.82rem}.chip:hover{border-color:var(--accent);color:var(--accent)}.ai-f{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.ai-f input{flex:1}.modal-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#080e0d73;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border-radius:18px;padding:22px;width:min(480px,100%);max-height:calc(100vh - 32px);overflow:auto;display:flex;flex-direction:column;gap:14px;box-shadow:0 20px 60px #0000004d}.ed-unit{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:12px;display:flex;flex-direction:column;gap:8px}.ed-row{display:flex;gap:6px;align-items:center}.ed-row input{flex:1;min-width:0}.icon-btn{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--muted);flex:none}.icon-btn:hover:not(:disabled){color:var(--fg);background:var(--surface-2)}.icon-btn:disabled{opacity:.35;cursor:default}.icon-btn.danger:hover{color:var(--danger);border-color:var(--danger)}.icon-btn.confirm{background:var(--danger);border-color:var(--danger);color:#fff;width:auto;padding:0 10px;font-size:.8rem;font-weight:700}.icon-btn.confirm:hover{color:#fff;background:var(--danger)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.occ{position:relative;display:inline-block;max-width:100%;user-select:none;-webkit-user-select:none;touch-action:none;line-height:0}.occ img{max-width:100%;max-height:340px;border-radius:10px;display:block}.occ .box{position:absolute;background:var(--accent);border:2px solid var(--accent);border-radius:4px}.occ.reveal .box{background:transparent;border-style:dashed}.occ.edit{cursor:crosshair}.occ.edit .box{opacity:.8;cursor:pointer}.flip.tall .flip-in{min-height:470px}.bell{position:relative}.bell .badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--danger);color:#fff;font-size:.68rem;font-weight:700;display:grid;place-items:center;font-family:var(--f-mono)}.notif{position:absolute;top:calc(100% + 6px);right:max(16px,env(safe-area-inset-right,0px));width:min(390px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:8px;z-index:50;max-height:72vh;overflow:auto}.n-item{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:10px;border:0;background:none;width:100%;text-align:left}.n-item:hover{background:var(--surface-2)}.n-ico{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--accent-soft);color:var(--accent)}.n-ico.urgent{background:var(--danger-soft);color:var(--danger)}.n-ico.warm{background:var(--warm-soft);color:var(--warm)}.doc-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;align-items:center}.code{font-family:var(--f-mono);font-size:.74rem;word-break:break-all;max-height:130px;overflow:auto}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chip.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.opt.sel{border-color:var(--accent);background:var(--accent-soft)}.qnav{display:flex;flex-wrap:wrap;gap:6px}.qnav button{width:36px;height:36px;border-radius:9px;border:1px solid var(--line);background:var(--surface);font-family:var(--f-mono);font-size:.8rem;color:var(--muted)}.qnav button.ans{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.qnav button.cur{outline:2px solid var(--fg);outline-offset:1px}.clock{font-family:var(--f-mono);font-size:1.35rem;font-weight:700;padding:6px 14px;border-radius:10px;background:var(--surface-2)}.clock.low{background:var(--danger-soft);color:var(--danger)}.sd{display:inline-flex;gap:4px;flex:none}.sd i{width:9px;height:9px;border-radius:50%;background:var(--line)}.sd i.on{background:var(--ok)}.dl{display:grid;gap:12px;margin:0}.dl dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.dl dd{margin:2px 0 0}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:.9rem}.tbl th,.tbl td{text-align:left;padding:8px 10px;border-top:1px solid var(--line);vertical-align:top}.tbl th{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-top:0;font-weight:700}.tbl td.v{font-family:var(--f-mono);white-space:nowrap;font-size:.85rem}.res{padding:12px 14px;border-radius:10px;background:var(--surface-2);min-height:52px}.res b{font-family:var(--f-mono);font-size:1.35rem}.week{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:start}.cls{display:flex;gap:10px;align-items:center;width:100%;text-align:left;border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--surface)}.cls:hover{border-color:var(--accent)}.cls.past{opacity:.55}.dotc{width:10px;height:10px;border-radius:50%;flex:none}.wk{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;height:120px}.wk div{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;min-width:0}.wk i{width:100%;max-width:30px;background:var(--accent);border-radius:4px 4px 0 0;min-height:3px}.wk i.z{background:var(--line)}.wk span{font-size:.7rem;color:var(--muted)}.pomo-btn{display:flex;align-items:center;gap:6px;height:34px;padding:0 9px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-family:var(--f-mono);font-weight:700;font-size:.85rem;flex:none}.pomo-btn:hover{color:var(--fg)}.pomo-btn.run{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.pomo-btn.brk{background:var(--warm-soft);color:var(--warm);border-color:var(--warm)}.big-time{font-family:var(--f-mono);font-size:3rem;font-weight:700;text-align:center;line-height:1}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:90;background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:12px;font-weight:600;font-size:.9rem;box-shadow:0 8px 28px #00000040;max-width:calc(100vw - 32px);text-align:center}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:12px}.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.more-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-weight:600;text-align:left}.more-grid button:hover{border-color:var(--accent);color:var(--accent)}ul.small{margin:4px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}@media(max-width:980px){.g-home,.g3{grid-template-columns:minmax(0,1fr)}}@media(max-width:860px){.app{grid-template-columns:minmax(0,1fr)}.side{display:none}.brand-m{display:flex;align-items:center}.brand-m .brand-mark{width:32px;height:32px}.top{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.streak .lbl{display:none}#view{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-top:18px}.g2{grid-template-columns:minmax(0,1fr)}.bottom{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.bottom button{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px 8px;border:0;background:none;font-size:.7rem;font-weight:600;color:var(--muted)}.bottom button[aria-current=page]{color:var(--accent)}.fab{bottom:calc(76px + env(safe-area-inset-bottom,0px));padding:13px}.fab .lbl{display:none}.weak{grid-template-columns:minmax(0,1fr) 70px 40px}}.auth{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--bg);display:grid;place-items:center;overflow:auto;padding-block:max(24px,env(safe-area-inset-top,0px)) max(24px,env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.auth-card{width:min(420px,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow)}.auth-brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:1.3rem;margin-bottom:4px}.auth-brand img{border-radius:10px}.auth input[type=email],.auth input[type=password],.auth input[type=text]{padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);width:100%}.auth-msg{font-size:.86rem;min-height:1.2em;color:var(--danger)}.auth-msg.ok{color:var(--ok)}.auth-msg:empty{display:none}.auth-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.auth-link{border:0;background:none;color:var(--accent);font-weight:600;padding:4px 0}.auth-link:hover{text-decoration:underline}.auth-opt{display:flex;flex-direction:column;gap:4px;text-align:left;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:var(--surface)}.auth-opt:hover{border-color:var(--accent)}.auth-opt span{font-size:.86rem;color:var(--muted)}.sync-err{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:95;background:var(--warm-soft);color:var(--warm);border:1px solid var(--warm);padding:8px 14px;border-radius:10px;font-size:.84rem;font-weight:600;max-width:calc(100vw - 32px);text-align:center}.no-ia #fab,.no-ia #ai,.no-ia [data-act=ai-ask],.no-ia [data-act=ai-open],.no-ia [data-act=quiz-ai],.no-ia [data-act=cuest-gen],.no-ia [data-act=doc-q],.no-ia [data-act=doc-cards],.no-ia [data-act=doc-sum],.no-ia [data-act=ip-ai],.no-ia [data-act=fi-ai],.no-ia [data-act=mn-ai],.no-ia [data-act=vj-ai],.no-ia [data-tab=feyn]{display:none!important}@media(min-width:861px){.tabs{flex-wrap:wrap}}.tabs{scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}@media(max-width:1100px){.week{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:860px){.top{gap:8px}.toast{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}@media(max-width:600px){.week{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@supports (color:red){:root{color-scheme:light;--bg:#F5EEDD;--titulo:#84B3CE;--accent:#16587B;--accent-fg:#F5EEDD;--accent-soft:#D4E6F0;--line:#E2D8C2 }#view h1,.pg-head .eyebrow{color:var(--titulo)}#view .card h1{color:inherit}.t-rock,.t-venice,.t-beige,.t-teal,.t-sky{background:var(--surface);color:var(--fg);border-color:var(--line)}.t-rock{--surface:#84B3CE;--surface-2:#9CC2D8;--fg:#16587B;--muted:#2B6A8C;--line:#6E9FBD;--accent:#16587B;--accent-fg:#F5EEDD;--accent-soft:#B9D5E5}.t-venice{--surface:#16587B;--surface-2:#22698F;--fg:#F5EEDD;--muted:#BFD7E5;--line:#3B7699;--accent:#84B3CE;--accent-fg:#0E3B53;--accent-soft:#2A6E92}.t-beige{--surface:#F5EFEB;--surface-2:#E8DEDA;--fg:#567C8D;--muted:#567C8D;--line:#DCCFC9;--accent:#567C8D;--accent-fg:#F5EFEB;--accent-soft:#E0E8EC}.t-teal{--surface:#567C8D;--surface-2:#668B9B;--fg:#F5EFEB;--muted:#E2EBEF;--line:#7898A7;--accent:#F5EFEB;--accent-fg:#3F6170;--accent-soft:#6E91A0}.t-sky{--surface:#C8D9E6;--surface-2:#B4CADB;--fg:#2F4156;--muted:#40576E;--line:#A8C0D2;--accent:#2F4156;--accent-fg:#F5EFEB;--accent-soft:#DCE7EF}.tabs.t-sky{background:#c8d9e6}.tabs.t-sky button{color:#2f4156}.tabs.t-sky button[aria-selected=true]{background:#2f4156;color:#f5efeb}.t-venice{--muted:#F5EEDD}.t-venice .cal-day.out{opacity:.6}.t-rock .cls.past{opacity:.8}.t-venice .cal-day.has{background:var(--surface-2)}.tabs.t-rock{background:#84b3ce}.tabs.t-rock button{color:#16587b}.tabs.t-rock button[aria-selected=true]{background:#16587b;color:#f5eedd}.tabs.t-merino-inv{background:#84b3ce}.tabs.t-merino-inv button{color:#f5eedd}.tabs.t-merino-inv button[aria-selected=true]{background:#f5eedd;color:#16587b}.empty.t-rock{border-style:solid}.t-rock.crema{--fg:#F5EEDD;--muted:#F0F5F8;--line:#9DC3D9;--accent-soft:#6E9FBD;text-shadow:0 1px 2px rgba(14,59,83,.45)}.t-rock.crema .btn.pri,.t-rock.crema .pill,.t-rock.crema .ev-date{text-shadow:none}.t-rock.crema .ev-date{background:#16587b}.t-rock.crema .ev-date span{color:inherit;opacity:.85}.t-rock.crema .ev.urgent .ev-date{background:var(--danger-soft)}.t-rock.crema .ev.ok .ev-date{background:var(--ok-soft)}.bottom,.side{background:#16587b;border-color:#16587b}.bottom button,.side .nav-btn,.bottom button[aria-current=page],.side .nav-btn[aria-current=page]{color:#f5eedd}.side .nav-btn[aria-current=page]{background:#22698f}.side .nav-btn:hover{background:#22698f;color:#f5eedd}.side .brand{color:#f5eedd}.side .brand-mark{background:#84b3ce;color:#16587b}.side-foot{background:#22698f;color:#f5eedd}.bottom button[aria-current=page]{background:#22698f}.side-foot b{color:#f5eedd!important}.more-grid button{background:#567c8d;border-color:#567c8d;color:#f5efeb}.more-grid button:hover{border-color:#3f6170;color:#f5efeb;filter:brightness(1.08)}.btn.t-teal{background:#567c8d;border-color:#567c8d;color:#f5efeb}.card.tinted{background:color-mix(in srgb,var(--tint) 16%,#FFFFFF);border-color:color-mix(in srgb,var(--tint) 55%,#FFFFFF);border-top:5px solid var(--tint)}.card.tinted .doc-ico{background:var(--tint);color:#fff}}.swatches{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.sw{width:30px;height:30px;border-radius:50%;border:2px solid var(--line);padding:0;display:grid;place-items:center;font-size:.7rem;color:var(--muted)}.sw[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:2px}.sw-otro{width:44px;height:32px;padding:2px;border-radius:8px;border:1px solid var(--line);background:var(--surface)}div.f{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:.88rem}.fichero{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.fichero .chip{display:inline-flex;align-items:center;gap:6px}.campo{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.campo .campo-l{font-weight:600}.sel-box{max-height:46vh;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:0 10px 6px}.sel-h,.sel-i{display:flex;gap:8px;align-items:center;padding:6px 0}.sel-h{border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:1}.sel-i{padding-left:6px;font-weight:500}.sel-box input[type=checkbox]{width:auto;flex:none}.ed-row .ed-act{width:38px;height:38px;flex:none;padding:0;color:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface) url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%2316587B%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M7%204v16M3%208l4-4%204%204M17%2020V4M13%2016l4%204%204-4%22%2F%3E%3C%2Fsvg%3E) center/18px no-repeat}.ed-row .ed-act option,.ed-row .ed-act optgroup{color:#1d2a33}.topic-det{display:block;color:var(--muted);font-size:.82rem;font-weight:400;margin-top:2px}.topic.done .topic-det{text-decoration:none}.ed-tema{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.ed-tema .ed-det{font-size:.82rem;min-height:0;padding:6px 10px;color:var(--muted)}.grip{flex:none;display:grid;place-items:center;width:26px;height:38px;margin-left:-4px;color:var(--muted);cursor:grab;touch-action:none;border-radius:8px;-webkit-user-select:none;user-select:none}.grip:hover{background:var(--surface-2);color:var(--accent)}.drag-fantasma{position:fixed;z-index:80;pointer-events:none;opacity:.92;box-shadow:0 10px 30px #16587b40;background:var(--surface);border-radius:12px;cursor:grabbing}.drag-oculto{display:none!important}.drag-lugar{border:2px dashed var(--accent);border-radius:10px;background:var(--accent-soft);margin-left:22px}.drag-lugar.u{margin-left:0}#ed-units.compacto .ed-t,#ed-units.compacto form.ed-row,#ed-units.compacto .ed-unit .ed-act,#ed-units.compacto .ed-unit .icon-btn{display:none}#ed-units.compacto .ed-unit{padding:8px 12px}.fi-thumb{display:block;position:relative;margin:-18px -18px 0;height:150px;border:0;padding:0;overflow:hidden;border-radius:var(--r) var(--r) 0 0;background:var(--surface-2);cursor:zoom-in}.card.tinted .fi-thumb{margin-top:-18px}.fi-thumb img{width:100%;height:100%;object-fit:cover;display:block}.fi-thumb-n{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:#0e2838bf;color:#f5eedd;font-size:.75rem;font-weight:600}.fi-galeria{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:4px 0 8px}.fi-galeria figure{margin:0;display:flex;flex-direction:column;gap:4px}.fi-galeria button{border:1px solid var(--line);padding:0;border-radius:10px;overflow:hidden;background:var(--surface-2);cursor:zoom-in}.fi-galeria img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.fi-galeria figcaption{font-size:.8rem;color:var(--muted)}.fi-img-ed{display:flex;gap:8px;align-items:center}.fi-img-ed img{width:64px;height:64px;object-fit:cover;border-radius:8px;flex:none;background:var(--surface-2)}img[data-img]:not([src]){background:var(--surface-2)}img.img-error{opacity:.3}body.visor-abierto{overflow:hidden}#visor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#081620f0;display:flex;flex-direction:column;padding:12px 12px max(16px,env(safe-area-inset-bottom));color:#f5eedd}.visor-top{display:flex;align-items:center;gap:10px;padding:4px 4px 10px}.visor-top b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem}.visor-img{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;touch-action:pan-y}.visor-img img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;background:#fff;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.visor-btn{border:0;background:#f5eedd24;color:#f5eedd;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;cursor:pointer}.visor-btn:hover{background:#f5eedd42}.visor-ant,.visor-sig{position:absolute;top:50%;transform:translateY(-50%);z-index:1}.visor-ant{left:4px}.visor-sig{right:4px}.visor-texto{margin:12px auto 0;max-width:720px;border:0;background:#f5eedd1f;color:#f5eedd;padding:10px 14px;border-radius:10px;font-size:.95rem;text-align:center;cursor:pointer}.visor-texto.oculto{font-style:italic;opacity:.8}.pomo-aviso{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:8px 4px}.pomo-aviso-ico{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}
