@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font:"Nunito Variable", ui-rounded, "Segoe UI", system-ui, sans-serif;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.875rem;--fs-base:.9375rem;--fs-lg:1.125rem;--fs-xl:1.375rem;--fs-2xl:1.75rem;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-full:999px;--topbar-h:60px;--tabbar-h:0px;--column-w:288px;--hit:36px;--ease:cubic-bezier(.2, .8, .2, 1);--fast:.12s;--slow:.26s;--amber:#f5a524;--on-accent:#241703;--sticker:#fffaf0}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1b1815;--bg-sunken:#110f0d;--surface:#2a2521;--surface-2:#332d28;--surface-hover:#3b342e;--border:#3e3730;--border-strong:#5a5046;--text:#f7f0e6;--text-2:#cdc1b2;--text-3:#a39686;--accent:var(--amber);--accent-hover:#ffb94d;--accent-text:#f8b84e;--accent-soft:#f5a52426;--ok:#bfd162;--ok-soft:#bfd16224;--danger:#ff8370;--danger-solid:#d9442f;--danger-soft:#ff837024;--info:#74c9c9;--info-soft:#74c9c924;--overlay:#0a0807b3;--shadow-1:0 1px 0 #00000059, 0 2px 6px #00000040;--shadow-2:0 10px 28px #00000073;--shadow-3:0 28px 70px #000000a6;--stripe:#ffffff0a}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4ede2;--bg-sunken:#e8dece;--surface:#fffdf8;--surface-2:#f8f1e5;--surface-hover:#f1e8d9;--border:#e0d3bf;--border-strong:#c4b39b;--text:#2a2119;--text-2:#594c3f;--text-3:#6f6152;--accent:var(--amber);--accent-hover:#e89410;--accent-text:#8f4f00;--accent-soft:#f5a52433;--ok:#4f6a0c;--ok-soft:#6f8f1a26;--danger:#b93824;--danger-solid:#c8402d;--danger-soft:#c8402d1f;--info:#1b7272;--info-soft:#1f7f7f1f;--overlay:#2a211980;--shadow-1:0 1px 0 #5c3d1414, 0 2px 6px #5c3d1414;--shadow-2:0 10px 28px #5c3d1426;--shadow-3:0 28px 70px #5c3d1440;--stripe:#5c3d140a}.chip--trabalho{--chip:#f5a524}.chip--prova{--chip:#ff7a66}.chip--seminario{--chip:#b79cff}.chip--leitura{--chip:#74c9c9}.chip--projeto{--chip:#6ea8ff}.chip--exercicios{--chip:#bfd162}.chip--estudo{--chip:#f08fc0}.chip--outro{--chip:#b8aa98}@media (width<=720px){:root{--tabbar-h:64px;--hit:44px;--column-w:min(84vw, 320px);--topbar-h:56px}}*,:before,:after{box-sizing:border-box}html{font-family:var(--font);-webkit-text-size-adjust:100%;font-size:16px}body{background:var(--bg);min-width:320px;color:var(--text);font-size:var(--fs-base);-webkit-font-smoothing:antialiased;margin:0;line-height:1.45}h1,h2,h3,p,ul,dl,dd,fieldset{margin:0;padding:0}ul{list-style:none}fieldset{border:0;min-width:0}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}img{max-width:100%;display:block}a{color:inherit}h1{font-size:var(--fs-2xl);letter-spacing:-.01em;font-weight:800;line-height:1.15}h2{font-size:var(--fs-lg);font-weight:800;line-height:1.25}h3{font-size:var(--fs-base);font-weight:800}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}:focus:not(:focus-visible){outline:none}::selection{background:var(--accent);color:var(--on-accent)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:-80px;left:var(--sp-3);z-index:100;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-sm);background:var(--accent);color:var(--on-accent);font-weight:800;position:fixed}.skip-link:focus{top:var(--sp-3)}.eyebrow{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);font-weight:800}.link{padding:var(--sp-2) 0;color:var(--accent-text);text-underline-offset:3px;background:0 0;border:0;font-weight:700;text-decoration:underline}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--hit);padding:0 var(--sp-4);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--fs-md);white-space:nowrap;transition:background var(--fast), border-color var(--fast), transform var(--fast);font-weight:700;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5}.btn--primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:800}.btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn--danger{border-color:var(--danger-solid);background:var(--danger-solid);color:#fff}.btn--danger:hover:not(:disabled){background:var(--danger-solid);filter:brightness(1.1)}.btn--ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn--danger-text{color:var(--danger)}.btn--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.btn--sm{min-height:32px;padding:0 var(--sp-3);font-size:var(--fs-sm)}.btn--block{width:100%;min-height:44px}.icon-btn{width:var(--hit);height:var(--hit);border-radius:var(--r-sm);color:var(--text-2);transition:background var(--fast), color var(--fast);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.icon-btn:disabled{opacity:.4}.icon-btn--sm{width:30px;height:30px}.avatar{border:2px solid var(--border-strong);border-radius:var(--r-full);background:var(--surface-2);width:38px;height:38px;color:var(--text);font-size:var(--fs-sm);flex:none;place-items:center;font-weight:800;display:grid}.avatar:hover{border-color:var(--accent)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>span{font-size:var(--fs-sm);color:var(--text-2);font-weight:700}.field em{color:var(--text-3);font-style:normal;font-weight:500}.field__error{font-size:var(--fs-sm);color:var(--danger);font-weight:700}.input,.select{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg);width:100%;min-height:40px;color:var(--text);font-size:var(--fs-md);transition:border-color var(--fast), box-shadow var(--fast);padding:8px 12px}textarea.input{resize:vertical;line-height:1.45}.input::placeholder{color:var(--text-3)}.input:hover,.select:hover{border-color:var(--text-3)}.input:focus-visible,.select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.input[aria-invalid=true]{border-color:var(--danger)}.form{gap:var(--sp-4);flex-direction:column;display:flex}.form__row{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.switch{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text-2);cursor:pointer;font-weight:600;display:flex}.switch input{appearance:none;border-radius:var(--r-full);background:var(--border-strong);cursor:pointer;width:38px;height:22px;transition:background var(--fast);flex:none;margin:0;position:relative}.switch input:after{content:"";background:var(--sticker);width:16px;height:16px;transition:transform var(--fast) var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.switch input:checked{background:var(--accent)}.switch input:checked:after{background:var(--on-accent);transform:translate(16px)}.switch--row{justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) 0}.switch--row>span{flex-direction:column;gap:2px;display:flex}.switch--row strong{font-size:var(--fs-md);color:var(--text)}.switch--row small{font-size:var(--fs-sm);color:var(--text-3);font-weight:500}.segmented{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-sunken);padding:3px;display:inline-flex}.segmented button{min-height:32px;padding:0 var(--sp-3);color:var(--text-2);font-size:var(--fs-sm);background:0 0;border:0;border-radius:9px;font-weight:700}.segmented button.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.notice{padding:var(--sp-3);border-radius:var(--r-md);font-size:var(--fs-md);font-weight:600}.notice--error{background:var(--danger-soft);color:var(--danger)}.notice--ok{background:var(--ok-soft);color:var(--ok)}.chip{border-radius:var(--r-full);background:color-mix(in srgb, var(--chip) 22%, transparent);color:color-mix(in srgb, var(--chip) 55%, var(--text));font-size:var(--fs-xs);letter-spacing:.02em;align-items:center;padding:2px 8px;font-weight:800;display:inline-flex}.flag{font-size:var(--fs-xs);align-items:center;gap:4px;font-weight:800;display:inline-flex}.flag--alta{color:var(--accent-text)}.flag--urgente,.flag--critica{color:var(--danger)}.due{border-radius:var(--r-sm);font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap;align-items:center;gap:5px;padding:2px 7px;font-weight:700;display:inline-flex}.due--late{background:var(--danger-soft);color:var(--danger)}.due--today,.due--soon{background:var(--accent-soft);color:var(--accent-text)}.due--done{background:var(--ok-soft);color:var(--ok)}.tasks-count{font-size:var(--fs-xs);color:var(--text-2);align-items:center;gap:5px;font-weight:700;display:inline-flex}.tasks-count--done{color:var(--ok)}.timing{color:var(--info);animation:1.4s ease-in-out infinite pulse;display:inline-flex}.meter{border-radius:var(--r-full);background:var(--border);height:4px;overflow:hidden}.meter span{border-radius:inherit;background:var(--accent);height:100%;transition:width var(--slow) var(--ease);display:block}.meter--lg{height:8px}.menu{z-index:60;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);min-width:220px;max-width:min(320px,100vw - 16px);max-height:calc(100vh - 16px);box-shadow:var(--shadow-2);animation:pop var(--fast) var(--ease);padding:6px;position:fixed;overflow-y:auto}.menu__item{align-items:center;gap:var(--sp-3);width:100%;min-height:var(--hit);border-radius:var(--r-sm);color:var(--text);font-size:var(--fs-md);text-align:left;background:0 0;border:0;padding:6px 10px;font-weight:600;display:flex}.menu__item:hover:not(:disabled),.menu__item:focus-visible{background:var(--surface-hover);outline:none}.menu__item:disabled{opacity:.45}.menu__item--danger{color:var(--danger)}.menu__icon{color:var(--text-3);display:inline-flex}.menu__item--danger .menu__icon{color:inherit}.menu__label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.menu__check{color:var(--accent-text);font-weight:900}.menu__heading{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:8px 10px 4px;font-weight:800}.menu__separator{background:var(--border);height:1px;margin:6px 4px}.menu__profile{flex-direction:column;padding:8px 10px;display:flex}.menu__profile span{font-size:var(--fs-sm);color:var(--text-3);text-overflow:ellipsis;overflow:hidden}.menu__version{font-size:var(--fs-xs);color:var(--text-3);align-items:center;gap:6px;padding:6px 10px 4px;display:flex}.swatches{grid-template-columns:repeat(6,1fr);gap:6px;padding:4px 10px 8px;display:grid}.swatch{border:2px solid #0000;border-radius:50%;width:28px;height:28px}.swatch[aria-checked=true]{border-color:var(--text);box-shadow:0 0 0 2px var(--surface) inset}.dialog-backdrop{z-index:70;padding:var(--sp-4);background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade var(--fast) linear;place-items:center;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--border-strong);border-radius:var(--r-xl);background:var(--surface);width:100%;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-3);animation:rise var(--slow) var(--ease);flex-direction:column;display:flex}.dialog:focus{outline:none}.dialog--sm{max-width:420px}.dialog--md{max-width:560px}.dialog--lg{max-width:920px}.dialog__header{align-items:flex-start;gap:var(--sp-3);padding:var(--sp-5) var(--sp-5) var(--sp-3) var(--sp-6);display:flex}.dialog__heading{flex-direction:column;flex:1;gap:4px;min-width:0;padding-top:4px;display:flex}.dialog__heading h2{font-size:var(--fs-xl)}.dialog__body{padding:var(--sp-2) var(--sp-6) var(--sp-5);overflow-y:auto}.dialog__text{color:var(--text-2)}.dialog__footer{justify-content:flex-end;align-items:center;gap:var(--sp-2);padding:var(--sp-4) var(--sp-6);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.dialog__footer-start{gap:var(--sp-1);margin-right:auto;display:flex}.toasts{z-index:90;left:50%;bottom:calc(var(--tabbar-h) + var(--sp-4) + env(safe-area-inset-bottom));align-items:center;gap:var(--sp-2);pointer-events:none;flex-direction:column;width:max-content;max-width:calc(100vw - 24px);display:flex;position:fixed;transform:translate(-50%)}.toast{pointer-events:auto;align-items:center;gap:var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-full);background:var(--surface-2);max-width:100%;box-shadow:var(--shadow-2);font-size:var(--fs-md);animation:rise var(--slow) var(--ease);padding:6px 8px;font-weight:700;display:flex}.toast--error{border-color:var(--danger)}.toast--success{border-color:var(--ok)}.toast__text{padding-right:var(--sp-1)}.toast__action{border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-size:var(--fs-sm);border:0;padding:6px 12px;font-weight:800}.dots{gap:6px;display:inline-flex}.dots i{background:var(--accent);width:8px;height:8px;animation:bounce 1s var(--ease) infinite;border-radius:50%}.dots i:nth-child(2){animation-delay:.12s}.dots i:nth-child(3){animation-delay:.24s}kbd{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--bg);min-width:28px;font:700 var(--fs-sm) var(--font);text-align:center;white-space:pre;border-bottom-width:3px;padding:3px 8px;display:inline-block}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)scale(.98)}}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.97)}}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}@keyframes pulse{50%{opacity:.35}}@media (width<=720px){.form__row{grid-template-columns:1fr}.dialog-backdrop{place-items:end center;padding:0}.dialog{border-radius:var(--r-xl) var(--r-xl) 0 0;max-height:94dvh;padding-bottom:env(safe-area-inset-bottom);border-bottom:0}.dialog--sm,.dialog--md,.dialog--lg{max-width:none}.dialog__header{padding:var(--sp-4) var(--sp-3) var(--sp-2) var(--sp-4)}.dialog__body{padding:var(--sp-2) var(--sp-4) var(--sp-4)}.dialog__footer{padding:var(--sp-3) var(--sp-4)}.input,.select{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app{flex-direction:column;max-width:100vw;min-height:100dvh;display:flex;overflow-x:clip}.main{min-width:0;padding:var(--sp-5) var(--sp-6) calc(var(--tabbar-h) + var(--sp-6));flex:1}.main:focus{outline:none}.main--center{place-items:center;display:grid}.topbar{z-index:40;align-items:center;gap:var(--sp-3);height:var(--topbar-h);padding:0 var(--sp-5);border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:var(--sp-2);text-decoration:none;display:inline-flex}.brand__name{font-size:var(--fs-lg);letter-spacing:.02em;font-weight:900}.brand__tag{margin-left:var(--sp-1);font-size:var(--fs-sm);color:var(--text-3)}.brand--static{margin-bottom:var(--sp-6)}.board-switch{min-height:var(--hit);max-width:260px;padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--fs-md);align-items:center;gap:6px;font-weight:800;display:inline-flex}.board-switch:hover{border-color:var(--border-strong);background:var(--surface-hover)}.board-switch__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.views{margin-left:var(--sp-3);gap:2px;display:flex}.views__item{min-height:var(--hit);padding:0 var(--sp-3);border-radius:var(--r-md);color:var(--text-2);font-size:var(--fs-md);align-items:center;gap:7px;font-weight:700;text-decoration:none;display:inline-flex}.views__item:hover{background:var(--surface-hover);color:var(--text)}.views__item.active{background:var(--accent-soft);color:var(--accent-text)}.topbar__end{align-items:center;gap:var(--sp-3);margin-left:auto;display:flex}.tabbar{display:none}.filterbar{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.search{align-items:center;gap:var(--sp-2);width:260px;min-height:var(--hit);padding:0 var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text-3);display:flex}.search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search input{min-width:0;color:var(--text);font-size:var(--fs-md);background:0 0;border:0;outline:none;flex:1}.search input::placeholder{color:var(--text-3)}.filterbar__toggle{display:none}.filterbar__selects{gap:var(--sp-2);flex-wrap:wrap;display:flex}.filterbar .select{width:auto;min-height:var(--hit);background:var(--surface);padding:0 10px;font-weight:600}.filterbar__count{color:var(--text-3);font-weight:600}.app--kanban{height:100dvh}.app--kanban .main{min-height:0;padding-bottom:calc(var(--tabbar-h) + var(--sp-2));flex-direction:column;padding-right:0;display:flex}.app--kanban .filterbar,.app--kanban .callout{margin-right:var(--sp-6)}.board-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.board{align-items:flex-start;gap:var(--sp-3);min-height:0;padding:2px var(--sp-6) var(--sp-4) 0;overscroll-behavior-x:contain;scrollbar-color:var(--border-strong) transparent;flex:1;display:flex;overflow-x:auto}.column{flex:0 0 var(--column-w);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-sunken);max-height:100%;transition:border-color var(--fast), box-shadow var(--fast);flex-direction:column;display:flex}.column--over{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.column__header{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-2) var(--sp-2) var(--sp-4);display:flex}.column__dot{border-radius:50%;flex:none;width:10px;height:10px}.column__title{min-width:0;font-size:var(--fs-base);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:800;overflow:hidden}.column__count{border-radius:var(--r-full);background:var(--surface);min-width:24px;color:var(--text-2);font-size:var(--fs-xs);text-align:center;padding:1px 8px;font-weight:800}.column__cards{gap:var(--sp-2);min-height:44px;padding:2px var(--sp-2) var(--sp-2);scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent;flex-direction:column;flex:1;display:flex;overflow-y:auto}.column__empty{padding:var(--sp-3);border:1px dashed var(--border);border-radius:var(--r-md);color:var(--text-3);font-size:var(--fs-sm);text-align:center;margin:auto 0}.column__add{align-items:center;gap:var(--sp-2);min-height:var(--hit);margin:0 var(--sp-2) var(--sp-2);padding:0 var(--sp-3);border-radius:var(--r-md);color:var(--text-2);font-size:var(--fs-md);text-align:left;background:0 0;border:0;font-weight:700;display:flex}.column__add:hover{background:var(--surface);color:var(--text)}.quick-add{gap:var(--sp-2);padding:0 var(--sp-2) var(--sp-2);flex-direction:column;display:flex}.quick-add .input{background:var(--surface);resize:none}.quick-add__actions{align-items:center;gap:var(--sp-2);display:flex}.add-column{align-items:center;gap:var(--sp-2);min-height:48px;padding:0 var(--sp-5);border:1px dashed var(--border-strong);border-radius:var(--r-lg);color:var(--text-2);font-size:var(--fs-md);white-space:nowrap;background:0 0;flex:none;font-weight:700;display:inline-flex}.add-column:hover{border-color:var(--accent);color:var(--accent-text)}.card{padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-1);cursor:grab;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:border-color var(--fast), box-shadow var(--fast);flex-direction:column;gap:6px;display:flex;position:relative}.card:hover{border-color:var(--border-strong)}.card:focus-visible{outline:3px solid var(--accent);outline-offset:1px;border-radius:var(--r-md)}.card--ghost{opacity:.35}.card--overlay{cursor:grabbing;border-color:var(--accent);box-shadow:var(--shadow-3);transform:rotate(2.5deg)}.card--done .card__title{color:var(--text-2);text-decoration:line-through;-webkit-text-decoration-color:var(--text-3);text-decoration-color:var(--text-3)}.card__top{align-items:center;gap:var(--sp-2);min-height:22px;display:flex}.card__menu{margin:-6px -6px -6px auto}.card__title{font-size:var(--fs-md);overflow-wrap:anywhere;font-weight:700;line-height:1.35}.card__discipline{font-size:var(--fs-sm);color:var(--text-2)}.card__meta{align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-top:2px;display:flex}.callout{align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);display:flex}.callout>div{flex:1;min-width:0}.callout p{font-size:var(--fs-md);color:var(--text-2)}.overview{gap:var(--sp-4);flex-direction:column;max-width:1120px;margin:0 auto;display:flex}.overview>*,.overview__grid>*{min-width:0}.hero{align-items:center;gap:var(--sp-5);padding:var(--sp-6);border:1px solid var(--border);border-radius:var(--r-xl);background:repeating-linear-gradient(115deg, transparent 0 34px, var(--stripe) 34px 52px), var(--surface);display:flex;position:relative;overflow:hidden}.hero__text{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.hero__text>p:last-child{color:var(--text-2);font-size:var(--fs-lg)}.hero__actions{gap:var(--sp-2);flex-direction:column;display:flex}.stats{gap:var(--sp-3);grid-template-columns:repeat(4,1fr);display:grid}.stat{align-items:center;column-gap:var(--sp-3);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text-2);text-align:left;grid-template-columns:auto 1fr;display:grid}button.stat:hover{border-color:var(--border-strong);background:var(--surface-hover)}.stat svg{grid-row:span 2}.stat strong{font-size:var(--fs-xl);color:var(--text);font-weight:900;line-height:1.1}.stat span{font-size:var(--fs-sm);font-weight:600}.stat--danger{border-color:var(--danger);color:var(--danger)}.stat--danger strong{color:var(--danger)}.stat--ok svg{color:var(--ok)}.overview__grid{gap:var(--sp-4);grid-template-columns:1.4fr 1fr;align-items:start;display:grid}.panel{gap:var(--sp-4);min-width:0;padding:var(--sp-5);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);flex-direction:column;display:flex}.panel__header h2{margin-top:2px}.panel__empty{align-items:center;gap:var(--sp-4);color:var(--text-2);display:flex}.panel__empty--tall{flex-direction:column;justify-content:center;min-height:260px}.focus-list{flex-direction:column;display:flex}.focus-list li+li{border-top:1px solid var(--border)}.focus-item{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3) var(--sp-1);border-radius:var(--r-sm);text-align:left;background:0 0;border:0;display:flex}.focus-item:hover{background:var(--surface-hover)}.focus-item__text{flex-direction:column;flex:1;min-width:0;display:flex}.focus-item__text strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.focus-item__text small{font-size:var(--fs-sm);color:var(--text-2)}.datebox{border-radius:var(--r-md);background:var(--surface-2);width:44px;height:46px;color:var(--text-2);flex-direction:column;flex:none;justify-content:center;align-items:center;line-height:1.05;display:flex}.datebox strong{font-size:var(--fs-lg);font-weight:900}.datebox small{font-size:var(--fs-xs);text-transform:lowercase;font-weight:700}.datebox--late{background:var(--danger-soft);color:var(--danger)}.datebox--today,.datebox--soon{background:var(--accent-soft);color:var(--accent-text)}.datebox--done{background:var(--ok-soft);color:var(--ok)}.bars{gap:var(--sp-3);flex-direction:column;display:flex}.bars li{align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);grid-template-columns:minmax(0,130px) 1fr 28px;display:grid}.bars__label{align-items:center;gap:var(--sp-2);text-overflow:ellipsis;white-space:nowrap;font-weight:700;display:flex;overflow:hidden}.bars__label i{border-radius:50%;flex:none;width:8px;height:8px}.bars__track{border-radius:var(--r-full);background:var(--bg-sunken);height:8px;overflow:hidden}.bars__track span{border-radius:inherit;height:100%;transition:width var(--slow) var(--ease);display:block}.bars__count{text-align:right;color:var(--text-2);font-weight:800}.calendar{min-width:0}.calendar__bar{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);flex-wrap:wrap;display:flex}.calendar__nav{align-items:center;gap:var(--sp-1);display:flex}.calendar__title{margin-left:var(--sp-3);font-size:var(--fs-xl)}.calendar__title:first-letter{text-transform:uppercase}.calendar__scroll{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--border);overflow:auto}.grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid}.grid--week{min-width:840px}.grid__weekday{padding:var(--sp-2);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;text-align:center;font-weight:800}.day{background:var(--surface);flex-direction:column;gap:3px;min-width:0;min-height:112px;padding:6px;display:flex}.grid--week .day{min-height:320px}.day--outside{background:var(--bg)}.day--outside .day__number{color:var(--text-3)}.day__head{justify-content:space-between;align-items:center;display:flex}.day__number{border-radius:var(--r-full);min-width:26px;height:26px;font-size:var(--fs-sm);place-items:center;padding:0 4px;font-weight:800;display:grid}.day--today .day__number{background:var(--accent);color:var(--on-accent)}.day__add{border-radius:var(--r-sm);width:24px;height:24px;color:var(--text-3);opacity:0;background:0 0;border:0;place-items:center;display:grid}.day:hover .day__add,.day__add:focus-visible{opacity:1}.day__add:hover{background:var(--surface-hover);color:var(--text)}.event{border:0;border-left:3px solid var(--border-strong);background:var(--surface-2);width:100%;color:var(--text);font-size:var(--fs-xs);text-align:left;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:3px 7px;font-weight:700;overflow:hidden}.event:hover{filter:brightness(1.12)}.event--late{border-left-color:var(--danger);background:var(--danger-soft)}.event--today,.event--soon{border-left-color:var(--accent);background:var(--accent-soft)}.event--later{border-left-color:var(--info);background:var(--info-soft)}.event--done{border-left-color:var(--ok);background:var(--ok-soft);color:var(--text-2);text-decoration:line-through}.event--more{color:var(--text-2);background:0 0;border-left-color:#0000}.grid--week .event{white-space:normal;font-size:var(--fs-sm);padding:6px 8px}.calendar__list{padding:var(--sp-2) var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface)}.calendar__note{margin-top:var(--sp-3);font-size:var(--fs-sm);color:var(--text-3)}.detail{gap:var(--sp-6);grid-template-columns:minmax(0,1fr) 260px;display:grid}.detail__crumbs{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;font-weight:600;display:flex}.detail__main,.detail__side{gap:var(--sp-4);flex-direction:column;min-width:0;display:flex}.detail__side{padding:var(--sp-4);border-radius:var(--r-lg);background:var(--bg-sunken);align-self:start}textarea.detail__title{width:calc(100% + 10px);font-size:var(--fs-xl);resize:none;field-sizing:content;background:0 0;border-color:#0000;margin-left:-10px;padding:6px 10px;font-weight:800;line-height:1.25}.detail__title:hover{border-color:var(--border)}.due-fields{gap:var(--sp-2);flex-direction:column;display:flex}.due-fields legend{font-size:var(--fs-sm);color:var(--text-2);margin-bottom:6px;font-weight:700}.due-fields__range{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.tasks{gap:var(--sp-3);flex-direction:column;display:flex}.tasks__heading{justify-content:space-between;align-items:baseline;display:flex}.tasks__total{font-size:var(--fs-sm);color:var(--accent-text);font-weight:800}.tasks__list{flex-direction:column;display:flex}.task{align-items:center;gap:var(--sp-2);border-bottom:1px solid var(--border);min-height:44px;padding:4px 0;display:flex}.task__title{min-width:0;font-size:var(--fs-md);overflow-wrap:anywhere;flex:1;font-weight:600}.task--done .task__title{color:var(--text-3);text-decoration:line-through}.task__time{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;color:var(--text-3)}.task__time--on{color:var(--info);font-weight:800}.check{border:2px solid var(--border-strong);width:24px;height:24px;color:var(--on-accent);transition:background var(--fast), border-color var(--fast);background:0 0;border-radius:7px;flex:none;place-items:center;padding:0;display:grid}.check[aria-checked=true]{border-color:var(--accent);background:var(--accent)}.tasks__add{gap:var(--sp-2);display:flex}.settings{flex-direction:column;display:flex}.settings__section{gap:var(--sp-2);padding:var(--sp-4) 0;border-top:1px solid var(--border);flex-direction:column;display:flex}.settings__section:first-child{border-top:0;padding-top:0}.settings__section>p{font-size:var(--fs-md);color:var(--text-2)}.settings__section--danger h3{color:var(--danger)}.settings__who{flex-direction:column;display:flex}.settings__who span{font-size:var(--fs-sm);color:var(--text-3)}.settings__inline{align-items:flex-end;gap:var(--sp-2);display:flex}.settings__inline .field{flex:1}.settings__about{align-items:center;gap:var(--sp-5);flex-direction:row}.settings__about p{font-size:var(--fs-sm);color:var(--text-2)}.shortcuts{gap:var(--sp-3);flex-direction:column;display:flex}.shortcuts div{align-items:center;gap:var(--sp-3);grid-template-columns:96px 1fr;display:grid}.shortcuts dd{font-size:var(--fs-md);color:var(--text-2)}.state{align-items:center;gap:var(--sp-3);max-width:460px;padding:var(--sp-6);text-align:center;flex-direction:column;margin:8vh auto;display:flex}.state__title{margin-top:var(--sp-4);font-size:var(--fs-xl)}.state__text{color:var(--text-2)}.state__action{margin-top:var(--sp-3)}.auth{grid-template-columns:1fr minmax(360px,480px);min-height:100dvh;display:grid}.auth__art{justify-content:center;align-items:center;gap:var(--sp-5);padding:var(--sp-8);background:repeating-linear-gradient(115deg, transparent 0 46px, var(--stripe) 46px 72px), var(--bg-sunken);flex-direction:column;display:flex}.auth__cat{border-radius:var(--r-xl);background:0 0;border:0;padding:0}.auth__caption{font-size:var(--fs-md);color:var(--text-2);font-weight:700}.auth__card{justify-content:center;gap:var(--sp-3);padding:var(--sp-8) var(--sp-10);background:var(--surface);border-left:1px solid var(--border);flex-direction:column;display:flex}.auth__lead{margin-bottom:var(--sp-3);color:var(--text-2)}.auth__links{justify-content:space-between;gap:var(--sp-3);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}@media (width<=1040px){.views__item{padding:0 10px}.topbar__new{display:none}.overview__grid{grid-template-columns:1fr}}@media (width<=720px){.main{padding:var(--sp-4) var(--sp-4) calc(var(--tabbar-h) + 72px + env(safe-area-inset-bottom))}.topbar{padding:0 var(--sp-3);gap:var(--sp-2)}.views,.brand__name{display:none}.board-switch{flex:1;justify-content:space-between;min-width:0;max-width:none}.topbar__end{margin-left:0}.tabbar{z-index:40;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:0 var(--sp-1) env(safe-area-inset-bottom);border-top:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(5,1fr);align-items:center;display:grid;position:fixed;inset:auto 0 0}.tabbar__item{height:100%;color:var(--text-3);font-size:var(--fs-xs);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:700;text-decoration:none;display:flex}.tabbar__item.active{color:var(--accent-text)}.tabbar__add{border-radius:var(--r-full);background:var(--accent);width:52px;height:52px;color:var(--on-accent);box-shadow:var(--shadow-2);border:0;justify-self:center;place-items:center;display:grid}.search{flex:1;width:auto}.filterbar__toggle{display:inline-flex}.filterbar__selects{width:100%;display:none}.filterbar__selects--open{grid-template-columns:1fr 1fr;display:grid}.filterbar .select{width:100%}.app--kanban .main{padding-left:var(--sp-3)}.app--kanban .filterbar,.app--kanban .callout{margin-right:var(--sp-3)}.board{padding-right:var(--sp-3);scroll-snap-type:x mandatory;scroll-padding-left:0}.column{scroll-snap-align:start}.callout{flex-wrap:wrap}.hero{padding:var(--sp-5);flex-direction:column;align-items:flex-start}.hero__actions{flex-flow:wrap}.stats{grid-template-columns:1fr 1fr}h1{font-size:var(--fs-xl)}.calendar__title{margin-left:var(--sp-2);font-size:var(--fs-lg)}.day{min-height:64px;padding:3px}.grid--month .event{border-radius:var(--r-full);border-left-width:0;height:6px;padding:0;font-size:0}.grid--month .event--later{background:var(--info)}.grid--month .event--late{background:var(--danger)}.grid--month .event--today,.grid--month .event--soon{background:var(--accent)}.grid--month .event--done{background:var(--ok)}.grid--month .event--more,.day__add{display:none}.detail{gap:var(--sp-4);grid-template-columns:1fr}.dialog__footer-start{width:100%}.settings__inline{flex-direction:column;align-items:stretch}.auth{grid-template-columns:1fr}.auth__art{padding:var(--sp-5) var(--sp-4) var(--sp-3)}.auth__art .cat{--cat-size:150px!important}.auth__card{padding:var(--sp-5) var(--sp-5) var(--sp-8);border-left:0;border-top:1px solid var(--border);justify-content:flex-start}.brand--static .brand__name{display:inline}}.plan{gap:var(--sp-5);flex-direction:column;max-width:880px;margin:0 auto;display:flex}.plan>*{min-width:0}.plan__section{gap:var(--sp-3);flex-direction:column;display:flex}.plan__heading{align-items:baseline;gap:var(--sp-3);display:flex}.plan__heading span{font-size:var(--fs-sm);color:var(--text-3)}.plan__list{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.plan-item{align-items:flex-start;gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-1);display:flex}.plan-item__number{border-radius:var(--r-full);background:var(--accent-soft);width:32px;height:32px;color:var(--accent-text);flex:none;place-items:center;font-weight:900;display:grid}.plan-item__body{gap:var(--sp-2);flex-direction:column;flex:1;min-width:0;display:flex}.plan-item__title{font-size:var(--fs-lg);text-align:left;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-weight:800;line-height:1.25}.plan-item__title:hover{color:var(--accent-text)}.plan-item__meta{align-items:center;gap:var(--sp-2) var(--sp-3);font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;display:flex}.plan-item__time{align-items:center;gap:4px;display:inline-flex}.plan-item__step{padding:var(--sp-2) var(--sp-3);border-left:3px solid var(--accent);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--bg-sunken);flex-direction:column;gap:2px;display:flex}.plan-item__label{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-weight:800}.plan-item__next{font-size:var(--fs-md);font-weight:700}.plan-item__actions{gap:var(--sp-2);flex-direction:column;flex:none;display:flex}@media (width<=720px){.plan-item{gap:var(--sp-3);flex-wrap:wrap}.plan-item__body{flex-basis:calc(100% - 48px)}.plan-item__actions{flex-direction:row;width:100%}.plan-item__actions .btn{flex:1;min-height:44px}}.disc-icon{background:color-mix(in srgb, var(--disc) 24%, transparent);color:color-mix(in srgb, var(--disc) 62%, var(--text));border-radius:28%;flex:none;place-items:center;display:inline-grid}.disc-tag{align-items:center;gap:6px;min-width:0;max-width:100%;display:inline-flex}.disc-tag__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.card__discipline{font-weight:600;display:flex}.disc-select{align-items:center;gap:var(--sp-2);display:flex}.disc-select .select{flex:1;min-width:0}.disc-form__top{align-items:flex-end;gap:var(--sp-3);display:flex}.disc-form__top .field{flex:1}.disc-form__group{gap:var(--sp-2);flex-direction:column;display:flex}.disc-form__group legend{font-size:var(--fs-sm);color:var(--text-2);margin-bottom:6px;font-weight:700}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:4px;display:grid}.icon-grid__item{border-radius:var(--r-md);background:0 0;border:2px solid #0000;place-items:center;height:44px;padding:0;display:grid}.icon-grid__item:hover{background:var(--surface-hover)}.icon-grid__item[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.swatches--inline{flex-wrap:wrap;gap:8px;padding:0;display:flex}.swatches--inline .swatch{width:32px;height:32px}.disc-list{flex-direction:column;display:flex}.disc-list__item{align-items:center;gap:var(--sp-3);padding:var(--sp-2) 0;border-bottom:1px solid var(--border);display:flex}.disc-list__item:last-child{border-bottom:0}.disc-list__text,.disc-summary__text{flex-direction:column;flex:1;min-width:0;display:flex}.disc-list__text strong,.disc-summary__text strong{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.disc-list__text small,.disc-summary__text small{font-size:var(--fs-sm);color:var(--text-2)}.overview__side{gap:var(--sp-4);flex-direction:column;min-width:0;display:flex}.panel__header--row{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);display:flex}.panel__hint{font-size:var(--fs-md);color:var(--text-2)}.disc-summary{margin:0 calc(var(--sp-2) * -1);flex-direction:column;gap:2px;display:flex}.disc-summary__item{align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-2);border-radius:var(--r-md);text-align:left;background:0 0;border:0;display:flex}.disc-summary__item:hover{background:var(--surface-hover)}.state__details{margin-top:var(--sp-4);font-size:var(--fs-sm);color:var(--text-3)}.state__details summary{cursor:pointer}.state__details code{margin-top:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-sm);background:var(--bg-sunken);color:var(--text-2);font-size:var(--fs-xs);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;display:block}.avatar{--avatar-size:38px;width:var(--avatar-size);height:var(--avatar-size);font-size:calc(var(--avatar-size) * .36);overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-btn{border-radius:var(--r-full);background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.avatar-btn:hover .avatar{border-color:var(--accent)}.menu__profile{align-items:center;gap:var(--sp-3);flex-direction:row!important}.menu__profile>div{flex-direction:column;min-width:0;display:flex}.avatar-field{align-items:center;gap:var(--sp-4);padding:var(--sp-2) 0;display:flex}.avatar-field__body{gap:var(--sp-2);flex-direction:column;min-width:0;display:flex}.avatar-field__actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.avatar-field small{font-size:var(--fs-sm);color:var(--text-3)}.notes{gap:var(--sp-3);flex-direction:column;display:flex}.notes__status{font-size:var(--fs-sm);color:var(--text-3)}.notes__empty{align-items:center;gap:var(--sp-3);font-size:var(--fs-sm);color:var(--text-2);display:flex}.notes__list{gap:var(--sp-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.note{align-items:flex-start;gap:var(--sp-3);display:flex}.note__body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.note__meta{min-height:30px;font-size:var(--fs-xs);color:var(--text-3);justify-content:space-between;align-items:center;font-weight:700;display:flex}.note-composer__start{align-items:center;gap:var(--sp-3);width:100%;min-height:48px;padding:var(--sp-2) var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg);color:var(--text-3);font-size:var(--fs-md);text-align:left;display:flex}.note-composer__start:hover{border-color:var(--text-3)}.note-composer{gap:var(--sp-2);flex-direction:column;display:flex}.note-composer__actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.rich-editor{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg);transition:border-color var(--fast), box-shadow var(--fast);flex-direction:column;display:flex}.rich-editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rich-editor--drop{border-style:dashed;border-color:var(--accent);background:var(--accent-soft)}.rich-editor__blocks{padding:var(--sp-2) var(--sp-3);flex-direction:column;gap:4px;display:flex}.rich-editor__text{width:100%;min-height:26px;color:var(--text);font-size:var(--fs-md);resize:none;background:0 0;border:0;outline:none;padding:2px 0;line-height:1.5;overflow:hidden}.rich-editor__text::placeholder{color:var(--text-3)}.rich-editor__image{border-radius:var(--r-sm);background:var(--surface-2);align-self:flex-start;max-width:100%;max-height:420px;margin:4px 0;position:relative;overflow:hidden}.rich-editor__image img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:420px;display:block}.rich-editor__image--uploading img{opacity:.55}.rich-editor__image--error img{opacity:.35;filter:grayscale()}.rich-editor__placeholder{background:repeating-linear-gradient(115deg, transparent 0 14px, var(--stripe) 14px 24px), var(--surface-2);width:240px;max-width:100%;height:140px;display:block}.rich-editor__badge{border-radius:var(--r-full);background:var(--surface);color:var(--text);font-size:var(--fs-xs);box-shadow:var(--shadow-1);border:0;align-items:center;gap:6px;padding:4px 10px;font-weight:800;display:inline-flex;position:absolute;bottom:8px;left:8px}.rich-editor__badge--error{color:var(--danger);cursor:pointer}.rich-editor__remove{border-radius:var(--r-full);color:#fff;opacity:0;width:30px;height:30px;transition:opacity var(--fast);background:#000000a6;border:0;place-items:center;display:grid;position:absolute;top:6px;right:6px}.rich-editor__image:hover .rich-editor__remove,.rich-editor__remove:focus-visible{opacity:1}.rich-editor__tools{align-items:center;gap:var(--sp-2);padding:4px var(--sp-2);border-top:1px solid var(--border);display:flex}.rich-editor__hint{font-size:var(--fs-xs);color:var(--text-3)}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.rich-content{flex-direction:column;gap:6px;display:flex}.rich-content__text{font-size:var(--fs-md);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.rich-content__image{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);cursor:zoom-in;align-self:flex-start;max-width:100%;max-height:360px;padding:0;overflow:hidden}.rich-content__image img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:360px;display:block}.zoomed{border-radius:var(--r-sm);max-width:100%;max-height:75dvh;margin:0 auto;display:block}@media (hover:none){.rich-editor__remove{opacity:1}}@media (width<=720px){.rich-editor__hint{display:none}.note{gap:var(--sp-2)}}.pomodoro{align-items:center;gap:var(--sp-6);padding:var(--sp-5) var(--sp-6);border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);display:flex}.pomodoro--focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--border))}.pomodoro--break{border-color:color-mix(in srgb, var(--ok) 55%, var(--border))}.pomodoro__dial{flex:none;width:220px;height:220px;position:relative}.pomodoro__dial svg{width:100%;height:100%;transform:rotate(-90deg)}.pomodoro__track{fill:none;stroke:var(--bg-sunken);stroke-width:9px}.pomodoro__bar{fill:none;stroke:var(--accent);stroke-width:9px;stroke-linecap:round;transition:stroke-dashoffset 1s linear}.pomodoro--break .pomodoro__bar{stroke:var(--ok)}.pomodoro--idle .pomodoro__bar{stroke:#0000}.pomodoro__center{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.pomodoro__clock{margin-top:var(--sp-2);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:2.6rem;font-weight:900;line-height:1}.pomodoro__phase{font-size:var(--fs-sm);color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.pomodoro__side{gap:var(--sp-4);flex-direction:column;flex:1;min-width:0;display:flex}.pomodoro__side h2{font-size:var(--fs-xl);margin-top:2px}.pomodoro__hint,.pomodoro__note{font-size:var(--fs-md);color:var(--text-2);margin-top:4px}.pomodoro__note{font-size:var(--fs-sm);color:var(--text-3)}.pomodoro__controls{gap:var(--sp-2);flex-wrap:wrap;display:flex}.pomodoro__footer{justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.pomodoro__today{font-size:var(--fs-sm);color:var(--text-2)}.pomodoro__today strong{color:var(--accent-text)}.pomo-pill{z-index:35;left:var(--sp-5);bottom:var(--sp-5);border:1px solid var(--accent);border-radius:var(--r-full);background:var(--surface-2);box-shadow:var(--shadow-2);animation:rise var(--slow) var(--ease);align-items:center;gap:2px;padding:4px 4px 4px 6px;display:flex;position:fixed}.pomo-pill--break{border-color:var(--ok)}.pomo-pill__main{align-items:center;gap:var(--sp-2);min-height:32px;padding:0 var(--sp-2);border-radius:var(--r-full);color:var(--text);font-size:var(--fs-sm);text-decoration:none;display:inline-flex}.pomo-pill__main:hover{background:var(--surface-hover)}.pomo-pill__main strong{font-size:var(--fs-base);font-variant-numeric:tabular-nums;font-weight:900}.pomo-pill__main span{color:var(--text-2);font-weight:700}.pomo-pill--focus .pomo-pill__main svg{color:var(--accent-text)}.pomo-pill--break .pomo-pill__main svg{color:var(--ok)}@media (width<=720px){.pomodoro{padding:var(--sp-5);align-items:stretch;gap:var(--sp-4);flex-direction:column}.pomodoro__dial{align-self:center;width:200px;height:200px}.pomodoro__controls .btn{flex:1;min-height:44px}.pomo-pill{left:var(--sp-3);bottom:calc(var(--tabbar-h) + var(--sp-3) + env(safe-area-inset-bottom))}}.telegram{gap:var(--sp-3);flex-direction:column;display:flex}.settings__text{font-size:var(--fs-md);color:var(--text-2)}.telegram__linked{align-items:center;gap:var(--sp-2);font-size:var(--fs-md);color:var(--ok);font-weight:800;display:inline-flex}.telegram__waiting{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border:1px dashed var(--accent);border-radius:var(--r-md);background:var(--accent-soft);font-size:var(--fs-sm);color:var(--text-2);flex-wrap:wrap;display:flex}.telegram__privacy{font-size:var(--fs-sm);color:var(--text-3)}.cat{width:var(--cat-size);flex:none;line-height:0;display:inline-block;position:relative}.cat__sticker{padding:max(2px, calc(var(--cat-size) * .045));background:var(--sticker);transform-origin:50% 85%;border-radius:30%;animation:5s ease-in-out infinite cat-idle;display:block;transform:rotate(-4deg);box-shadow:0 2px #0000002e,0 6px 16px #00000040}.cat__sticker img{object-fit:cover;border-radius:27%;width:100%;height:auto}.cat--sentado .cat__sticker{border-radius:9%;transform:rotate(-3deg)}.cat--sentado .cat__sticker img{border-radius:7%}.cat__prop{pointer-events:none;line-height:1;position:absolute}@keyframes cat-idle{0%,to{transform:rotate(-4deg)translateY(0)}50%{transform:rotate(-2deg)translateY(-2%)}}.cat--happy .cat__sticker{animation:cat-wiggle .9s var(--ease) infinite}.cat__prop--hearts{color:#ff7a66;font-size:calc(var(--cat-size) * .26);top:-8%;right:-12%}.cat__prop--hearts i{font-style:normal;animation:1.6s ease-out infinite float-up;display:inline-block}.cat__prop--hearts i:last-child{font-size:.7em;animation-delay:.5s}@keyframes cat-wiggle{0%,to{transform:rotate(-7deg)}50%{transform:rotate(4deg)scale(1.04)}}.cat--party .cat__sticker{animation:cat-jump .7s var(--ease) infinite}.cat__prop--hat{width:42%;animation:cat-jump .7s var(--ease) infinite;top:-30%;left:18%;transform:rotate(-16deg)}@keyframes cat-jump{0%,to{translate:0}40%{translate:0 -12%}}.cat--sleepy .cat__sticker{animation:4.5s ease-in-out infinite cat-sleep}.cat__prop--zzz{color:var(--info);font-weight:900;font-size:calc(var(--cat-size) * .2);align-items:flex-end;gap:1px;display:flex;top:-16%;right:-10%}.cat__prop--zzz i{font-style:normal;animation:2.4s ease-in-out infinite zzz}.cat__prop--zzz i:nth-child(2){font-size:1.25em;animation-delay:.3s}.cat__prop--zzz i:nth-child(3){font-size:1.6em;animation-delay:.6s}@keyframes cat-sleep{0%,to{transform:rotate(-9deg)scale(1)}50%{transform:rotate(-9deg)scale(1.035)}}@keyframes zzz{0%,to{opacity:.25;translate:0}50%{opacity:1;translate:0 -18%}}.cat--worried .cat__sticker{animation:.5s linear infinite cat-shake}.cat__prop--drop{width:17%;animation:1.3s ease-in infinite drop;top:6%;right:2%}@keyframes cat-shake{0%,to{transform:rotate(-4deg)translate(0)}25%{transform:rotate(-5deg)translate(-2%)}75%{transform:rotate(-3deg)translate(2%)}}@keyframes drop{0%{opacity:0;translate:0 -30%}30%{opacity:1}to{opacity:0;translate:0 90%}}.cat--oops .cat__sticker{transform-origin:50%;animation:2.6s ease-in-out infinite cat-dizzy;transform:rotate(172deg)}.cat__prop--stars{color:var(--amber);font-size:calc(var(--cat-size) * .22);justify-content:space-between;display:flex;inset:-14% -14% auto}.cat__prop--stars i{font-style:normal;animation:1s ease-in-out infinite twinkle}.cat__prop--stars i:nth-child(2){animation-delay:.3s;translate:0 -60%}.cat__prop--stars i:nth-child(3){animation-delay:.6s}@keyframes cat-dizzy{0%,to{transform:rotate(168deg)}50%{transform:rotate(180deg)}}@keyframes twinkle{50%{opacity:.2;scale:.6}}.cat--thinking .cat__sticker{animation:1.8s ease-in-out infinite cat-think}.cat--curious .cat__sticker{animation:cat-tilt 3.4s var(--ease) infinite}.cat__prop--mark{background:var(--amber);min-width:1.5em;height:1.5em;color:var(--on-accent);font-size:calc(var(--cat-size) * .2);border-radius:999px;place-items:center;padding:0 .3em;font-weight:900;animation:1.8s ease-in-out infinite float-bob;display:grid;top:-14%;right:-8%;box-shadow:0 2px #0000003d}@keyframes cat-think{0%,to{transform:rotate(-10deg)}50%{transform:rotate(6deg)}}@keyframes cat-tilt{0%,55%,to{transform:rotate(-4deg)}70%,90%{transform:rotate(11deg)}}@keyframes float-bob{50%{translate:0 -14%}}@keyframes float-up{0%{opacity:0;translate:0 30%}30%{opacity:1}to{opacity:0;translate:0 -70%}}.companion{z-index:30;right:var(--sp-5);bottom:var(--sp-5);align-items:flex-end;gap:var(--sp-2);pointer-events:none;display:flex;position:fixed}.companion__button{pointer-events:auto;cursor:pointer;scale:calc(1 + var(--pets,0) * .06);transform-origin:80% 100%;transition:scale var(--slow) var(--ease);background:0 0;border:0;border-radius:30%;padding:0}.companion__button:hover .cat__sticker{animation:cat-tilt 1.2s var(--ease) infinite}.companion--petting .companion__button{animation:squish .5s var(--ease)}@keyframes squish{30%{transform:scale(1.12,.86)}60%{transform:scale(.94,1.08)}}.bubble{border:2px solid var(--on-accent);background:var(--sticker);color:#241703;max-width:260px;font-size:var(--fs-md);box-shadow:var(--shadow-2);opacity:0;transform-origin:100% 100%;transition:opacity var(--slow), transform var(--slow) var(--ease);border-radius:18px 18px 4px;margin-bottom:28px;padding:10px 14px;font-weight:700;line-height:1.3;transform:translateY(8px)scale(.96)}.bubble--visible{opacity:1;transform:none}.tabbar__cat .cat{margin-bottom:1px}.tabbar__cat .cat__sticker,.brand .cat__sticker,.toast .cat__sticker{animation:none}.toast .cat--happy .cat__sticker{animation:cat-wiggle .9s var(--ease) 2}.auth__cat:hover .cat__sticker,.auth__cat:focus-visible .cat__sticker{animation:cat-wiggle .9s var(--ease) infinite}@media (width<=720px){.companion{right:var(--sp-3);bottom:calc(var(--tabbar-h) + var(--sp-2) + env(safe-area-inset-bottom));align-items:flex-end;gap:var(--sp-1);flex-direction:column}.companion .cat{--cat-size:54px!important}.companion__button{-webkit-tap-highlight-color:transparent}.bubble{border-radius:18px 18px 4px;max-width:min(260px,100vw - 32px);margin:0 4px 0 0}}
