*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-geist-sans),ui-sans-serif,system-ui;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-geist-mono),ui-monospace,SFMono-Regular;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.inline{display:inline}.hidden{display:none}.italic{font-style:italic}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--night:#0a0e15;--panel:#101722;--panel-2:#151d2a;--line:#273145;--line-soft:rgba(88,103,131,0.2);--text:#f4f2ed;--muted:#8993a8;--cyan:#76e6d5;--lavender:#c2b4ff;--amber:#f9c47a;--rose:#f18c9e;--shadow:0 30px 80px rgba(0,0,0,0.4)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--night);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}body{min-width:1000px}button,input,select{font:inherit}button{color:inherit}.ProseMirror:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.eyebrow{margin:0;color:var(--cyan);font-family:Cascadia Code,Consolas,monospace;font-size:10px;font-weight:700;letter-spacing:.18em}.create-button,.primary-button{border:0;background:var(--cyan);color:#091013;font-weight:750;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.create-button:hover,.primary-button:hover{box-shadow:0 0 24px rgba(118,230,213,.25);transform:translateY(-1px)}.create-button:disabled,.primary-button:disabled{cursor:wait;opacity:.55}.primary-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:0 18px;border-radius:8px}.primary-button.wide{width:100%;margin-top:10px}.icon-button{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.icon-button:hover{border-color:var(--line);background:var(--panel-2);color:var(--text)}.auth-shell{display:grid;grid-template-columns:1.05fr .95fr;background:linear-gradient(rgba(118,230,213,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(118,230,213,.025) 1px,transparent 1px),var(--night);background-size:34px 34px}.auth-atmosphere,.auth-shell{min-height:100vh;overflow:hidden}.auth-atmosphere{position:relative;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--line)}.auth-atmosphere:before{position:absolute;width:460px;height:460px;border:1px solid rgba(118,230,213,.22);border-radius:50%;box-shadow:0 0 100px rgba(118,230,213,.08),inset 0 0 80px rgba(194,180,255,.05);content:""}.auth-atmosphere:after{position:absolute;right:0;bottom:0;left:0;height:28%;background:linear-gradient(165deg,transparent 40%,rgba(194,180,255,.09) 41%,rgba(13,20,30,.95) 42%);clip-path:polygon(0 65%,14% 38%,30% 64%,43% 24%,59% 57%,72% 30%,88% 68%,100% 48%,100% 100%,0 100%);content:""}.auth-kanji{z-index:1;color:rgba(244,242,237,.92);font-family:Yu Mincho,"Noto Serif JP",serif;font-size:clamp(180px,28vw,360px);font-weight:400;line-height:1;text-shadow:9px 9px 0 rgba(241,140,158,.13)}.auth-atmosphere p{position:absolute;z-index:2;bottom:54px;margin:0;color:var(--muted);font-family:Yu Gothic,sans-serif;font-size:13px;letter-spacing:.3em}.auth-panel{display:flex;align-items:center;justify-content:center;padding:48px}.auth-card{width:min(420px,100%)}.brand-mark{display:inline-flex;align-items:center;gap:9px;margin-bottom:80px;color:var(--cyan);font-family:Cascadia Code,monospace;font-size:12px;font-weight:700;letter-spacing:.12em}.auth-card h1{margin:12px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:42px;font-weight:500;letter-spacing:-.035em}.auth-subtitle{margin:0 0 34px;color:var(--muted);font-size:14px;line-height:1.6}.auth-card label,.compact-field,.time-grid label{display:block}.auth-card label>span,.color-field>span,.compact-field>span,.time-grid label>span{display:block;margin-bottom:8px;color:#a8b0bf;font-size:12px;font-weight:650}.field-wrap{display:flex;height:48px;align-items:center;gap:10px;margin-bottom:18px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:rgba(17,23,34,.7);color:var(--muted)}.field-wrap:focus-within{border-color:rgba(118,230,213,.65);box-shadow:0 0 0 3px rgba(118,230,213,.06)}.field-wrap input{width:100%;border:0;outline:0;background:transparent;color:var(--text)}.form-error{margin:10px 0;color:var(--rose);font-size:12px;line-height:1.45}.auth-switch{margin-top:24px;color:var(--muted);font-size:13px;text-align:center}.auth-switch a{color:var(--cyan);font-weight:650;text-decoration:none}.calendar-shell{display:flex;height:100vh;overflow:hidden;font-family:var(--app-font,Inter),"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at 85% 0,rgba(194,180,255,.06),transparent 24%),var(--night)}.calendar-sidebar{display:flex;width:246px;min-width:246px;flex-direction:column;padding:22px 16px 16px;border-right:1px solid var(--line);background:rgba(11,16,24,.94)}.mobile-menu-backdrop{display:none}.calendar-brand{gap:11px;padding:0 6px}.brand-glyph,.calendar-brand{display:flex;align-items:center}.brand-glyph{width:34px;height:34px;justify-content:center;border:1px solid rgba(118,230,213,.4);border-radius:50%;color:var(--cyan)}.calendar-brand span,.calendar-brand strong{display:block}.calendar-brand strong{font-family:var(--app-font,Georgia),serif;font-size:16px;font-weight:500}.calendar-brand span{margin-top:2px;color:var(--muted);font-family:Yu Gothic,sans-serif;font-size:9px;letter-spacing:.12em}.create-button{display:flex;height:42px;align-items:center;justify-content:center;gap:8px;margin:26px 2px 24px;border-radius:8px;font-size:13px}.mini-month{padding:12px 8px}.mini-month header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mini-month header strong{font-size:12px;font-weight:650;text-transform:capitalize}.mini-month header div{display:flex}.mini-month header button{display:flex;width:24px;height:24px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);cursor:pointer}.mini-days,.mini-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.mini-weekdays span{padding-bottom:7px;color:#646e82;font-family:Cascadia Code,monospace;font-size:9px}.mini-days button{width:25px;height:25px;margin:1px auto;border:0;border-radius:50%;background:transparent;color:#bac0cc;font-size:10px;cursor:pointer}.mini-days button:hover{background:var(--panel-2)}.mini-days button.muted{color:#4d5668}.mini-days button.today{box-shadow:inset 0 0 0 1px var(--cyan)}.mini-days button.selected{background:var(--cyan);color:#071012;font-weight:800}.sidebar-divider{height:1px;margin:14px 8px 20px;background:var(--line)}.status-legend{display:grid;gap:10px;padding:0 8px}.status-legend .eyebrow{margin-bottom:2px;color:#697389}.status-legend span{display:flex;align-items:center;gap:9px;color:#9da6b8;font-size:11px}.status-legend i{width:7px;height:7px;border-radius:50%}.status-legend i.planned{border:1px solid var(--cyan)}.status-legend i.progress{background:var(--amber)}.status-legend i.done{background:var(--lavender)}.sidebar-link{display:flex;align-items:center;gap:10px;margin-top:18px;padding:10px 8px;border:0;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.sidebar-link:hover{color:var(--rose)}.profile-chip{display:grid;grid-template-columns:30px minmax(0,1fr) 28px 28px;align-items:center;gap:8px;margin-top:auto;padding:10px 8px;border-top:1px solid var(--line)}.profile-chip>div{display:flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:var(--lavender);color:#0d1017;font-family:Cascadia Code,monospace;font-size:10px;font-weight:800}.profile-chip span{overflow:hidden;color:#b6bdca;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.profile-chip button{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);cursor:pointer}.calendar-main{display:flex;min-width:0;flex:1;flex-direction:column}.calendar-toolbar{display:flex;min-height:70px;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;border-bottom:1px solid var(--line);background:rgba(10,14,21,.86)}.toolbar-navigation{display:flex;min-width:0;align-items:center;gap:5px}.toolbar-navigation h1{overflow:hidden;margin:0 0 0 12px;font-family:var(--app-font,Georgia),serif;font-size:21px;font-weight:500;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.today-button{height:34px;margin-right:4px;padding:0 13px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:#ced3dc;font-size:11px;font-weight:650;cursor:pointer}.today-button:hover{border-color:#43516b}.mobile-menu{display:none}.sync-dot{width:6px;height:6px;margin-left:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan);animation:pulse .9s infinite alternate}@keyframes pulse{to{opacity:.25}}.view-switcher{display:flex;padding:3px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.view-switcher button{height:28px;padding:0 9px;border:0;border-radius:5px;background:transparent;color:#7f899d;font-size:10px;cursor:pointer}.view-switcher button:hover{color:var(--text)}.view-switcher button.active{background:#222c3c;color:var(--cyan)}.calendar-stage{position:relative;min-height:0;flex:1;padding:30px 18px 14px}.stage-label{position:absolute;top:10px;left:20px;display:flex;align-items:center;gap:6px;color:#5f6a7f;font-family:Cascadia Code,monospace;font-size:9px;letter-spacing:.13em}.fc{--fc-border-color:rgba(76,89,114,0.24);--fc-page-bg-color:transparent;--fc-neutral-bg-color:#111824;--fc-list-event-hover-bg-color:#182130;--fc-today-bg-color:rgba(118,230,213,0.035);--fc-now-indicator-color:var(--rose);height:100%;color:#b6becc;font-size:11px}.fc .fc-scrollgrid{overflow:hidden;border-color:var(--line);border-radius:8px;background:rgba(14,20,30,.56)}.fc-theme-standard td,.fc-theme-standard th{border-color:var(--line-soft)}.fc .fc-col-header-cell{height:42px;border-bottom-color:var(--line);background:#111722;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.fc .fc-col-header-cell-cushion{padding:12px 5px;color:#8993a7;text-decoration:none}.fc .fc-day-today .fc-col-header-cell-cushion{color:var(--cyan)}.fc .fc-timegrid-slot{height:24px}.fc .fc-timegrid-slot-label-cushion{color:#596378;font-family:Cascadia Code,monospace;font-size:9px}.fc .fc-timegrid-axis-cushion,.fc .fc-timegrid-axis-frame{color:#596378;font-size:9px}.fc .fc-timegrid-now-indicator-line{border-top-width:1px}.fc .fc-timegrid-now-indicator-arrow{border-width:4px}.fc .fc-event{overflow:hidden;border:0;border-left:2px solid rgba(255,255,255,.55);border-radius:3px;box-shadow:0 4px 12px rgba(0,0,0,.18);cursor:pointer}.fc .fc-event:hover{filter:brightness(1.08)}.event-inner{display:flex;min-width:0;flex-direction:column;padding:2px 4px;color:#091014;font-size:10px;font-weight:750;line-height:1.25}.event-inner time{font-family:Cascadia Code,monospace;font-size:8px;font-weight:600;opacity:.72}.event-inner span{overflow:hidden;text-overflow:ellipsis}.event-inner.done span{text-decoration:line-through;opacity:.58}.event-inner.pending{opacity:.72}.event-inner small{margin-top:2px;font-size:7px;font-weight:650}.fc .event-pending{border-style:dashed;filter:saturate(.7);pointer-events:none}.fc .fc-daygrid-day-number{padding:7px;color:#a6afbd;font-family:Cascadia Code,monospace;font-size:10px;text-decoration:none}.fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{display:flex;width:24px;height:24px;align-items:center;justify-content:center;margin:4px;padding:0;border-radius:50%;background:var(--cyan);color:#071012}.fc .fc-multimonth{border:1px solid var(--line);border-radius:8px;background:rgba(14,20,30,.65)}.fc .fc-multimonth-singlecol .fc-multimonth-month{background:transparent}.fc .fc-multimonth-title{padding:12px;color:var(--text);font-family:var(--app-font,Inter),"Segoe UI",Arial,sans-serif;font-size:16px;font-weight:500}.fc .fc-list{border-color:var(--line);border-radius:8px}.fc .fc-list-day-cushion{background:var(--panel-2)}.fc .fc-list-day-side-text,.fc .fc-list-day-text{color:#c3cad5;text-decoration:none}.fc .fc-list-event-title a{color:var(--text)}.task-drawer,.task-list-drawer,.trash-drawer{position:fixed;z-index:20;top:12px;right:12px;bottom:12px;display:flex;width:470px;flex-direction:column;overflow:hidden;border:1px solid #344057;border-radius:12px;background:linear-gradient(rgba(118,230,213,.018) 1px,transparent 1px),var(--panel);background-size:24px 24px;box-shadow:var(--shadow)}.trash-drawer{width:430px}.task-list-drawer{width:540px}.drawer-header{display:flex;min-height:64px;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid var(--line);background:rgba(16,23,34,.95)}.drawer-header h2{margin:5px 0 0;font-family:Georgia,serif;font-size:20px;font-weight:500}.back-link{display:flex;max-width:320px;align-items:center;gap:2px;overflow:hidden;margin-top:6px;padding:0;border:0;background:transparent;color:#b6bfcd;font-size:11px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.back-link:hover{color:var(--cyan)}.drawer-scroll{min-height:0;flex:1;overflow-y:auto;padding:22px 20px 36px}.drawer-scroll::-webkit-scrollbar{width:7px}.drawer-scroll::-webkit-scrollbar-thumb{border-radius:10px;background:#313c50}.drawer-loading{padding:80px 20px;color:var(--muted);font-size:12px;text-align:center}.task-title-input{width:100%;margin-bottom:22px;padding:0 0 12px;border:0;border-bottom:1px solid var(--line);outline:0;background:transparent;color:var(--text);font-family:var(--app-font,Inter),"Segoe UI",Arial,sans-serif;font-size:27px;line-height:1.2}.task-title-input::-moz-placeholder{color:#586276;font-family:inherit;font-size:.78em;font-weight:450;opacity:1}.task-title-input::placeholder{color:#586276;font-family:inherit;font-size:.78em;font-weight:450;opacity:1}.task-title-input:focus{border-bottom-color:var(--cyan)}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compact-field select,.time-grid input{width:100%;height:39px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:#0d131d;color:#cbd1da;color-scheme:dark;font-size:11px}.field-row{display:grid;grid-template-columns:1fr 1.25fr;gap:14px;margin-top:16px}.color-field>div{display:flex;height:39px;align-items:center;gap:8px}.color-field button{width:20px;height:20px;border:2px solid var(--panel);border-radius:50%;box-shadow:0 0 0 1px transparent;cursor:pointer}.color-field button.selected{box-shadow:0 0 0 1px var(--text)}.custom-color{position:relative;display:grid;width:20px;height:20px;place-items:center;border:2px solid var(--panel);border-radius:50%;box-shadow:0 0 0 1px transparent;color:#081015;cursor:pointer;overflow:hidden}.custom-color.selected{box-shadow:0 0 0 1px var(--text)}.custom-color input{position:absolute;width:0;height:0;opacity:0}.custom-color svg{pointer-events:none}.date-toggle{display:flex;align-items:center;gap:8px;margin:0 0 14px;color:#a8b0bf;font-size:11px}.task-list-field{display:block;margin-top:16px}.subtask-context{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:10px 12px;border-left:2px solid var(--lavender);background:rgba(194,180,255,.07);color:#aaa2c7;font-size:11px}.drawer-section{margin-top:28px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.section-heading h2{margin:0;font-size:12px;font-weight:700;letter-spacing:.03em}.section-heading span{color:#657086;font-family:Cascadia Code,monospace;font-size:9px}.add-subtask{display:flex;gap:7px}.add-subtask input{height:38px;min-width:0;flex:1;padding:0 11px;border:1px solid var(--line);border-radius:7px;outline:0;background:#0d131d;color:var(--text);font-size:11px}.add-subtask input:focus{border-color:var(--cyan)}.add-subtask button{display:flex;width:38px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:var(--panel-2);color:var(--cyan);cursor:pointer}.add-subtask button:disabled{opacity:.35;cursor:not-allowed}.subtask-tree{margin:12px 0 0;padding:0;list-style:none}.subtask-tree .subtask-tree{margin:2px 0 0 18px;padding-left:8px;border-left:1px solid var(--line)}.subtask-tree li{border-radius:5px}.subtask-tree li.dragging{opacity:.45}.subtask-row{display:grid;width:100%;grid-template-columns:16px minmax(0,1fr) 24px;align-items:center;gap:6px;padding:2px;border-radius:5px}.subtask-row:hover{background:#17202d}.subtask-grip{color:#566276;cursor:grab}.subtask-open-button{display:grid;min-width:0;grid-template-columns:14px minmax(0,1fr) 16px;align-items:center;gap:6px;padding:6px 2px;border:0;background:transparent;color:#bec5d0;font-size:11px;text-align:left;cursor:pointer}.subtask-open-button:hover{color:var(--cyan)}.subtask-open-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtask-open-button span.done{color:#6f788a;text-decoration:line-through}.subtask-rename-button{display:flex;width:24px;height:26px;align-items:center;justify-content:center;border:0;border-radius:5px;background:transparent;color:#6d7890;text-align:left;cursor:pointer}.subtask-rename-button:hover{color:var(--cyan)}.subtask-rename-input{width:100%;height:29px;min-width:0;padding:0 7px;border:1px solid var(--cyan);border-radius:5px;outline:0;background:#0d131d;color:var(--text);font-size:11px}.empty-hint{margin:14px 0;color:#646e81;font-size:11px;line-height:1.5}.updated-note{gap:6px;margin:24px 0 0;color:#596478;font-family:Cascadia Code,monospace;font-size:9px}.drawer-footer,.updated-note{display:flex;align-items:center}.drawer-footer{min-height:68px;justify-content:flex-end;gap:10px;padding:12px 18px;border-top:1px solid var(--line);background:rgba(12,18,27,.98)}.save-state{display:inline-flex;align-items:center;gap:6px;color:#8490a5;font-family:Cascadia Code,monospace;font-size:9px}.save-state.saved{color:var(--cyan)}.save-state.error{color:var(--rose)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.profile-settings{position:fixed;z-index:30;bottom:68px;left:12px;width:222px;max-height:calc(100vh - 86px);margin:0;padding:13px;overflow-y:auto;border:1px solid var(--line);border-radius:8px;background:#111a27;box-shadow:var(--shadow)}.profile-settings-heading{display:flex;align-items:flex-start;justify-content:space-between;color:var(--cyan)}.profile-settings-heading>div:last-child{display:flex;align-items:center;gap:6px}.profile-settings-heading button{display:flex;width:24px;height:24px;align-items:center;justify-content:center;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.profile-settings-heading button:hover{background:#202b3d;color:var(--text)}.profile-settings-heading h2{margin:5px 0 0;color:var(--text);font-size:13px;font-weight:650}.profile-account-fields{display:grid;gap:10px;margin:14px 0}.profile-account-fields input{width:100%;margin-top:6px;padding:8px;border:1px solid var(--line);border-radius:6px;background:#0d131d;color:var(--text)}.settings-action,.telegram-profile-row button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:1px solid rgba(118,230,213,.4);border-radius:6px;background:rgba(118,230,213,.08);color:var(--cyan);cursor:pointer}.settings-action.compact{width:-moz-max-content;width:max-content;justify-self:end;padding:6px 9px;font-size:10px}.telegram-profile-row{display:grid;gap:8px;margin:14px 0;color:var(--muted);font-size:10px}.telegram-auth-screen{display:grid;min-height:100dvh;place-items:center;background:var(--bg);color:var(--text)}.profile-email{overflow:hidden;margin:11px 0 15px;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.font-select-label{display:grid;gap:7px;color:#a8b0bf;font-size:10px}.font-select-label+.font-select-label{margin-top:12px}.font-select-label select{width:100%;height:32px;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:#0d131d;color:var(--text);color-scheme:dark;font-size:10px}.font-preview{margin:14px 0 8px;color:var(--text);font-size:18px}.settings-saved{display:flex;align-items:center;gap:4px;margin:0;color:#657086;font-family:Cascadia Code,monospace;font-size:8px}.danger-button{display:inline-flex;min-height:40px;align-items:center;gap:7px;margin-right:auto;padding:0 11px;border:0;background:transparent;color:#9b7480;font-size:11px;cursor:pointer}.danger-button:hover{color:var(--rose)}.rich-editor{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#0d131d}.editor-toolbar{display:flex;align-items:center;gap:2px;padding:6px;border-bottom:1px solid var(--line);background:#121a26}.editor-toolbar button{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border:0;border-radius:5px;background:transparent;color:#788398;cursor:pointer}.editor-toolbar button.active,.editor-toolbar button:hover{background:#253043;color:var(--cyan)}.editor-toolbar button:disabled{opacity:.25;cursor:not-allowed}.toolbar-spacer{flex:1}.ProseMirror{min-height:155px;padding:13px 14px;outline:0;color:#c8ced8;font-size:12px;line-height:1.65}.ProseMirror p{margin:0 0 8px}.ProseMirror h2{margin:14px 0 7px;color:var(--text);font-family:Georgia,serif;font-size:19px;font-weight:500}.ProseMirror ol,.ProseMirror ul{padding-left:22px}.ProseMirror a{color:var(--cyan);text-decoration:underline}.ProseMirror img{display:block;max-width:100%;height:auto;margin:12px 0;border:1px solid var(--line);border-radius:6px}.task-image-wrap{position:relative;width:-moz-fit-content;width:fit-content;max-width:100%;margin:12px 0}.task-image-wrap .task-image{margin:0}.task-image-actions{position:absolute;top:7px;right:7px;display:flex;align-items:center;gap:3px;padding:3px;border:1px solid rgba(118,230,213,.28);border-radius:6px;background:rgba(10,14,21,.9);color:var(--text);opacity:0;transition:opacity .15s ease}.task-image-wrap:focus-within .task-image-actions,.task-image-wrap:hover .task-image-actions{opacity:1}.task-image-actions button{display:flex;width:25px;height:25px;align-items:center;justify-content:center;border:0;border-radius:4px;background:transparent;color:#d5dce4;cursor:pointer}.task-image-actions button:hover{background:#263448;color:var(--cyan)}.task-image-actions button:last-child:hover{color:var(--rose)}.task-image-actions span{padding:0 4px;color:var(--muted)}.task-image-actions span,.task-image-uploading{font-family:Cascadia Code,monospace;font-size:9px}.task-image-uploading{position:absolute;right:8px;bottom:8px;padding:4px 7px;border-radius:4px;background:rgba(10,14,21,.9);color:var(--cyan)}.ProseMirror ul[data-type=taskList]{padding:0;list-style:none}.ProseMirror ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:7px}.ProseMirror ul[data-type=taskList] li>label{padding-top:3px}.ProseMirror ul[data-type=taskList] li>div{flex:1}.ProseMirror p.is-editor-empty:first-child:before{float:left;height:0;color:#505a6d;content:attr(data-placeholder);pointer-events:none}.editor-error,.editor-status{margin:0;padding:7px 12px;border-top:1px solid var(--line);color:var(--cyan);font-size:10px}.editor-error{color:var(--rose)}.editor-loading{padding:30px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:11px}.trash-empty{padding:80px 30px;color:#626d80;text-align:center}.trash-empty svg{color:#435067}.trash-empty h3{margin:12px 0 6px;color:#aeb6c4;font-size:14px}.trash-empty p{margin:0;font-size:11px}.trash-list{display:grid;gap:8px}.trash-list article{display:grid;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#0d131d}.trash-list .task-color{width:3px;height:38px;border-radius:4px}.trash-list h3{margin:0 0 5px;font-size:12px;font-weight:650}.trash-list p{margin:0;color:var(--muted);font-size:9px}.trash-list button{align-items:center;padding:7px 8px;border:1px solid var(--line);border-radius:6px;background:var(--panel-2);color:var(--cyan);font-size:9px;cursor:pointer}.trash-actions,.trash-list button{display:flex;gap:6px}.trash-list .purge-button{color:var(--rose)}.trash-list .purge-button:hover{border-color:rgba(241,140,158,.45)}.task-list-filters{display:flex;flex-wrap:wrap;gap:7px;padding:12px 18px;border-bottom:1px solid var(--line);background:#0d141f}.task-list-navigation{display:flex;flex-wrap:wrap;gap:7px;padding:12px 18px 0}.task-list-navigation button{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--muted);font-size:10px;cursor:pointer}.task-list-navigation button.active{border-color:rgba(194,180,255,.5);background:rgba(194,180,255,.09);color:var(--lavender)}.task-list-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px}.task-list-actions>div{display:flex;min-width:0}.task-list-actions input{min-width:0;padding:8px 9px;border:1px solid var(--line);border-radius:7px 0 0 7px;background:#0d131d;color:var(--text);font-size:10px}.task-list-actions>div button{border:1px solid var(--line);border-left:0;border-radius:0 7px 7px 0;background:#121b28;color:var(--text);cursor:pointer}.task-list-filters button{display:inline-flex;min-height:31px;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font-size:10px;cursor:pointer}.task-list-filters button.active{border-color:rgba(118,230,213,.5);background:rgba(118,230,213,.09);color:var(--cyan)}.task-list-scroll{padding-top:14px}.all-task-list{display:grid;gap:8px}.all-task-list>button{display:grid;width:100%;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#0d131d;color:var(--text);text-align:left;cursor:pointer}.all-task-list>button:hover{border-color:#3b4962;background:#121b28}.all-task-list .task-color{width:3px;height:38px;border-radius:4px}.task-list-copy{display:grid;min-width:0;gap:5px}.task-list-copy strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.task-list-copy strong.done{color:#737d90;text-decoration:line-through}.task-list-copy>span{color:var(--muted);font-size:9px}.status-pill{padding:5px 7px;border-radius:999px;font-family:Cascadia Code,monospace;font-size:8px;white-space:nowrap}.status-pill.planned{border:1px solid rgba(118,230,213,.35);color:var(--cyan)}.status-pill.in_progress{border:1px solid rgba(249,196,122,.35);color:var(--amber)}.status-pill.done{border:1px solid rgba(194,180,255,.35);color:var(--lavender)}.task-list-empty{padding:70px 24px;color:#687387;text-align:center}.task-list-empty h3{margin:12px 0 6px;color:#aeb6c4;font-size:14px}.task-list-empty p{margin:0;font-size:11px}.creation-error{position:fixed;z-index:50;right:22px;bottom:22px;display:grid;max-width:380px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:12px 14px;border:1px solid rgba(241,140,158,.5);border-radius:8px;background:#25151c;color:#f3bdc6;box-shadow:var(--shadow);font-size:11px}.creation-error button{display:flex;width:24px;height:24px;align-items:center;justify-content:center;border:0;background:transparent;color:inherit;cursor:pointer}@media (max-width:1240px){.calendar-sidebar{width:210px;min-width:210px}.view-switcher button{padding:0 6px}.task-drawer{width:430px}.task-list-drawer{width:470px}.profile-settings{width:186px}}@media (max-width:760px){.calendar-shell{height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.calendar-sidebar{position:fixed;z-index:45;top:0;bottom:0;left:0;width:min(86vw,320px);min-width:0;padding:calc(18px + env(safe-area-inset-top)) 16px calc(14px + env(safe-area-inset-bottom));overflow-y:auto;transform:translateX(-105%);transition:transform .18s ease;box-shadow:var(--shadow)}.mobile-menu-open .calendar-sidebar{transform:translateX(0)}.mobile-menu-backdrop{position:fixed;z-index:40;inset:0;display:block;border:0;background:rgba(2,5,9,.72);backdrop-filter:blur(2px)}.mobile-menu{display:inline-flex;flex:0 0 auto}.calendar-toolbar{min-height:106px;flex-direction:column;align-items:stretch;gap:8px;padding:10px 10px 8px}.toolbar-navigation{width:100%}.toolbar-navigation h1{margin-left:5px;font-size:17px}.today-button,.toolbar-navigation .icon-button{min-width:40px;min-height:40px}.today-button{padding:0 9px}.view-switcher{width:100%;overflow-x:auto;scrollbar-width:none}.view-switcher::-webkit-scrollbar{display:none}.view-switcher button{min-width:62px;min-height:36px;flex:1 0 auto}.calendar-stage{padding:28px 7px 7px}.stage-label{top:9px;left:10px}.fc{font-size:11px}.fc .fc-timegrid-axis{width:34px}.fc .fc-timegrid-slot-label{font-size:8px}.fc .fc-col-header-cell-cushion{padding:7px 2px;font-size:9px}.task-drawer,.task-list-drawer,.trash-drawer{z-index:60;inset:0;width:100%;border:0;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.drawer-header{min-height:58px;padding:10px 14px}.drawer-scroll{padding:18px 14px 28px}.drawer-footer{padding:10px 14px}.field-row,.time-grid{grid-template-columns:1fr}.field-row{gap:12px}.task-list-actions{align-items:stretch;flex-direction:column}.task-list-actions .primary-button,.task-list-actions>div{width:100%;min-height:42px}.task-list-actions input{flex:1}.all-task-list>button{grid-template-columns:4px minmax(0,1fr)}.status-pill{grid-column:2;justify-self:start}.profile-settings{z-index:70;inset:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);width:100%;max-height:none;padding:18px;border:0;border-radius:0}.profile-settings-heading button{width:40px;height:40px}.font-select-label select,.profile-account-fields input{min-height:42px;font-size:16px}.settings-action.compact{min-height:38px;padding-inline:12px}.mini-days button,.mini-month header button,.profile-chip button,.sidebar-link{min-width:40px;min-height:40px}.profile-chip{grid-template-columns:34px minmax(0,1fr) 40px 40px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}