*{box-sizing:border-box}.lbl{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:500}.hint,.quiet{font-size:12px;color:var(--text-3)}.quiet-link{font-size:12.5px;color:var(--text-2);text-decoration:underline;text-underline-offset:2px}.quiet-link:hover{color:var(--text)}.stack{display:flex;flex-direction:column;gap:16px}.sec-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;gap:10px}.card-h{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:6px;background:var(--surface-2);font-size:11px;color:var(--text-2);font-weight:500;white-space:nowrap}.tag svg{width:11px;height:11px;flex:none}.dot{width:9px;height:9px;border-radius:3px;flex:none;display:inline-block}.field{margin-top:14px}.field>.lbl{display:block;margin-bottom:6px}.chip{padding:5px 10px;border-radius:8px;border:1px solid var(--line-strong);font-size:12.5px;color:var(--text-2);display:inline-flex;align-items:center;gap:6px;background:var(--surface)}.chip[data-on=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.cols2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cols3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#211f2a80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:60;animation:fade .16s ease}.modal-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}.toast-root{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:80;display:flex;flex-direction:column;gap:8px}.toast{animation:pop-in .2s ease}.toast svg{width:14px;height:14px;flex:none}.empty{text-align:center;padding:44px 20px;max-width:460px;margin:0 auto}.empty h3{font-size:19px;margin-bottom:8px}.empty p{color:var(--text-2);font-size:14px;margin-bottom:18px}.heat-wrap{overflow-x:auto;padding-bottom:4px}.heat{display:flex;align-items:flex-start}.heat-col{display:flex;flex-direction:column}.heat-cell{box-sizing:border-box;border:1px solid var(--line);border-radius:3px;background:var(--heat-empty);padding:0;transition:transform .1s}.heat-cell[data-future=true]{background:transparent;border-color:color-mix(in srgb,var(--line) 55%,transparent)}button.heat-cell[data-filled=true]{cursor:pointer}button.heat-cell[data-filled=true]:hover{transform:scale(1.35)}.heat-months{display:flex;height:13px;margin-bottom:5px}.heat-months span{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-3);white-space:nowrap}.heat-side{display:flex;flex-direction:column;margin-right:7px}.heat-side span{font-family:JetBrains Mono,monospace;font-size:9.5px;color:var(--text-3)}.legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:13px}.legend b{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-2)}.seg{display:flex;background:var(--surface-2);border-radius:8px;padding:2px;gap:2px}.seg button{flex:1;padding:5px 6px;border-radius:6px;font-size:11.5px;color:var(--text-3);font-weight:500;text-align:center}.seg button[data-on=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #00000014}.tgroup .lbl{display:inline-flex;align-items:center;gap:6px}.tgroup .lbl svg{width:13px;height:13px;flex:none}.pin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:11px}.done-strike{text-decoration:line-through;color:var(--text-3)}.row{display:flex;align-items:flex-start;gap:11px;padding:11px 0;border-top:1px solid var(--line)}.row:first-child{border-top:0}.row-main{flex:1;min-width:0}.row-title{font-size:13.5px;font-weight:500}.row-sub{font-size:11.5px;color:var(--text-3);margin-top:2px;display:flex;gap:7px;align-items:center;flex-wrap:wrap}.fold{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.fold-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 17px;width:100%}.fold-h:hover{background:var(--surface-2);border-radius:var(--radius)}.fold-b{padding:0 17px 14px}.cover .em{font-size:30px;position:relative;z-index:2}.strip{display:flex;gap:10px;flex-wrap:wrap}.inbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:14px}.ffield{display:flex;flex-direction:column;gap:5px}.sw{width:38px;height:22px;border-radius:12px;background:var(--surface-3);position:relative;flex:none;transition:background .16s}.sw i{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--surface);transition:left .16s;box-shadow:0 1px 3px #0003}.sw[data-on=true]{background:var(--good)}.sw[data-on=true] i{left:19px}.dir-projects>.sec-h{padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:16px}.linkcode{margin-top:14px;padding:14px 16px;border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--bg)}.linkcode-value{font-size:26px;letter-spacing:.16em;margin-top:6px}.linkcode code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.two{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}.side{display:flex;flex-direction:column;gap:16px;min-width:0}@media (max-width: 1080px){.two{grid-template-columns:minmax(0,1fr)}.dirsplit{grid-template-columns:minmax(0,1fr);gap:20px}}@media (max-width: 860px){.app-shell{grid-template-columns:minmax(0,1fr)}.rail{position:static;height:auto;padding:14px 14px 12px;gap:12px}.nav{flex-direction:row;flex-wrap:wrap;gap:2px}.rail-foot{margin-top:4px;flex-direction:row;align-items:center;gap:10px}.rail-foot .seg{max-width:260px}main.content{padding:18px 14px 60px;max-width:100%}.dirrow{grid-template-columns:minmax(0,1fr);gap:16px}.cols2,.cols3,.pin-grid{grid-template-columns:1fr}.projgrid{grid-template-columns:minmax(0,1fr)}.trow{flex-wrap:wrap;row-gap:4px}.ttime{width:auto;min-width:56px}.mediagrid{grid-template-columns:repeat(auto-fill,132px);gap:12px}}.pick-row{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:9px 11px;margin-bottom:6px;cursor:pointer;font:inherit}.modal .pick-row:first-of-type{margin-top:14px}.pick-row:hover{border-color:var(--accent)}.pick-row.is-active{border-color:var(--accent);background:var(--accent-soft)}.pick-row .ttl{font-size:13px;color:var(--text)}.pick-row .meta{font-size:11px;color:var(--text-3)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Golos Text,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;font-size:14px}h1,h2,h3,h4,h5{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-family:Literata,Georgia,serif;font-size:30px;font-weight:500}h2{font-family:Literata,Georgia,serif;font-size:22px;font-weight:500}h3{font-family:Literata,Georgia,serif;font-size:17px;font-weight:500}p{margin:0}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit;padding:0}a{color:inherit;text-decoration:none;cursor:pointer}ul,ol{margin:0;padding:0;list-style:none}input,textarea,select{font:inherit;color:inherit}.mono{font-family:JetBrains Mono,ui-monospace,Consolas,monospace}:root{--bg: #f4f1ea;--surface: #ffffff;--surface-2: #ece8de;--surface-3: #e1ddd0;--surface-hover: #f4f1ea;--text: #1f1f1f;--text-2: #4a4a4a;--text-3: #7b7b7b;--line: #e5e1d5;--line-strong: #c8c3b5;--heat-empty: #e1ddd0;--d-act: #c05a6e;--d-voice: #be8a3c;--d-vocal: #8b6bc8;--d-eng: #3e8f86;--d-phys: #4c74b0;--d-neutral: #7b8b6e;--c-act: var(--d-act);--c-voice: var(--d-voice);--c-vocal: var(--d-vocal);--c-eng: var(--d-eng);--c-phys: var(--d-phys);--c-neutral: var(--d-neutral);--accent: #7b8b6e;--accent-hover: #6a7a5d;--accent-soft: #eef1ea;--accent-contrast: #ffffff;--accent-border: #7b8b6e;--accent-deep: #3a4238;--danger: #c05a6e;--warn: #be8a3c;--good: #3f7a5c;--tg: #3e7fa8;--google: #4285f4;--evt: #4c74b0;--radius: 14px;--shadow: 0 14px 38px -24px rgba(33, 31, 42, .18);--shadow-sm: 0 4px 14px -8px rgba(33, 31, 42, .14);--transition: .2s ease}.app-shell{--accent: var(--accent-base, var(--d-neutral));--accent-hover: color-mix(in srgb, var(--accent) 84%, #000);--accent-soft: color-mix(in srgb, var(--accent) 12%, var(--surface));--accent-contrast: #ffffff;--accent-border: var(--accent);--accent-deep: color-mix(in srgb, var(--accent) 45%, #000)}.theme-dark .app-shell{--accent: color-mix(in srgb, var(--accent-base, var(--d-neutral)) 76%, #fff);--accent-hover: color-mix(in srgb, var(--accent) 82%, #fff);--accent-soft: color-mix(in srgb, var(--accent-base, var(--d-neutral)) 20%, transparent);--accent-contrast: #16161a;--accent-deep: color-mix(in srgb, var(--accent-base, var(--d-neutral)) 40%, #000)}.theme-dark{--bg: #1a1a1f;--surface: #232328;--surface-2: #2c2c33;--surface-3: #36363e;--surface-hover: #34343c;--text: #f0eee8;--text-2: #b8b6ae;--text-3: #84827c;--line: #36363e;--line-strong: #4a4a52;--heat-empty: #2e2e35;--shadow: 0 14px 38px -16px rgba(0, 0, 0, .5);--shadow-sm: 0 4px 14px -8px rgba(0, 0, 0, .4)}.app-shell,.app-shell *{transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)}.ic{display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em;line-height:1;vertical-align:-.125em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ic.fill{fill:currentColor;stroke:none}.btn{padding:7px 13px;font-size:13px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--text);display:inline-flex;align-items:center;gap:5px;cursor:pointer}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-contrast)}.btn.danger{color:var(--danger)}.btn.danger:hover{border-color:var(--danger);color:var(--danger)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn.ghost:hover{background:var(--surface-2);color:var(--text);border-color:transparent}.btn.sm{padding:5px 9px;font-size:12px}.btn.tg{background:var(--tg);border-color:var(--tg);color:#fff}.btn.tg:hover{background:#346c92;border-color:#346c92}.btn.google{background:#fff;border-color:var(--line-strong);color:var(--text)}.btn.google:hover{background:var(--surface-2);border-color:var(--line-strong);color:var(--text)}.btn.is-current{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);cursor:default}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.two-col{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start}.two-col .right-col{display:flex;flex-direction:column;gap:14px}@media (max-width: 1080px){.two-col{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-sm)}.card h4{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:700;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.card h4 .more{font-size:11px;color:var(--text-3);font-weight:400;letter-spacing:0;cursor:pointer}.card h4 .more:hover{color:var(--accent)}.card.notice{border-left:4px solid var(--c-eng)}.card.approved{border-left:4px solid var(--good);background:color-mix(in srgb,var(--surface) 88%,#e8f4ed)}.card.warning{border-left:4px solid var(--warn);background:color-mix(in srgb,var(--surface) 88%,#fff4dd)}.card.danger{border-left:4px solid var(--danger);background:color-mix(in srgb,var(--surface) 88%,#fceef0)}.dir-glyph{width:var(--s, 32px);height:var(--s, 32px);border-radius:8px;background:var(--c, var(--accent));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:Literata,serif;font-size:calc(var(--s, 32px) * .55);font-weight:600;flex-shrink:0}.dir-glyph.sm{--s: 24px;border-radius:6px}.dir-glyph.lg{--s: 44px;border-radius:11px;font-size:24px}.heatmap{display:grid;grid-template-columns:repeat(var(--cols, 18),1fr);grid-auto-rows:1fr;gap:3px}.heatmap .cell{aspect-ratio:1;border-radius:3px;background:var(--heat-empty)}.heatmap .cell.t-act{background:var(--c-act)}.heatmap .cell.t-voice{background:var(--c-voice)}.heatmap .cell.t-vocal{background:var(--c-vocal)}.heatmap .cell.t-eng{background:var(--c-eng)}.heatmap .cell.t-phys{background:var(--c-phys)}.heatmap .cell.is-today{outline:2px solid var(--text);outline-offset:1px}.heatmap .cell:hover{transform:scale(1.15);cursor:pointer}.heatmap-legend{display:flex;gap:14px;font-size:11px;color:var(--text-3);flex-wrap:wrap;margin-top:10px}.heatmap-legend span{display:inline-flex;align-items:center;gap:5px}.heatmap-legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.heatmap-legend i.empty{background:var(--heat-empty)}.task-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--surface);border:1px solid var(--line);border-radius:9px;margin-bottom:5px}.task-row.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.task-row.is-active:before{content:"●";color:var(--accent);font-size:9px;margin-right:-4px}.task-row .check{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--text);flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:9px}.task-row .check.done{background:var(--text);border-color:var(--text)}.task-row .check.done:after{content:"✓"}.task-row .check:hover{border-color:var(--accent)}.task-row .tname{flex:1;font-size:13px;color:var(--text);cursor:pointer}.task-row .tname:hover{color:var(--accent)}.task-row .tname.done{text-decoration:line-through;color:var(--text-3)}.task-row .tmeta{font-size:11px;color:var(--text-3);font-family:JetBrains Mono,monospace}.task-row .tmeta .deadline-today{color:var(--danger);font-weight:600}.task-row .tmeta .deadline-soon{color:var(--warn)}.task-row .pin{font-size:13px;color:var(--text-3);cursor:pointer}.task-row .pin.is-pinned{color:var(--accent)}.task-row .dir-dot{width:8px;height:8px;border-radius:2px;background:var(--c);display:inline-block;margin-right:5px;vertical-align:middle}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{padding:4px 10px;border-radius:14px;background:var(--surface);border:1px solid var(--line);color:var(--text-2);font-size:12px;cursor:pointer}.chip:hover{border-color:var(--accent)}.chip.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.chip.src-tg{background:color-mix(in srgb,var(--tg) 12%,white);color:var(--tg);border-color:color-mix(in srgb,var(--tg) 30%,white)}.chip.src-app{background:var(--surface-2);color:var(--text-2)}.chip.kind-task{background:color-mix(in srgb,var(--good) 12%,white);color:var(--good)}.chip.kind-rem{background:color-mix(in srgb,var(--warn) 14%,white);color:var(--warn)}.chip.kind-evt{background:color-mix(in srgb,var(--evt) 12%,white);color:var(--evt)}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:2px 8px;border-radius:8px;font-weight:600}.badge.good{background:color-mix(in srgb,var(--good) 14%,white);color:var(--good)}.badge.warn{background:color-mix(in srgb,var(--warn) 16%,white);color:var(--warn)}.badge.danger{background:color-mix(in srgb,var(--danger) 14%,white);color:var(--danger)}.badge.neutral{background:var(--surface-2);color:var(--text-2)}.badge .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.toggle{width:34px;height:20px;background:var(--line-strong);border-radius:10px;position:relative;cursor:pointer;flex-shrink:0;transition:var(--transition)}.toggle.on{background:var(--accent)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:var(--transition);box-shadow:0 1px 3px #0003}.toggle.on:after{left:16px}.empty-state{padding:32px 24px;text-align:center}.empty-state .ic-wrap{width:52px;height:52px;border-radius:14px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.empty-state .ic-wrap svg{width:24px;height:24px}.empty-state h4{font-family:Literata,serif;font-size:17px;font-weight:500;color:var(--text);margin-bottom:6px}.empty-state p{font-size:13px;color:var(--text-2);max-width:380px;margin:0 auto 16px;line-height:1.6}.empty-state .btn{margin:0 auto}.loading-state{padding:32px 24px;text-align:center}.loading-state .spinner{width:36px;height:36px;border:3px solid var(--surface-2);border-top-color:var(--accent);border-radius:50%;margin:0 auto 14px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{font-size:13px;color:var(--text-2)}.error-state{padding:32px 24px;text-align:center}.error-state .ic-wrap{width:52px;height:52px;border-radius:14px;background:color-mix(in srgb,var(--danger) 12%,white);color:var(--danger);display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.error-state h4{font-family:Literata,serif;font-size:17px;font-weight:500;color:var(--text);margin-bottom:6px}.error-state p{font-size:13px;color:var(--text-2);max-width:380px;margin:0 auto 14px;line-height:1.6}.error-state .actions{display:flex;gap:8px;justify-content:center}.toast{background:var(--text);color:var(--surface);padding:10px 16px;border-radius:10px;display:inline-flex;align-items:center;gap:10px;font-size:13px;box-shadow:var(--shadow)}.toast .ic{color:var(--good);font-size:16px}.toast.danger .ic{color:var(--danger)}.modal-backdrop{background:#211f2a80;padding:24px;display:flex;align-items:center;justify-content:center}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:61;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);width:calc(100% - 32px);max-width:560px;max-height:calc(100vh - 48px);overflow-y:auto;padding:24px}.modal.lg{max-width:780px}.modal h3{font-family:Literata,serif;font-size:19px;margin-bottom:6px}.modal .desc{font-size:13px;color:var(--text-2);margin-bottom:16px;line-height:1.5}.modal .field{margin-bottom:12px}.modal .field label{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:600;margin-bottom:5px}.modal .field input,.modal .field select,.modal .field textarea{width:100%;padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:13px}.modal .field input:focus,.modal .field select:focus,.modal .field textarea:focus{outline:none;border-color:var(--accent)}.modal .field textarea{min-height:60px;resize:vertical;line-height:1.5}.modal .field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}@media (pointer: coarse){.btn,.chip,.sw,.tab{min-height:44px}.btn.sm{min-height:38px}}@media (prefers-reduced-motion: reduce){.app-shell,.app-shell *{transition:none!important}}.menu-pop{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:5px;min-width:190px;box-shadow:var(--shadow);z-index:70}.menu-pop-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:7px;font-size:13px;color:var(--text);cursor:pointer;outline:none;min-height:36px}.menu-pop-item:hover,.menu-pop-item[data-highlighted]{background:var(--surface-2)}.menu-pop-item.is-danger{color:var(--danger)}.menu-dots{width:32px;height:32px;border-radius:8px;background:var(--surface);border:1px solid var(--line);color:var(--text-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.menu-dots:after{content:"···";letter-spacing:1px;font-size:16px;line-height:1}.menu-dots:hover{background:var(--surface-2);color:var(--text)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:6px}.task-row .check,.task-row .tname,.task-row .pin{background:none;border-radius:0;padding:0;font:inherit;text-align:left}.task-row .check{border-radius:50%}.task-row .tname{min-width:0}.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh;background:var(--bg)}.app-sidebar{background:var(--surface);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh;overflow-y:auto}.app-sidebar .brand{display:flex;align-items:center;gap:10px;padding:6px 8px 18px;border-bottom:1px solid var(--line);margin-bottom:12px}.app-sidebar .brand .logo{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--c-act),var(--c-eng));box-shadow:inset 0 0 0 6px color-mix(in srgb,var(--surface) 75%,transparent);flex-shrink:0}.app-sidebar .brand .name{font-family:Literata,serif;font-size:15px;font-weight:600;color:var(--text)}.app-sidebar .brand .sub{font-size:10px;color:var(--text-3);margin-top:1px}.app-sidebar .nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;color:var(--text-2);font-size:13px;cursor:pointer}.app-sidebar .nav-item:hover{background:var(--surface-2);color:var(--text)}.app-sidebar .nav-item.is-active{background:var(--accent-soft);color:var(--accent);font-weight:600}.app-sidebar .nav-item .ic{font-size:16px;color:var(--text-3)}.app-sidebar .nav-item.is-active .ic{color:var(--accent)}.app-sidebar .nav-item .ct{margin-left:auto;font-size:10px;background:var(--surface-2);color:var(--text-2);padding:1px 6px;border-radius:8px;font-family:JetBrains Mono,monospace}.app-sidebar .nav-item.is-active .ct{background:var(--accent);color:var(--accent-contrast)}.app-sidebar .nav-sep{height:1px;background:var(--line);margin:10px 6px}.app-sidebar .bottom{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}.app-sidebar .user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:9px;cursor:pointer}.app-sidebar .user:hover{background:var(--surface-2)}.app-sidebar .user .av{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--c-vocal),var(--c-phys));display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:600}.app-sidebar .user .info{flex:1;min-width:0}.app-sidebar .user .info .nm{font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar .user .info .ml{font-size:10px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar .user .ic{font-size:14px;color:var(--text-3)}.app-sidebar .theme{display:flex;background:var(--surface-2);border-radius:7px;padding:2px;margin-top:6px}.app-sidebar .theme button{flex:1;padding:5px;font-size:11px;border-radius:5px;color:var(--text-3);display:flex;align-items:center;justify-content:center;gap:3px}.app-sidebar .theme button.is-active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.app-main{padding:24px 32px 60px;overflow:hidden;min-width:0}.app-main.wide{max-width:1600px}.app-main.medium{max-width:1280px}.app-main.narrow{max-width:1000px}.page-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:22px}.page-header .back{width:32px;height:32px;border-radius:8px;background:var(--surface);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--text-2);flex-shrink:0;cursor:pointer}.page-header .back:hover{background:var(--surface-2);color:var(--text)}.page-header .titles{flex:1;min-width:0}.page-header .eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:600;margin-bottom:4px}.page-header h1{font-size:26px;display:flex;align-items:center;gap:12px}.page-header h1 .glyph{width:32px;height:32px;border-radius:8px;background:var(--c, var(--accent));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:Literata,serif;font-size:17px;font-weight:600;flex-shrink:0}.page-header .desc{font-size:13px;color:var(--text-2);margin-top:6px;line-height:1.5;max-width:560px}.page-header .actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.m-topbar{background:var(--surface);padding:10px 14px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);flex-shrink:0;min-height:44px}.m-topbar .back{color:var(--text-2);font-size:14px;min-width:28px}.m-topbar .title{font-family:Literata,serif;font-size:15px;font-weight:500;flex:1}.m-topbar .action{color:var(--accent);font-size:13px;font-weight:600}.m-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px 14px 90px;display:flex;flex-direction:column;gap:10px;-webkit-overflow-scrolling:touch}.m-bottom{background:var(--surface);border-top:1px solid var(--line);display:flex;justify-content:space-around;align-items:center;padding:8px 4px 14px;flex-shrink:0;position:sticky;bottom:0}.m-bottom .tab{font-size:10px;color:var(--text-3);text-align:center;padding:4px 8px;flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:44px;justify-content:center}.m-bottom .tab .ic{font-size:18px}.m-bottom .tab.is-active{color:var(--accent);font-weight:600}.m-bottom .tab.is-add{background:var(--accent);color:var(--accent-contrast);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex:0 0 44px;box-shadow:0 6px 14px -4px #00000040;margin-top:-22px}.m-bottom .tab.is-add .ic{font-size:22px;color:var(--accent-contrast)}.plus-sheet{background:var(--surface);border-radius:14px 14px 0 0;padding:14px;box-shadow:0 -10px 30px -10px #0003}.plus-sheet h5{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:700;margin-bottom:10px;text-align:center}.plus-sheet .opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:var(--surface-2);margin-bottom:6px;cursor:pointer;min-height:44px}.plus-sheet .opt:hover{background:var(--accent-soft)}.plus-sheet .opt .ic-wrap{width:36px;height:36px;border-radius:10px;background:var(--surface);color:var(--accent);display:flex;align-items:center;justify-content:center}.plus-sheet .opt .ic-wrap .ic{font-size:18px}.plus-sheet .opt .info .ttl{font-size:14px;font-weight:600;color:var(--text)}.plus-sheet .opt .info .sub{font-size:11px;color:var(--text-3);margin-top:1px}.login-screen{background:linear-gradient(160deg,var(--bg) 0%,var(--surface-2) 100%);display:flex;align-items:center;justify-content:center;min-height:100vh;position:relative;overflow:hidden}.login-screen:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c-act) 12%,transparent) 0%,transparent 70%);top:-200px;right:-200px}.login-screen:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c-eng) 10%,transparent) 0%,transparent 70%);bottom:-200px;left:-150px}.login-card{background:var(--surface);border-radius:18px;padding:36px 32px;box-shadow:var(--shadow);max-width:380px;width:90%;position:relative;z-index:1;text-align:center;border:1px solid var(--line)}.login-card .logo{width:54px;height:54px;border-radius:16px;margin:0 auto 18px;background:linear-gradient(135deg,var(--c-act),var(--c-eng));box-shadow:inset 0 0 0 12px color-mix(in srgb,var(--surface) 75%,transparent)}.login-card h1{font-family:Literata,serif;font-size:26px;font-weight:500;margin-bottom:6px}.login-card .sub{font-size:13px;color:var(--text-2);margin-bottom:8px;line-height:1.5}.login-card .google-btn{width:100%;padding:11px 16px;background:#fff;border:1px solid var(--line-strong);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;color:var(--text);font-weight:500;margin-top:18px;cursor:pointer;min-height:44px}.login-card .google-btn:hover{background:var(--surface-2)}.login-card .google-btn .g-logo{width:18px;height:18px}.login-card .perm-note{font-size:12px;color:var(--text-3);margin-top:14px;line-height:1.5;padding:10px 12px;background:var(--surface-2);border-radius:8px;text-align:left}.login-card .perm-note b{color:var(--text-2)}.home-content{display:flex;flex-direction:column;gap:18px}.home-greeting{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}.home-greeting h1{font-family:Literata,serif;font-size:28px;font-weight:500}.home-greeting .date{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-3)}.home-quick{display:flex;gap:6px}.focus-block{background:linear-gradient(135deg,var(--accent-deep) 0%,color-mix(in srgb,var(--accent-deep) 80%,#000) 100%);color:#f4f1ea;border-radius:14px;padding:18px 22px}.focus-block .label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in srgb,var(--accent) 60%,#f4f1ea);font-weight:700;margin-bottom:8px}.focus-block .chain{display:flex;align-items:center;gap:8px;font-size:13px;color:color-mix(in srgb,var(--accent) 50%,#f4f1ea);margin-bottom:12px;flex-wrap:wrap}.focus-block .chain .glyph{width:22px;height:22px;border-radius:6px;font-size:11px}.focus-block .chain .sep{color:color-mix(in srgb,var(--accent) 40%,#5a5a5a)}.focus-block .chain .proj{color:#f4f1ea}.focus-block .active-task{font-family:Literata,serif;font-size:22px;line-height:1.25;margin-bottom:14px}.focus-block .actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.focus-block .actions .btn{background:#ffffff14;border-color:#ffffff2e;color:#f4f1ea;padding:7px 13px;font-size:13px;border-radius:8px}.focus-block .actions .btn:hover{background:#ffffff29}.focus-block .actions .btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.focus-block .actions .btn.primary:hover{background:var(--accent-hover)}.focus-block .actions .menu-dots{width:32px;height:32px;border-radius:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:#f4f1ea;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px}.focus-block .actions .menu-dots:hover{background:#ffffff29}.focus-block .actions .menu-dots:after{content:"···";letter-spacing:1px}.focus-state{display:inline-flex;align-items:center;gap:4px;font-size:10px;padding:2px 7px;border-radius:8px;font-weight:600;margin-left:8px}.focus-state.active{background:var(--accent);color:var(--accent-contrast)}.focus-state.pinned{background:#ffffff1f;color:color-mix(in srgb,var(--accent) 60%,#f4f1ea)}.focus-state.completed{background:#ffffff14;color:#f4f1ea80;text-decoration:line-through}.today-block .t-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.today-block .t-row:last-child{border-bottom:none}.today-block .t-row .time{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-3);width:42px;flex-shrink:0}.today-block .t-row .check{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--text);flex-shrink:0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:8px}.today-block .t-row .check.done{background:var(--text);border-color:var(--text)}.today-block .t-row .check.done:after{content:"✓"}.today-block .t-row .check.event{border-style:dashed;background:var(--surface-2);border-color:var(--text-3)}.today-block .t-row .ttl{flex:1;font-size:13px;color:var(--text)}.today-block .t-row .ttl.done{text-decoration:line-through;color:var(--text-3)}.today-block .t-row .ttl.event{color:var(--text-2);font-style:italic}.today-block .t-row .meta{font-size:10px;color:var(--text-3);display:flex;gap:5px;align-items:center}.today-block .t-row .meta .dir-dot{width:7px;height:7px;border-radius:2px;background:var(--c);display:inline-block}.today-block .overdue-toggle{font-size:12px;color:var(--warn);margin-top:8px;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.notime-card .notime-row{display:flex;align-items:center;gap:9px;padding:7px 0;font-size:13px;border-bottom:1px solid var(--line)}.notime-card .notime-row:last-child{border-bottom:none}.notime-card .notime-row .ttl{color:var(--text)}.pinned-row{display:flex;align-items:flex-start;gap:10px;padding:7px 0;font-size:13px;border-bottom:1px solid var(--line)}.pinned-row:last-child{border-bottom:none}.pinned-row .pin-ic{color:var(--accent);font-size:13px;margin-top:2px}.pinned-row .info{flex:1}.pinned-row .info .ttl{color:var(--text)}.pinned-row .info .meta{font-size:11px;color:var(--text-3);margin-top:2px;display:flex;align-items:center;gap:5px}.pinned-row .info .meta .dir-dot{width:7px;height:7px;border-radius:2px;background:var(--c);display:inline-block}.pinned-row .check{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--text);flex-shrink:0;cursor:pointer;margin-top:2px}.media-row{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px;border-bottom:1px solid var(--line)}.media-row:last-child{border-bottom:none}.media-row .cover{width:32px;height:42px;border-radius:4px;background:var(--c);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;font-family:Literata,serif}.media-row .info{flex:1;min-width:0}.media-row .info .ttl{font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-row .info .sub{font-size:11px;color:var(--text-3);margin-top:1px}.media-row .status{font-size:10px;color:var(--text-3);font-family:JetBrains Mono,monospace}.dir-list-row{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:20px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:10px}.dir-list-row .left-cell{display:flex;align-items:center;gap:14px}.dir-list-row .left-cell .glyph{width:44px;height:44px;border-radius:11px;font-size:22px}.dir-list-row .left-cell .info .nm{font-family:Literata,serif;font-size:18px;font-weight:500;display:flex;align-items:center;gap:8px}.dir-list-row .left-cell .info .stats{font-size:11px;color:var(--text-3);margin-top:3px;font-family:JetBrains Mono,monospace}.dir-list-row .left-cell .focus-badge{font-size:9px;letter-spacing:.12em;text-transform:uppercase;background:var(--accent);color:var(--accent-contrast);padding:2px 7px;border-radius:3px;font-weight:700}.dir-list-row .map-cell .heatmap{grid-template-columns:repeat(26,1fr)}.dir-list-row .map-cell .heatmap .cell{border-radius:2px}.dir-list-row .pinned-cell{display:flex;flex-direction:column;gap:5px}.dir-list-row .pinned-cell .pt{font-size:12px;color:var(--text);display:flex;align-items:center;gap:6px}.dir-list-row .pinned-cell .pt .dir-dot{width:6px;height:6px;border-radius:50%;background:var(--c)}.dir-list-row .pinned-cell .pt small{font-size:10px;color:var(--text-3)}.dir-list-row .pinned-cell .more{font-size:11px;color:var(--text-3)}.dir-list-row:hover{border-color:var(--accent)}.dir-list-row{cursor:pointer}.dir-page-content{display:flex;flex-direction:column;gap:20px}.dir-projects-section{display:flex;flex-direction:column;gap:8px}.dir-projects-section .section-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:700;display:flex;align-items:center;justify-content:space-between}.dir-project-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:14px 16px;border-left:4px solid var(--c);display:flex;flex-direction:column;gap:6px;cursor:pointer}.dir-project-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.dir-project-card .top{display:flex;align-items:center;justify-content:space-between}.dir-project-card .nm{font-size:15px;font-weight:600;color:var(--text)}.dir-project-card .stats{font-size:11px;color:var(--text-3);font-family:JetBrains Mono,monospace}.dir-project-card .goal{font-size:12px;color:var(--text-2);font-style:italic;line-height:1.5}.dir-project-card .nm{background:none;border:none;padding:0;text-align:left;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.dir-project-card .top{gap:8px}.dir-project-card .stats{margin-left:auto}.dir-project-card .pin{background:none;border:none;padding:0;color:var(--text-3);display:inline-flex;cursor:pointer}.dir-project-card .pin:hover,.dir-project-card .pin.is-pinned{color:var(--accent)}.dir-project-card.is-pinned{border-color:var(--accent);border-left-color:var(--c)}.dir-project-card.is-paused{border-left-style:dashed;opacity:.75}.dir-project-card.is-completed{opacity:.65;border-left-color:var(--text-3)}.dir-collapsed{background:var(--surface-2);border-radius:10px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:13px;color:var(--text-2)}.dir-collapsed:hover{background:var(--surface-3)}.dir-collapsed .lbl{display:flex;align-items:center;gap:8px}.dir-collapsed .ct{color:var(--text-3);font-size:12px}.archive-row{display:grid;grid-template-columns:1fr 200px 100px 28px;gap:12px;align-items:center;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:9px;margin-bottom:5px}.archive-row .ttl{font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-row .ttl.done{text-decoration:line-through;color:var(--text-3)}.archive-row .proj{font-size:11px;color:var(--text-3);display:flex;align-items:center;gap:5px}.archive-row .proj .dir-dot{width:7px;height:7px;border-radius:2px;background:var(--c)}.archive-row .date{font-size:11px;color:var(--text-3);font-family:JetBrains Mono,monospace}.archive-row .action{color:var(--text-3);cursor:pointer;font-size:14px}.archive-row .action:hover{color:var(--accent)}.proj-page-content{display:flex;flex-direction:column;gap:16px}.proj-filters{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.proj-filters .lbl{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:600;margin-right:2px}.proj-filters .sort{margin-left:auto;font-size:11px;color:var(--text-3)}.task-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:18px}.task-fields .field{display:flex;flex-direction:column;gap:4px}.task-fields .field.full{grid-column:1 / -1}.task-fields .field label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:600}.task-fields .field .val{padding:8px 11px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--text);font-family:JetBrains Mono,monospace;cursor:pointer}.task-fields .field .val.empty{color:var(--text-3);font-style:italic;font-family:inherit}.task-fields .field .val:hover{border-color:var(--accent)}.task-fields .field textarea.val{min-height:80px;resize:vertical;font-family:inherit;line-height:1.5;cursor:text}.task-fields .field input.val{font-family:inherit}.checklist .ci{display:flex;align-items:center;gap:10px;padding:7px 0;font-size:13px;border-bottom:1px solid var(--line)}.checklist .ci:last-of-type{border-bottom:none}.checklist .ci .check{width:14px;height:14px;border-radius:3px;border:1.5px solid var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:9px;flex-shrink:0}.checklist .ci .check.done{background:var(--text);border-color:var(--text)}.checklist .ci .check.done:after{content:"✓"}.checklist .ci .txt{flex:1;color:var(--text)}.checklist .ci .txt.done{text-decoration:line-through;color:var(--text-3)}.checklist .ci .del{color:var(--text-3);cursor:pointer;font-size:14px}.checklist .ci .del:hover{color:var(--danger)}.rem-section{margin-bottom:18px}.rem-section .section-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:8px}.rem-section .section-title .ct{background:var(--surface-2);color:var(--text-2);padding:1px 7px;border-radius:8px;font-size:10px;letter-spacing:0;font-family:JetBrains Mono,monospace}.rem-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:12px 16px;margin-bottom:8px;border-left:4px solid var(--accent)}.rem-card.is-regular{border-left-color:var(--c-vocal)}.rem-card.is-tg{border-left-color:var(--tg)}.rem-card .top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px}.rem-card .top .rt{font-size:14px;color:var(--text);flex:1}.rem-card .top .when{font-size:11px;color:var(--text-3);font-family:JetBrains Mono,monospace;flex-shrink:0}.rem-card .meta{font-size:11px;color:var(--text-3);display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.rem-card .actions{display:flex;gap:4px;flex-wrap:wrap}.rem-card .actions .btn{padding:4px 9px;font-size:12px;border-radius:6px;border:1px solid var(--line);background:var(--surface);color:var(--text-2)}.rem-card .actions .btn:hover{border-color:var(--accent);color:var(--accent)}.rem-card .actions .btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.rem-card .actions .btn.danger{color:var(--danger)}.inbox-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:14px 16px;margin-bottom:8px}.inbox-card.is-ai{background:color-mix(in srgb,var(--c-vocal) 4%,white);border-color:color-mix(in srgb,var(--c-vocal) 25%,white)}.inbox-card .top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px}.inbox-card .top .text{flex:1;font-size:14px;color:var(--text);line-height:1.5}.inbox-card .top .when{font-size:10px;color:var(--text-3);font-family:JetBrains Mono,monospace;flex-shrink:0}.inbox-card .meta{font-size:11px;color:var(--text-3);display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.inbox-card .controls{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.inbox-card .controls .sel{padding:5px 10px;font-size:12px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--text-2);cursor:pointer}.inbox-card .controls .sel.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.inbox-card .controls .apply{margin-left:auto;padding:5px 11px;font-size:12px;border-radius:6px;background:var(--accent);color:var(--accent-contrast);border:none;cursor:pointer}.inbox-card .controls .del{padding:5px 8px;font-size:12px;color:var(--danger);cursor:pointer;background:none;border:none}.inbox-fields{margin-top:10px;padding:10px 12px;background:var(--surface-2);border-radius:8px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.inbox-fields .f{display:flex;flex-direction:column;gap:3px}.inbox-fields .f label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:600}.inbox-fields .f select,.inbox-fields .f input{padding:5px 8px;border:1px solid var(--line);border-radius:5px;background:var(--surface);font-size:12px}.menu-ideas{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.menu-idea{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:14px}.menu-idea .ttl{font-size:14px;color:var(--text);margin-bottom:8px;line-height:1.4}.menu-idea .params{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}.menu-idea .params .p{font-size:11px;color:var(--text-2);display:flex;align-items:center;gap:5px}.menu-idea .params .p .lbl{color:var(--text-3);min-width:64px}.menu-idea .actions{display:flex;gap:5px}.menu-idea.is-tried{opacity:.65}.menu-idea.is-tried .ttl{text-decoration:line-through;color:var(--text-3)}.media-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:18px}.media-tabs .tab{padding:10px 18px;font-size:13px;color:var(--text-2);border-bottom:2px solid transparent;cursor:pointer;font-weight:500}.media-tabs .tab.is-active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.media-tabs .tab .ct{font-size:10px;background:var(--surface-2);color:var(--text-2);padding:1px 6px;border-radius:8px;margin-left:5px}.media-tabs .tab.is-active .ct{background:var(--accent);color:var(--accent-contrast)}.media-shelf{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.media-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:14px;display:flex;flex-direction:column;gap:8px;cursor:pointer}.media-card:hover{box-shadow:var(--shadow-sm)}.media-card .cover{height:120px;border-radius:8px;background:var(--c);margin:-4px -4px 4px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:42px;font-family:Literata,serif;font-weight:600}.media-card .top-row{display:flex;align-items:center;justify-content:space-between}.media-card .status-badge{font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;border-radius:3px;font-weight:700}.media-card .status-badge.want{background:var(--surface-2);color:var(--text-2)}.media-card .status-badge.now{background:var(--accent);color:var(--accent-contrast)}.media-card .status-badge.done{background:color-mix(in srgb,var(--good) 18%,white);color:var(--good)}.media-card .pin-ic{color:var(--accent);font-size:13px}.media-card .ttl{font-size:13px;color:var(--text);font-weight:600;line-height:1.3}.media-card .author{font-size:11px;color:var(--text-3)}.media-card .cat-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.media-card .cat{font-size:9px;background:var(--surface-2);color:var(--text-2);padding:1px 5px;border-radius:3px;letter-spacing:.06em;text-transform:uppercase}.media-card .rating{font-size:11px;color:var(--warn);font-family:JetBrains Mono,monospace}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-card{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:16px 18px}.settings-card h4{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:700;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.settings-card .row{padding:8px 0;border-bottom:1px solid var(--line);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:10px}.settings-card .row:last-child{border-bottom:none}.settings-card .row .lbl{color:var(--text)}.settings-card .row .lbl small{display:block;color:var(--text-3);font-size:11px;margin-top:2px;font-weight:400}.settings-card .row .val{color:var(--text-2);font-family:JetBrains Mono,monospace;font-size:12px}.settings-card .row .sel{padding:5px 9px;font-size:12px;border-radius:6px;border:1px solid var(--line);background:var(--surface)}.settings-card .btn{margin-top:10px}.int-state{padding:10px 14px;border-radius:8px;font-size:12px;display:flex;align-items:center;gap:8px;margin-bottom:8px}.int-state.check{background:color-mix(in srgb,var(--evt) 10%,white);color:var(--evt)}.int-state.error{background:color-mix(in srgb,var(--danger) 10%,white);color:var(--danger)}.int-state.disconnected{background:var(--surface-2);color:var(--text-2)}.int-state.connected{background:color-mix(in srgb,var(--good) 12%,white);color:var(--good)}.int-state.reconnect{background:color-mix(in srgb,var(--warn) 14%,white);color:var(--warn)}.int-state.revoked{background:color-mix(in srgb,var(--danger) 10%,white);color:var(--danger)}.int-state .ic{font-size:14px}.touch-history{display:flex;flex-direction:column;gap:14px}.touch-day{display:grid;grid-template-columns:80px 1fr;gap:14px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}.touch-day .date-cell{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-3)}.touch-day .date-cell b{color:var(--text);font-size:14px;display:block}.touch-day .items{display:flex;flex-direction:column;gap:6px}.touch-item{display:flex;align-items:flex-start;gap:10px;font-size:13px}.touch-item .glyph{width:24px;height:24px;border-radius:6px;font-size:12px}.touch-item .info{flex:1}.touch-item .info .ttl{color:var(--text)}.touch-item .info .meta{font-size:11px;color:var(--text-3);margin-top:2px}.placeholder{padding:60px 0;text-align:center;color:var(--text-3);font-style:italic}.m-bottom{display:none}@media (max-width: 900px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-sidebar{display:none}.app-main{padding:12px 14px calc(86px + env(safe-area-inset-bottom));max-width:none}.m-bottom{display:flex;position:fixed;inset:auto 0 0 0;z-index:40;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.page-header{margin-bottom:16px;flex-wrap:wrap}.page-header h1{font-size:21px}.page-header .actions{width:100%}.two-col{grid-template-columns:minmax(0,1fr)}.modal{max-width:none;width:100%;border-radius:14px 14px 0 0}}@media (max-width: 700px){.home-grid,.dir-split,.proj-split,.media-grid,.idea-grid{grid-template-columns:minmax(0,1fr)}}html,body{overflow-x:hidden}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#1412106b;display:flex;align-items:flex-end}.plus-sheet{width:100%;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.plus-sheet .opt{width:100%;text-align:left;border:none}.plus-sheet .opt .info,.plus-sheet .opt .info .ttl,.plus-sheet .opt .info .sub{display:block}.sheet-cancel{width:100%;justify-content:center;margin-top:4px;min-height:44px}@media (min-width: 901px){.sheet-backdrop{display:none}}.m-bottom .tab .ct{position:absolute;transform:translate(14px,-14px);font-size:9px;background:var(--accent);color:var(--accent-contrast);padding:0 5px;border-radius:8px}.m-bottom .tab{position:relative}.focus-block .chain .proj{background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent)}.focus-block .focus-meta{font-size:12px;color:color-mix(in srgb,var(--accent) 45%,#f4f1ea);margin:-6px 0 14px}.focus-block .menu-dots{background:#ffffff14;border-color:#ffffff2e;color:#f4f1ea}.focus-block .menu-dots:hover{background:#ffffff29;color:#fff}.focus-none{text-align:center;display:grid;gap:10px;justify-items:center;padding:26px 18px}.focus-none-title{font-family:Literata,serif;font-size:18px}.focus-none .hint{max-width:46ch}.today-block h4 .today-links{display:flex;gap:14px;font-weight:400;letter-spacing:0;text-transform:none;font-size:12px}.today-block h4 .today-links a{color:var(--text-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-strong)}.today-block h4 .today-links a:hover{color:var(--accent)}.today-sub{margin-bottom:6px}.today-block .t-row .check{background:none;padding:0}.today-block .t-row .check.event{border:none;background:none;color:var(--text-3);font-size:13px}.today-block .t-row .time[data-soft=true]{font-size:10px}.today-block .t-row .ttl{min-width:0}.home-main{display:flex;flex-direction:column;gap:14px}.dir-dot{width:7px;height:7px;border-radius:2px;background:var(--c, var(--accent));display:inline-block;flex-shrink:0}.heat-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:12px;font-size:11px;color:var(--text-2)}.heat-legend span{display:inline-flex;align-items:center;gap:5px}.card-foot{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px}.card-foot a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.pinned-row .info{display:grid;gap:2px}.pinned-row .info .proj{font-size:11px;color:var(--text-3)}.pinned-row .check{background:none;padding:0}.pinned-row .pin-off{color:var(--text-3);font-size:16px;line-height:1;padding:2px 4px;border-radius:6px}.pinned-row .pin-off:hover{color:var(--danger);background:var(--surface-2)}.menu-invite{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.menu-invite-title{font-family:Literata,serif;font-size:16px}.media-row .info .ttl,.media-row .info .sub,.pinned-row .info .proj,.pinned-row .info .ttl{display:block}.pinned-row .info .meta{display:flex;align-items:center;gap:5px}.today-block .t-row .time{line-height:1.25;font-size:10px}@media (max-width: 700px){.today-block .t-row{display:grid;grid-template-columns:42px 16px minmax(0,1fr);gap:4px 10px;align-items:start}.today-block .t-row .ttl,.today-block .t-row .meta{grid-column:3}.home-greeting{align-items:flex-start}.home-quick{flex-wrap:wrap}}.dir-list-row .left-cell .info .nm button{font:inherit;color:inherit;text-align:left}.dir-list-row .left-cell .info .nm button:hover{color:var(--accent)}.dir-list-row .map-cell{min-width:0}.dir-list-row .pinned-cell .pt{background:none;border:none;padding:0;text-align:left;align-items:baseline}.dir-list-row .pinned-cell .pt:hover span{color:var(--accent)}@media (max-width: 1080px){.dir-list-row{grid-template-columns:minmax(0,1fr);gap:14px}}.dir-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px}@media (max-width: 900px){.dir-split{grid-template-columns:minmax(0,1fr)}}.dir-split .today-links button{font:inherit;color:var(--text-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-strong)}.dir-split .today-links button:hover{color:var(--accent)}.dir-split .today-links{display:flex;gap:12px;font-weight:400;letter-spacing:0;text-transform:none;font-size:12px}.touch-item+.touch-item{margin-top:10px}.dir-project-card{text-align:left;width:100%}.archive-row .ttl:hover{color:var(--accent)}@media (max-width: 700px){.archive-row{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}.archive-row .proj,.archive-row .date{grid-column:1}}.touch-comment{margin-top:4px}.touch-item .info{min-width:0}.row-del{color:var(--text-3);padding:6px;border-radius:7px;font-size:15px;flex-shrink:0}.row-del:hover{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,transparent)}.proj-meta{display:flex;align-items:center;gap:10px;margin-top:8px;font-size:12px;color:var(--text-3)}.proj-meta .badge{background:var(--surface-3);color:var(--text-2);padding:2px 8px;border-radius:8px;font-size:11px}.proj-filters{margin-bottom:12px}.proj-filters .sort select{background:none;border:1px solid var(--line);border-radius:7px;padding:3px 6px;font-size:11px}.note-row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.note-row:last-child{border-bottom:none}.note-row span{flex:1;min-width:0}.crumbs{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;text-transform:none;letter-spacing:0;font-size:12px}.crumbs button{color:var(--text-2);font:inherit}.crumbs button:hover{color:var(--accent)}.crumbs .sep{color:var(--text-3)}.crumbs .focus-state{margin-left:0}.crumbs .focus-state.pinned{background:var(--surface-3);color:var(--text-2)}.task-save{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.task-checklist{margin-top:16px}.danger-zone{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}@media (max-width: 640px){.task-fields{grid-template-columns:minmax(0,1fr)}}.proj-filters .sort{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.rem-card .top .check{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--text);flex-shrink:0;margin-top:3px;background:none;padding:0}.rem-card .top .check:hover{border-color:var(--accent)}.rem-card .meta .badge{background:var(--surface-2);color:var(--text-2);padding:2px 8px;border-radius:8px}.rem-card .meta .badge.is-tg{color:var(--tg);background:color-mix(in srgb,var(--tg) 12%,var(--surface))}.rem-comment{margin-bottom:8px}.rem-card .actions .menu-dots{width:28px;height:28px}.inbox-card .meta .badge{background:var(--surface-2);color:var(--text-2);padding:2px 8px;border-radius:8px}.inbox-card .meta .badge.is-tg{color:var(--tg);background:color-mix(in srgb,var(--tg) 12%,var(--surface))}.inbox-card[data-off=true]{opacity:.5}.ai-src-row{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.ai-src-row input{width:auto;margin-top:4px}.ai-src-row .text{font-size:13px;color:var(--text-2);font-style:italic}.theme-dark .inbox-card.is-ai{background:color-mix(in srgb,var(--c-vocal) 12%,var(--surface));border-color:color-mix(in srgb,var(--c-vocal) 30%,var(--line))}@media (max-width: 640px){.inbox-fields{grid-template-columns:minmax(0,1fr)}}.menu-idea .actions{margin-top:auto;align-items:center;justify-content:space-between}.menu-idea{display:flex;flex-direction:column}.media-card .cover{border:none}.media-card .pin{color:var(--text-3)}.media-card .pin.is-pinned{color:var(--accent)}.media-card .chips{margin-top:auto}.media-card .chip{font-size:11px;padding:3px 8px}@media (max-width: 1200px){.media-shelf{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-ideas{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 820px){.media-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.media-shelf,.menu-ideas{grid-template-columns:minmax(0,1fr)}.media-tabs{overflow-x:auto}}.settings-wide{grid-column:1 / -1}.settings-card .row input[type=text],.settings-card .row input[type=time]{padding:6px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:13px}.settings-card .seg{display:flex;background:var(--surface-2);border-radius:7px;padding:2px}.settings-card .seg button{flex:1;padding:5px 9px;font-size:12px;border-radius:5px;color:var(--text-3)}.settings-card .seg button[data-on=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}@media (max-width: 900px){.settings-grid{grid-template-columns:minmax(0,1fr)}}.settings-card .row .lbl,.menu-idea .params .p .lbl,.dir-collapsed .lbl{font-family:inherit;text-transform:none;letter-spacing:0;font-size:13px;font-weight:500;color:var(--text)}.settings-card .row .lbl small{font-family:inherit;text-transform:none;letter-spacing:0}.menu-idea .params .p .lbl,.dir-collapsed .lbl{color:var(--text-3);font-size:11px}.dir-collapsed .lbl{font-size:13px;color:var(--text-2)}@media (pointer: coarse){.app-shell input,.app-shell select,.app-shell textarea,.modal .field input,.modal .field select,.modal .field textarea,.inbox-fields .f select,.inbox-fields .f input,.proj-filters .sort select,.ai-src-row input,.settings-card .row input[type=text],.settings-card .row input[type=time]{font-size:16px}}
