@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap";:root{--bg: #0b0d12;--bg-elevated: #171a24;--surface: #1d2230;--bg-muted: #12151e;--text: #f4f6fb;--text-muted: #a7b0c0;--border: #292e3d;--accent: #f4f4f4;--accent-soft: rgba(244, 244, 244, .1);--on-accent: #0b0d12;--brand: #8b5cf6;--on-brand: #f7f4ff;--brand-glow: 0 0 28px rgba(139, 92, 246, .32);--danger: #d98989;--success: #8fbfa3;--prio-low: #6faf8a;--prio-medium: #c9b36a;--prio-high: #d17a7a;--radius: 16px;--radius-sm: 12px;--radius-xs: 8px;--font: "Manrope", system-ui, sans-serif;--nav-height: 64px;--app-content-width: 480px;--app-pad-x: 20px;--safe-top: calc( max(env(safe-area-inset-top, 0px), var(--tg-safe-area-inset-top, 0px)) + var(--tg-content-safe-area-inset-top, 0px) );--safe-bottom-device: max( env(safe-area-inset-bottom, 0px), var(--tg-safe-area-inset-bottom, 0px) );--safe-bottom: calc( var(--safe-bottom-device) + var(--tg-content-safe-area-inset-bottom, 0px) );--safe-left: max( var(--app-pad-x), env(safe-area-inset-left, 0px), var(--tg-safe-area-inset-left, 0px) );--safe-right: max( var(--app-pad-x), env(safe-area-inset-right, 0px), var(--tg-safe-area-inset-right, 0px) );--shadow: 0 12px 32px rgba(0, 0, 0, .28);--btn-glow: 0 8px 22px color-mix(in srgb, var(--accent) 22%, transparent);--btn-glow-strong: 0 10px 28px color-mix(in srgb, var(--accent) 32%, transparent);--btn-glow-soft: 0 0 16px color-mix(in srgb, var(--accent) 12%, transparent);--btn-glow-soft-strong: 0 0 20px color-mix(in srgb, var(--accent) 20%, transparent)}:root[data-accent=white]{--accent: #f4f4f4;--accent-soft: rgba(244, 244, 244, .1)}:root[data-accent=purple]{--accent: #8b5cf6;--accent-soft: rgba(139, 92, 246, .16);--on-accent: #f7f4ff}:root[data-accent=blue]{--accent: #38bdf8;--accent-soft: rgba(56, 189, 248, .16)}:root[data-accent=green]{--accent: #7eae96;--accent-soft: rgba(126, 174, 150, .16)}:root[data-accent=orange]{--accent: #d4a07a;--accent-soft: rgba(212, 160, 122, .16)}:root[data-accent=red]{--accent: #c98989;--accent-soft: rgba(201, 137, 137, .16)}:root[data-theme=bw]{--bg: #000000;--bg-elevated: #111111;--surface: #161616;--bg-muted: #161616;--text: #ffffff;--text-muted: #8a8a8a;--border: #2a2a2a;--accent: #ffffff;--accent-soft: rgba(255, 255, 255, .1);--on-accent: #000000;--danger: #b3b3b3;--success: #d0d0d0;--prio-low: #8a8a8a;--prio-medium: #c4c4c4;--prio-high: #ffffff;--btn-glow: 0 8px 20px rgba(0, 0, 0, .35);--btn-glow-strong: 0 8px 24px rgba(0, 0, 0, .45);--btn-glow-soft: none;--btn-glow-soft-strong: none;--brand: #ffffff;--on-brand: #000000;--brand-glow: none}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;min-height:100%}html{background:var(--bg);color:var(--text)}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;touch-action:manipulation;-moz-appearance:none;appearance:none;-webkit-appearance:none}h1,h2,h3,p{margin:0}svg,.ui-icon{display:block;flex-shrink:0}.app-shell{width:100%;min-height:100dvh;display:flex;flex-direction:column;align-items:center;padding-top:calc(18px + var(--safe-top));padding-bottom:calc(var(--safe-bottom-device) + 20px)}.app-shell.has-fab{padding-bottom:calc(56px + 16px + var(--safe-bottom-device) + 20px)}.app-main{width:min(100%,calc(var(--app-content-width) + var(--safe-left) + var(--safe-right)));min-width:0;margin-inline:auto;padding-inline:var(--safe-left) var(--safe-right);box-sizing:border-box;align-self:center}.app-main.app-main-nav{padding-inline:max(12px,env(safe-area-inset-left,0px),var(--tg-safe-area-inset-left, 0px)) max(12px,env(safe-area-inset-right,0px),var(--tg-safe-area-inset-right, 0px))}.page{display:flex;flex-direction:column;align-items:stretch;gap:20px;width:100%;max-width:100%;min-width:0}.section{width:100%}.splash{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center}.splash-mark{width:18px;height:18px;border-radius:50%;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}.page-header{display:flex;align-items:center;gap:12px;width:100%}.page-header-text h1,.home-day{font-size:28px;font-weight:700;letter-spacing:-.03em}.page-header-text p,.home-weekday,.muted{color:var(--text-muted);margin-top:4px}.home-date{padding-top:8px}.welcome h2{font-size:20px;font-weight:600}.welcome p{color:var(--text-muted);margin-top:6px}.day-progress,.card{width:100%;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.day-progress-head,.row-between,.sheet-head,.month-head,.day-nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.page-header .muted,.row-between>.muted{margin-top:0;white-space:nowrap}.pro-pitch{display:flex;flex-direction:column;gap:8px;min-width:0}.pro-pitch-title{overflow-wrap:anywhere;word-break:break-word}.pro-pitch .legal-list{margin-top:0}.sheet-body>p+.pro-pitch{margin-top:12px}.day-progress p,.card-label{color:var(--text-muted);font-size:13px;margin:8px 0 12px}.card-label{text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}.plan-current{padding:12px 16px}.plan-current .card-label{margin:0}.plan-current-name{font-size:15px;font-weight:600;letter-spacing:-.02em}.plan-current-status{margin-top:4px;font-size:13px}.progress{height:8px;border-radius:99px;background:var(--bg-muted);overflow:hidden}.progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);box-shadow:0 0 10px color-mix(in srgb,var(--accent) 28%,transparent);transition:width .25s ease}.section-title{font-size:15px;font-weight:600;color:var(--text-muted);margin-bottom:12px}.row-between .section-title{display:flex;align-items:center;margin-bottom:0;line-height:1.2}.section>.row-between{min-height:28px;margin-bottom:16px}.task-list,.menu-list{display:flex;flex-direction:column;gap:8px}.task-item,.menu-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;min-height:64px;padding:12px 12px 12px 10px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);transition:opacity .2s ease,background .2s ease}.task-item.is-done{opacity:.62}.task-body{flex:1;min-width:0;text-align:left}.task-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-title-row h3,.menu-item span:nth-child(2){font-size:16px;font-weight:600}.task-body p{margin-top:4px;color:var(--text-muted);font-size:13px;line-height:20px}.task-time{color:var(--text);font-size:15px;font-weight:600;line-height:20px;font-variant-numeric:tabular-nums}.task-time-empty{color:var(--text-muted);font-size:13px;font-weight:400}.dot{margin:0 6px}.prio-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;display:block}.prio{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.prio-dot-low{background:var(--prio-low)}.prio-dot-medium{background:var(--prio-medium)}.prio-dot-high{background:var(--prio-high)}.add-task-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:50px;margin-top:8px;margin-bottom:8px;padding:0 16px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--accent);font-weight:650;line-height:1;text-align:center;box-sizing:border-box;box-shadow:var(--btn-glow-soft);transition:background .15s ease,transform .15s ease,border-color .15s ease,box-shadow .2s ease}.add-task-btn:active{transform:scale(.985);background:var(--accent-soft);border-color:var(--accent);box-shadow:var(--btn-glow-soft-strong)}.checkbox{width:26px;height:26px;border-radius:8px;border:1.5px solid var(--border);display:grid;place-items:center;flex-shrink:0;color:var(--on-accent);transition:background .15s ease,border-color .15s ease}.checkbox.is-checked{background:var(--accent);border-color:var(--accent)}.checkbox.is-round{border-radius:50%}.bottom-nav{position:fixed;left:0;right:0;bottom:0;width:100%;z-index:8;height:calc(var(--nav-height) + var(--safe-bottom-device));padding:6px 8px var(--safe-bottom-device);display:grid;grid-template-columns:repeat(5,1fr);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border)}.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);font-size:11px;min-height:48px}.nav-icon{display:grid;width:24px;height:24px;place-items:center;flex-shrink:0}.bottom-nav button.is-active{color:var(--accent)}.bottom-nav button.is-active .nav-icon{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 50%,transparent))}.fab{position:fixed;right:20px;bottom:calc(var(--safe-bottom-device) + 16px);width:56px;height:56px;border-radius:18px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;box-shadow:var(--shadow),var(--btn-glow);z-index:5;transition:box-shadow .2s ease}.fab:active{box-shadow:var(--shadow),var(--btn-glow-strong)}.app-shell.is-home{background:radial-gradient(78% 34% at 50% -6%,rgba(86,96,128,.14),transparent 58%),#07080c}.nav-home{--home-line: rgba(255, 255, 255, .14);--home-sheen: rgba(255, 255, 255, .05);container-type:inline-size;display:flex;flex-direction:column;align-items:stretch;width:100%;min-width:0;max-width:100%}.nav-board{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 6px;width:100%;min-width:0}.nav-mark{position:absolute;z-index:4;left:50%;top:50%;width:40px;height:40px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,255,255,.22);background:radial-gradient(circle,transparent 61%,rgba(255,255,255,.07) 62%,transparent 63.2%),radial-gradient(circle,transparent 72%,rgba(255,255,255,.05) 73%,transparent 74.2%),radial-gradient(circle,#12151c 0,#12151c 60%,#0c0e13 61%,#0c0e13 73%,#1a1f29 74%,#1a1f29 86%,#080a0e 87%,#080a0e);color:#f7f8fb;box-shadow:inset 0 1px #fff3,inset 0 -10px 14px #0000006b,0 1px #ffffff0d,0 10px 20px #00000080,0 0 18px #c4d0e029;display:grid;place-items:center;pointer-events:none}.nav-mark:before{content:"";position:absolute;left:50%;top:50%;width:64%;height:64%;transform:translate(-50%,-50%);border-radius:50%;background-image:radial-gradient(rgba(255,255,255,.34) .45px,transparent .6px);background-size:3px 3px;background-color:#151922;box-shadow:inset 0 0 0 1px #ffffff29,inset 0 1px #ffffff1f,inset 0 -7px 8px #00000073}.nav-mark-glyph{position:relative;z-index:1;font-size:14px;font-weight:700;letter-spacing:-.04em;line-height:1}.nav-card{min-width:0;height:40px;padding:4px 5px;border-radius:14px;border:1px solid var(--home-line);background:linear-gradient(180deg,#ffffff0e,#ffffff05 42%,#00000047),#101216;color:#f4f6f8;box-shadow:inset 0 1px 0 var(--home-sheen);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;text-align:left;transition:transform .16s ease,border-color .16s ease,background .16s ease}.nav-card-index{font-size:8px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.08em;line-height:1;color:#d6dce675}.nav-card-title{display:block;width:100%;font-size:10px;font-weight:650;line-height:1.05;letter-spacing:-.045em;color:#f7f8fa;overflow-wrap:normal;word-break:keep-all}.nav-card:nth-child(3),.nav-card:nth-child(7){padding-left:13px}.nav-card:active{transform:scale(.985)}.nav-card.is-active{border-color:#ffffff6b;background:linear-gradient(180deg,#ffffff17,#ffffff08 46%,#0003),#161920;color:#fff}.nav-card.is-active .nav-card-index{color:#f4f6fab8}.nav-card:focus-visible{outline:1px solid rgba(226,230,238,.85);outline-offset:2px}:root[data-theme=bw] .app-shell.is-home{background:#050505}:root[data-theme=bw] .nav-home{--home-line: rgba(255, 255, 255, .16);--home-sheen: rgba(255, 255, 255, .06)}:root[data-theme=bw] .nav-mark{border-color:#ffffff61;background:radial-gradient(circle,transparent 61%,rgba(255,255,255,.14) 62%,transparent 63.2%),radial-gradient(circle,transparent 72%,rgba(255,255,255,.08) 73%,transparent 74.2%),radial-gradient(circle,#161616 0,#161616 60%,#0a0a0a 61%,#0a0a0a 73%,#242424 74%,#242424 86%,#050505 87%,#050505);color:#fff;box-shadow:inset 0 1px #ffffff38,0 10px 20px #0000008c,0 0 16px #ffffff1f}:root[data-theme=bw] .nav-card.is-active{background:#1a1a1a;color:#fff;border-color:#ffffffb8}:root[data-theme=bw] .nav-card.is-active .nav-card-index{color:#ffffffb8}@media(hover:hover){.nav-card:hover{border-color:#ffffff47}}@container (min-width: 336px){.nav-board{gap:8px 6px}.nav-mark{width:44px;height:44px}.nav-mark-glyph{font-size:16px}.nav-card{height:42px;padding:4px 6px}.nav-card:nth-child(3),.nav-card:nth-child(7){padding-left:17px}.nav-card-index{font-size:9px}.nav-card-title{font-size:11px}}@container (min-width: 366px){.nav-mark{width:56px;height:56px}.nav-mark-glyph{font-size:20px}.nav-card:nth-child(3),.nav-card:nth-child(7){padding-left:26px}}@container (min-width: 400px){.nav-mark{width:72px;height:72px}.nav-mark-glyph{font-size:26px}.nav-card:nth-child(3),.nav-card:nth-child(7){padding-left:34px}}@container (min-width: 448px){.nav-board{gap:10px 8px}.nav-mark{width:76px;height:76px}.nav-mark-glyph{font-size:26px}.nav-card{height:48px;padding:5px 8px;border-radius:16px}.nav-card:nth-child(2),.nav-card:nth-child(6){padding-right:22px}.nav-card:nth-child(3),.nav-card:nth-child(7){padding-left:40px}.nav-card-title{font-size:12px}}.segmented{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:4px;padding:4px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:14px}.segmented button{height:40px;border-radius:10px;color:var(--text-muted)}.segmented button.is-active{background:var(--surface);color:var(--text)}.week-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week-cal button,.month-grid button{min-height:64px;border-radius:14px;background:var(--bg-elevated);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text)}.week-name,.month-weekdays,.week-count{font-size:11px;color:var(--text-muted)}.week-num{font-size:16px;font-weight:650}.week-cal button.is-selected,.month-grid button.is-selected{background:var(--accent-soft);outline:1px solid var(--accent)}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}.month-grid button{min-height:44px;position:relative}.month-grid i{width:4px;height:4px;border-radius:50%;background:var(--accent);position:absolute;bottom:6px}.month-head h2{font-size:16px}.sheet-root{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;max-width:100%;z-index:20;overflow:hidden;overscroll-behavior:none}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c}.sheet{position:absolute;left:0;right:0;bottom:0;width:100%;max-width:100%;min-width:0;display:flex;flex-direction:column;max-height:88%;overflow:hidden;contain:inline-size;background:var(--bg-elevated);border-top:1px solid var(--border);border-radius:24px 24px 0 0;padding:10px 0 0;animation:sheet-up .22s ease forwards}@keyframes sheet-up{0%{bottom:-16px}to{bottom:0}}.sheet-handle{width:36px;height:4px;border-radius:99px;background:var(--border);margin:4px auto 12px;flex-shrink:0}.sheet-header{flex:0 0 auto;position:relative;z-index:1;padding:0 20px;box-sizing:border-box;background:var(--bg-elevated)}.sheet-head{flex-shrink:0;padding-bottom:8px}.sheet-body{flex:1 1 auto;width:100%;min-height:0;min-width:0;max-width:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;overflow-anchor:none;overscroll-behavior:contain;scrollbar-gutter:stable;position:relative;z-index:0;padding:8px 20px calc(24px + var(--safe-bottom))}html.sheet-open,html.sheet-open body{overflow:hidden;overscroll-behavior:none}.task-form,.empty{display:flex;flex-direction:column;gap:14px;min-width:0;max-width:100%}.task-form label,.task-form input,.task-form select,.task-form textarea{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.task-form label{color:var(--text-muted);font-size:13px}.time-range-label{display:flex;align-items:center;min-height:18px;color:var(--text-muted);font-size:13px}.task-form input,.task-form select{margin-top:6px;height:48px;padding:0 12px;border-radius:var(--radius-xs);background:var(--bg-muted);border:1px solid var(--border);outline:none;font-size:16px;color:var(--text)}.task-form input:focus,.task-form select:focus{border-color:var(--accent)}.task-form input{line-height:46px;overflow:hidden;-moz-appearance:none;appearance:none;-webkit-appearance:none}.task-form input[type=number]{-moz-appearance:textfield}.task-form input[type=number]::-webkit-inner-spin-button,.task-form input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.task-form select{line-height:48px}.task-form input[type=date],.task-form input[type=time],.task-form input[type=datetime-local]{min-width:0;max-width:100%;padding-top:0;padding-bottom:0;line-height:48px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.task-form input[type=date]::-webkit-datetime-edit,.task-form input[type=time]::-webkit-datetime-edit,.task-form input[type=datetime-local]::-webkit-datetime-edit,.task-form input[type=date]::-webkit-datetime-edit-fields-wrapper,.task-form input[type=time]::-webkit-datetime-edit-fields-wrapper,.task-form input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper,.task-form input[type=date]::-webkit-date-and-time-value,.task-form input[type=time]::-webkit-date-and-time-value,.task-form input[type=datetime-local]::-webkit-date-and-time-value{display:flex;align-items:center;height:100%;min-height:0;padding:0;margin:0}.date-time-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.time-range{display:flex;flex-direction:column;min-width:0;width:100%;max-width:100%}.time-range-fields{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:start;min-width:0;width:100%}.time-range-sep{display:flex;align-items:center;justify-content:center;height:48px;margin-top:6px;color:var(--text-muted);line-height:1;-webkit-user-select:none;user-select:none}.date-field,.time-field{display:flex;flex-direction:column;justify-content:flex-start;min-width:0;width:100%;max-width:100%;overflow:hidden}.date-field label,.time-field label{display:flex;align-items:center;min-height:18px;margin:0}.date-field input,.time-field input{display:block;width:100%;max-width:100%;min-width:0;height:48px;margin-top:6px;padding-top:0;padding-bottom:0;box-sizing:border-box;line-height:48px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.time-field input:disabled{opacity:.55}.date-field input[type=date]::-webkit-datetime-edit,.time-field input[type=time]::-webkit-datetime-edit,.date-field input[type=date]::-webkit-datetime-edit-fields-wrapper,.time-field input[type=time]::-webkit-datetime-edit-fields-wrapper,.date-field input[type=date]::-webkit-date-and-time-value,.time-field input[type=time]::-webkit-date-and-time-value{display:flex;align-items:center;height:100%;min-height:0;padding:0;margin:0}.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;min-width:0;max-width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;padding:0 16px;font-weight:650;line-height:1;text-align:center;box-sizing:border-box;-moz-appearance:none;appearance:none;-webkit-appearance:none;text-box-trim:trim-both;text-box-edge:cap alphabetic;transition:box-shadow .2s ease}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--btn-glow)}.btn-primary:active:not(:disabled){box-shadow:var(--btn-glow-strong)}.btn-danger{background:transparent;color:var(--danger)}.btn-quiet,.btn-ghost,.icon-btn,.text-btn{color:var(--text-muted)}.text-btn{display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0;text-align:center;box-sizing:border-box;-moz-appearance:none;appearance:none;-webkit-appearance:none;text-box-trim:trim-both;text-box-edge:cap alphabetic}.btn-quiet,.btn-ghost{box-shadow:var(--btn-glow-soft)}.btn-quiet:active:not(:disabled),.btn-ghost:active:not(:disabled){box-shadow:var(--btn-glow-soft-strong)}.icon-btn{display:inline-grid;place-items:center;line-height:1}.icon-btn.round{width:40px;height:40px;border-radius:12px;background:var(--bg-elevated);display:grid;place-items:center}.empty{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;width:100%;padding:48px 12px}.empty-mark{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}.empty h2{font-size:20px;width:100%}.empty p{color:var(--text-muted);max-width:280px;width:100%}.skeleton-list{display:flex;flex-direction:column;gap:8px}.skeleton-row{height:64px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--bg-elevated),var(--bg-muted),var(--bg-elevated));background-size:200% 100%;animation:shimmer 1.2s ease infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.menu-icon{width:40px;height:40px;border-radius:12px;background:var(--surface);display:grid;place-items:center;color:var(--accent);line-height:1;text-box-trim:trim-both;text-box-edge:cap alphabetic;flex-shrink:0}.menu-item>:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.menu-chevron{display:grid;place-items:center;flex-shrink:0;color:var(--text-muted)}.accent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.accent-swatch{height:44px;border-radius:12px;background:var(--bg-muted);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px}.accent-swatch:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--swatch)}.accent-swatch.is-active{border-color:var(--accent)}.toggle{width:48px;height:28px;border-radius:99px;background:var(--bg-muted);position:relative;flex-shrink:0}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--text-muted);transition:transform .18s ease,background .18s ease}.toggle.is-on{background:var(--accent)}.toggle.is-on:after{transform:translate(20px);background:var(--on-accent)}html,body{overflow-anchor:none}#root{overflow-x:hidden}.page-header-text{min-width:0;flex:1}.page-header-text h1,.task-title-row h3,.tx-body strong,.goal-main h3{overflow-wrap:anywhere}.two-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.stack{display:flex;flex-direction:column;gap:10px}.amount-pos{color:var(--success)}.amount-neg{color:var(--danger)}.btn-soft{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);box-shadow:var(--btn-glow-soft)}.btn-soft:active:not(:disabled){box-shadow:var(--btn-glow-soft-strong)}.tx-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;text-align:left}.tx-body+span,.menu-item .amount-pos,.menu-item .amount-neg{flex-shrink:0;font-weight:650}.cat-list{display:flex;flex-direction:column;gap:12px}.cat-row .progress{margin-top:8px}.card.goal-card{display:flex;flex-direction:column;gap:8px;padding:12px 16px}.goal-card .goal-main{gap:6px}.goal-main{width:100%;text-align:left;display:flex;flex-direction:column;gap:8px;background:transparent;padding:0}button.card.goal-main{padding:16px}.clamp{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.search-input{width:100%;height:48px;padding:0 14px;border-radius:var(--radius-xs);background:var(--bg-elevated);border:1px solid var(--border);outline:none}.search-input:focus{border-color:var(--accent)}.note-item{display:flex;align-items:flex-start;gap:8px;width:100%;padding:12px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border)}.note-body{flex:1;min-width:0;text-align:left}.note-body h3{font-size:16px;font-weight:600}.note-item .text-btn{flex-shrink:0;padding-top:2px}.task-form textarea{display:block;width:100%;margin-top:6px;min-height:120px;padding:12px;border-radius:var(--radius-xs);background:var(--bg-muted);border:1px solid var(--border);outline:none;resize:vertical;font-size:16px;color:var(--text)}.task-form textarea:focus{border-color:var(--accent)}.goal-main h3{display:flex;align-items:center;gap:8px}.goal-kind{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;width:1.25em;height:1.25em}.currency-row{width:100%;text-align:left}.timezone-sheet{display:flex;flex-direction:column;gap:8px}.timezone-sheet .btn{width:100%}.currency-chip{margin:0;font-size:13px;font-weight:600;color:var(--text)}.fx-caption{margin-top:6px;font-size:13px}.fx-warning{margin-top:12px;font-size:13px}.tx-amount{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.tx-converted{font-size:12px;font-weight:500}.menu-item.is-active{outline:1px solid var(--accent);background:var(--accent-soft)}.btn:disabled{opacity:.5;box-shadow:none}@media(hover:hover)and (pointer:fine){.btn-primary:hover:not(:disabled){box-shadow:var(--btn-glow-strong)}.btn-quiet:hover:not(:disabled),.btn-ghost:hover:not(:disabled),.btn-soft:hover:not(:disabled),.add-task-btn:hover{box-shadow:var(--btn-glow-soft-strong)}.fab:hover{box-shadow:var(--shadow),var(--btn-glow-strong)}}.habit-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.habit-progress-label{margin:0 0 8px;font-size:13px;color:var(--text-muted)}.habit-empty{display:flex;flex-direction:column;gap:8px}.habit-row{display:flex;align-items:center;gap:10px;width:100%;min-width:0;min-height:48px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border)}.habit-row.is-compact{min-height:44px;padding:6px 8px}.habit-row.is-done{opacity:.62}.habit-row-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:0;text-align:left;background:transparent}.habit-title{display:block;width:100%;min-width:0;font-size:15px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.habit-meta,.habit-streak{display:block;width:100%;min-width:0;font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.habit-diff{display:inline-flex;gap:3px;vertical-align:middle}.habit-diff span{width:5px;height:5px;border-radius:50%;background:var(--border)}.habit-diff span.is-on{background:var(--text-muted)}.habit-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.habit-day{min-height:36px;border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--bg-muted);font-size:11px;font-weight:650}.habit-day.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.habit-card{display:flex;flex-direction:column;min-width:0;padding-bottom:8px}.habit-card-meta{margin:0 10px 4px;font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.habit-detail-title{font-size:20px;font-weight:700;margin-bottom:10px}.habit-stat{font-size:16px;margin-bottom:6px}.habit-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.habit-cal-head{font-size:11px;color:var(--text-muted);text-align:center}.habit-cal-cell{min-height:32px;display:grid;place-items:center;border-radius:var(--radius-xs);background:var(--bg-elevated);font-size:12px;color:var(--text-muted)}.habit-cal-cell.is-done{color:var(--text);background:var(--accent-soft)}.habit-cal-cell.is-missed{color:var(--text-muted);background:var(--bg-muted)}.habit-cal-cell.is-future{color:var(--text-muted)}.habit-cal-cell.is-off,.habit-cal-cell.is-pad{background:transparent;opacity:.35}.usage-line{display:grid;gap:6px;margin-top:12px}.usage-count.is-over,.usage-line.is-over strong{color:var(--danger)}.usage-line.is-over .progress span{background:var(--danger);box-shadow:none}.sheet-actions{display:grid;gap:8px;margin-top:16px}.pay-method-picker{display:grid;gap:8px;margin-top:16px;min-width:0;-webkit-tap-highlight-color:transparent}.pay-method-heading{margin:0;font-size:18px}.pay-method-list{display:grid;gap:8px;-webkit-tap-highlight-color:transparent}button.pay-method{display:block;width:100%;text-align:left;cursor:pointer;color:inherit;font:inherit;background:var(--bg-elevated);border:1px solid var(--border);opacity:1;transform:none;filter:none;-webkit-tap-highlight-color:transparent}.pay-method-body{display:grid;gap:4px}button.pay-method .card-label{margin:0;text-transform:none;letter-spacing:0}button.pay-method:hover,button.pay-method:active,button.pay-method:focus{outline:none;background:var(--bg-elevated);border-color:var(--border);opacity:1;transform:none;filter:none;-webkit-tap-highlight-color:transparent}button.pay-method:focus-visible{outline:1px solid var(--border);outline-offset:2px}button.pay-method.is-pressed:not(.is-loading){border-color:var(--accent)}button.pay-method.is-loading,button.pay-method.is-loading:hover,button.pay-method.is-loading:active,button.pay-method.is-loading:focus{cursor:progress;background:var(--bg-elevated);border-color:var(--border);opacity:1;transform:none;filter:none}.pay-method-status{display:flex;align-items:center;gap:8px;min-height:1.3em;margin:0;color:var(--text-muted);font-size:13px;line-height:1.3}.pay-method-spinner{width:13px;height:13px;flex:none;border-radius:50%;border:1.5px solid var(--border);border-top-color:var(--accent);animation:pay-method-spin .7s linear infinite}@keyframes pay-method-spin{to{transform:rotate(360deg)}}section.card:has(+section.card>.pro-pitch){background:var(--bg-muted);box-shadow:none}.card:has(.pro-pitch){background:color-mix(in srgb,var(--brand) 14%,var(--surface));border-color:color-mix(in srgb,var(--brand) 55%,var(--border));box-shadow:var(--brand-glow)}.page>.sheet-actions>.btn-primary{background:var(--brand);color:var(--on-brand);box-shadow:var(--brand-glow)}.page>.sheet-actions>.btn-primary:disabled{box-shadow:none}:root[data-theme=bw] .card:has(.pro-pitch),:root[data-theme=bw] .page>.sheet-actions>.btn-primary{box-shadow:none}:root[data-theme=bw] .progress span{box-shadow:none}:root[data-theme=bw] .bottom-nav button.is-active .nav-icon{filter:none}@media(prefers-reduced-motion:reduce){.pay-method-spinner,.splash-mark,.skeleton-row,.sheet{animation:none}.pay-method-spinner{border-top-color:var(--accent)}.progress span,.toggle:after,.btn,.fab,.add-task-btn,.nav-card,.food-plan-panel,.food-plan-chevron,.food-goal-fields,.food-goal-label,.food-water-edit,.home-quick,.home-focus-time,.home-mark-hit{transition:none;animation:none}.food-water-edit:active,.nav-card:active{transform:none}}@media(min-width:768px){.app-shell{padding-top:32px}.fab{right:max(20px,calc((100vw - (var(--app-content-width) + var(--safe-left) + var(--safe-right))) / 2 + var(--safe-right)))}.legal-overlay{padding-top:32px}}a.menu-item{text-decoration:none;color:inherit;box-sizing:border-box;touch-action:manipulation}.legal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;width:100%;max-width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:var(--bg);display:flex;flex-direction:column;align-items:center;padding-top:calc(18px + var(--safe-top));padding-bottom:calc(24px + var(--safe-bottom));box-sizing:border-box}.legal-page,.legal-doc,.legal-intro,.legal-section,.legal-outro,.legal-clause{min-width:0;max-width:100%}.legal-overlay .page{width:min(100%,calc(var(--app-content-width) + var(--safe-left) + var(--safe-right)));padding-inline:var(--safe-left) var(--safe-right);box-sizing:border-box}.legal-page .page-header-text h1{font-size:24px}.legal-doc{display:flex;flex-direction:column;gap:28px;width:100%}.legal-intro,.legal-section,.legal-outro,.legal-clause{display:flex;flex-direction:column;gap:12px}.legal-section h2{font-size:18px;font-weight:700;letter-spacing:-.02em;line-height:1.3;overflow-wrap:anywhere}.legal-intro p,.legal-clause p,.legal-outro p{font-size:15px;line-height:1.6;overflow-wrap:anywhere;word-break:break-word}.legal-list{margin:8px 0 0;padding-left:1.2em;display:flex;flex-direction:column;gap:8px}.legal-list li{line-height:1.55;overflow-wrap:anywhere;word-break:break-word}.legal-consent{margin:4px 0 0;font-size:12.5px;line-height:1.45;color:var(--text-muted);text-align:center;overflow-wrap:anywhere;word-break:break-word}.legal-consent a,.contact-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.support-line{margin-top:10px;overflow-wrap:anywhere}.brain-dump-card{display:flex;flex-direction:column;gap:14px}.brain-dump-card .btn,.two-actions .btn{width:100%}.brain-dump-saved{margin:0;color:var(--success);font-size:14px;font-weight:600}.brain-dump-history-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left}.brain-dump-history-body{flex:1;min-width:0}.brain-dump-history-item .card-label{margin:0 0 6px}.brain-dump-entry-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.report-hero{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.report-hero-item{display:flex;flex-direction:column;gap:6px;padding:12px 8px;text-align:center}.report-hero-item strong{font-size:20px;font-weight:700}.report-hero-item span{color:var(--text-muted);font-size:11px;line-height:1.3}.report-block{margin-top:12px}.report-block h2{font-size:20px;font-weight:600;margin:0 0 6px}.report-goal{margin-top:12px}.report-goal p{overflow-wrap:anywhere}.page-home{gap:16px}.page-home .home-nav{width:calc(100% + 16px);margin-inline:-8px}.page-home .home-tasks .section-title{margin-bottom:8px}.page-home .home-today-status,.page-home .home-today-hint,.page-home .home-task-hint,.page-home .home-habit-hint{color:var(--text-muted);font-size:13px;line-height:1.4}.page-home .home-today-status{margin:8px 0 0}.page-home .home-today-lead{margin:8px 0 4px;color:var(--text);font-size:15px;font-weight:600;line-height:1.35}.page-home .home-today-hint,.page-home .home-task-hint,.page-home .home-habit-hint{margin:0}.page-home .home-tasks .add-task-btn{margin-top:8px;margin-bottom:0}.page-home .home-habits-empty .add-task-btn{margin-top:0;margin-bottom:0}.food-page{gap:12px;min-width:0}.food-profile-btn{width:100%;min-height:48px;padding:0 16px;border-radius:16px;border:1px solid rgba(255,255,255,.32);background:#171a22;color:#f7f8fb;font-size:16px;font-weight:650;letter-spacing:-.02em}.food-profile-btn.is-ready{border-color:#ffffff24;background:transparent;color:var(--text);font-weight:600}.food-profile-btn:active{transform:scale(.985)}.food-profile-btn:focus-visible{outline:1px solid rgba(226,230,238,.85);outline-offset:2px}.sheet-body:has(>.food-profile-form){display:flex;flex-direction:column;overflow:hidden}.food-profile-form{flex:1 1 auto;width:100%;max-width:100%;min-height:0;min-width:0;gap:0}.food-profile-scroll{flex:1 1 auto;display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;max-width:100%;overflow-x:hidden;overflow-y:auto}.food-profile-actions{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;width:100%;max-width:100%;min-width:0;padding-top:12px;background:var(--bg-elevated)}.food-profile-actions .btn{width:100%}.food-profile-form label{color:var(--text);font-size:16px;font-weight:650;max-width:100%}.food-profile-field{display:flex;align-items:center;gap:8px;width:100%;max-width:100%;min-width:0;margin-top:6px}.food-profile-field input{flex:1 1 auto;width:auto;min-width:0;margin-top:0}.food-profile-unit{flex:0 0 auto;color:var(--text-muted);font-size:14px;font-weight:600}.food-profile-choice{border:0;margin:0;padding:0;width:100%;max-width:100%;min-width:0}.food-profile-choice legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:6px;color:var(--text);font-size:16px;font-weight:650;white-space:normal;overflow-wrap:anywhere}.food-choice{display:flex;flex-direction:column;gap:8px;width:100%;max-width:100%;min-width:0}.food-choice-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;max-width:100%;min-width:0}.food-choice button{width:100%;max-width:100%;min-width:0;min-height:44px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:#171a22;color:var(--text);text-align:left;white-space:normal;overflow-wrap:anywhere}.food-choice-row button{text-align:center}.food-choice button.is-active{border-color:#ffffff8c}.food-plan{display:flex;flex-direction:column;gap:10px;margin:0}.food-plan div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;min-width:0}.food-plan dt,.food-plan dd{margin:0;min-width:0}.food-plan dt{color:var(--text-muted);font-size:14px}.food-plan dd{font-size:16px;font-weight:650;text-align:right}.food-plan-card>h2{margin:0}.food-plan-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:0;text-align:left}.food-plan-toggle-text{display:flex;flex-direction:column;gap:2px;min-width:0}.food-plan-toggle .section-title{margin:0;color:var(--text);font-size:16px;font-weight:650}.food-plan-summary{font-size:14px}.food-plan-chevron{width:18px;height:18px;flex-shrink:0;color:var(--text-muted);transform:rotate(90deg);transition:transform .22s ease}.food-plan-chevron.is-open{transform:rotate(-90deg)}.food-plan-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}.food-plan-panel.is-open{grid-template-rows:1fr}.food-plan-panel-inner{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:hidden}.food-plan-panel:not(.is-open){pointer-events:none}.food-page .food-macros .food-macro-goal{display:block;margin-top:2px}.food-goal-fields{display:flex;flex-direction:column;gap:12px;min-width:0;animation:food-goal-in .22s ease}.food-goal-label{display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;animation:food-goal-in .22s ease}@keyframes food-goal-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.food-target-weight{margin:0;padding:10px 12px;border-radius:12px;background:#171a22;color:var(--text);font-size:15px;font-weight:650}.food-goal-card .food-goal-weights{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-size:22px;font-weight:650;letter-spacing:-.03em}.food-goal-card .food-goal-weights span[aria-hidden=true]{color:var(--text-muted);font-size:18px}.food-goal-card p{margin:0}.food-goal-actions,.food-weight-row-actions,.food-weight-confirm{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.food-goal-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.food-goal-action{min-height:44px;min-width:0;padding:8px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:transparent;color:var(--text);white-space:normal}.food-weight-history,.food-weight-list,.food-weight-list li,.food-weight-list li>div{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:100%}.food-weight-list{margin:0;padding:0;list-style:none}.food-weight-list li{padding-top:10px;border-top:1px solid var(--border)}.food-weight-chart{width:100%;max-width:100%;height:auto}.food-weight-line,.food-weight-dot{fill:none;stroke:var(--accent);stroke-width:2}.food-weight-dot{fill:var(--accent)}.food-weight-guide{stroke:var(--text-muted);stroke-width:1}.food-weight-guide.is-start{stroke-dasharray:4 4}.food-weight-guide.is-target{stroke-dasharray:2 3}.food-weight-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin:0;color:var(--text-muted);font-size:13px}.food-page .card.food-card{display:flex;flex-direction:column;gap:8px;padding:14px;min-width:0}.food-page .food-card>.card-label{margin:0}.food-calorie-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0}.food-calorie-head strong{font-size:22px;letter-spacing:-.03em}.food-calorie-head .muted,.food-remainder{color:var(--text-muted);text-align:right}.food-remainder{margin:0;text-align:left;font-size:13px}.food-actions{display:flex;flex-direction:column;gap:8px}.food-actions .btn{width:100%}.food-meals{display:flex;flex-direction:column;gap:8px;min-width:0}.food-meals .section-title{margin-bottom:0}.food-empty p{margin:0}.food-empty .muted{margin-top:4px}.food-card .row-between{align-items:baseline;min-width:0}.food-card .row-between>strong,.food-card .row-between>.muted{min-width:0}.food-card .row-between>.muted{white-space:normal;text-align:right}.food-macros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.food-macros p,.food-macros strong{margin:0;min-width:0}.food-page .food-macros p{padding:8px;border-radius:12px;border:1px solid var(--border);background:#ffffff08}.food-page .food-macros span{font-size:12px}.food-macros strong{display:block;font-size:16px}.food-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.food-quick button{min-width:0;min-height:44px;padding:8px;border-radius:14px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font:inherit;font-weight:650}.food-list{display:flex;flex-direction:column;gap:8px;min-width:0}.food-water-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.food-water-label-row .card-label{margin:0}.food-water-edit{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:6px;min-height:36px;padding:0 10px;border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);border-radius:12px;background:var(--accent-soft);color:var(--accent);font-size:13px;font-weight:650;line-height:1;white-space:nowrap;transition:background .15s ease,transform .15s ease}.food-water-edit .ui-icon{width:14px;height:14px}.food-water-edit[aria-expanded=true]{background:color-mix(in srgb,var(--accent) 22%,transparent)}.food-water-edit:active{transform:scale(.97)}.food-pro-copy{margin:0;color:var(--text-muted);font-size:14px;line-height:1.45}.food-water-edit:focus-visible{outline:1px solid var(--accent);outline-offset:2px}@media(hover:hover){.food-water-edit:hover{background:color-mix(in srgb,var(--accent) 24%,transparent)}}.food-water-total{margin:0}.food-water-total strong{font-size:22px;font-weight:650;letter-spacing:-.03em}.food-water-percent{margin:0;color:var(--text-muted);font-size:13px}.food-water-card .progress{height:6px}.food-water-goal{gap:10px;padding:10px;border-radius:14px;background:#171a22}.food-water-goal label{color:var(--text);font-size:14px;font-weight:650}.food-water-goal input{width:100%;height:44px;margin-top:6px}.food-water-presets{grid-template-columns:repeat(auto-fit,minmax(5.6rem,1fr))}.food-quick button.is-active{border-color:#ffffff8c}.food-water-item,.food-water-row,.food-water-confirm{min-width:0}.food-water-item,.food-water-confirm{display:flex;flex-direction:column;gap:8px}.food-water-row{display:flex;align-items:stretch;gap:8px}.food-water-row .food-entry{flex:1}.food-water-delete{flex:0 0 44px;display:grid;place-items:center;width:44px;min-height:44px;padding:0;border-radius:14px;border:1px solid var(--border);background:transparent;color:var(--text-muted)}.food-water-delete .ui-icon{width:18px;height:18px}.food-water-confirm .muted{margin:0}.food-entry{align-items:flex-start;flex-direction:column;gap:4px;min-width:0}.food-entry span,.food-entry strong{max-width:100%;overflow-wrap:anywhere}.food-photo{display:flex;flex-direction:column;gap:12px;min-width:0}.food-photo-actions{display:flex;flex-direction:column;gap:8px}.food-photo-actions .btn,.food-photo>.btn{width:100%}.food-photo img{width:100%;max-height:240px;object-fit:cover;border-radius:16px;border:1px solid var(--border)}.food-photo-status,.food-photo-notes{margin:0;overflow-wrap:anywhere}.food-photo-notes{padding-left:18px}.food-photo-items{display:flex;flex-direction:column;gap:8px;min-width:0}.food-photo-item{display:flex;flex-direction:column;gap:8px;min-width:0;padding:12px;border-radius:16px;border:1px solid var(--border)}.rituals-page{gap:22px;min-width:0;overflow-x:hidden}.rituals-page .page-header-text h1{font-size:16px;font-weight:600;letter-spacing:-.02em}.ritual-catalog{display:flex;flex-direction:column;gap:28px;min-width:0}.ritual-hero{display:flex;flex-direction:column;gap:10px;min-width:0}.ritual-index{margin:0;color:var(--text-muted);font-size:11px;font-weight:650;letter-spacing:.18em;line-height:1}.ritual-display{margin:0;font-size:clamp(36px,12vw,52px);font-weight:650;letter-spacing:-.045em;line-height:.92}.ritual-lead{margin:0;max-width:28ch;color:var(--text-muted);font-size:14px;line-height:1.45}.ritual-groups{display:flex;flex-direction:column;gap:26px;min-width:0}.ritual-group{min-width:0}.ritual-group-title{margin:0 0 10px;color:#d6dce6b8;font-size:11px;font-weight:650;letter-spacing:.16em;line-height:1;text-transform:uppercase}.ritual-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.ritual-chip{max-width:100%;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#14161c;color:#f4f6f8;font-size:13px;font-weight:550;line-height:1.2;text-align:left}.ritual-chip:active,.ritual-custom:active{transform:scale(.985)}.ritual-chip:focus-visible,.ritual-custom:focus-visible{outline:1px solid rgba(226,230,238,.85);outline-offset:2px}.ritual-custom{width:100%;min-height:54px;padding:0 16px;border-radius:18px;border:1px solid rgba(255,255,255,.16);background:#171a22;color:#f7f8fb;font-size:16px;font-weight:650;letter-spacing:-.02em}.ritual-none-today{margin:0;color:var(--text-muted);font-size:13px;line-height:1.4}.rituals-page .add-task-btn{margin:0}.ritual-day,.ritual-card,.ritual-list,.ritual-form,.ritual-step-list{min-width:0;max-width:100%}.ritual-day{display:flex;flex-direction:column;gap:8px}.ritual-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0}.ritual-day-head strong{font-size:22px;letter-spacing:-.03em}.ritual-day-head span{min-width:0;color:var(--text-muted);font-size:13px;text-align:right;overflow-wrap:anywhere}.ritual-list{display:flex;flex-direction:column;gap:12px}.ritual-card{display:flex;flex-direction:column;gap:8px}.ritual-title,.ritual-description,.ritual-meta,.ritual-step span{min-width:0;overflow-wrap:anywhere}.ritual-title{margin:0;font-size:16px;font-weight:650;letter-spacing:-.02em}.ritual-description,.ritual-meta{margin:0;color:var(--text-muted);font-size:13px}.ritual-steps{display:flex;flex-direction:column;gap:6px;margin:4px 0 0;padding:0;list-style:none}.ritual-step{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:36px}.ritual-step.is-done span{color:var(--text-muted)}.ritual-card-actions{display:flex;gap:8px}.ritual-card-actions .btn{flex:1 1 0;min-width:0}.ritual-categories .segmented{grid-template-columns:repeat(2,minmax(0,1fr))}.ritual-categories .segmented button{min-width:0;padding:0 6px;font-size:13px}.ritual-step-list{display:flex;flex-direction:column;gap:10px}.ritual-step-edit{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}.ritual-step-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ritual-step-actions .icon-btn{width:100%;min-width:0;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--bg-elevated)}.ritual-form textarea{min-height:72px;resize:vertical}.home-focus{display:flex;flex-direction:column;gap:10px;padding:14px}.home-focus-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-focus-head h2{margin:0;font-size:16px;font-weight:600;letter-spacing:-.02em}.home-focus-head .ui-icon{width:18px;height:18px;color:var(--accent)}.home-focus-times{display:flex;gap:6px}.home-focus-time{min-height:28px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font:inherit;font-size:12px;line-height:1}.home-focus-time.is-active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--accent-soft)}.home-focus-time:disabled{opacity:.7}.home-focus-pick{width:100%;min-height:40px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:#ffffff08;color:var(--text);font:inherit;font-size:14px;line-height:1.3;text-align:left}.home-focus-pick:disabled{color:var(--text-muted)}.home-focus-clock{margin:0;font-size:32px;font-weight:600;letter-spacing:-.04em;line-height:1.1;font-variant-numeric:tabular-nums}.home-focus-actions{display:flex;gap:8px}.home-focus-actions .btn{flex:1 1 0;min-width:0}.home-focus-result{display:flex;flex-direction:column;gap:4px}.home-focus-result p,.home-focus-note{margin:0}.home-focus-result-title{font-weight:600}.home-focus-note{color:var(--text-muted);font-size:13px;line-height:1.4}.home-focus-picker{display:flex;flex-direction:column;gap:6px}.home-focus-picker button{min-height:42px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit;font-size:14px;text-align:left}.home-focus-picker button.is-selected{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--accent-soft)}.home-week{gap:8px}.home-week .section-title{margin-bottom:0}.home-week-card{padding:10px 8px}.home-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.home-week-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:36px;padding:2px 0;border:0;background:transparent;color:var(--text-muted);font:inherit}.home-week-label{font-size:11px;line-height:1;letter-spacing:.03em;white-space:nowrap}.home-week-mark{width:7px;height:7px;border-radius:50%;border:1px solid var(--border);background:transparent}.home-week-day.is-today .home-week-label{color:var(--text);font-weight:650}.home-week-day.is-today .home-week-mark{border-color:var(--accent)}.home-week-day.is-active .home-week-mark{background:var(--accent);border-color:var(--accent)}.home-week-day.is-future{opacity:.4}button.home-week-day{cursor:pointer}.home-week-error{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.home-week-error p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.3}.home-week-detail .home-week-weekday{margin:0 0 8px;color:var(--text-muted)}.home-week-detail ul{margin:0 0 12px;padding-left:18px}.home-week-detail li{margin:4px 0}.home-quick-anchor{position:relative;width:100%;min-width:0}.home-mark-hit{position:absolute;z-index:14;left:50%;top:50%;width:40px;height:40px;transform:translate(-50%,-50%);border:0;border-radius:50%;clip-path:circle(50%);padding:0;background:transparent;box-shadow:none;color:transparent;cursor:pointer}.home-mark-hit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-quick-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12;border:0;padding:0;background:transparent}.home-quick{position:absolute;z-index:13;left:50%;bottom:calc(50% + 46px);transform:translate(-50%);width:min(240px,calc(100vw - 24px));max-height:min(240px,calc(100dvh - 96px));overflow:auto;display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:16px;border:1px solid var(--border);background:var(--bg-elevated);box-shadow:0 12px 28px #0006}.home-quick button{min-height:40px;padding:8px 12px;border:0;border-radius:12px;background:transparent;color:var(--text);font:inherit;font-size:14px;line-height:1.2;text-align:left;white-space:nowrap}@media(hover:hover){.home-focus-time:hover:not(:disabled),.home-focus-picker button:hover,.home-quick button:hover,button.home-week-day:hover{background:var(--accent-soft)}}.home-quick button:active,.home-focus-time:active:not(:disabled),button.home-week-day:active{transform:scale(.98)}@media(prefers-reduced-motion:reduce){.home-quick button:active,.home-focus-time:active:not(:disabled),button.home-week-day:active{transform:none}}
