@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;600;700&display=swap";
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-500:#f99c00;--color-yellow-400:#fac800;--color-green-500:#00c758;--color-blue-500:#3080ff;--color-purple-500:#ac4bff;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-normal:400;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:.125rem;--radius-sm:.25rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-purple-500:lab(52.0183% 66.11 -78.2316)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.-top-6{top:calc(var(--spacing) * -6)}.left-1\/2{left:50%}.z-\[1000\]{z-index:1000}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-14{height:calc(var(--spacing) * 14)}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-14{width:calc(var(--spacing) * 14)}.w-full{width:100%}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[8px\]{border-radius:8px}.rounded-lg{border-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-\[\#34C759\]{border-color:#34c759}.border-\[\#EDE8E2\]{border-color:#ede8e2}.bg-\[\#34C759\]{background-color:#34c759}.bg-white{background-color:var(--color-white)}.object-cover{object-fit:cover}.p-5{padding:calc(var(--spacing) * 5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.text-center{text-align:center}.font-sans{font-family:var(--font-sans)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[32px\]{font-size:32px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-\[\#1A1A2E\]{color:#1a1a2e}.text-\[\#6B7280\]{color:#6b7280}.text-\[\#9CA3AF\]{color:#9ca3af}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-amber-500{color:var(--color-amber-500)}.text-blue-500{color:var(--color-blue-500)}.text-green-500{color:var(--color-green-500)}.text-purple-500{color:var(--color-purple-500)}.text-white{color:var(--color-white)}.text-yellow-400{color:var(--color-yellow-400)}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.\[sync\:debug\]{sync:debug}}:root{--sidebar:#ffffffb8;--sidebar-active:#4f6ef71a;--bg:#f5f0eb;--card:#ffffffc7;--card-solid:#fff;--primary:#4f6ef7;--primary-2:#8b5cf6;--primary-light:#eef1ff;--secondary:#f59e54;--secondary-light:#fff6ed;--accent:#34c759;--accent-light:#e8f8ee;--text:#1a1a2e;--text-secondary:#6b7280;--text-muted:#9ca3af;--border:#3c372d14;--border-strong:#3c372d24;--shadow-sm:0 1px 2px #1f1b160a, 0 2px 8px #1f1b160d;--shadow:0 4px 16px #1f1b1614, 0 12px 32px #1f1b160f;--shadow-lift:0 8px 28px #4f6ef72e, 0 2px 8px #1f1b160f;--radius:16px;--radius-sm:12px;--radius-xs:8px;--p0:#ff4757;--p1:#ff9f43;--p2:#bdc3c7;--body-bg:#eae4da;--danger:#e74c3c;--overlay:#00000073;--grad-primary:linear-gradient(135deg, #4f6ef7 0%, #8b5cf6 100%);--grad-warm:linear-gradient(135deg, #f59e54 0%, #ff6b78 100%);--grad-success:linear-gradient(135deg, #34c759 0%, #22c1c3 100%);--grad-violet:linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%)}html.dark{--sidebar:#22242c99;--sidebar-active:#6d88f929;--bg:#17181d;--card:#22242cb8;--card-solid:#22242c;--primary:#6d88f9;--primary-2:#a78bfa;--primary-light:#2a2f45;--secondary:#f5a868;--secondary-light:#35302b;--accent:#4ade80;--accent-light:#1f2b23;--text:#e8e9ee;--text-secondary:#b5b7be;--text-muted:#8a8d96;--border:#ffffff14;--border-strong:#ffffff24;--shadow-sm:0 1px 3px #0006;--shadow:0 4px 16px #00000080, 0 12px 32px #00000059;--shadow-lift:0 8px 28px #6d88f947, 0 2px 8px #0006;--body-bg:#0f1014;--danger:#ff6b5c;--overlay:#0009;--grad-primary:linear-gradient(135deg, #6d88f9 0%, #a78bfa 100%);--grad-warm:linear-gradient(135deg, #f5a868 0%, #ff7a88 100%);--grad-success:linear-gradient(135deg, #4ade80 0%, #22c1c3 100%);--grad-violet:linear-gradient(135deg, #a78bfa 0%, #f472b6 100%)}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}button,input,textarea,select{font-family:inherit}button{touch-action:manipulation}:focus-visible{outline:3px solid var(--primary)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 35%, transparent)}}:focus-visible{outline-offset:2px}body{background:radial-gradient(1200px 600px at -10% -20%, #8b5cf624, transparent 60%), radial-gradient(1000px 500px at 110% 110%, #f59e541f, transparent 55%), radial-gradient(800px 400px at 50% -30%, #4f6ef71a, transparent 55%), var(--body-bg);color:var(--text);-webkit-font-smoothing:antialiased;height:100vh;padding:20px;font-family:Noto Sans SC,-apple-system,system-ui,PingFang SC,Microsoft YaHei,sans-serif;transition:background-color .2s,color .2s;overflow:hidden}html.dark body{background:radial-gradient(1200px 600px at -10% -20%, #8b5cf62e, transparent 60%), radial-gradient(1000px 500px at 110% 110%, #f59e541a, transparent 55%), radial-gradient(800px 400px at 50% -30%, #6d88f924, transparent 55%), var(--body-bg)}.app-container{background:radial-gradient(600px 320px at 0% 0%, #8b5cf614, transparent 60%), radial-gradient(500px 260px at 100% 100%, #f59e5414, transparent 60%), var(--bg);border:1px solid #ffffff80;border-radius:22px;width:1200px;max-width:100%;height:min(800px,100dvh - 40px);max-height:none;display:flex;overflow:hidden;box-shadow:0 24px 64px #1f1b162e,0 4px 12px #1f1b160f,inset 0 1px #fff9}html.dark .app-container{background:radial-gradient(600px 320px at 0% 0%, #8b5cf61f, transparent 60%), radial-gradient(500px 260px at 100% 100%, #f59e5414, transparent 60%), var(--bg);border-color:#ffffff0f;box-shadow:0 24px 64px #0000008c,0 4px 12px #00000059,inset 0 1px #ffffff0d}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.3s slideUp}@keyframes xp-float{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-32px)}}@keyframes celebration-fade-in{0%{opacity:0}to{opacity:1}}@keyframes celebration-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes celebration-bounce{0%{transform:translateY(0)scale(1)}to{transform:translateY(-8px)scale(1.05)}}.scroll-area::-webkit-scrollbar{width:4px}.scroll-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.scroll-area{scrollbar-width:thin;padding:4px 28px 28px}.sidebar{background:var(--sidebar);-webkit-backdrop-filter:blur(14px);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:220px;padding:0;display:flex}.sidebar-logo{color:var(--text);letter-spacing:.5px;align-items:center;gap:10px;padding:22px 20px 14px;font-size:18px;font-weight:700;display:flex}.sidebar-logo .logo-badge{background:var(--grad-primary);color:#fff;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:inline-flex;box-shadow:0 4px 12px #4f6ef759}.sidebar-user{background:linear-gradient(135deg,#4f6ef71a,#8b5cf614);border:1px solid #4f6ef724;border-radius:14px;align-items:center;gap:10px;margin:4px 14px 12px;padding:12px;display:flex}.sidebar-user .su-avatar{background:var(--grad-warm);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:700;display:inline-flex;overflow:hidden;box-shadow:0 3px 10px #f59e5447}.sidebar-user .su-avatar img{object-fit:cover;width:100%;height:100%}.sidebar-user .su-info{flex:1;min-width:0}.sidebar-user .su-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user .su-meta{color:var(--text-muted);margin-top:1px;font-size:11px}.sidebar-nav{flex:1;padding:4px 12px;overflow-y:auto}.nav-item{cursor:pointer;color:var(--text-secondary);text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:10px 14px;font-size:14px;font-weight:500;transition:all .18s cubic-bezier(.22,.61,.36,1);display:flex;position:relative}.nav-item:hover{color:var(--text);background:#0000000a}.nav-item.active{color:var(--primary);background:linear-gradient(135deg,#4f6ef724,#8b5cf61a);font-weight:600;box-shadow:inset 0 0 0 1px #4f6ef72e}.nav-item.active:before{content:"";background:var(--grad-primary);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-icon{text-align:center;flex-shrink:0;width:24px;font-size:18px}.sidebar-progress{border:1px solid var(--border);background:#ffffff8c;border-radius:12px;margin:8px 14px 0;padding:12px}html.dark .sidebar-progress{background:#ffffff0a}.sidebar-progress .sp-label{color:var(--text-muted);justify-content:space-between;margin-bottom:6px;font-size:11px;display:flex}.sidebar-progress .sp-bar{background:#0000000f;border-radius:4px;height:6px;overflow:hidden}html.dark .sidebar-progress .sp-bar{background:#ffffff0f}.sidebar-progress .sp-fill{background:var(--grad-primary);border-radius:4px;height:100%;transition:width .4s cubic-bezier(.22,.61,.36,1);box-shadow:0 0 8px #4f6ef766}.sidebar-footer{border-top:1px solid var(--border);padding:12px}.sidebar-footer .nav-item{color:var(--text-muted);font-size:13px}.stacked-card-list>.card+.card,.couple-card-stack>.card+.card{margin-top:12px}.card{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;padding:18px;transition:transform .22s cubic-bezier(.22,.61,.36,1),box-shadow .22s cubic-bezier(.22,.61,.36,1)}html.dark .card{border-color:#ffffff0f}.card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.card-title{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:600;display:flex}.chip-icon{background:var(--primary-light);width:28px;height:28px;color:var(--primary);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;display:inline-flex}.chip-icon.warm{background:var(--secondary-light);color:var(--secondary)}.chip-icon.success{background:var(--accent-light);color:var(--accent)}.chip-icon.violet{color:var(--primary-2);background:#8b5cf61f}.tag{letter-spacing:.3px;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.tag-p0{color:#ff4757;background:#ffe8e8;box-shadow:inset 0 0 0 1px #ff475724}.tag-p1{color:#ff9f43;background:#fff3e8;box-shadow:inset 0 0 0 1px #ff9f4329}.tag-p2{color:var(--text-muted);background:#f0f0f0}.main{flex-direction:column;flex:1;display:flex;overflow:hidden}.main-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:22px 28px 10px;display:flex}.main-header h1{color:var(--text);letter-spacing:-.2px;font-size:24px;font-weight:700}.main-header h1 .subtitle{color:var(--text-muted);letter-spacing:.2px;margin-top:2px;font-size:12px;font-weight:400;display:block}.main-header .actions{align-items:center;gap:8px;display:flex}.main-header .actions button{cursor:pointer;border:none;border-radius:10px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .18s}.header-search-btn{min-width:44px}.btn-primary{background:var(--grad-primary);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.4;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px 12px #4f6ef752}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #4f6ef76b}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;-webkit-backdrop-filter:blur(6px);background:#ffffffb3;border-radius:10px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;transition:transform .15s,background-color .15s,color .15s,opacity .15s}.main-header .actions button.btn-ghost{border:1px solid var(--border)}html.dark .btn-ghost{background:#ffffff0f}.btn-ghost:hover{color:var(--text);background:#fffffff2;transform:translateY(-1px)}.btn-primary:disabled,.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.btn-primary:disabled:hover{opacity:.45;background:var(--grad-primary);color:#fff;transform:none;box-shadow:0 4px 12px #4f6ef752}.btn-ghost:disabled:hover{opacity:.45;color:var(--text-secondary);background:#ffffffb3;transform:none}html.dark .btn-ghost:disabled:hover{background:#ffffff0f}.ws-hero{-webkit-backdrop-filter:blur(12px);background:radial-gradient(400px 200px at 100% 0,#8b5cf629,#0000 60%),linear-gradient(135deg,#4f6ef71a,#ffffff80);border:1px solid #4f6ef724;border-radius:18px;align-items:center;gap:16px;margin-bottom:16px;padding:18px 20px;display:flex;position:relative;overflow:hidden}html.dark .ws-hero{background:radial-gradient(400px 200px at 100% 0,#a78bfa2e,#0000 60%),linear-gradient(135deg,#6d88f924,#ffffff0a);border-color:#6d88f933}.ws-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#8b5cf624,#0000 70%);width:180px;height:180px;position:absolute;top:-40px;right:-40px}.ws-hero .greeting{z-index:1;flex:1;min-width:0}.ws-hero .greet-eyebrow{color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;font-size:12px}.ws-hero .greet-line{color:var(--text);letter-spacing:-.2px;margin-top:2px;font-size:20px;font-weight:700}.ws-hero .greet-sub{color:var(--text-secondary);margin-top:6px;font-size:13px;line-height:1.5}.ws-hero .greet-ring{z-index:1;flex-shrink:0;width:76px;height:76px;position:relative}.ws-hero .greet-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ws-hero .greet-ring .ring-num{color:var(--primary);flex-direction:column;justify-content:center;align-items:center;font-size:18px;font-weight:700;line-height:1.05;display:flex;position:absolute;inset:0}.ws-hero .greet-ring .ring-num small{color:var(--text-muted);font-size:10px;font-weight:500}.ws-stat-row{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.ws-stat{background:var(--card);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;border-radius:14px;flex-direction:column;gap:6px;padding:14px 16px;transition:transform .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}html.dark .ws-stat{border-color:#ffffff0f}.ws-stat:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.ws-stat .stat-head{justify-content:space-between;align-items:center;display:flex}.ws-stat .stat-icon{border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:inline-flex}.ws-stat .stat-delta{border-radius:999px;align-items:center;gap:2px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.ws-stat .stat-delta.up{color:var(--accent);background:var(--accent-light)}.ws-stat .stat-delta.down{color:var(--danger);background:#e74c3c1a}.ws-stat .stat-delta.flat{color:var(--text-muted);background:#0000000d}html.dark .ws-stat .stat-delta.flat{background:#ffffff0f}.ws-stat .num{color:var(--text);letter-spacing:-.5px;font-size:26px;font-weight:700;line-height:1.1}.ws-stat .num small{color:var(--text-muted);margin-left:2px;font-size:13px;font-weight:500}.ws-stat .label{color:var(--text-secondary);font-size:12px}.ws-stat .stat-progress{background:#0000000d;border-radius:4px;height:4px;margin-top:4px;overflow:hidden}html.dark .ws-stat .stat-progress{background:#ffffff0f}.ws-stat .stat-progress-fill{border-radius:4px;height:100%;transition:width .4s cubic-bezier(.22,.61,.36,1)}.ws-stat.primary .stat-icon{background:var(--primary-light);color:var(--primary)}.ws-stat.primary .stat-progress-fill{background:var(--grad-primary)}.ws-stat.warm .stat-icon{background:var(--secondary-light);color:var(--secondary)}.ws-stat.warm .stat-progress-fill{background:var(--grad-warm)}.ws-stat.success .stat-icon{background:var(--accent-light);color:var(--accent)}.ws-stat.success .stat-progress-fill{background:var(--grad-success)}.ws-stat.violet .stat-icon{color:var(--primary-2);background:#8b5cf61f}.ws-stat.violet .stat-progress-fill{background:var(--grad-violet)}.ws-card{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;padding:18px;transition:transform .22s cubic-bezier(.22,.61,.36,1),box-shadow .22s cubic-bezier(.22,.61,.36,1)}html.dark .ws-card{border-color:#ffffff0f}.ws-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.ws-card.full{grid-column:1/-1}.ws-card .ws-title{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.ws-card .ws-more{color:var(--primary);cursor:pointer;font-size:12px;font-weight:500;transition:transform .18s}.ws-card .ws-more:hover{transform:translate(2px)}.workspace-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.ws-tl-item{border-bottom:1px solid var(--border);gap:10px;padding:8px 0;display:flex}.ws-tl-item:last-child{border-bottom:none}.ws-tl-time{color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;width:40px;padding-top:2px;font-size:12px}.ws-tl-content{color:var(--text);font-size:13px}.ws-tl-content .tag{margin-left:6px}.ws-je{border-bottom:1px solid var(--border);cursor:pointer;border-radius:8px;gap:10px;padding:10px 0;transition:background .15s;display:flex}.ws-je:hover{background:#00000005}html.dark .ws-je:hover{background:#ffffff05}.ws-je:last-child{border-bottom:none}.ws-je .ws-je-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:flex}.ws-je .ws-je-body{flex:1;min-width:0}.ws-je .ws-je-body .ws-je-title{font-size:13px;font-weight:600}.ws-je .ws-je-body .ws-je-desc{color:var(--text-secondary);margin-top:1px;font-size:12px}.ws-je .ws-je-body .ws-je-meta{color:var(--text-muted);margin-top:2px;font-size:11px}.ws-cmt-item{border:1px solid var(--border);cursor:pointer;background:#ffffff8c;border-radius:10px;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}html.dark .ws-cmt-item{background:#ffffff0a}.ws-cmt-item:hover{border-color:#4f6ef73d;transform:translate(2px)}.ws-cmt-item:last-child{margin-bottom:0}.cmt-num{background:var(--grad-primary);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 3px 8px #4f6ef752}.cmt-text{color:var(--text);flex:1;font-size:14px}.cmt-text.done{color:var(--text-muted);text-decoration:line-through}.cmt-badge{letter-spacing:.3px;border-radius:999px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:600}.cmt-badge.done{background:var(--accent-light);color:var(--accent)}.cmt-badge.active{background:var(--primary-light);color:var(--primary)}.cmt-badge.deferred{color:#ff9f43;background:#fff3e8}.cmt-badge.abandoned{color:#ff4757;background:#ffe8e8}html.dark .cmt-badge.deferred{color:var(--secondary);background:#f5a86829}html.dark .cmt-badge.abandoned{color:var(--danger);background:#ff6b5c29}.today-cmt-section{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;margin-bottom:16px;padding:18px}html.dark .today-cmt-section{border-color:#ffffff0f}.review-bar{-webkit-backdrop-filter:blur(10px);background:radial-gradient(400px 200px at 100% 0,#34c7591a,#0000 60%),linear-gradient(135deg,#4f6ef71a,#34c75914);border:1px solid #4f6ef729;border-radius:14px;margin-bottom:12px;padding:12px 16px}html.dark .review-bar{background:radial-gradient(400px 200px at 100% 0,#4ade8024,#0000 60%),linear-gradient(135deg,#6d88f929,#4ade801a);border-color:#6d88f93d}.review-bar .rb-title{color:var(--primary);margin-bottom:6px;font-size:12px;font-weight:600}.review-bar .rb-item{color:var(--text);align-items:center;gap:6px;padding:2px 0;font-size:13px;display:flex}.review-bar .rb-item .rb-icon{font-size:14px}.review-bar .rb-empty{color:var(--text-muted);padding:4px 0;font-size:13px}.today-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.today-header .date-nav{align-items:center;gap:10px;display:flex}.today-header .date-nav button:not(.btn-today){border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);cursor:pointer;width:30px;height:30px;color:var(--text-secondary);background:#fff9;border-radius:50%;justify-content:center;align-items:center;font-size:14px;transition:all .18s;display:flex}.today-header .date-nav button:not(.btn-today):hover{color:var(--text);background:#fffffff2;transform:translateY(-1px)}html.dark .today-header .date-nav button:not(.btn-today){background:#ffffff0f}html.dark .today-header .date-nav button:not(.btn-today):hover{background:#ffffff1a}.today-header .date-label{color:var(--text);font-size:16px;font-weight:600}.today-header .date-label small{color:var(--text-secondary);margin-left:4px;font-size:12px;font-weight:400}.today-header .date-nav .btn-today{border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:#ffffffb3;border-radius:999px;margin-left:8px;padding:5px 14px;font-size:12px;font-weight:500;line-height:1.5;transition:all .18s}.today-header .date-nav .btn-today:hover{background:var(--grad-primary);color:#fff;border-color:#0000;transform:translateY(-1px)}html.dark .today-header .date-nav .btn-today{background:#ffffff0f}.today-grid{grid-template-rows:minmax(0,1fr);grid-template-columns:1fr 1fr;gap:16px;display:grid}.today-cmt-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.today-cmt-header .title{color:var(--text);align-items:center;gap:6px;font-size:14px;font-weight:700;display:flex}.today-cmt-header .progress{color:var(--text-muted);font-size:12px;font-weight:500}.today-cmt-empty{text-align:center;border:1.5px dashed var(--border-strong);background:#ffffff80;border-radius:14px;padding:20px 16px}html.dark .today-cmt-empty{background:#ffffff08}.today-cmt-empty .ec-icon{margin-bottom:6px;font-size:28px}.today-cmt-empty .ec-title{color:var(--text);font-size:15px;font-weight:600}.today-cmt-empty .ec-hint{color:var(--text-muted);margin-top:4px;font-size:12px}.today-cmt-empty .ec-input{gap:8px;max-width:400px;margin-top:12px;margin-left:auto;margin-right:auto;display:flex}.today-cmt-empty .ec-input input{border:1px solid var(--border-strong);background:var(--card-solid);color:var(--text);border-radius:10px;outline:none;flex:1;padding:8px 12px;font-family:inherit;font-size:14px;transition:border-color .15s}.today-cmt-empty .ec-input input:focus{border-color:var(--primary)}.today-cmt-empty .ec-input button{background:var(--grad-primary);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .15s;box-shadow:0 3px 10px #4f6ef747}.today-cmt-empty .ec-input button:hover{transform:translateY(-1px);box-shadow:0 5px 14px #4f6ef75c}.cmt-card{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;background:#faf8f6;align-items:center;gap:12px;margin-bottom:8px;padding:14px 16px;transition:all .15s;display:flex}html.dark .cmt-card{background:var(--card-solid)}.cmt-card:last-child{margin-bottom:0}.cmt-card:hover{border-color:var(--primary);background:#f5f3ff}.cmt-card.done{background:var(--accent-light);border-color:#b8e6c8}.cmt-card.deferred{background:#fff8f0;border-color:#ffe0b8}.cmt-card.abandoned{background:#fff0f0;border-color:#ffd0d0}.cmt-card .cmt-num-lg{color:var(--primary);text-align:center;flex-shrink:0;width:28px;font-size:18px;font-weight:700}.cmt-card .cmt-body{flex:1}.cmt-card .cmt-body .cmt-text-lg{color:var(--text);font-size:15px;font-weight:600}.cmt-card .cmt-body .cmt-text-lg.done{color:var(--text-muted);text-decoration:line-through}.cmt-card .cmt-body .cmt-note{color:var(--text-secondary);margin-top:2px;font-size:12px}.cmt-card .cmt-body .cmt-closure-reason{color:var(--text-muted);border-left:2px solid var(--border);margin-top:4px;padding-left:8px;font-size:12px;line-height:1.5}.cmt-card .cmt-status{border-radius:12px;flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.cmt-card .cmt-status.active{background:var(--primary-light);color:var(--primary)}.cmt-card .cmt-status.done{background:var(--accent-light);color:var(--accent)}.cmt-card .cmt-status.deferred{color:#ff9f43;background:#fff3e8}.cmt-card .cmt-status.abandoned{color:#ff4757;background:#ffe8e8}.dropdown-menu{background:var(--card-solid);border:1px solid var(--border);z-index:20;border-radius:10px;min-width:144px;margin-top:4px;padding:4px;animation:.12s ease-out dropIn;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 8px 28px #00000024}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-family:inherit;font-size:13px;font-weight:500;transition:background .12s;display:flex}.dropdown-item:hover{background:#0000000d}html.dark .dropdown-item:hover{background:#ffffff14}.dropdown-item.danger{color:var(--danger)}.dropdown-item.danger:hover{background:#e74c3c14}html.dark .dropdown-item.danger:hover{background:#ff6b5c26}.dropdown-btn{cursor:pointer;width:26px;height:26px;color:var(--text-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-family:inherit;font-size:16px;line-height:1;transition:background .12s,color .12s;display:flex}.dropdown-btn:hover{color:var(--text);background:#0000000f}html.dark .dropdown-btn:hover{background:#ffffff1a}.taskbox{margin-top:12px}.taskbox::-webkit-scrollbar{appearance:none;width:6px}.taskbox::-webkit-scrollbar-track{appearance:none;box-shadow:none;background:0 0;border:0}.taskbox::-webkit-scrollbar-track-piece{appearance:none;box-shadow:none;background:0 0;border:0}.taskbox::-webkit-scrollbar-thumb{appearance:none;background:var(--border-strong);box-shadow:none;border:0;border-radius:3px}.taskbox{scrollbar-color:var(--border-strong) transparent;scrollbar-width:thin}.taskbox .tb-item{border-top:1px solid var(--border);cursor:pointer;align-items:center;gap:8px;padding:8px 0;display:flex}.taskbox .tb-item:first-child{border-top:none}.taskbox .tb-item .tb-check{border:2px solid var(--border);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;display:flex}.taskbox .tb-item .tb-check.done{background:var(--accent);border-color:var(--accent);color:#fff}.taskbox .tb-item .tb-text{flex:1;font-size:13px}.taskbox .tb-item .tb-text.done{color:var(--text-muted);text-decoration:line-through}.memo-list::-webkit-scrollbar{appearance:none;width:6px}.memo-list::-webkit-scrollbar-track{appearance:none;box-shadow:none;background:0 0;border:0}.memo-list::-webkit-scrollbar-track-piece{appearance:none;box-shadow:none;background:0 0;border:0}.memo-list::-webkit-scrollbar-thumb{appearance:none;background:var(--border-strong);box-shadow:none;border:0;border-radius:3px}.memo-list{scrollbar-color:var(--border-strong) transparent;scrollbar-width:thin}.happy-card{border-radius:var(--radius);cursor:pointer;background:linear-gradient(135deg,#fff9f0 0%,#fff3e8 100%);border:1px solid #ffe8d0;margin-top:0;padding:14px 16px}.happy-card .happy-title{color:#b87a3e;margin-bottom:4px;font-size:11px;font-weight:600}.happy-card .happy-body{color:var(--text);font-size:13px;line-height:1.5}.happy-card .happy-empty{color:var(--text-muted);font-style:italic}.happy-card .happy-meta{color:var(--text-muted);margin-top:4px;font-size:11px}.sch-fixed-header{flex-shrink:0;padding:12px 28px 0;overflow:hidden}@media (max-width:900px){.sch-fixed-header{padding:8px 14px 0}}.sch-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.sch-header .wr{color:var(--text);font-size:14px;font-weight:600}.sch-header-right{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.sch-header .nav{gap:8px;display:flex}.sch-header .nav button{cursor:pointer;width:34px;height:34px;color:var(--text-secondary);border:1px solid var(--border);background:#ffffff80;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:16px;transition:all .18s;display:inline-flex}.sch-header .nav button:hover{color:var(--text);background:#ffffffe6;transform:translateY(-1px)}html.dark .sch-header .nav button{background:#ffffff0a}html.dark .sch-header .nav button:hover{background:#ffffff14}.sch-action-btn{white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:500;line-height:1.5}.wdays{gap:4px;margin-bottom:16px;display:flex}.wday{text-align:center;cursor:pointer;background:#fff6;border:1px solid #0000;border-radius:12px;flex:1;padding:10px 0;transition:all .18s cubic-bezier(.22,.61,.36,1)}html.dark .wday{background:#ffffff08}.wday:hover{background:#ffffffb3}html.dark .wday:hover{background:#ffffff0f}.wday .dow{color:var(--text-muted);font-size:11px;font-weight:500}.wday .dom{color:var(--text);margin-top:2px;font-size:16px;font-weight:600}.wday.active{background:var(--grad-primary);box-shadow:0 4px 12px #4f6ef752}.wday.active .dow,.wday.active .dom{color:#fff}.wday.today .dom{color:var(--primary)}.wday.active.today .dom{color:#fff}.shr{border-top:1px solid var(--border);gap:12px;min-height:40px;padding:4px 0;display:flex;position:relative}.shr .hl{width:40px;color:var(--text-muted);text-align:right;flex-shrink:0;padding-top:4px;font-size:11px;font-weight:500}.shr .hc{border-left:1.5px solid var(--border);flex:1;padding-left:10px}.shr-add-btn{opacity:0;border:1px dashed var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;margin-left:auto;padding:3px 10px;font-family:inherit;font-size:11px;transition:opacity .15s,background .15s}.shr-empty:hover .shr-add-btn{opacity:1}.shr-add-btn:hover{background:var(--card);color:var(--primary);border-color:var(--primary)}.shr-now{background:var(--primary);z-index:2;pointer-events:none;height:2px;left:40px;right:0;top:calc(4px + (var(--now-min,0) / 60) * (100% - 8px));border-radius:1px;position:absolute}.shr-now:before{content:"";background:var(--primary);border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-8px}.evb{background:var(--primary-light);border-left:3px solid var(--primary);color:var(--text);border-radius:6px;margin:2px 0;padding:6px 10px;font-size:13px}.evb .evt{color:var(--text-secondary);font-size:10px;font-weight:500}.evb.orange{background:var(--secondary-light);border-left-color:var(--secondary)}.evb.green{background:var(--accent-light);border-left-color:var(--accent)}.evb-todo{background:var(--card-solid);border:1px dashed var(--border-strong)}.evb-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.evb-check{border:1.5px solid var(--secondary);color:#0000;cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-family:inherit;font-size:10px;line-height:1;transition:background .12s,color .12s;display:inline-flex}.evb-check:hover{background:var(--secondary);color:#fff}.evb-cat{font-size:11px;line-height:1}.evb-title{overflow-wrap:anywhere}.j-filters{gap:6px;margin-bottom:16px;display:flex}.j-filters .fc{color:var(--text-secondary);background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:20px;padding:4px 14px;font-size:12px;font-weight:500;transition:all .15s}.j-filters .fc.active{background:var(--primary);color:#fff;border-color:var(--primary)}.heatmap-scroll{scrollbar-width:none;scroll-behavior:smooth}.heatmap-scroll::-webkit-scrollbar{display:none}@media (min-width:901px){.heatmap-scroll{justify-content:center}.heatmap-scroll>div:last-child{flex:none!important}}.je{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;margin-bottom:10px;padding:16px}.je .jeh{align-items:center;gap:8px;margin-bottom:6px;display:flex}.je .jeh .jei{border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;display:flex}.je .jeh .jetype{color:var(--text-muted);font-size:11px;font-weight:500}.je .jeh .jedate{color:var(--text-muted);margin-left:auto;font-size:11px}.je .jeh .jedate .jedtime{color:var(--text-secondary);margin-left:4px;font-weight:500}.je .jet{color:var(--text);margin-bottom:4px;font-size:15px;font-weight:600}.je .jeb{color:var(--text-secondary);font-size:13px;line-height:1.6}.je .jep{gap:4px;margin-top:8px;display:flex}.je .jep .pt{border-radius:8px;justify-content:center;align-items:center;width:56px;height:56px;font-size:20px;display:flex}.je .jef{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.je .jef .tag{color:var(--primary);background:#4f6ef71a;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:500}html.dark .je .jef .tag{color:var(--primary);background:#6d88f924}.profile-grid{flex-direction:column;gap:16px;display:flex}.pcard{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;padding:24px}html.dark .pcard{border-color:#ffffff0f}.pcard .av{background:var(--grad-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 12px;font-size:30px;display:flex;box-shadow:0 6px 18px #4f6ef74d}.pcard h3{font-size:18px;font-weight:700}.pcard p{color:var(--text-secondary);margin-top:4px;font-size:13px}.pcard-banner{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;align-items:center;gap:16px;padding:20px 24px;display:flex}html.dark .pcard-banner{border-color:#ffffff0f}.pcard-av-wrap{background:var(--grad-primary);color:#fff;cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden;box-shadow:0 4px 12px #4f6ef747}.pcard-av-img{object-fit:cover;width:100%;height:100%}.pcard-av-fallback{font-size:24px;font-weight:700}.pcard-info{flex:1;min-width:0}.pcard-info h3{color:var(--text);font-size:18px;font-weight:700}.pcard-info p{color:var(--text-secondary);margin-top:4px;font-size:12px}.pcard-edit{flex-shrink:0;padding:6px 14px!important;font-size:12px!important}.sg{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.sc{background:var(--card);-webkit-backdrop-filter:blur(14px);text-align:center;box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;border-radius:14px;padding:16px;transition:transform .22s,box-shadow .22s}html.dark .sc{border-color:#ffffff0f}.sc:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.sc .sn{background:var(--grad-primary);color:#0000;letter-spacing:-.4px;-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:700}.sc .sl{color:var(--text-secondary);margin-top:2px;font-size:11px}.pm{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;overflow:hidden}html.dark .pm{border-color:#ffffff0f}.pm .mi{border-bottom:1px solid var(--border);cursor:pointer;color:var(--text);align-items:center;gap:12px;padding:14px 16px;font-size:14px;transition:background .15s;display:flex}html.dark .pm .mi:hover{background:#6d88f91a}.pm .mi:last-child{border-bottom:none}.pm .mi:hover{background:#faf8f6}.pm .mi .mii{font-size:18px}.pm .mi .mia{color:var(--text-muted);margin-left:auto;font-size:14px}.diet-tabs{-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#ffffff80;border-radius:12px;gap:4px;margin-bottom:16px;padding:4px;display:flex}.diet-tabs .dt{text-align:center;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 0;font-size:12px;font-weight:500;transition:all .18s cubic-bezier(.22,.61,.36,1)}.diet-tabs .dt:hover{color:var(--text)}.diet-tabs .dt.active{background:var(--grad-primary);color:#fff;box-shadow:0 4px 12px #4f6ef747}.upload-area{-webkit-backdrop-filter:blur(12px);border:2px dashed var(--border-strong);border-radius:var(--radius);text-align:center;cursor:pointer;background:#fff9;margin-bottom:16px;padding:32px;transition:all .22s cubic-bezier(.22,.61,.36,1)}html.dark .upload-area{background:#ffffff0a}.upload-area:hover{border-color:var(--primary);background:#4f6ef70f;transform:translateY(-1px)}.upload-area .ua-icon{margin-bottom:8px;font-size:36px}.upload-area .ua-text{color:var(--text);font-size:15px;font-weight:600}.upload-area .ua-sub{color:var(--text-muted);margin-top:4px;font-size:12px}.today-meals{background:var(--card);-webkit-backdrop-filter:blur(14px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;padding:16px}html.dark .today-meals{border-color:#ffffff0f}.tm-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.tm-item:last-child{border-bottom:none}.tm-item .tm-time{color:var(--text-muted);flex-shrink:0;width:40px;font-size:11px}.tm-item .tm-date{min-width:84px;color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:11px}.tm-item .tm-badge{color:var(--accent);background:var(--accent-light);border-radius:10px;margin-left:auto;padding:2px 8px;font-size:10px}.tm-empty{text-align:center;color:var(--text-muted);padding:16px;font-size:13px}.fridge-header{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.fridge-cat{background:var(--card);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;border-radius:14px;margin-bottom:8px;padding:12px 14px}html.dark .fridge-cat{border-color:#ffffff0f}.fc-title{color:var(--text);align-items:center;gap:6px;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.fc-count{color:var(--text-muted);font-size:11px;font-weight:400}.fc-items{flex-wrap:wrap;gap:6px;display:flex}.fi{color:var(--text);background:#4f6ef714;border:1px solid #4f6ef724;border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.recipe-summary{background:var(--card);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid #ffffffb3;margin-bottom:12px;padding:14px}html.dark .recipe-summary{border-color:#ffffff0f}.recipe-summary .rs-text{color:var(--text);font-size:13px}.recipe-summary .rs-bar{background:#00000014;border-radius:3px;height:6px;margin-top:8px;overflow:hidden}html.dark .recipe-summary .rs-bar{background:#ffffff14}.recipe-summary .rs-fill{background:var(--grad-primary);border-radius:3px;height:100%;box-shadow:0 0 8px #4f6ef766}.recipe-tabs{gap:6px;margin-bottom:10px;display:flex}.recipe-tabs .rt{color:var(--text-secondary);cursor:pointer;border:1px solid var(--border);background:#ffffff8c;border-radius:999px;padding:5px 14px;font-size:12px;font-weight:500;transition:all .18s}.recipe-tabs .rt:hover{color:var(--text)}.recipe-tabs .rt.active{background:var(--grad-primary);color:#fff;border-color:#0000;box-shadow:0 3px 10px #4f6ef747}.recipe-card{background:var(--card);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);cursor:pointer;border:1px solid #ffffffb3;border-radius:14px;align-items:center;gap:12px;margin-bottom:8px;padding:12px;transition:transform .22s,box-shadow .22s;display:flex}html.dark .recipe-card{border-color:#ffffff0f}.recipe-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.recipe-card .rc-icon{background:var(--primary-light);width:40px;height:40px;color:var(--primary);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.recipe-card .rc-body{flex:1;min-width:0}.recipe-card .rc-title{color:var(--text);font-size:14px;font-weight:600}.recipe-card .rc-meta{color:var(--text-muted);margin-top:2px;font-size:11px}.recipe-card .rc-tags{margin-top:4px}.recipe-card .rc-action{color:#fff;background:var(--grad-primary);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;padding:6px 14px;font-size:11px;font-weight:600;transition:transform .15s;box-shadow:0 3px 8px #4f6ef747}.recipe-card .rc-action:hover{transform:translateY(-1px)}.ai-gen{background:var(--card);border-radius:var(--radius);padding:16px}.ai-gen .ai-gen-text{color:var(--text-secondary);margin-bottom:10px;font-size:13px}.ai-gen-input{gap:8px;display:flex}.shopping-header{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.sh-count{color:var(--secondary);font-size:12px;font-weight:500}.sh-cat{background:var(--card);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);margin-bottom:8px;padding:12px 14px}.sh-item{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 0;font-size:13px;display:flex}.sh-item:last-child{border-bottom:none}.sh-item .sh-check{border:2px solid var(--border);cursor:pointer;border-radius:4px;flex-shrink:0;width:16px;height:16px}.sh-item .sh-qty{color:var(--text-muted);font-size:11px}.sh-item .sh-source{color:var(--primary);margin-left:auto;font-size:10px}.report-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.report-header .report-score{color:var(--secondary);background:var(--secondary-light);border-radius:10px;padding:3px 10px;font-size:13px;font-weight:600}.report-categories{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:14px}.rpc{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:7px 0;font-size:13px;display:flex}.rpc:last-child{border-bottom:none}.rpc .rpc-icon{width:24px;font-size:16px}.rpc .rpc-bar{background:var(--border);border-radius:3px;flex:1;height:6px}.rpc .rpc-fill{border-radius:3px;height:100%}.rpc .rpc-num{color:var(--text-muted);text-align:right;width:50px;font-size:11px}.report-suggestion{background:var(--primary-light);border-radius:var(--radius-sm);color:var(--text);align-items:center;gap:8px;padding:12px 14px;font-size:13px;display:flex}.report-suggestion .rs-icon{font-size:18px}.empty{text-align:center;color:var(--text-muted);padding:40px 20px}.empty .eicon{margin-bottom:8px;font-size:32px}html.dark .tag-p0{color:#ff6b78;background:#3b1f23}html.dark .tag-p1{color:#f5b171;background:#3a2e1e}html.dark .tag-p2{color:var(--text-muted);background:#2a2c33}html.dark .btn-ghost:not(:disabled):hover{background:#2a2c33}html.dark input,html.dark textarea,html.dark select{background:var(--card);color:var(--text);border-color:var(--border)}html.dark input::placeholder,html.dark textarea::placeholder{color:var(--text-muted)}html.dark .cmt-card:hover{background:var(--primary-light)}html.dark .cmt-card.done{background:var(--accent-light);border-color:#4ade804d}html.dark .cmt-card.deferred{background:#f5a8681f;border-color:#f5a86859}html.dark .cmt-card.abandoned{background:#ff6b5c1f;border-color:#ff6b5c52}html.dark .cmt-card .cmt-status.deferred{color:var(--secondary);background:#f5a86829}html.dark .cmt-card .cmt-status.abandoned{color:var(--danger);background:#ff6b5c29}html.dark .happy-card{background:linear-gradient(135deg, var(--secondary-light), #f5a86814);border-color:var(--border);color:var(--secondary)}html.dark .je,html.dark .jef{background:var(--card);border-color:var(--border)}html.dark .je .tag{background:var(--border);color:var(--text-secondary)}html.dark .diet-tabs{background:#ffffff0a}html.dark .diet-tabs .dt{color:var(--text-secondary)}html.dark .diet-tabs .dt.active{background:var(--grad-primary);color:#fff}html.dark .fi{background:var(--sidebar-active);color:var(--text);border-color:var(--border)}html.dark .recipe-tabs .rt{color:var(--text-secondary);background:#ffffff0f}html.dark .recipe-tabs .rt.active{background:var(--primary-light);color:var(--primary)}html.dark .rc-icon,html.dark .mi:hover{background:var(--sidebar-active)}html.dark .app-container{border-color:#ffffff0d}@media (max-width:900px){body{height:100dvh;min-height:100dvh;padding:0}.app-container{width:100%;height:100dvh;max-height:none;box-shadow:none;border:none;border-radius:0;flex-direction:column}*{-webkit-tap-highlight-color:transparent}button,a,.card{-webkit-user-select:none;user-select:none}input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}input,select,textarea{font-size:16px!important}.main{flex:1;min-height:0;overflow:hidden}.main-header{min-height:calc(60px + env(safe-area-inset-top));padding:12px 16px 10px;padding-top:max(12px, env(safe-area-inset-top));background:var(--bg);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.main-header{background:color-mix(in srgb, var(--bg) 82%, transparent)}}.main-header{-webkit-backdrop-filter:saturate(160%)blur(18px);border-bottom:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.main-header{border-bottom:1px solid color-mix(in srgb, var(--border) 72%, transparent)}}.main-header{z-index:30}.main-header h1{min-width:0;font-size:20px;line-height:1.2}.main-header h1 .subtitle{text-overflow:ellipsis;white-space:nowrap;max-width:min(64vw,360px);margin-top:4px;overflow:hidden}.main-header .actions{flex-shrink:0}.main-header .actions button{border-radius:14px;justify-content:center;width:44px;height:44px;padding:0;font-size:13px}.hide-on-mobile{display:none!important}.scroll-area{padding:10px 14px 96px;padding-bottom:calc(96px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(112px + env(safe-area-inset-bottom));overscroll-behavior-y:contain}.card{box-shadow:0 8px 24px var(--text);border-radius:18px;padding:15px}@supports (color:color-mix(in lab, red, red)){.card{box-shadow:0 8px 24px color-mix(in srgb, var(--text) 5%, transparent)}}.card-title{margin-bottom:10px}.btn-primary,.btn-ghost{min-height:44px}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{background:var(--card-solid);min-height:44px;border-radius:12px!important}textarea{min-height:96px}.workspace-grid,.today-grid,.profile-grid{grid-template-columns:1fr!important;gap:10px!important}.today-grid{flex:none!important;grid-template-rows:auto!important}.today-grid>.card{min-height:300px!important}.card:hover,.ws-card:hover,.ws-stat:hover{transform:none}.ws-stat-row{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid!important}.diet-tabs{white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity;border-radius:14px;padding:3px;position:relative;overflow-x:auto}.diet-tabs::-webkit-scrollbar{display:none}.diet-tabs .dt{scroll-snap-align:start;flex:none;min-width:72px;min-height:44px;padding-inline:12px}.ws-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.ws-stat{min-width:0;padding:13px 14px}.today-header .date-nav button:not(.btn-today),.sch-header .nav button{width:44px;min-width:44px;height:44px}.today-header .date-nav .btn-today,.j-filters .fc,.theme-option-button,.heatmap-clear-button,.sch-view-tab{min-height:44px}.sch-header{flex-wrap:wrap;gap:8px;margin-bottom:12px}.sch-action-btn,.sch-view-tabs{min-height:44px}.sch-view-tab{min-width:44px}.shr{min-height:52px}.shr-add-btn{opacity:1;min-width:76px;min-height:44px}.j-filters{scrollbar-width:none;scroll-snap-type:x proximity;padding-bottom:2px;overflow-x:auto}.j-filters::-webkit-scrollbar{display:none}.j-filters .fc{scroll-snap-align:start;flex:none}.cloud-config-code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;overflow-x:auto}.touch-chip{min-height:44px}}.schedule-week-content{flex-direction:column;min-height:0;padding:4px 28px 28px;display:flex;overflow:hidden}.schedule-week-content>.card{flex:1;min-height:0;height:auto!important}.schedule-timeline-scroll{scrollbar-width:thin;overscroll-behavior-y:contain;flex:1;min-height:0;padding:6px 16px 14px;overflow-y:auto}.schedule-timeline-scroll::-webkit-scrollbar{width:4px}.schedule-timeline-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.schedule-week-content .schedule-import-actions{flex-shrink:0}.schedule-week-content .schedule-saved-list{flex-shrink:0;max-height:150px;overflow-y:auto}.game-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.row-delete-button{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:0 0 32px;justify-content:center;align-items:center;padding:0;display:inline-flex}.row-delete-button:hover{color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.row-delete-button:hover{background:color-mix(in srgb, var(--danger) 9%, transparent)}}.mobile-tabbar{left:max(10px,50vw - 260px);right:max(10px,50vw - 260px);bottom:calc(10px + env(safe-area-inset-bottom));z-index:100;background:var(--card);border-radius:24px;grid-template-columns:1fr 1fr auto 1fr 1fr;align-items:center;height:66px;padding:6px 8px;display:none;position:fixed}@supports (color:color-mix(in lab, red, red)){.mobile-tabbar{background:color-mix(in oklab, var(--card) 84%, transparent)}}.mobile-tabbar{-webkit-backdrop-filter:saturate(180%)blur(20px);border:1px solid var(--border);animation:.26s cubic-bezier(.22,.61,.36,1) both tabbar-rise;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f}html.dark .mobile-tabbar{background:var(--card)}@supports (color:color-mix(in lab, red, red)){html.dark .mobile-tabbar{background:color-mix(in oklab, var(--card) 68%, transparent)}}html.dark .mobile-tabbar{box-shadow:0 8px 32px #00000080,0 2px 8px #0000004d}@media (max-width:900px){.sidebar{display:none}.mobile-tabbar{display:grid}}@keyframes tabbar-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mtab{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:50px;padding:6px 4px;font-size:11px;font-weight:500;transition:color .15s,transform .15s cubic-bezier(.22,.61,.36,1);display:flex;position:relative}.mtab:active{transform:scale(.92)}.mtab-icon{font-size:20px;line-height:1}.mtab-label{line-height:1}.mtab.active{color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.mtab.active{background:color-mix(in srgb, var(--primary) 10%, transparent)}}.mtab.active{font-weight:650}.mtab.active .mtab-icon{transform:translateY(-1px)scale(1.08)}.mtab.active:after{content:"";background:var(--primary);width:4px;height:4px;box-shadow:0 0 8px var(--primary);border-radius:50%;position:absolute;bottom:3px}@supports (color:color-mix(in lab, red, red)){.mtab.active:after{box-shadow:0 0 8px color-mix(in srgb, var(--primary) 60%, transparent)}}.mtab-fab{cursor:pointer;background:linear-gradient(135deg, var(--primary), var(--primary));border:none;border-radius:50%;width:52px;height:52px}@supports (color:color-mix(in lab, red, red)){.mtab-fab{background:linear-gradient(135deg, var(--primary), color-mix(in oklab, var(--primary) 78%, #000 22%))}}.mtab-fab{color:#fff;box-shadow:0 6px 16px var(--primary), 0 2px 4px #0000001f;justify-content:center;align-items:center;font-size:28px;font-weight:300;line-height:1;display:flex}@supports (color:color-mix(in lab, red, red)){.mtab-fab{box-shadow:0 6px 16px color-mix(in oklab, var(--primary) 45%, transparent), 0 2px 4px #0000001f}}.mtab-fab{justify-self:center;transition:transform .18s cubic-bezier(.22,.61,.36,1),box-shadow .18s;transform:translateY(-14px)}.mtab-fab:active{box-shadow:0 4px 10px var(--primary), 0 1px 2px #0000001f;transform:translateY(-14px)scale(.92)}@supports (color:color-mix(in lab, red, red)){.mtab-fab:active{box-shadow:0 4px 10px color-mix(in oklab, var(--primary) 40%, transparent), 0 1px 2px #0000001f}}.mtab-fab span{margin-top:-2px}.more-features{display:none}@media (max-width:900px){.more-features{display:block}}.more-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.more-item{border:1px solid var(--border);grid-template-columns:32px 1fr auto;align-items:center;gap:12px;padding:13px 12px;display:grid}@supports (color:color-mix(in lab, red, red)){.more-item{border:1px solid color-mix(in srgb, var(--border) 88%, transparent)}}.more-item{background:var(--card-solid)}@supports (color:color-mix(in lab, red, red)){.more-item{background:color-mix(in srgb, var(--card-solid) 72%, transparent)}}.more-item{cursor:pointer;text-align:left;border-radius:14px;min-height:56px;transition:background .15s}.more-item:active{background:var(--sidebar-active);transform:scale(.99)}.more-icon{text-align:center;font-size:22px}.more-body{flex-direction:column;gap:2px;min-width:0;display:flex}.more-label{color:var(--text);font-size:14px;font-weight:600}.more-desc{color:var(--text-muted);font-size:12px}.more-arrow{color:var(--text-muted);font-size:20px;line-height:1}@media (max-width:480px){.main-header h1{font-size:19px!important}.main-header{padding-left:12px;padding-right:12px}.scroll-area{padding:8px 12px calc(96px + env(safe-area-inset-bottom))}.nav-item{min-width:52px}.mobile-tabbar{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom))}.mtab-label{font-size:10px}.mtab-icon{font-size:19px}.mtab-fab{width:50px;height:50px}}.empty .etext{color:var(--text-secondary);margin-bottom:4px;font-size:14px}:where(button,a[href],[role=button],input[type=button],input[type=submit]){-webkit-tap-highlight-color:transparent}:where(button,a[href],[role=button],input[type=button],input[type=submit])[data-press-feedback=true]{filter:brightness(.97)saturate(1.04);transition:scale 70ms ease-out,filter 70ms ease-out;scale:.965}:where(button,a[href],[role=button],input[type=button],input[type=submit])[data-activate-feedback=true]{animation:.36s cubic-bezier(.22,.61,.36,1) interaction-confirm}:where(button,[role=button])[aria-busy=true]{cursor:progress}.button-busy-spinner,:where(.btn-primary,.btn-ghost)[aria-busy=true]:before{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.72s linear infinite loading-spin;display:inline-block}:where(.btn-primary,.btn-ghost)[aria-busy=true]{justify-content:center;align-items:center;gap:7px;display:inline-flex}.interaction-feedback-layer{z-index:3500;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:fixed;inset:0}.network-feedback,.slow-action-feedback{text-align:center;-webkit-backdrop-filter:blur(18px)saturate(150%);border-radius:999px;justify-content:center;align-items:center;gap:8px;max-width:min(92vw,520px);min-height:40px;padding:9px 15px;font-size:12px;font-weight:600;line-height:1.4;animation:.22s cubic-bezier(.22,.61,.36,1) both feedback-pill-in;display:inline-flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #12141c2e}.network-feedback{top:calc(12px + env(safe-area-inset-top));color:#fff}.network-feedback.offline{background:#be4334f0}.network-feedback.restored{background:#23914ef0}.network-feedback-dot{background:currentColor;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #ffffff2e}.slow-action-feedback{color:var(--text);background:var(--card-solid);bottom:28px}@supports (color:color-mix(in lab, red, red)){.slow-action-feedback{background:color-mix(in srgb, var(--card-solid) 90%, transparent)}}.slow-action-feedback{border:1px solid var(--border-strong)}.slow-action-feedback .button-busy-spinner{color:var(--primary)}.toast-stack{z-index:3600;pointer-events:none;flex-direction:column;align-items:stretch;gap:8px;width:min(420px,100vw - 24px);display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast-item{color:#fff;pointer-events:auto;overflow-wrap:anywhere;border-radius:12px;padding:10px 18px;font-size:13px;line-height:1.5;animation:.24s ease-out toast-in;box-shadow:0 8px 24px #0000002e}.toast-item.info{background:#1a1a2e}.toast-item.success{background:#238f4e}.toast-item.error{background:#c74838}@keyframes interaction-confirm{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--primary) 32%, transparent)}45%{box-shadow:0 0 0 5px color-mix(in srgb, var(--primary) 12%, transparent)}to{box-shadow:0 0 #0000}}@keyframes feedback-pill-in{0%{opacity:0;transform:translate(-50%,8px)scale(.98)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.network-feedback{top:calc(72px + env(safe-area-inset-top))}.toast-stack,.slow-action-feedback{bottom:calc(92px + env(safe-area-inset-bottom))}.toast-item{text-align:center}}.main{animation:.28s cubic-bezier(.22,.61,.36,1) page-fade-in}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.route-progress{z-index:9999;background:linear-gradient(90deg, transparent, var(--primary) 30%, var(--primary) 50%, var(--primary) 70%, transparent);height:2px;position:fixed;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.route-progress{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--primary) 55%, transparent) 30%, var(--primary) 50%, color-mix(in srgb, var(--primary) 55%, transparent) 70%, transparent)}}.route-progress{box-shadow:0 0 6px var(--primary), 0 0 14px var(--primary);background-size:200% 100%}@supports (color:color-mix(in lab, red, red)){.route-progress{box-shadow:0 0 6px color-mix(in srgb, var(--primary) 55%, transparent), 0 0 14px color-mix(in srgb, var(--primary) 30%, transparent)}}.route-progress{pointer-events:none;animation:1.1s cubic-bezier(.4,0,.2,1) infinite route-progress-slide,.22s ease-out both route-progress-fadein}@keyframes route-progress-slide{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes route-progress-fadein{0%{opacity:0}to{opacity:1}}.loading-block{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 20px;animation:.26s cubic-bezier(.22,.61,.36,1) both loading-fade-in;display:flex}.loading-orb{justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.loading-orb-icon{filter:drop-shadow(0 2px 6px var(--primary));font-size:30px;line-height:1;animation:1.6s ease-in-out infinite loading-breathe}@supports (color:color-mix(in lab, red, red)){.loading-orb-icon{filter:drop-shadow(0 2px 6px color-mix(in srgb, var(--primary) 35%, transparent))}}.loading-orb-ring{border:2px solid var(--primary);border-radius:50%;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.loading-orb-ring{border:2px solid color-mix(in srgb, var(--primary) 45%, transparent)}}.loading-orb-ring{border-top-color:#0000;border-right-color:#0000;animation:1.2s linear infinite loading-spin}.loading-block-text{color:var(--text-secondary);letter-spacing:.5px;font-size:13px;animation:1.8s ease-in-out infinite loading-text-breathe}.loading-inline{color:var(--text-muted);vertical-align:middle;align-items:center;gap:6px;font-size:12px;display:inline-flex}.loading-inline .loading-dot{background:var(--primary);opacity:.35;border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite loading-dot-bounce}.loading-inline .loading-dot:nth-child(2){animation-delay:.16s}.loading-inline .loading-dot:nth-child(3){animation-delay:.32s}.loading-inline .loading-text{margin-left:4px}@keyframes loading-breathe{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-text-breathe{0%,to{opacity:.55}50%{opacity:1}}@keyframes loading-dot-bounce{0%,80%,to{opacity:.35;transform:translateY(0)scale(.9)}40%{opacity:1;transform:translateY(-4px)scale(1)}}@keyframes loading-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.skeleton{background:linear-gradient(90deg, var(--text) 0%, var(--text) 40%, var(--text) 50%, var(--text) 60%, var(--text) 100%);display:inline-block}@supports (color:color-mix(in lab, red, red)){.skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--text) 6%, transparent) 0%, color-mix(in srgb, var(--text) 14%, transparent) 40%, color-mix(in srgb, var(--text) 22%, transparent) 50%, color-mix(in srgb, var(--text) 14%, transparent) 60%, color-mix(in srgb, var(--text) 6%, transparent) 100%)}}.skeleton{vertical-align:middle;background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-shimmer}html.dark .skeleton{background:linear-gradient(90deg, var(--text) 0%, var(--text) 40%, var(--text) 50%, var(--text) 60%, var(--text) 100%)}@supports (color:color-mix(in lab, red, red)){html.dark .skeleton{background:linear-gradient(90deg, color-mix(in srgb, var(--text) 10%, transparent) 0%, color-mix(in srgb, var(--text) 20%, transparent) 40%, color-mix(in srgb, var(--text) 30%, transparent) 50%, color-mix(in srgb, var(--text) 20%, transparent) 60%, color-mix(in srgb, var(--text) 10%, transparent) 100%)}}html.dark .skeleton{background-size:200% 100%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-list{flex-direction:column;gap:12px;padding:12px 0;display:flex}.skeleton-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;padding:14px 16px;animation:.36s cubic-bezier(.22,.61,.36,1) both skeleton-card-rise;display:flex}.skeleton-card-header{align-items:center;gap:12px;display:flex}.skeleton-card-header-lines{flex-direction:column;flex:1;gap:6px;display:flex}.skeleton-card-body{flex-direction:column;gap:8px;display:flex}@keyframes skeleton-card-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.main .card{animation:.32s cubic-bezier(.22,.61,.36,1) backwards card-rise}.main .card:first-child{animation-delay:20ms}.main .card:nth-child(2){animation-delay:60ms}.main .card:nth-child(3){animation-delay:.1s}.main .card:nth-child(4){animation-delay:.14s}.main .card:nth-child(5){animation-delay:.18s}.main .card:nth-child(n+6){animation-delay:.2s}@keyframes card-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.nav-item:hover{transform:translate(2px)}.nav-item.active .nav-icon{transform:scale(1.08)}.nav-item,.nav-item .nav-icon{transition:background .15s,color .15s,transform .15s cubic-bezier(.22,.61,.36,1)}.app-modal-overlay{-webkit-backdrop-filter:blur(6px)}.app-modal-card{border:1px solid var(--border)}@supports (color:color-mix(in lab, red, red)){.app-modal-card{border:1px solid color-mix(in srgb, var(--border) 88%, transparent)}}.app-modal-card{box-shadow:0 24px 72px #12141c3d!important}@keyframes sheet-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.app-modal-overlay{align-items:flex-end!important;padding:0!important}.app-modal-card{overscroll-behavior:contain;position:relative;width:100%!important;max-width:none!important;max-height:calc(92dvh - env(safe-area-inset-top))!important;padding:20px 16px calc(20px + env(safe-area-inset-bottom))!important;border-width:1px 0 0!important;border-radius:24px 24px 0 0!important;margin:0!important;animation:.24s cubic-bezier(.22,.61,.36,1) both sheet-up!important;overflow-y:auto!important}.app-modal-card:before{content:"";background:var(--text-muted);border-radius:999px;width:38px;height:4px;margin:-8px auto 14px;display:block}@supports (color:color-mix(in lab, red, red)){.app-modal-card:before{background:color-mix(in srgb, var(--text-muted) 35%, transparent)}}}.cloud-config-code{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;color:var(--text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow-x:auto}@media (max-width:900px){.mobile-grid-1{grid-template-columns:minmax(0,1fr)!important}.mobile-grid-2,.year-month-grid,.create-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (max-width:380px){.couple-profile-card{grid-template-columns:72px minmax(0,1fr);gap:12px!important;display:grid!important}.couple-profile-avatar{border-radius:18px!important;width:72px!important;height:72px!important;font-size:44px!important}.couple-profile-main{min-width:0}.couple-profile-action{grid-column:1/-1;width:100%}}@media (max-width:900px){.global-search-overlay{padding:calc(10px + env(safe-area-inset-top)) 8px 8px!important;align-items:flex-start!important}.global-search-panel{width:100%!important;max-width:none!important;max-height:calc(88dvh - env(safe-area-inset-top))!important;border-radius:20px!important;box-shadow:0 18px 60px #12141c47!important}.global-search-close{display:inline-flex}.global-search-footer span:last-child{display:none}.schedule-week-content{padding:8px 12px calc(96px + env(safe-area-inset-bottom))}.schedule-timeline-scroll{padding:6px 12px 14px}.game-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.row-delete-button{flex-basis:44px;width:44px;height:44px}.more-features .card{padding:13px}.more-item{grid-template-columns:34px 1fr}.more-arrow{display:none}}@media (max-width:340px){.mobile-grid-2{grid-template-columns:minmax(0,1fr)!important}.more-grid,.game-stat-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:600px){.menu-visibility-header{flex-wrap:wrap}.menu-visibility-summary{min-width:0}.menu-visibility-actions{margin-left:auto}.menu-visibility-actions>button{min-width:44px;min-height:44px}.menu-visibility-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.menu-visibility-grid>label{min-height:44px}.todo-inline-add{grid-template-columns:minmax(0,1fr) auto auto;display:grid!important}.todo-inline-input{grid-column:1/-1;min-width:0}.todo-inline-priority{min-width:76px}.todo-inline-submit,.todo-inline-close{white-space:nowrap;min-width:44px}.recipe-panel-header{flex-direction:column;align-items:stretch!important}.recipe-create-button{align-self:flex-end;min-width:96px;min-height:44px}.consumption-ingredient-row{grid-template-columns:minmax(0,1fr) auto auto;display:grid!important}.consumption-ingredient-name{grid-column:1/-1;min-width:0}.consumption-ingredient-category{min-width:0;width:auto!important}.consumption-ingredient-delete{width:44px;height:44px}.couple-log-row{flex-wrap:wrap;position:relative;padding-right:52px!important}.couple-log-inline-photos{flex-wrap:wrap;flex:1 0 100%;order:3;margin-left:36px!important}.couple-log-delete{width:44px;height:44px;position:absolute;top:6px;right:6px}.energy-history-item{flex-wrap:wrap}.energy-history-item .tm-badge{width:100%;margin-left:84px;max-width:none!important}}@media (max-width:380px){.today-header .date-nav{flex-wrap:wrap}.today-header .date-nav .btn-today{margin-left:0}.journal-search-row{grid-template-columns:minmax(0,1fr);padding-inline:0!important;display:grid!important}.journal-search-input{min-width:0}.journal-share-button,.journal-add-button{width:100%;min-height:44px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.modal-close-btn{border:1px solid var(--border);width:34px;min-width:34px;height:34px}@supports (color:color-mix(in lab, red, red)){.modal-close-btn{border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}}.modal-close-btn{background:var(--card-solid);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.modal-close-btn{background:color-mix(in srgb, var(--card-solid) 78%, transparent)}}.modal-close-btn{color:var(--text-muted);cursor:pointer;justify-content:center;align-items:center;font-size:15px;line-height:1;display:inline-flex}.modal-close-btn:hover{color:var(--text);background:var(--card-solid)}.nav-item.pending,.mtab.pending{color:var(--primary);pointer-events:none}.nav-item.pending .nav-icon,.mtab.pending .mtab-icon{animation:.76s ease-in-out infinite alternate nav-pending-pulse}.nav-item.pending:after{content:"";border:2px solid var(--primary);width:14px;height:14px;margin-left:auto}@supports (color:color-mix(in lab, red, red)){.nav-item.pending:after{border:2px solid color-mix(in srgb, var(--primary) 30%, transparent)}}.nav-item.pending:after{border-top-color:var(--primary);border-radius:50%;animation:.72s linear infinite loading-spin}.mtab.pending:after{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px;animation:.72s ease-in-out infinite loading-breathe;position:absolute;bottom:2px}@keyframes nav-pending-pulse{0%{opacity:.45;scale:.94}to{opacity:1;scale:1.08}}.gym-slot-editor{grid-template-columns:68px minmax(52px,1fr) 64px 88px 88px}@media (max-width:600px){.gym-slot-editor{grid-template-columns:60px minmax(44px,1fr) 56px 76px 76px}}.gym-actions{align-items:center;gap:8px;margin-top:4px;display:flex}.gym-actions-secondary{margin-right:auto}.gym-actions-primary{gap:8px;display:flex}@media (max-width:600px){.gym-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.gym-actions-secondary,.gym-actions-primary{display:contents}.gym-actions-primary .btn-primary,.gym-actions .btn-primary{grid-column:1/-1}}.past-floating-entry{right:18px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:999;border:1px solid var(--danger);align-items:center;gap:8px;padding:9px 15px;display:inline-flex;position:fixed}@supports (color:color-mix(in lab, red, red)){.past-floating-entry{border:1px solid color-mix(in srgb, var(--danger) 16%, var(--border))}}.past-floating-entry{background:var(--card-solid);color:var(--text);cursor:pointer;border-radius:999px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.2;transition:transform .16s,box-shadow .16s,border-color .16s;box-shadow:0 7px 22px #12141c21}.past-floating-entry:hover{border-color:var(--danger);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.past-floating-entry:hover{border-color:color-mix(in srgb, var(--danger) 30%, var(--border))}}.past-floating-entry:hover{box-shadow:0 11px 28px #12141c2b}.past-floating-dot{background:var(--danger);width:8px;height:8px;box-shadow:0 0 0 3px var(--danger);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.past-floating-dot{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 11%, transparent)}}.past-modal-overlay{z-index:1800;background:var(--overlay);justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.past-modal-card{background:var(--card-solid);border-radius:var(--radius);flex-direction:column;width:min(460px,94vw);max-height:min(86vh,680px);padding:0;animation:.22s cubic-bezier(.22,.61,.36,1) both sheet-up;display:flex;overflow:hidden}.past-modal-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px 14px;display:flex}.past-modal-heading{flex:1;min-width:0}.past-meta-row{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;font-weight:600;line-height:1.4;display:flex}.past-meta-pill{background:var(--primary);border-radius:999px;align-items:center;min-height:20px;padding:2px 8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.past-meta-pill{background:color-mix(in srgb, var(--primary) 8%, var(--card-solid))}}.past-meta-pill{color:var(--primary);white-space:nowrap;font-weight:700}.past-meta-text{letter-spacing:.1px}.past-overview-title{color:var(--text);letter-spacing:-.2px;margin:10px 0 0;font-size:18px;font-weight:700;line-height:1.35}.past-modal-view{overscroll-behavior:contain;flex:1;min-height:0;padding:2px 24px 22px;overflow-y:auto}.past-overview-view{flex-direction:column;display:flex}.past-item-list{scrollbar-width:thin;flex:0 auto;grid-auto-rows:max-content;align-content:start;gap:9px;min-height:0;padding-right:2px;display:grid;overflow-y:auto}.past-item-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-solid);align-items:stretch;gap:13px;padding:13px 14px;display:flex;position:relative;overflow:hidden}.past-item-accent{background:var(--grad-primary);border-radius:999px;flex-shrink:0;width:3px}.past-item-main{flex:1;min-width:0}.past-item-text{min-width:0;color:var(--text);overflow-wrap:anywhere;font-size:14px;font-weight:700;line-height:1.35}.past-item-date{color:var(--text-muted);margin-top:3px;font-size:12px;font-weight:600;line-height:1.4}.past-item-note{color:var(--text-muted);overflow-wrap:anywhere;margin-top:3px;font-size:12px;line-height:1.4}.past-overview-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:16px;display:grid}.past-overview-actions .past-main-action,.past-overview-actions .past-secondary-action{border-radius:var(--radius-sm);white-space:nowrap;justify-content:center;align-items:center;gap:6px;width:100%;min-height:42px;padding:9px 14px;font-size:13px;line-height:1.2;display:inline-flex}.past-overview-actions .past-secondary-action{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-overview-actions .past-secondary-action{border-color:color-mix(in srgb, var(--primary) 13%, var(--border))}}.past-overview-actions .past-secondary-action{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-overview-actions .past-secondary-action{background:color-mix(in srgb, var(--primary) 4%, var(--card-solid))}}.past-overview-actions .past-secondary-action{color:var(--text-secondary);box-shadow:none}.past-overview-actions .past-secondary-action:hover:not(:disabled){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-overview-actions .past-secondary-action:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 25%, var(--border))}}.past-overview-actions .past-secondary-action:hover:not(:disabled){background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-overview-actions .past-secondary-action:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 7%, var(--card-solid))}}.past-overview-actions .past-secondary-action:hover:not(:disabled){color:var(--text)}.past-modal-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:0 1px;display:flex}.past-modal-footer button,.past-back-button{cursor:pointer;background:0 0;border:0;font-family:inherit;font-size:12px;font-weight:600;line-height:1.4}.past-footer-danger,.past-footer-later{color:var(--text-muted);align-items:center;gap:5px;padding:5px 2px;display:inline-flex}.past-footer-danger:hover:not(:disabled){color:var(--danger)}.past-footer-later:hover:not(:disabled){color:var(--primary)}.past-footer-danger:hover,.past-footer-later:hover,.past-back-button:hover{text-decoration:underline}.past-back-button{color:var(--primary);padding:0}.past-danger-panel{border:1px solid var(--danger);gap:12px;margin-top:16px;padding:14px;display:flex}@supports (color:color-mix(in lab, red, red)){.past-danger-panel{border:1px solid color-mix(in srgb, var(--danger) 20%, var(--border))}}.past-danger-panel{border-radius:var(--radius-sm);background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.past-danger-panel{background:color-mix(in srgb, var(--danger) 6%, var(--card-solid))}}.past-danger-icon{border-radius:var(--radius-sm);background:var(--danger);flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.past-danger-icon{background:color-mix(in srgb, var(--danger) 11%, transparent)}}.past-danger-icon{font-size:18px}.past-danger-panel h4{color:var(--text);margin:0;font-size:14px}.past-danger-panel p{color:var(--text-secondary);margin:4px 0 0;font-size:12px;line-height:1.5}.past-field-label{color:var(--text-secondary);margin:15px 0 6px;font-size:12px;font-weight:650;display:block}.past-reason-input{border:1px solid var(--border);border-radius:var(--radius-sm);resize:vertical;box-sizing:border-box;background:var(--primary);outline:none;width:100%;min-height:88px;padding:11px 12px}@supports (color:color-mix(in lab, red, red)){.past-reason-input{background:color-mix(in srgb, var(--primary) 3%, var(--card-solid))}}.past-reason-input{color:var(--text);font-family:inherit;font-size:13px;line-height:1.55;transition:border-color .16s,box-shadow .16s,background .16s}.past-reason-input::placeholder{color:var(--text-muted)}.past-reason-input:focus{border-color:var(--primary);background:var(--card-solid);box-shadow:0 0 0 3px var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-reason-input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent)}}.past-modal-actions{justify-content:flex-end;gap:9px;margin-top:16px;display:flex}.past-modal-actions>button{border-radius:var(--radius-sm);min-width:112px;min-height:42px;padding:9px 15px}.past-danger-button{border-radius:var(--radius-sm);background:var(--danger);color:#fff;cursor:pointer;box-shadow:0 4px 12px var(--danger);border:0;font-family:inherit;font-size:13px;font-weight:650;line-height:1.2}@supports (color:color-mix(in lab, red, red)){.past-danger-button{box-shadow:0 4px 12px color-mix(in srgb, var(--danger) 23%, transparent)}}.past-danger-button:disabled,.past-footer-danger:disabled,.past-footer-later:disabled,.past-back-button:disabled,.past-focus-skip:disabled{opacity:.45;cursor:not-allowed}.past-progress-track{background:var(--border);border-radius:999px;height:4px;margin:0 0 16px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.past-progress-track{background:color-mix(in srgb, var(--border) 68%, transparent)}}.past-progress-track span{border-radius:inherit;background:var(--grad-primary);height:100%;transition:width .22s;display:block}.past-focus-question{color:var(--text-secondary);letter-spacing:-.3px;overflow-wrap:anywhere;margin:10px 0 0;font-size:19px;font-weight:700;line-height:1.42}.past-focus-quote{color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-focus-quote{color:color-mix(in srgb, var(--primary) 42%, var(--text-muted))}}.past-focus-subject{color:var(--text)}.past-focus-tail{white-space:nowrap}.past-focus-note{border-left:3px solid var(--primary);margin:0 0 14px;padding:1px 0 1px 12px}@supports (color:color-mix(in lab, red, red)){.past-focus-note{border-left:3px solid color-mix(in srgb, var(--primary) 42%, transparent)}}.past-focus-note{color:var(--text-muted);overflow-wrap:anywhere;font-size:12px;line-height:1.5}.past-focus-view .past-action-options{margin-top:0}.past-focus-view{padding-top:6px}.past-focus-view .past-action-option{gap:13px;padding:13px 14px}.past-focus-view .past-action-icon{background:0 0;width:26px;height:26px;font-size:21px}.past-focus-view .past-action-title{font-size:14px;line-height:1.35}.past-focus-view .past-action-desc{margin-top:3px;font-size:12px}.past-focus-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.past-focus-actions>button{border-radius:var(--radius-sm);min-height:44px;padding:10px 14px;font-size:14px}.past-focus-skip{border:1px solid var(--border);background:var(--card-solid);color:var(--text-secondary);cursor:pointer;font-family:inherit;font-weight:600;line-height:1.2;transition:border-color .16s,background .16s,color .16s}.past-focus-skip:hover:not(:disabled){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-focus-skip:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 26%, var(--border))}}.past-focus-skip:hover:not(:disabled){background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-focus-skip:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 4%, var(--card-solid))}}.past-focus-skip:hover:not(:disabled){color:var(--text)}.past-focus-back{color:var(--text-muted);margin:14px auto 0;display:block}.past-focus-back:hover:not(:disabled){color:var(--primary)}.past-action-options{gap:9px;margin-top:14px;display:grid}.past-action-option{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-solid);text-align:left;cursor:pointer;align-items:center;gap:11px;width:100%;padding:11px 12px;font-family:inherit;transition:border-color .16s,background .16s,transform .16s;display:flex}.past-action-option:hover:not(:disabled){border-color:var(--primary);transform:translateY(-1px)}@supports (color:color-mix(in lab, red, red)){.past-action-option:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 32%, var(--border))}}.past-action-option.active{border-color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-action-option.active{background:color-mix(in srgb, var(--primary) 6%, var(--card-solid))}}.past-action-option.active{box-shadow:0 0 0 2px var(--primary)}@supports (color:color-mix(in lab, red, red)){.past-action-option.active{box-shadow:0 0 0 2px color-mix(in srgb, var(--primary) 8%, transparent)}}.past-action-abandon.active{border-color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.past-action-abandon.active{background:color-mix(in srgb, var(--danger) 6%, var(--card-solid))}}.past-action-abandon.active{box-shadow:0 0 0 2px var(--danger)}@supports (color:color-mix(in lab, red, red)){.past-action-abandon.active{box-shadow:0 0 0 2px color-mix(in srgb, var(--danger) 7%, transparent)}}.past-action-icon{border-radius:var(--radius-sm);background:var(--bg);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;display:inline-flex}.past-action-copy{flex:1;min-width:0}.past-action-title{color:var(--text);font-size:13px;font-weight:700;display:block}.past-action-desc{color:var(--text-muted);margin-top:2px;font-size:11px;line-height:1.4;display:block}.past-action-check{border:1.5px solid var(--border);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:800;display:inline-flex}.past-action-option.active .past-action-check{border-color:var(--primary);background:var(--primary)}.past-action-abandon.active .past-action-check{border-color:var(--danger);background:var(--danger)}.past-reason-section{margin-top:2px}@media (max-width:900px){.app-modal-card.past-modal-card{max-height:calc(92dvh - env(safe-area-inset-top))!important;padding:0!important;overflow:hidden!important}.past-modal-card:before{flex-shrink:0;margin:10px auto 0}.past-modal-header{padding:16px 20px 14px}.past-modal-view{max-height:none;padding:2px 20px calc(18px + env(safe-area-inset-bottom))}.past-overview-actions .past-main-action,.past-overview-actions .past-secondary-action{min-height:44px;padding-inline:12px}}@media (max-width:600px){.past-floating-entry{right:12px;bottom:calc(82px + env(safe-area-inset-bottom))}.past-modal-header{padding-inline:16px}.past-overview-title{font-size:17px}.past-modal-view{padding-inline:16px}.past-overview-actions{gap:7px}.past-overview-actions .past-main-action,.past-overview-actions .past-secondary-action{padding-inline:10px;font-size:12.5px}.past-modal-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.past-modal-actions>button{width:100%;min-width:0}.past-focus-question{font-size:17.5px}.past-focus-actions{gap:8px}.past-focus-actions>button{padding-inline:10px;font-size:13.5px}}@media (max-width:360px){.past-overview-actions{grid-template-columns:minmax(0,1fr)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
