/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y: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}}}@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-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-orange-50:oklch(98% .016 73.684);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-lime-100:oklch(96.7% .067 122.328);--color-lime-600:oklch(64.8% .2 131.684);--color-green-100:oklch(96.2% .044 156.743);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-teal-50:oklch(98.4% .014 180.72);--color-teal-100:oklch(95.3% .051 180.801);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-cyan-100:oklch(95.6% .045 203.388);--color-cyan-600:oklch(60.9% .126 221.723);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-700:oklch(50% .134 242.749);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-800:oklch(43.2% .232 292.759);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-500:oklch(62.7% .265 303.9);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-500:oklch(65.6% .241 354.308);--color-pink-600:oklch(59.2% .249 .584);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-500:oklch(64.5% .246 16.439);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-stone-100:oklch(97% .001 106.424);--color-stone-200:oklch(92.3% .003 48.717);--color-stone-500:oklch(55.3% .013 58.071);--color-stone-600:oklch(44.4% .011 73.639);--color-stone-700:oklch(37.4% .01 67.558);--radius-sm:.25rem;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--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)}}@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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.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}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.bg-amber-100\/50{background-color:#fef3c680}@supports (color:color-mix(in lab, red, red)){.bg-amber-100\/50{background-color:color-mix(in oklab, var(--color-amber-100) 50%, transparent)}}.bg-amber-200\/50{background-color:#fee68580}@supports (color:color-mix(in lab, red, red)){.bg-amber-200\/50{background-color:color-mix(in oklab, var(--color-amber-200) 50%, transparent)}}.bg-blue-50\/50{background-color:#eff6ff80}@supports (color:color-mix(in lab, red, red)){.bg-blue-50\/50{background-color:color-mix(in oklab, var(--color-blue-50) 50%, transparent)}}.bg-blue-100\/50{background-color:#dbeafe80}@supports (color:color-mix(in lab, red, red)){.bg-blue-100\/50{background-color:color-mix(in oklab, var(--color-blue-100) 50%, transparent)}}.bg-blue-200\/50{background-color:#bedbff80}@supports (color:color-mix(in lab, red, red)){.bg-blue-200\/50{background-color:color-mix(in oklab, var(--color-blue-200) 50%, transparent)}}.bg-cyan-100\/50{background-color:#cefafe80}@supports (color:color-mix(in lab, red, red)){.bg-cyan-100\/50{background-color:color-mix(in oklab, var(--color-cyan-100) 50%, transparent)}}.bg-emerald-50\/50{background-color:#ecfdf580}@supports (color:color-mix(in lab, red, red)){.bg-emerald-50\/50{background-color:color-mix(in oklab, var(--color-emerald-50) 50%, transparent)}}.bg-emerald-100\/50{background-color:#d0fae580}@supports (color:color-mix(in lab, red, red)){.bg-emerald-100\/50{background-color:color-mix(in oklab, var(--color-emerald-100) 50%, transparent)}}.bg-gray-100\/50{background-color:#f3f4f680}@supports (color:color-mix(in lab, red, red)){.bg-gray-100\/50{background-color:color-mix(in oklab, var(--color-gray-100) 50%, transparent)}}.bg-gray-200\/50{background-color:#e5e7eb80}@supports (color:color-mix(in lab, red, red)){.bg-gray-200\/50{background-color:color-mix(in oklab, var(--color-gray-200) 50%, transparent)}}.bg-green-100\/50{background-color:#dcfce780}@supports (color:color-mix(in lab, red, red)){.bg-green-100\/50{background-color:color-mix(in oklab, var(--color-green-100) 50%, transparent)}}.bg-indigo-100\/50{background-color:#e0e7ff80}@supports (color:color-mix(in lab, red, red)){.bg-indigo-100\/50{background-color:color-mix(in oklab, var(--color-indigo-100) 50%, transparent)}}.bg-lime-100\/50{background-color:#ecfcca80}@supports (color:color-mix(in lab, red, red)){.bg-lime-100\/50{background-color:color-mix(in oklab, var(--color-lime-100) 50%, transparent)}}.bg-orange-50\/50{background-color:#fff7ed80}@supports (color:color-mix(in lab, red, red)){.bg-orange-50\/50{background-color:color-mix(in oklab, var(--color-orange-50) 50%, transparent)}}.bg-orange-100\/50{background-color:#ffedd580}@supports (color:color-mix(in lab, red, red)){.bg-orange-100\/50{background-color:color-mix(in oklab, var(--color-orange-100) 50%, transparent)}}.bg-orange-200\/50{background-color:#ffd7a880}@supports (color:color-mix(in lab, red, red)){.bg-orange-200\/50{background-color:color-mix(in oklab, var(--color-orange-200) 50%, transparent)}}.bg-pink-100\/50{background-color:#fce7f380}@supports (color:color-mix(in lab, red, red)){.bg-pink-100\/50{background-color:color-mix(in oklab, var(--color-pink-100) 50%, transparent)}}.bg-pink-200\/50{background-color:#fccee880}@supports (color:color-mix(in lab, red, red)){.bg-pink-200\/50{background-color:color-mix(in oklab, var(--color-pink-200) 50%, transparent)}}.bg-purple-100\/50{background-color:#f3e8ff80}@supports (color:color-mix(in lab, red, red)){.bg-purple-100\/50{background-color:color-mix(in oklab, var(--color-purple-100) 50%, transparent)}}.bg-red-100\/50{background-color:#ffe2e280}@supports (color:color-mix(in lab, red, red)){.bg-red-100\/50{background-color:color-mix(in oklab, var(--color-red-100) 50%, transparent)}}.bg-rose-50\/50{background-color:#fff1f280}@supports (color:color-mix(in lab, red, red)){.bg-rose-50\/50{background-color:color-mix(in oklab, var(--color-rose-50) 50%, transparent)}}.bg-rose-100\/50{background-color:#ffe4e680}@supports (color:color-mix(in lab, red, red)){.bg-rose-100\/50{background-color:color-mix(in oklab, var(--color-rose-100) 50%, transparent)}}.bg-sky-50\/50{background-color:#f0f9ff80}@supports (color:color-mix(in lab, red, red)){.bg-sky-50\/50{background-color:color-mix(in oklab, var(--color-sky-50) 50%, transparent)}}.bg-sky-100\/50{background-color:#dff2fe80}@supports (color:color-mix(in lab, red, red)){.bg-sky-100\/50{background-color:color-mix(in oklab, var(--color-sky-100) 50%, transparent)}}.bg-slate-50\/50{background-color:#f8fafc80}@supports (color:color-mix(in lab, red, red)){.bg-slate-50\/50{background-color:color-mix(in oklab, var(--color-slate-50) 50%, transparent)}}.bg-slate-100\/50{background-color:#f1f5f980}@supports (color:color-mix(in lab, red, red)){.bg-slate-100\/50{background-color:color-mix(in oklab, var(--color-slate-100) 50%, transparent)}}.bg-slate-200\/50{background-color:#e2e8f080}@supports (color:color-mix(in lab, red, red)){.bg-slate-200\/50{background-color:color-mix(in oklab, var(--color-slate-200) 50%, transparent)}}.bg-stone-100\/50{background-color:#f5f5f480}@supports (color:color-mix(in lab, red, red)){.bg-stone-100\/50{background-color:color-mix(in oklab, var(--color-stone-100) 50%, transparent)}}.bg-stone-200\/50{background-color:#e7e5e480}@supports (color:color-mix(in lab, red, red)){.bg-stone-200\/50{background-color:color-mix(in oklab, var(--color-stone-200) 50%, transparent)}}.bg-teal-50\/50{background-color:#f0fdfa80}@supports (color:color-mix(in lab, red, red)){.bg-teal-50\/50{background-color:color-mix(in oklab, var(--color-teal-50) 50%, transparent)}}.bg-teal-100\/50{background-color:#cbfbf180}@supports (color:color-mix(in lab, red, red)){.bg-teal-100\/50{background-color:color-mix(in oklab, var(--color-teal-100) 50%, transparent)}}.bg-violet-100\/50{background-color:#ede9fe80}@supports (color:color-mix(in lab, red, red)){.bg-violet-100\/50{background-color:color-mix(in oklab, var(--color-violet-100) 50%, transparent)}}.bg-violet-200\/50{background-color:#ddd6ff80}@supports (color:color-mix(in lab, red, red)){.bg-violet-200\/50{background-color:color-mix(in oklab, var(--color-violet-200) 50%, transparent)}}.bg-yellow-50\/50{background-color:#fefce880}@supports (color:color-mix(in lab, red, red)){.bg-yellow-50\/50{background-color:color-mix(in oklab, var(--color-yellow-50) 50%, transparent)}}.bg-yellow-100\/50{background-color:#fef9c280}@supports (color:color-mix(in lab, red, red)){.bg-yellow-100\/50{background-color:color-mix(in oklab, var(--color-yellow-100) 50%, transparent)}}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-cyan-600{color:var(--color-cyan-600)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-indigo-500{color:var(--color-indigo-500)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-lime-600{color:var(--color-lime-600)}.text-orange-400{color:var(--color-orange-400)}.text-orange-500{color:var(--color-orange-500)}.text-orange-600{color:var(--color-orange-600)}.text-orange-700{color:var(--color-orange-700)}.text-pink-400{color:var(--color-pink-400)}.text-pink-500{color:var(--color-pink-500)}.text-pink-600{color:var(--color-pink-600)}.text-purple-500{color:var(--color-purple-500)}.text-red-500{color:var(--color-red-500)}.text-rose-500{color:var(--color-rose-500)}.text-sky-400{color:var(--color-sky-400)}.text-sky-500{color:var(--color-sky-500)}.text-sky-700{color:var(--color-sky-700)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-stone-500{color:var(--color-stone-500)}.text-stone-600{color:var(--color-stone-600)}.text-stone-700{color:var(--color-stone-700)}.text-teal-500{color:var(--color-teal-500)}.text-teal-600{color:var(--color-teal-600)}.text-violet-600{color:var(--color-violet-600)}.text-violet-800{color:var(--color-violet-800)}.text-yellow-500{color:var(--color-yellow-500)}.text-yellow-600{color:var(--color-yellow-600)}.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,)}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);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))}.\[ota\:build\]{ota:build}.\[ota\:keygen\]{ota:keygen}.\[ota\:verify\]{ota:verify}}:root{--color-bg:#f4f7fc;--color-bg-soft:#edf1f7;--color-bg-card:#fff;--color-bg-card-hover:#fafcfe;--color-primary:#2563eb;--color-primary-dark:#1d4ed8;--color-primary-light:#3b82f6;--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-deep:#1e3a8a;--color-deep-dark:#162c69;--color-deep-soft:#274baa;--color-info-bg:#edf1f7;--color-info-border:#dde4ef;--color-accent:#d97706;--color-accent-light:#f59e0b;--color-accent-50:#fffaeb;--color-text:#141f3c;--color-text-secondary:#556282;--color-text-muted:#8b97ac;--color-border:#e5eaf2;--color-border-strong:#d4dde9;--color-success:#059669;--color-warning:#d97706;--color-danger:#e11d48;--radius-card:16px;--radius-btn:12px;--radius-modal:24px;--radius:12px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 2px #141f3c0d;--shadow-md:0 1px 2px #141f3c0a, 0 8px 24px #141f3c12;--shadow-lg:0 2px 8px #141f3c0d, 0 20px 48px #141f3c1c;--shadow-deep:0 14px 36px #2f6fed52;--shadow-primary:0 4px 14px #2563eb3d;--space-page:20px;--space-section:20px;--space-card:18px;--space-inner:10px;--gradient-primary:linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--gradient-deep:linear-gradient(150deg, #4a90f5f2 0%, #2f6fedf0 46%, #1d4ed8f5 100%);--gradient-hero:var(--gradient-deep);--safe-top:max(env(safe-area-inset-top,0px), var(--safe-area-inset-top,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px), var(--safe-area-inset-bottom,0px));--tabbar-height:calc(66px + var(--safe-bottom));--container-max:480px}*{box-sizing:border-box}html{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}html,body{background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.6}button{touch-action:manipulation;font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e4;border-radius:3px}.card{background:var(--color-bg-card);border-radius:var(--radius-card);padding:var(--space-card);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.card-dark{background:var(--gradient-deep);color:#fff;border-radius:var(--radius-card);box-shadow:var(--shadow-deep);padding:24px}.btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-btn);letter-spacing:.01em;white-space:nowrap;cursor:pointer;box-shadow:var(--shadow-primary);border:none;justify-content:center;align-items:center;gap:7px;padding:13px 26px;font-size:15px;font-weight:600;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex}.btn-primary:hover{background:var(--color-primary-dark)}.btn-primary:active{transform:scale(.97);box-shadow:0 2px 8px #2563eb2e}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary svg{width:17px;height:17px}.btn-secondary{background:var(--color-primary-50);color:var(--color-primary-dark);border:1px solid var(--color-primary-100);border-radius:var(--radius-btn);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:11px 22px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-secondary:hover{background:var(--color-primary-100)}.btn-secondary:active{transform:scale(.97)}.btn-secondary svg{width:16px;height:16px}.btn-ghost{color:var(--color-text-secondary);border:1px solid var(--color-border-strong);border-radius:var(--radius-btn);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-ghost:hover{background:var(--color-bg-soft);border-color:var(--color-text-muted)}.btn-ghost:active{transform:scale(.97)}.btn-primary,.btn-secondary,.btn-ghost{white-space:nowrap}.btn-ghost svg{width:15px;height:15px}.input{border-radius:var(--radius-btn);background:var(--color-bg-soft);width:100%;color:var(--color-text);border:1.5px solid #0000;outline:none;padding:12px 16px;font-family:inherit;font-size:15px;transition:border-color .2s,background .2s,box-shadow .2s}.input:focus{border-color:var(--color-primary-light);background:#fff;box-shadow:0 0 0 3px #3b82f624}.input::placeholder{color:var(--color-text-muted)}select.input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b97ac' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:38px}.search-input-wrap{align-items:center;display:flex;position:relative}.search-input-wrap svg{width:17px;height:17px;color:var(--color-text-muted);pointer-events:none;position:absolute;left:15px}.search-input-wrap .input{padding-left:42px}.tab-group{background:var(--color-bg-soft);border-radius:var(--radius-card);gap:2px;padding:3px;display:flex}.tab-item{text-align:center;border-radius:var(--radius-btn);cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;flex:1;padding:9px 12px;font-size:14px;font-weight:500;transition:all .25s}.tab-item.active{color:var(--color-primary);box-shadow:var(--shadow-sm);background:#fff;font-weight:600}.app-header{z-index:100;padding:calc(8px + var(--safe-top)) var(--space-page) 8px;-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--color-border);background:#ffffffd1;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.header-stat{cursor:pointer;color:var(--color-text-secondary);letter-spacing:.01em;background:0 0;border:none;align-items:center;gap:7px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.header-stat svg{width:16px;height:16px;color:var(--color-accent)}.header-stat strong{color:var(--color-text);font-variant-numeric:tabular-nums;font-weight:800}.header-icon-btn{border:1px solid var(--color-border);width:34px;height:34px;color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.header-icon-btn:hover{border-color:var(--color-primary-light);color:var(--color-primary)}.header-icon-btn:active{transform:scale(.92)}.header-icon-btn.active{background:var(--color-primary-50);border-color:var(--color-primary-100);color:var(--color-primary)}.header-icon-btn svg{width:18px;height:18px}.header-icon-btn.refreshing svg{animation:.8s linear infinite header-refresh-spin}@keyframes header-refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tabbar{-webkit-backdrop-filter:blur(22px)saturate(170%);backdrop-filter:blur(22px)saturate(170%);width:100%;padding:8px 12px calc(8px + var(--safe-bottom));z-index:90;background:#fcfdffc7;border:1px solid #ffffffbf;border-bottom:none;border-radius:22px 22px 0 0;flex:none;justify-content:space-around;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 28px #141f3c1a,inset 0 1px #ffffffe6}.tabbar-item{cursor:pointer;color:var(--color-text-muted);z-index:1;white-space:nowrap;background:0 0;border:none;border-radius:999px;flex-direction:row;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 10px;font-size:12px;font-weight:600;transition:color .25s,flex-grow .3s;display:flex;position:relative}.tabbar-item>span:last-child{opacity:0;transition:opacity .2s;display:none}.tabbar-item.active{color:#fff;flex-grow:1.8;font-weight:700}.tabbar-item.active>span:last-child{opacity:1;display:inline}.tabbar-item svg{width:21px;height:21px;transition:transform .25s}.tabbar-item.active{color:#fff;font-weight:600}.tabbar-item.active svg{transform:translateY(-1px)scale(1.06)}.tabbar-item:active svg{transform:scale(.88)}.tabbar-indicator{height:calc(100% - 8px - var(--safe-bottom) - 8px);background:var(--gradient-primary);z-index:0;pointer-events:none;border:1px solid #fff6;border-radius:999px;position:absolute;top:8px;left:0;box-shadow:0 6px 14px #2563eb59,inset 0 1px #fff6}.page-header{padding:24px 2px 16px}.page-title{letter-spacing:-.01em;color:var(--color-text);margin:0;font-size:26px;font-weight:800}.page-subtitle{color:var(--color-text-muted);letter-spacing:.04em;margin-top:3px;font-size:12px}.hero-card{background:var(--gradient-deep);-webkit-backdrop-filter:blur(18px)saturate(160%);backdrop-filter:blur(18px)saturate(160%);color:#fff;border-radius:var(--radius-card);margin:0 0 var(--space-section);box-shadow:var(--shadow-deep), inset 0 1px 0 #ffffff73, inset 0 -14px 30px #1544b429;border:1px solid #ffffff59;padding:24px 22px;position:relative;overflow:hidden}.hero-card:before{content:"";filter:blur(6px);pointer-events:none;background:radial-gradient(circle,#ffffff52 0%,#0000 65%);border-radius:50%;width:190px;height:190px;animation:9s ease-in-out infinite heroOrbA;position:absolute;top:-72px;right:-52px}.hero-card:after{content:"";filter:blur(8px);pointer-events:none;background:radial-gradient(circle,#93deff61 0%,#0000 68%);border-radius:50%;width:140px;height:140px;animation:12s ease-in-out infinite heroOrbB;position:absolute;bottom:-60px;left:-38px}@keyframes heroOrbA{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-18px,14px)scale(1.12)}}@keyframes heroOrbB{0%,to{transform:translate(0)scale(1)}50%{transform:translate(16px,-12px)scale(.92)}}.hero-card .label{color:#ffffffe0;letter-spacing:.05em;align-items:center;gap:6px;margin-bottom:6px;font-size:12px;font-weight:600;display:flex}.hero-card .label svg{width:14px;height:14px}.hero-card .title{letter-spacing:-.01em;color:#fff;margin-bottom:10px;font-size:20px;font-weight:800;line-height:1.35}.hero-card .description{color:#ffffffd6;font-size:13px;line-height:1.5}.hero-countdown{align-items:baseline;gap:8px;margin:4px 0 8px;display:flex}.hero-countdown-num{letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums;font-size:52px;font-weight:800;line-height:1}.hero-countdown-unit{color:#ffffffc7;font-size:14px;font-weight:500}.hero-top-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.hero-top-row .label{margin-bottom:0}.hero-date{color:#ffffffbd;white-space:nowrap;font-size:12px}.hero-greeting{letter-spacing:-.01em;color:#fff;margin-bottom:6px;font-size:17px;font-weight:700}.hero-sign{color:#ffffffdb;border-top:1px dashed #ffffff52;margin-top:12px;padding-top:12px;font-size:13px;line-height:1.6}.hero-card .btn-secondary{color:var(--color-deep);background:#fff;border-color:#0000}.hero-card .btn-secondary:hover{background:var(--color-primary-50)}.hero-card .btn-ghost{color:#ffffffe0;background:#ffffff14;border-color:#ffffff57}.hero-card .btn-ghost:hover{background:#ffffff29;border-color:#ffffff80}.hero-button{color:var(--color-deep);background:#ffffffe6;border-color:#ffffff57}.stat-card{background:var(--color-bg-card);border-radius:var(--radius-card);border:1px solid var(--color-border);box-shadow:var(--shadow-md);padding:14px 16px}.stat-card .stat-label{color:var(--color-text-muted);align-items:center;gap:5px;margin-bottom:6px;font-size:12px;display:flex}.stat-card .stat-label svg{width:13px;height:13px;color:var(--color-primary)}.stat-card .stat-value{letter-spacing:-.02em;color:var(--color-deep);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1.1}.stat-card .stat-unit{color:var(--color-text-muted);margin-left:4px;font-size:12px}.icon-chip{border-radius:var(--radius-btn);background:var(--color-primary-50);width:38px;height:38px;color:var(--color-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.icon-chip svg{width:19px;height:19px}.icon-chip.amber{background:var(--color-accent-50);color:var(--color-accent)}.module-tag{border-radius:var(--radius-btn);border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;align-items:center;padding:7px 15px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.module-tag:hover{border-color:var(--color-primary-200);color:var(--color-primary-dark)}.module-tag:active{transform:scale(.95)}.module-tag.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:600;box-shadow:0 3px 10px #2563eb38}.timer-ring-wrap{width:248px;height:248px;margin:8px auto;position:relative}.timer-ring-svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.timer-ring-track{fill:none;stroke:var(--color-border);stroke-width:10px}.timer-ring-progress{fill:none;stroke:url(#timerRingGradient);stroke-width:10px;stroke-linecap:round}.timer-ring-center{flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.timer-display{letter-spacing:-.03em;font-variant-numeric:tabular-nums;text-align:center;color:var(--color-text);font-size:56px;font-weight:800;line-height:1}.timer-display-clickable{cursor:pointer;color:var(--color-text);letter-spacing:-.03em;background:0 0;border:none;flex-direction:column;align-items:center;gap:0;padding:0;font-family:inherit;font-size:48px;font-weight:800;transition:color .15s;display:flex}.timer-display-num{font-size:52px;line-height:1}.timer-display-unit{color:var(--color-text-muted);margin-top:2px;font-size:14px;font-weight:500}.timer-display-clickable:hover{color:var(--color-primary)}.timer-display-row{justify-content:center;align-items:center;gap:8px;display:flex}.timer-adjust-btn{border:1.5px solid var(--color-border);background:var(--color-bg);width:36px;height:36px;color:var(--color-text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:20px;font-weight:600;line-height:1;transition:all .15s;display:flex}.timer-adjust-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-50)}.timer-display-input{text-align:center;border:2px solid var(--color-primary);letter-spacing:-.03em;font-variant-numeric:tabular-nums;-moz-appearance:textfield;border-radius:12px;outline:none;width:90px;padding:4px 8px;font-family:inherit;font-size:40px;font-weight:800}.timer-display-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.timer-display-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.timer-ring-subject{text-overflow:ellipsis;white-space:nowrap;background:var(--color-primary-50);max-width:190px;color:var(--color-primary-dark);border-radius:999px;margin-top:8px;padding:4px 14px;font-size:14px;font-weight:700;overflow:hidden}.timer-done-label{background:var(--color-accent-50);color:var(--color-accent);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:200px;margin-top:8px;padding:4px 14px;font-size:13px;font-weight:700;overflow:hidden}.standard-timer{text-align:center;margin-bottom:var(--space-section);border-radius:var(--radius-card);background:var(--color-bg-card);border:1px solid var(--color-border);box-shadow:var(--shadow-md);padding:30px 20px 26px}.timer-kicker{color:var(--color-text-muted);letter-spacing:.1em;font-size:12px;font-weight:500}.timer-actions{justify-content:center;gap:10px;margin-top:20px;display:flex}.focus-summary{margin-bottom:var(--space-section);border-radius:var(--radius-card);background:var(--gradient-deep);-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);box-shadow:var(--shadow-deep), inset 0 1px 0 #ffffff6b;color:#fff;border:1px solid #ffffff59;justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.focus-summary span,.focus-summary em{color:#ffffffc7;font-size:12px;font-style:normal}.focus-summary strong,.focus-summary .focus-summary-num{letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums;margin:0 7px 0 0;font-size:36px;font-weight:800;line-height:1.1;display:inline-block}.focus-dot{color:#fff;background:#ffffff24;border:1px solid #ffffff38;border-radius:50%;place-items:center;width:52px;height:52px;font-family:serif;font-size:22px;display:grid}.review-flip-scene{perspective:1200px}.review-card{border-radius:var(--radius-card);background:var(--color-bg-card);border:1px solid var(--color-border);min-height:430px;box-shadow:var(--shadow-lg);transform-style:preserve-3d;flex-direction:column;padding:26px 24px;display:flex;position:relative}.review-card h2{letter-spacing:-.01em;margin:10px 0 20px;font-size:22px;font-weight:800;line-height:1.4}.reveal-button{border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-btn);background:var(--color-info-bg);width:100%;min-height:240px;color:var(--color-text-muted);cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;font-size:14px;transition:all .2s;display:flex}.reveal-button:hover{border-color:var(--color-primary-light);color:var(--color-primary);background:var(--color-primary-50)}.reveal-button svg{width:26px;height:26px}.review-answer{border-radius:var(--radius-btn);background:var(--color-info-bg);flex:1;min-height:210px;padding:16px}.rating-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:16px;display:grid}.rating-grid button{border:1px solid var(--color-border);border-radius:var(--radius-btn);cursor:pointer;background:#fff;padding:10px 4px;transition:all .18s}.rating-grid button:active{transform:scale(.94)}.rating-grid button strong{font-size:14px}.rating-grid span{color:var(--color-text-muted);margin-top:2px;font-size:10px;display:block}.rating-grid .rating-again strong{color:var(--color-danger)}.rating-grid .rating-hard strong{color:var(--color-warning)}.rating-grid .rating-good strong{color:var(--color-primary)}.rating-grid .rating-easy strong{color:var(--color-text)}.rating-grid .rating-again:hover{border-color:var(--color-danger);background:#fff5f6}.rating-grid .rating-hard:hover{border-color:var(--color-warning);background:var(--color-accent-50)}.rating-grid .rating-good:hover{border-color:var(--color-primary);background:var(--color-primary-50)}.rating-grid .rating-easy:hover{border-color:var(--color-text);background:var(--color-bg-soft)}.review-setup{padding:22px}.review-start-stack{gap:14px;display:grid}.review-type-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.review-type-card{border:1px solid var(--color-border);background:var(--color-bg-card);width:100%;color:var(--color-text);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.review-type-card:hover{border-color:var(--color-primary-light);transform:translateY(-1px)}.review-type-card.active{border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb1a, var(--shadow-sm)}.review-type-card .icon-chip{border-radius:13px;width:42px;height:42px}.review-type-card .icon-chip svg{width:21px;height:21px}.review-type-card strong{margin-bottom:3px;font-size:15px;display:block}.review-type-card small{color:var(--color-text-muted);font-size:11px;line-height:1.45;display:block}.review-type-card.mistake .icon-chip{color:var(--color-danger);background:#fff1f2}.review-type-card.notebook .icon-chip{color:#4f46e5;background:#eef2ff}.review-split-title.rich-content{flex-direction:column;justify-content:center;align-items:center;display:flex;overflow:auto}.review-split-title.rich-content>:first-child{margin-top:0}.review-split-title.rich-content>:last-child{margin-bottom:0}.review-question-image-title img{object-fit:contain;cursor:zoom-in;max-width:100%;max-height:62vh}@font-face{font-family:HarmonyOS Sans SC;src:url(/fonts/HarmonyOS_Sans_SC_Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}.mistake-notebook-view{--mistake-notebook-gutter:18px;height:100%;min-height:0;padding:14px var(--mistake-notebook-gutter) 40px;overscroll-behavior:contain;touch-action:none;background:#e9edf4;font-family:HarmonyOS Sans SC,HarmonyOS Sans,system-ui,sans-serif;overflow:auto}.page-view .mistake-notebook-view{height:auto;overflow:visible}.review-embedded .mistake-notebook-view{z-index:250;padding-top:0;position:fixed;inset:0}.mistake-notebook-rail{z-index:255;overscroll-behavior:contain;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:thin;background:#ffffffb8;border:1px solid #94a3b859;border-radius:12px;flex-flow:column;align-items:center;gap:8px;width:44px;padding:6px 2px;display:flex;position:fixed;top:74px;bottom:16px;left:10px;overflow:hidden auto;box-shadow:0 6px 18px #1e293b14}.mistake-notebook-rail-item{flex:none;position:relative}.mistake-notebook-rail-item>button{color:#334155;cursor:pointer;background:#fff;border:1px solid #b9c4d4;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font-size:11px;font-weight:700;transition:transform .15s,background .15s,color .15s;display:grid}.mistake-notebook-rail-item>button:hover{border-color:var(--color-primary);color:var(--color-primary);transform:scale(1.12)}.mistake-notebook-rail-item>button.fav{color:#fff;background:#f97316;border-color:#ea580c}.mistake-notebook-rail-tip{z-index:300;color:#f8fafc;white-space:pre-wrap;word-break:break-word;opacity:0;visibility:hidden;pointer-events:none;background:#1e293b;border-radius:8px;max-width:260px;padding:6px 10px;font-size:12px;line-height:1.5;transition:opacity .15s,transform .15s;position:absolute;top:50%;left:calc(100% + 12px);transform:translateY(-50%)translate(-4px);box-shadow:0 8px 22px #0f172a47}.mistake-notebook-rail-tip:before{content:"";border:6px solid #0000;border-right-color:#1e293b;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.mistake-notebook-rail-item:hover .mistake-notebook-rail-tip,.mistake-notebook-rail-tip.show{opacity:1;visibility:visible;transform:translateY(-50%)translate(0)}.mistake-notebook-rail-floating-tip{z-index:520;color:#f8fafc;white-space:pre-wrap;word-break:break-word;pointer-events:none;background:#1e293b;border-radius:9px;max-width:min(320px,100vw - 78px);padding:8px 11px;font-size:12px;line-height:1.5;animation:.16s both fadeIn;position:fixed;left:60px;transform:translateY(-50%);box-shadow:0 10px 28px #0f172a4d}.mistake-notebook-rail-floating-tip:before{content:"";border:6px solid #0000;border-right-color:#1e293b;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.mistake-notebook-workbench{padding-left:62px}.mistake-notebook-page{break-inside:avoid;padding:8px 0 18px}.mistake-notebook-page+.mistake-notebook-page{border-top:2px dashed #64748b59}.mistake-notebook-page-title{border-left:4px solid var(--color-primary);color:#1d4ed8;background:#3b82f614;border-radius:4px;align-items:center;gap:8px;margin:4px 0 10px;padding:4px 12px;font-size:14px;font-weight:700;display:flex}.mistake-notebook-question{position:relative}.mistake-notebook-fav{z-index:3;color:#cbd5e1;cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;transition:color .15s,transform .15s;display:grid;position:absolute;top:26px;right:0}.mistake-notebook-fav svg{fill:currentColor;width:20px;height:20px}.mistake-notebook-fav:hover{color:#fb923c;transform:scale(1.15)}.mistake-notebook-fav.on{color:#f97316}.mistake-notebook-fav.on svg{filter:drop-shadow(0 1px 3px #f9731673)}.mistake-notebook-question-image img{cursor:zoom-in}.mistake-notebook-image-hint{color:var(--color-text-muted);margin-top:4px;font-size:11px;display:block}.mistake-question-dialog-remark{gap:6px;margin-top:4px;display:grid}.mistake-question-dialog-remark strong{color:var(--color-text-secondary);font-size:12.5px}.mistake-question-dialog-remark textarea{min-height:64px;font:inherit;resize:vertical;background:#f8fafce6;border:1px solid #94a3b880;border-radius:10px;padding:8px 10px;font-size:13px}.mistake-question-dialog-remark textarea:focus{border-color:var(--color-primary);outline:2px solid #3b82f659}.mistake-question-dialog-remark>span{color:var(--color-text-muted);font-size:11px}.mistake-notebook-toolbar{z-index:8;box-sizing:border-box;margin:0 calc(var(--mistake-notebook-gutter) * -1) 12px;width:calc(100% + var(--mistake-notebook-gutter) * 2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;border:1px solid #ffffffc7;border-radius:0 0 14px 14px;align-items:center;gap:10px;padding:8px 12px;display:flex;position:sticky;top:0;left:0;box-shadow:0 8px 24px #1e293b1a}.mistake-notebook-toolbar>.mistake-notebook-title{flex:none;gap:2px;display:grid}.mistake-notebook-rail-horizontal{min-width:0;margin-left:auto;display:flex}.mistake-notebook-toolbar strong{font-size:14px}.mistake-notebook-toolbar span{color:var(--color-text-muted);font-size:11px}.mistake-notebook-workbench{justify-content:center;width:max-content;min-width:100%;margin:0 auto;display:flex}.mistake-notebook-paper-frame{touch-action:none;flex:none;width:980px;margin:0 auto}body.notebook-fullscreen .mind-topbar{display:none!important}.mistake-notebook-paper{box-sizing:border-box;background-color:#fff;background-image:radial-gradient(circle,#64748b33 1px,#0000 1px);background-size:20px 20px;border:1px solid #d8dee9;grid-template-columns:minmax(0,1fr);width:980px;min-height:1386px;margin:0;display:grid;position:relative;box-shadow:0 18px 50px #1e293b29}.mistake-notebook-index button,.mistake-notebook-question-number{color:#334155;cursor:pointer;background:#fff;border:1px solid #b9c4d4;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;font-size:12px;font-weight:700;display:grid}.mistake-notebook-index button:hover,.mistake-notebook-question-number:hover{color:#fff;background:var(--color-primary);border-color:var(--color-primary)}.mistake-notebook-questions{grid-column:1;min-width:0;padding:60px 34px 56px}.mistake-notebook-question{border-bottom:1px dashed #64748b4d;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:28px 0 44px;scroll-margin:80px;display:grid;position:relative}.mistake-notebook-question-number{position:sticky;top:74px}.mistake-notebook-question-main{min-width:0}.mistake-notebook-question-title{min-width:0;font-size:15px;line-height:1.7}.mistake-notebook-question-title>:first-child{margin-top:0}.mistake-notebook-question-title>:last-child{margin-bottom:0}.mistake-notebook-question-image{min-width:0}.mistake-notebook-question-image img{object-fit:contain;cursor:zoom-in;max-width:100%;height:auto;margin:0 auto;display:block}.mistake-notebook-question-image label{color:var(--color-text-muted);justify-content:center;align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.mistake-notebook-question-image input{width:min(220px,60%)}.mistake-notebook-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:14px;display:grid}.mistake-notebook-options button{color:#334155;text-align:left;cursor:pointer;background:#ffffffe0;border:1px solid #cbd5e1;border-radius:10px;align-items:flex-start;gap:6px;min-width:0;padding:8px;display:flex}.mistake-notebook-options button strong{flex:none}.mistake-notebook-options button span{overflow-wrap:anywhere;min-width:0;font-size:11px;line-height:1.45}.mistake-notebook-options button.answer-selected{color:#1d4ed8;background:#eff6ff;border-color:#60a5fa}.mistake-notebook-options button.answer-correct{color:#166534;background:#f0fdf4;border-color:#4ade80}.mistake-notebook-options button.answer-wrong{color:#991b1b;background:#fef2f2;border-color:#f87171}.mistake-question-workspace{background:#ffffff52;border:1px dashed #b9c5d6;border-radius:14px;min-height:230px;margin-top:18px;overflow:hidden}.mistake-question-workspace-preview{color:#64748b;cursor:crosshair;background:0 0;border:0;place-items:center;gap:8px;width:100%;min-height:230px;padding:16px;display:grid}.mistake-question-workspace-preview img{object-fit:contain;max-width:100%;max-height:none;margin:auto;display:block}.mistake-question-workspace-preview span{font-size:11px}.mistake-question-workspace.active{background:#fff;border-style:solid;border-color:#9fb5d2;flex-direction:column;min-height:450px;padding-top:0;display:flex}.mistake-question-workspace .sketchpad-panel{min-height:390px;box-shadow:none;border:0;border-radius:0}.mistake-question-workspace .sketchpad-foot{padding-bottom:8px}.mistake-notebook-empty,.mistake-notebook-missing{color:var(--color-text-muted);text-align:center;padding:60px 20px}.mistake-question-dialog{z-index:280;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a8c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.mistake-question-dialog-card{background:#fff;border-radius:18px;width:min(780px,100%);max-height:min(860px,92dvh);padding:20px;overflow:auto;box-shadow:0 24px 70px #0f172a47}.mistake-question-dialog-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.mistake-question-dialog-title,.mistake-question-dialog-answer{border:1px solid var(--color-border);border-radius:12px;padding:14px}.mistake-question-dialog-title img,.mistake-question-dialog-answer img{object-fit:contain;cursor:zoom-in;max-width:100%;max-height:60vh;margin:auto;display:block}.mistake-question-dialog-answer{background:#f8fafc;margin-top:12px}.mistake-question-dialog-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.mistake-card-editor-overlay{z-index:400;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.mistake-card-editor-overlay>.mind-panel{border-top:0;border-left:1px solid var(--color-border);z-index:1;border-radius:0;max-width:100%;height:100%;max-height:none;position:relative;inset:auto;box-shadow:-18px 0 50px #0f172a33;width:min(620px,94vw)!important}.mistake-card-editor-status{text-align:center;background:#fff;border-radius:16px;align-self:center;gap:10px;width:min(360px,100% - 32px);margin:auto;padding:22px;display:grid;box-shadow:0 20px 60px #0f172a3d}.mistake-card-editor-status span{color:var(--color-text-muted);font-size:13px}@media (width<=760px){.review-type-grid{grid-template-columns:1fr}.mistake-notebook-view{--mistake-notebook-gutter:8px}.mistake-notebook-workbench{justify-content:center;width:max-content;min-width:100%;padding-left:48px}.mistake-notebook-paper{width:900px}.mistake-notebook-rail{width:38px;left:4px}.mistake-notebook-rail-item>button{width:25px;height:25px;font-size:10px}.mistake-notebook-fav{width:28px;height:28px;top:22px;right:2px}.mistake-card-editor-overlay>.mind-panel{width:100%!important}}.review-import-button svg,.review-start-button svg{width:15px;height:15px}.review-import-toast{z-index:260;color:#166534;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f0fdf4f5;border:1px solid #86efac;border-radius:12px;max-width:min(560px,100vw - 28px);padding:11px 16px;font-size:13px;font-weight:700;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #1665342e}.mistake-import-overlay{z-index:250;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a7a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.mistake-import-card{background:#fff;border:1px solid #fffc;border-radius:20px;gap:16px;width:min(520px,100%);max-height:min(760px,94dvh);padding:20px;display:grid;overflow:auto;box-shadow:0 26px 80px #0f172a4d}.mistake-import-head{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.mistake-import-head>div:nth-child(2){gap:3px;display:grid}.mistake-import-head strong{font-size:17px}.mistake-import-head span{color:var(--color-text-muted);font-size:11px}.mistake-import-icon{color:#4f46e5;background:#eef2ff;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.mistake-import-icon svg{width:21px;height:21px}.mistake-import-field{color:#334155;gap:7px;font-size:12px;font-weight:700;display:grid}.mistake-import-drop{color:#64748b;text-align:center;cursor:pointer;background:#f8fafc;border:1.5px dashed #aebdd2;border-radius:16px;align-content:center;place-items:center;gap:7px;min-height:150px;padding:20px;transition:border-color .18s,background .18s;display:grid;position:relative}.mistake-import-drop:hover,.mistake-import-drop.has-file{border-color:var(--color-primary);background:var(--color-primary-50)}.mistake-import-drop input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.mistake-import-drop svg{width:30px;height:30px;color:var(--color-primary)}.mistake-import-drop strong{color:#334155;overflow-wrap:anywhere;max-width:100%}.mistake-import-drop span{font-size:11px;font-weight:400}.mistake-import-progress,.mistake-import-error{border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.mistake-import-progress{color:#1d4ed8;background:#eff6ff}.mistake-import-error{color:#991b1b;background:#fef2f2}.mistake-import-progress svg,.mistake-import-actions svg{width:15px;height:15px}.mistake-import-progress svg,.mistake-import-actions .spin{animation:.9s linear infinite mistake-import-spin}.mistake-import-actions{justify-content:flex-end;gap:9px;display:flex}@keyframes mistake-import-spin{to{transform:rotate(360deg)}}.review-type-state{color:var(--color-text-muted);white-space:nowrap;font-size:10px}.review-type-card.active .review-type-state{color:var(--color-primary);font-weight:700}.review-setup h2{margin:4px 0 5px;font-size:20px;font-weight:800}.review-setup-intro{border-bottom:1px solid var(--color-border);gap:16px;padding-bottom:18px;display:grid}.review-setup-title{align-items:flex-start;gap:13px;display:flex}.review-setup-title .eyebrow{gap:5px;margin-top:1px}.review-setup-title .eyebrow svg{width:13px;height:13px}.review-setup-title p{color:var(--color-text-muted);margin:0;font-size:13px}.review-setup-icon{border-radius:15px;flex:none;width:46px;height:46px}.review-setup-icon svg{width:23px;height:23px}.review-schedule{background:var(--color-bg-soft);color:var(--color-text-muted);border-radius:12px;align-items:flex-start;gap:9px;padding:11px 13px;font-size:12px;line-height:1.55;display:flex}.review-schedule svg{width:16px;height:16px;color:var(--color-primary);flex:none;margin-top:1px}.review-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:18px 0;display:grid}.review-module-option{border:1px solid var(--color-border);min-height:46px;color:var(--color-text-secondary);cursor:pointer;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:6px;padding:10px 12px;font-weight:650;transition:border-color .16s,background-color .16s,color .16s;display:flex}.review-module-option:hover{border-color:var(--color-primary-light)}.review-module-option.active{border-color:var(--color-primary);background:var(--color-primary-50);color:var(--color-primary-dark)}.review-module-selected{color:var(--color-primary);white-space:nowrap;font-size:10px}.review-setup-actions{flex-direction:column;gap:9px;display:flex}.review-start-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.review-start-button svg{width:16px;height:16px}.review-setup-actions .btn-ghost{justify-content:center}.review-progress{text-align:center;color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin-bottom:12px;font-size:13px}.checkbox{border:2px solid var(--color-border-strong);cursor:pointer;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.checkbox.checked{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#131f3c6b;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-bg-card);border-radius:var(--radius-modal) var(--radius-modal) 0 0;width:100%;max-width:480px;max-height:85vh;box-shadow:var(--shadow-lg);padding:24px;overflow-y:auto}.insight-tag{border-radius:4px;align-items:center;padding:2px 8px;font-size:11px;display:inline-flex}.heatmap-cell{background:var(--color-border);border-radius:3px;width:14px;height:14px}.dual-chart{width:100%;min-height:220px;overflow:visible}.chart-grid-line{stroke:var(--color-border);stroke-width:1px}.chart-axis-label{fill:var(--color-text-muted);font-size:10px}.chart-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.chart-line.accuracy{stroke:#2563eb}.chart-line.duration{stroke:#f59e0b}.chart-dot.accuracy{stroke:#2563eb;fill:#2563eb}.chart-dot.duration{stroke:#f59e0b;fill:#f59e0b}.legend-line.accuracy{border-color:#2563eb}.legend-line.duration{border-color:#f59e0b}.chart-legend{color:var(--color-text-muted);justify-content:center;gap:18px;font-size:11px;display:flex}.legend-line{vertical-align:middle;border-top:3px solid;border-radius:2px;width:16px;margin-right:5px;display:inline-block}.empty-chart{min-height:190px;color:var(--color-text-muted);place-items:center;font-size:13px;display:grid}.chart-point-detail{border-radius:var(--radius-btn);background:var(--color-info-bg);color:var(--color-text-secondary);flex-wrap:wrap;gap:6px 16px;margin:6px 0 2px;padding:9px 12px;font-size:12px;display:flex}.chart-point-detail strong{color:var(--color-text)}.chart-point-group{cursor:pointer;outline:none}.chart-point-group:focus .chart-dot,.chart-point-group:hover .chart-dot{stroke:#fff;stroke-width:3px}.filter-block{margin-bottom:16px}.filter-label{color:var(--color-text-muted);margin-bottom:7px;font-size:12px;font-weight:500}.chip-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.section-card{margin-bottom:var(--space-section)}.section-title{letter-spacing:-.01em;color:var(--color-text);margin:0 0 12px;font-size:16px;font-weight:700}.field-gap{margin-bottom:var(--space-inner)}.muted{color:var(--color-text-muted);font-size:13px}.form-error{color:var(--color-danger);font-size:13px}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.rich-toolbar{border:1px solid var(--color-border);border-radius:var(--radius-btn) var(--radius-btn) 0 0;background:var(--color-bg-soft);border-bottom:0;flex-wrap:wrap;gap:5px;padding:8px;display:flex}.rich-toolbar button{border:1px solid var(--color-border);cursor:pointer;color:var(--color-text-secondary);background:#fff;border-radius:8px;align-items:center;gap:4px;padding:5px 9px;transition:all .15s;display:inline-flex}.rich-toolbar button svg{width:15px;height:15px}.toolbar-spinner{animation:.8s linear infinite toolbar-spin}@keyframes toolbar-spin{to{transform:rotate(360deg)}}.rich-toolbar button.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.rich-toolbar button:disabled{opacity:.4;cursor:not-allowed}.rich-toolbar select{border:1px solid var(--color-border);min-height:33px;color:var(--color-text);background:#fff;border-radius:8px;padding:4px 7px}.toolbar-palette{border:1px solid var(--color-border);background:#fff;border-radius:8px;align-items:center;gap:4px;padding:3px 6px;display:inline-flex}.toolbar-palette span{color:var(--color-text-muted);font-size:10px}.rich-toolbar .color-swatch{border:1px solid #0000001f;border-radius:50%;width:20px;height:20px;padding:0}.rich-toolbar .highlight-swatch{border-radius:5px}.toolbar-palette input[type=color]{cursor:pointer;background:0 0;border:0;width:22px;height:22px;padding:0}.rich-editor{border:1.5px solid var(--color-border);border-radius:0 0 var(--radius-btn) var(--radius-btn);background:#fff;outline:none;min-height:150px;padding:14px;line-height:1.7}.rich-editor:focus{border-color:var(--color-primary-light)}.rich-editor-loading{color:var(--color-text-muted);font-size:13px}.rich-editor-error{color:var(--color-danger);margin-top:6px;font-size:12px}.tiptap-editor p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--color-text-muted);pointer-events:none}.tiptap-editor>:first-child{margin-top:0}.tiptap-editor>:last-child{margin-bottom:0}.tiptap-editor h1,.rich-content h1{margin:.55em 0 .35em;font-size:26px;line-height:1.25}.tiptap-editor h2,.rich-content h2{margin:.6em 0 .35em;font-size:21px;line-height:1.3}.tiptap-editor h3,.rich-content h3{margin:.65em 0 .35em;font-size:17px;line-height:1.35}.tiptap-editor p,.rich-content p{margin:.45em 0}.tiptap-editor ul,.tiptap-editor ol,.rich-content ul,.rich-content ol{margin:.55em 0;padding-left:1.65em}.tiptap-editor ul,.rich-content ul{list-style:outside}.tiptap-editor ol,.rich-content ol{list-style:decimal}.tiptap-editor li,.rich-content li{margin:.2em 0}.tiptap-editor blockquote,.rich-content blockquote{border-left:3px solid var(--color-primary-light);background:var(--color-primary-50);color:var(--color-text-secondary);border-radius:0 8px 8px 0;margin:.7em 0;padding:.35em .9em}.tiptap-editor a,.rich-content a{color:var(--color-primary-dark);text-decoration:underline}.tiptap-editor hr,.rich-content hr{border:0;border-top:1px solid var(--color-border);margin:1em 0}.tiptap-editor img,.rich-content img{border:1px solid var(--color-border);max-width:100%;height:auto;box-shadow:var(--shadow-sm);border-radius:12px;margin:.85em auto;display:block}.tiptap-editor img.ProseMirror-selectednode{border-color:var(--color-primary);outline:3px solid #2563eb33}.rich-content{color:var(--color-text-secondary);word-wrap:break-word;overflow-wrap:break-word;font-size:14px;line-height:1.75;overflow:hidden}.rich-content *{box-sizing:border-box;max-width:100%}.rich-content>:first-child{margin-top:0}.rich-content>:last-child{margin-bottom:0}.rich-content h1,.rich-content h2,.rich-content h3{color:var(--color-text);line-height:1.35}.rich-content .daily-card-content{font-size:13px}.rich-content .daily-card-content .card-section{margin-bottom:8px;padding:8px 10px;overflow:hidden}.rich-content .daily-card-content ul,.rich-content .daily-card-content ol{padding-left:14px}.rich-content .daily-card-content li{word-break:break-all}.inspiration-card{padding:var(--space-card);overflow:hidden}.card-heading-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-title{letter-spacing:-.01em;color:var(--color-text);margin:3px 0 10px;font-size:16px;font-weight:700}.eyebrow{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.eyebrow svg{width:13px;height:13px}.icon-button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .18s;display:inline-flex}.icon-button:hover{color:var(--color-danger);background:#fff1f3}.icon-button.edit-button:hover{background:var(--color-primary-50);color:var(--color-primary)}.icon-button svg{width:16px;height:16px}.inspiration-card-actions{align-items:center;gap:2px;display:inline-flex}.inspiration-editor-card{scroll-margin-top:84px}.inspiration-editor-card .section-title{margin-top:3px}.inspiration-editor-actions{gap:8px;margin-top:12px;display:flex}.inspiration-editor-actions .btn-primary{flex:1}.source-line{border-radius:var(--radius-btn);background:var(--color-info-bg);color:var(--color-text-muted);margin-top:12px;padding:9px 11px;font-size:12px}.card-footer{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:10px;margin-top:14px;font-size:11px;display:flex}.tag-pill{background:var(--color-info-bg);color:var(--color-text-secondary);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:500;display:inline-flex}.tag-manage-pill{background:var(--color-info-bg);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:12px;display:inline-flex}.tag-manage-pill button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;padding:0 2px;display:inline-flex}.tag-manage-pill button svg{width:12px;height:12px}.empty-state{text-align:center;color:var(--color-text-muted);padding:34px;font-size:14px}.session-row{border-bottom:1px solid var(--color-border);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 0;font-size:13px;display:grid}.session-row:last-child{border-bottom:0}.session-row strong{font-variant-numeric:tabular-nums}.overview-grid{margin-bottom:var(--space-section);grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (width<=560px){.overview-grid{grid-template-columns:1fr 1fr}}.compact-select{border:1px solid var(--color-border);border-radius:var(--radius-btn);color:var(--color-text);appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238b97ac' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat;padding:7px 28px 7px 10px;font-size:13px}.compact-action{padding:7px 14px;font-size:12px}.heading-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.duration-control{align-items:center;gap:8px;display:flex}.duration-control button{border:1px solid var(--color-border);border-radius:var(--radius-btn);width:40px;height:40px;color:var(--color-primary);cursor:pointer;background:#fff;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.duration-control button:active{background:var(--color-primary-50);transform:scale(.92)}.duration-control button svg{width:16px;height:16px}.duration-control input{border:1px solid var(--color-border);border-radius:var(--radius-btn);text-align:center;width:86px;height:40px;color:var(--color-text);font:inherit;font-variant-numeric:tabular-nums;background:#fff;font-weight:700}.duration-control span{color:var(--color-text-muted);font-size:13px}.custom-date-box{border-radius:var(--radius-btn);background:var(--color-info-bg);padding:10px}.date-chip{border:1px solid var(--color-border);border-radius:var(--radius-btn);color:var(--color-text-secondary);cursor:pointer;background:#fff;padding:5px 10px;font-size:12px}.focus-task-list{margin-top:2px}.focus-task-row{border-bottom:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;display:grid}.focus-task-row:last-child{border-bottom:0}.focus-task-row.completed .task-select-button{opacity:.5;text-decoration:line-through}.mini-check{border:1.5px solid var(--color-border-strong);color:#fff;cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:inline-flex}.mini-check svg{width:13px;height:13px}.mini-check.checked{border-color:var(--color-primary);background:var(--color-primary)}.task-select-button{min-width:0;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;padding:2px 0}.task-select-button strong,.task-select-button span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-select-button span{color:var(--color-text-muted);margin-top:3px;font-size:11px}.focus-pie-layout{grid-template-columns:1fr;place-items:center;gap:18px;padding:14px 0 20px;display:grid}.focus-pie{aspect-ratio:1;border-radius:50%;place-items:center;width:150px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #141f3c0a}.focus-pie:after{content:"";box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;position:absolute;inset:18px}.focus-pie>div{z-index:1;color:var(--color-text);text-align:center;place-content:center;display:grid;position:relative}.focus-pie strong,.focus-pie span{display:block}.focus-pie strong{color:var(--color-deep);font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.focus-pie span{color:var(--color-text-muted);font-size:10px}.focus-pie-legend{width:100%}.focus-pie-legend>div{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:5px 0;font-size:12px;display:grid}.focus-pie-legend i{border-radius:50%;width:9px;height:9px}.focus-pie-legend span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.focus-pie-legend strong{font-variant-numeric:tabular-nums}.session-detail-list{border-top:1px solid var(--color-border);padding-top:14px}.session-detail-list h3{margin:0 0 6px;font-size:14px}.quick-grid{margin-bottom:var(--space-section);grid-template-columns:1fr 1fr;gap:12px;display:grid}.quick-action{border-radius:var(--radius-card);color:var(--color-text);border:1px solid var(--color-border);box-shadow:var(--shadow-md);background:#fff;align-items:center;gap:12px;padding:14px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.quick-action:hover{border-color:var(--color-primary-200)}.quick-action:active{transform:scale(.97)}.quick-action .icon-chip{width:36px;height:36px}.quick-action .icon-chip svg{width:17px;height:17px}.home-memory-card{width:100%;margin:0 0 var(--space-section);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text);text-align:left;cursor:pointer;box-shadow:var(--shadow-md);background:#fff;flex-direction:column;padding:18px;transition:border-color .2s;display:flex}.home-memory-card:hover{border-color:var(--color-primary-200)}.home-memory-face{flex-direction:column;flex:1;display:flex}.home-memory-face .eyebrow{flex-shrink:0}.home-memory-title{letter-spacing:-.01em;color:var(--color-text);margin-top:8px;font-size:17px;font-weight:700;line-height:1.45;display:block}.home-memory-tags{margin-top:10px}.home-memory-hint{border-top:1px dashed var(--color-border-strong);color:var(--color-primary);flex-shrink:0;align-items:center;gap:5px;margin-top:14px;padding-top:12px;font-size:12px;font-weight:600;display:inline-flex}.home-memory-hint svg{transform-origin:50%;width:14px;height:14px;animation:2.8s ease-in-out infinite hintFlip}@keyframes hintFlip{0%,70%,to{transform:rotateY(0)}85%{transform:rotateY(180deg)}}.home-memory-answer{border-top:1px dashed var(--color-border-strong);color:var(--color-text-secondary);margin-top:12px;padding-top:12px;font-size:13px;line-height:1.65}.home-memory-answer>:first-child{margin-top:0}.home-memory-answer>:last-child{margin-bottom:0}.daily-news-card{overflow:hidden}.news-loading{color:var(--color-text-muted);text-align:center;padding:22px 10px;font-size:13px}.news-error{border-radius:var(--radius-btn);background:var(--color-accent-50);color:var(--color-accent);justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:12px;display:flex}.news-error a{color:var(--color-primary);flex-shrink:0;font-weight:600}.news-columns{grid-template-columns:1fr;gap:16px;display:grid}.news-group{min-width:0}.news-group h3{color:var(--color-deep);margin:0 0 7px;font-size:13px}.news-group a{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:9px 0;text-decoration:none;display:block}.news-group a:hover strong{color:var(--color-primary)}.news-group strong,.news-group span{display:block}.news-group strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.45;overflow:hidden}.news-group span{color:var(--color-text-muted);margin-top:3px;font-size:10px;line-height:1.5}.api-key-status{color:var(--color-text-muted);margin-top:8px;font-size:11px}.api-key-status.configured{color:var(--color-primary)}.daily-read-card{overflow:hidden}.daily-card-header{border-bottom:1px solid var(--color-border);margin-bottom:12px;padding-bottom:10px}.daily-card-header h3{color:var(--color-deep);margin:0;font-size:15px;line-height:1.4}.daily-card-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;display:flex}.daily-card-content{color:var(--color-text);word-wrap:break-word;overflow-wrap:break-word;font-size:13px;line-height:1.8}.daily-card-content *{max-width:100%}.daily-card-content img{max-width:100%;height:auto}.daily-card-content table{max-width:100%;display:block;overflow-x:auto}.daily-card-content .card-section{background:var(--color-bg-subtle);border-radius:var(--radius);border:1px solid var(--color-border);margin-bottom:16px;padding:12px 14px}.daily-card-content .card-section:last-child{margin-bottom:0}.daily-card-content h3{color:var(--color-deep);margin:0 0 8px;font-size:14px}.daily-card-content h4{color:var(--color-primary);margin:10px 0 5px;font-size:13px}.daily-card-content p{margin:4px 0 8px}.daily-card-content ul,.daily-card-content ol{margin:4px 0 8px;padding-left:18px}.daily-card-content li{margin-bottom:4px}.daily-card-content strong{color:var(--color-deep)}.daily-card-content blockquote{border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#3b82f60a;margin:8px 0;padding:6px 12px;font-style:italic}.journal-date-nav{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;margin-bottom:16px;display:grid}.journal-date-nav .input{text-align:center}.journal-period-tabs{margin-bottom:var(--space-section)}.focus-time-chart-card{overflow:hidden}.focus-time-chart-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.focus-time-chart-heading .section-title{margin-bottom:3px}.focus-time-chart-heading p{color:var(--color-text-muted);margin:0;font-size:11px}.focus-time-chart-value{border-radius:var(--radius-btn);background:var(--color-primary-50);min-width:112px;color:var(--color-text-muted);text-align:right;padding:7px 10px;font-size:11px}.focus-time-chart-value strong,.focus-time-chart-value span{display:block}.focus-time-chart-value strong{color:var(--color-deep);font-variant-numeric:tabular-nums;font-size:20px;line-height:1}.focus-time-chart-value.active span{margin-top:3px}.focus-time-chart-empty{min-height:150px;color:var(--color-text-muted);place-items:center;font-size:12px;display:grid}.focus-time-chart-scroll{scrollbar-width:thin;padding:8px 0 2px;overflow-x:auto}.focus-time-chart{height:210px;padding:4px 8px 24px 38px;position:relative}.focus-time-chart-grid{pointer-events:none;position:absolute;inset:4px 8px 24px 38px}.focus-time-chart-grid>div{border-top:1px dashed #2563eb24;position:absolute;left:0;right:0}.focus-time-chart-grid span{color:var(--color-text-muted);font-size:9px;position:absolute;top:-7px;right:calc(100% + 7px)}.focus-time-bars{z-index:1;justify-content:space-around;align-items:flex-end;gap:8px;height:100%;display:flex;position:relative}.focus-time-bar{min-width:24px;max-width:54px;height:100%;color:var(--color-text-muted);cursor:pointer;font:inherit;background:0 0;border:0;flex:1 0 24px;grid-template-rows:1fr 20px;gap:4px;padding:0;font-size:9px;display:grid}.focus-time-bar-track{background:var(--color-bg-soft);border-radius:7px 7px 3px 3px;align-items:flex-end;width:100%;min-height:0;display:flex;overflow:hidden}.focus-time-bar-track i{background:linear-gradient(#60a5fa,#2563eb);border-radius:7px 7px 3px 3px;width:100%;min-height:0;transition:height .3s,filter .2s;display:block}.focus-time-bar:hover .focus-time-bar-track i,.focus-time-bar.selected .focus-time-bar-track i{filter:brightness(1.1)}.focus-time-bar.selected .focus-time-bar-track{outline-offset:2px;outline:2px solid #2563eb33}.focus-time-bar>span:last-child{white-space:nowrap}.focus-time-bar .visually-muted{opacity:.32}.journal-summary>div{text-align:center;padding:8px 4px}.journal-summary span,.journal-summary em{color:var(--color-text-muted);font-size:11px;font-style:normal;display:block}.journal-summary strong{color:var(--color-deep);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:4px 0;font-size:24px;font-weight:800;display:block}.distribution-row{grid-template-columns:42px 1fr 92px;align-items:center;gap:10px;padding:6px 0;font-size:12px;display:grid}.distribution-row>div{background:var(--color-bg-soft);border-radius:999px;height:6px;overflow:hidden}.distribution-row i{border-radius:inherit;background:linear-gradient(90deg,#60a5fa,#2563eb);height:100%;display:block}.distribution-row strong{text-align:right;font-variant-numeric:tabular-nums;font-size:11px}.journal-module-row{border-bottom:1px solid var(--color-border);grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:9px 0;font-size:12px;display:grid}.journal-module-row:last-child{border-bottom:0}.journal-module-row strong{font-variant-numeric:tabular-nums}.practice-review-section{border-top:1px solid var(--color-border);margin-top:32px;padding-top:24px}.review-section-heading{margin-bottom:var(--space-section);justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.review-section-heading h2{letter-spacing:-.01em;color:var(--color-text);margin:4px 0;font-size:20px;font-weight:800}.review-section-heading p{color:var(--color-text-muted);margin:0;font-size:13px}.review-section-heading .btn-primary{flex-shrink:0}.practice-form{margin-bottom:var(--space-section)}.practice-form h3{margin:0 0 14px}.practice-form-grid{grid-template-columns:1fr;gap:10px;margin-bottom:10px;display:grid}.practice-form label{color:var(--color-text-muted);gap:5px;font-size:12px;display:grid}.practice-note{resize:vertical;min-height:80px;margin-bottom:10px}.practice-overview{margin-bottom:var(--space-section);grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.module-accuracy-row{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(90px,1fr) 54px;align-items:center;gap:6px 12px;padding:10px 0;font-size:12px;display:grid}.module-accuracy-row:last-child{border-bottom:0}.module-accuracy-row>div:first-child strong,.module-accuracy-row>div:first-child span{display:block}.module-accuracy-row>div:first-child span{color:var(--color-text-muted);margin-top:3px;font-size:10px}.accuracy-track{background:var(--color-bg-soft);border-radius:999px;grid-area:2/1/auto/-1;height:7px;overflow:hidden}.accuracy-track i{border-radius:inherit;background:linear-gradient(90deg,#60a5fa,#2563eb);height:100%;display:block}.module-accuracy-row>strong{text-align:right;color:var(--color-deep);font-variant-numeric:tabular-nums}.practice-record-row{border-bottom:1px solid var(--color-border);grid-template-columns:1fr auto;gap:10px;padding:10px 0;display:grid}.practice-record-row:last-child{border-bottom:0}.practice-record-row strong,.practice-record-row span{display:block}.practice-record-row span{color:var(--color-text-muted);margin-top:3px;font-size:11px}.practice-record-row p{color:var(--color-text-secondary);margin:7px 0 0;font-size:12px}.recent-row{border-bottom:1px solid var(--color-border);padding:9px 0}.recent-row strong,.recent-row span{display:block}.recent-row span{color:var(--color-text-muted);margin-top:2px;font-size:11px}.app-loading{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.app-loading-inner{text-align:center}.app-loading-logo{border:1px solid var(--color-border);color:#fff;background:#fff;border-radius:18px;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:12px;display:inline-flex;overflow:hidden;box-shadow:0 8px 24px #2563eb2e}.app-loading-logo svg{width:28px;height:28px}.app-loading-logo img{object-fit:cover;width:100%;height:100%}.app-loading-text{color:var(--color-text-muted);letter-spacing:.1em;font-size:13px}.auth-feature{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:5px;padding:7px 12px;font-size:12px;display:inline-flex}.auth-feature svg{width:13px;height:13px;color:var(--color-primary)}.auth-tabs{background:var(--color-bg);border-radius:12px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-tabs button{min-height:38px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;font-weight:650}.auth-tabs button.active{background:var(--color-bg-card);color:var(--color-primary);box-shadow:0 2px 8px #0f172a14}.auth-error{color:var(--color-danger);background:#fff1f3;border-radius:10px;margin-bottom:14px;padding:10px 14px;font-size:13px}.settings-row{align-items:center;gap:12px;display:flex}.settings-row-title{font-size:15px;font-weight:600}.settings-row-desc{color:var(--color-text-secondary);font-size:13px}.module-pill{background:var(--color-info-bg);color:var(--color-text-secondary);border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;display:inline-flex}.module-pill button{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:0 2px;display:inline-flex}.module-pill button svg{width:12px;height:12px}@media (width>=480px){.practice-form-grid,.news-columns{grid-template-columns:1fr 1fr}.module-accuracy-row{grid-template-columns:minmax(100px,.8fr) minmax(100px,1.2fr) 58px}.module-accuracy-row .accuracy-track{grid-area:auto}}@media (width<=360px){.overview-grid,.practice-overview{grid-template-columns:1fr 1fr}.overview-grid .stat-card:last-child,.practice-overview .stat-card:last-child{grid-column:1/-1}.rating-grid,.journal-summary{grid-template-columns:1fr 1fr}.journal-summary>div:last-child{grid-column:1/-1}.review-section-heading{display:block}.review-section-heading .btn-primary{margin-top:12px}.focus-time-chart-heading{display:block}.focus-time-chart-value{text-align:left;margin-top:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.heatmap-scroll{scrollbar-width:thin;padding:4px 0 2px;overflow-x:auto}.heatmap-body{grid-template-rows:auto auto;grid-template-columns:auto auto;gap:5px 8px;display:inline-grid}.heatmap-months{color:var(--color-text-muted);grid-area:1/2;grid-template-columns:repeat(18,13px);gap:3px;font-size:10px;display:grid}.heatmap-months span{white-space:nowrap}.heatmap-weekdays{color:var(--color-text-muted);grid-area:2/1;grid-template-rows:repeat(7,13px);gap:3px;width:16px;font-size:9px;line-height:13px;display:grid}.heatmap-grid{grid-area:2/2;grid-template-rows:repeat(7,13px);grid-template-columns:repeat(18,13px);grid-auto-flow:column;gap:3px;display:grid}.heatmap-cell{background:#e3e9f2;border-radius:3.5px;width:13px;height:13px;transition:transform .15s}.heatmap-cell:hover{transform:scale(1.25)}.heatmap-cell.l1{background:#2563eb33}.heatmap-cell.l2{background:#2563eb6b}.heatmap-cell.l3{background:#2563eba8}.heatmap-cell.l4{background:#2563ebeb}.heatmap-legend{color:var(--color-text-muted);justify-content:flex-end;align-items:center;gap:4px;margin-top:10px;font-size:10px;display:flex}.heatmap-legend .heatmap-cell{width:10px;height:10px}.heatmap-total{font-variant-numeric:tabular-nums}.review-info-panel{display:none}@media (width>=768px){:root{--container-max:736px;--space-page:24px}.app-header{padding:12px 24px}.quick-grid{grid-template-columns:repeat(4,1fr)}.hero-countdown-num{font-size:64px}.page-header{padding:26px 2px 16px}.review-setup{padding:28px}.review-type-grid{grid-template-columns:1fr}.review-setup-intro{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);align-items:center}.review-module-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.review-setup-actions{flex-direction:row;justify-content:flex-end}.review-setup-actions .btn-primary{min-width:220px}.focus-task-card .focus-task-list{grid-template-columns:1fr 1fr;column-gap:18px;display:grid}.focus-task-card .focus-task-list>.empty-state{grid-column:1/-1}.home-duo{margin-bottom:var(--space-section);grid-template-columns:auto 1fr;align-items:stretch;gap:20px;display:grid}.home-duo>.section-card,.home-duo>.home-memory-card{margin-bottom:0}.home-duo>.home-memory-card{width:100%;height:100%}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}.settings-grid .card{margin-bottom:0!important}.review-layout{grid-template-columns:5fr 6fr;align-items:stretch;gap:20px;display:grid}.review-info-panel{text-align:center;background:var(--gradient-deep);-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);border-radius:var(--radius-card);box-shadow:var(--shadow-deep), inset 0 1px 0 #ffffff6b;color:#fff;border:1px solid #ffffff59;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:36px 28px;display:flex}.review-info-panel .eyebrow{color:#ffffffe0;justify-content:center;font-size:12px}.review-info-panel h2{letter-spacing:-.01em;color:#fff;margin:0;font-size:27px;font-weight:800;line-height:1.4}.review-info-progress{color:var(--color-deep);font-variant-numeric:tabular-nums;background:#fff;border:1px solid #0000;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.review-info-hint{color:#ffffffc7;margin:0;font-size:12px}.review-card-head,.review-progress-top{display:none}}@media (width>=1100px){:root{--container-max:1040px}.inspiration-list{grid-template-columns:1fr 1fr}.inspiration-list>.empty-state{grid-column:1/-1}.focus-columns{margin-bottom:var(--space-section);grid-template-columns:1fr 1fr;align-items:stretch;gap:20px;display:grid}.focus-columns .standard-timer,.focus-columns .section-card{margin-bottom:0}.focus-col-left{grid-column:1/-1}.focus-col-right{display:contents}.focus-settings-card{grid-area:2/1}.focus-task-card{grid-area:2/2}.focus-col-right>.task-creator{grid-area:3/1}.journal-duo{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.journal-duo>.card{margin-bottom:0}}.task-select-button span.task-badges{white-space:normal;flex-wrap:wrap;align-items:center;gap:5px;margin:4px 0 0;display:flex;overflow:visible}.task-badges .task-badge{text-overflow:ellipsis;white-space:nowrap;border-radius:6px;align-items:center;gap:3px;margin-top:0;padding:2px 8px;font-size:10px;font-weight:600;line-height:1.5;display:inline-flex;overflow:hidden}.task-badge svg{width:11px;height:11px}.task-badge.status-done{color:#059669;background:#ecfdf5}.task-badge.status-doing{background:var(--color-accent-50);color:var(--color-accent)}.task-badge.status-pending{background:var(--color-bg-soft);color:var(--color-text-muted)}.task-badge.module{background:var(--color-primary-50);color:var(--color-primary-dark)}.task-badge.recurring{color:#7c3aed;background:#f5f3ff}.focus-task-row .icon-button{justify-self:end}.focus-task-row.selected{background:var(--color-primary-50);box-shadow:inset 0 0 0 1.5px var(--color-primary-light);border-bottom-color:#0000;border-radius:12px;margin:0 -10px;padding-left:10px;padding-right:10px}.focus-task-row.selected .task-select-button strong{color:var(--color-primary-dark)}.modal-overlay{z-index:200;padding:calc(24px + var(--safe-top)) 16px calc(24px + var(--safe-bottom));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;background:#0f172a73;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-modal);width:100%;max-width:560px;max-height:none;box-shadow:var(--shadow-lg);margin:auto 0;padding:20px}.source-suggest-wrap{position:relative}.source-suggest{z-index:30;border:1px solid var(--color-border);border-radius:var(--radius-btn);box-shadow:var(--shadow-md);background:#fff;max-height:200px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden auto}.source-suggest button{text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;border:0;padding:10px 14px;font-size:14px;display:block}.source-suggest button:hover{background:var(--color-bg-soft)}.switch{background:var(--color-border-strong);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:48px;height:28px;padding:0;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0f172a40}.switch.on{background:var(--color-primary)}.switch.on:after{transform:translate(20px)}.review-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.review-toolbar .review-progress{margin:0}.review-toolbar-actions{gap:8px;display:flex}.review-card-edit{z-index:2;position:absolute;top:12px;right:12px}.image-lightbox{z-index:9999;touch-action:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000e0;justify-content:center;align-items:center;animation:.18s lightbox-fade;display:flex;position:fixed;inset:0}.image-lightbox img{object-fit:contain;cursor:zoom-out;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:none;will-change:transform;border-radius:8px;max-width:92vw;max-height:88vh}@keyframes lightbox-fade{0%{opacity:0}to{opacity:1}}.bar-chart{width:100%;height:auto;display:block}.bar-value-label{fill:var(--color-text-secondary);font-size:10px;font-weight:700}.legend-swatch{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:4px;display:inline-block}.all-records-panel{flex-direction:column;width:min(560px,92vw);max-height:72vh;display:flex}.all-records-panel .modal-panel-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:10px;display:flex}.all-records-panel .modal-panel-header h3{margin:0}.all-records-list{padding:4px 2px;overflow-y:auto}.all-records-list .practice-record-row{margin-bottom:8px}.practice-source-tag{vertical-align:1px;background:var(--color-primary-50);color:var(--color-primary-dark);border-radius:999px;margin-right:6px;padding:3px 6px;font-size:10px;line-height:1;display:inline-block}.card-heading-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.card-heading-row h3{margin:0}.review-heading-title h2{margin:4px 0}.chart-zoom-controls{flex-direction:column;gap:6px;margin-top:10px;display:flex}.chart-zoom-range{color:var(--color-text-muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.chart-zoom-range-label{font-variant-numeric:tabular-nums}.chart-zoom-count{opacity:.7}.chart-zoom-slider-row{align-items:center;gap:8px;display:flex}.chart-zoom-slider{min-width:0;accent-color:var(--color-primary);flex:1;height:20px}.chart-zoom-btn{border-radius:var(--radius-btn);border:1px solid var(--color-border);background:var(--color-bg-card);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.chart-zoom-btn:disabled{opacity:.4;cursor:not-allowed}.chart-zoom-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.journal-week-picker{flex-direction:column;align-items:center;gap:2px;display:flex}.journal-week-picker .input{min-width:150px}.journal-week-range{color:var(--color-text-muted);font-size:11px}.journal-summary{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width<=560px){.journal-summary{grid-template-columns:1fr 1fr}}.practice-heading-actions{flex-wrap:nowrap;gap:8px;display:flex}.practice-heading-actions .btn-ghost,.practice-heading-actions .btn-primary{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}@media (width<=560px){.practice-heading-actions{gap:6px;width:100%}.practice-heading-actions .btn-ghost,.practice-heading-actions .btn-primary{flex:1;justify-content:center;padding:7px 6px;font-size:12px}.practice-heading-actions svg{width:13px;height:13px}}.review-error-banner{border-radius:var(--radius-btn);color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;margin:8px 0 12px;padding:8px 12px;font-size:12px}.rich-content table,.tiptap-editor table{border-collapse:collapse;width:100%;margin:.7em 0;font-size:13px;line-height:1.6}.rich-content th,.rich-content td,.tiptap-editor th,.tiptap-editor td{border:1px solid var(--color-border);text-align:left;vertical-align:top;padding:6px 10px}.rich-content th,.tiptap-editor th{background:var(--color-primary-50);color:var(--color-text);white-space:nowrap;font-weight:700}.rich-content tr:nth-child(2n) td,.tiptap-editor tr:nth-child(2n) td{background:var(--color-bg-subtle,#7f7f7f0a)}.btn-canvas-entry{border-radius:var(--radius-btn,10px);background:var(--color-accent,#f59e0b);color:#fff;cursor:pointer;border:0;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:700;transition:transform .12s,box-shadow .12s;display:inline-flex;box-shadow:0 4px 12px #f59e0b59}.btn-canvas-entry:hover{transform:translateY(-1px);box-shadow:0 6px 16px #f59e0b73}.btn-canvas-entry:active{transform:translateY(0)}.save-toast{z-index:2000;box-shadow:var(--shadow-md);pointer-events:none;white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;animation:.22s save-toast-in;display:inline-flex;position:fixed;top:14px;left:50%;transform:translate(-50%)}.save-toast-saving{color:#075985;background:#e0f2fe;border:1px solid #bae6fd}.save-toast-success{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.save-toast-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}@keyframes save-toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.review-embedded{flex-direction:column;height:100%;display:flex}.review-embedded .review-start-stack{flex:1;padding:16px;overflow-y:auto}.review-split{flex:1;align-items:stretch;gap:16px;min-height:0;padding:16px;display:flex}.review-split.full{z-index:2;background:#fff;position:absolute;inset:0}.review-split-left,.review-split-right{border:1px solid var(--color-border);min-width:0;box-shadow:var(--shadow-md);background:var(--color-bg-card);backface-visibility:hidden;border-radius:20px;flex:50%;position:relative;overflow:hidden}.review-split-left{flex-direction:column;padding:20px 24px;display:flex}.review-split-left-top{flex:none;align-items:center;gap:8px;display:flex}.review-split-progress{color:var(--color-text-muted);margin-right:auto;font-size:12.5px}.review-split-title{text-align:center;color:var(--color-text);word-break:break-word;flex:1;justify-content:center;align-items:center;margin:12px 0;font-size:34px;font-weight:700;line-height:1.35;display:flex}.review-split-left-bottom{flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.review-split-right{flex-direction:column;align-items:stretch;display:flex}.review-split-reveal{border:2px dashed var(--color-primary-200);color:var(--color-primary);cursor:pointer;background:0 0;border-radius:16px;align-self:center;align-items:center;gap:10px;margin:auto;padding:18px 34px;font-size:16px;font-weight:600;transition:all .16s;display:inline-flex}.review-split-reveal:hover{background:var(--color-primary-50);border-style:solid}.review-split-answer{cursor:default;flex-direction:column;flex:1;gap:12px;min-height:0;padding:18px 20px 8px;display:flex;overflow-y:auto}.review-split-rating{background:var(--color-bg-card);border-top:1px solid var(--color-border);flex:none;margin:0;padding:10px 20px 16px}.review-split-answer-card{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;flex:none;padding:20px 22px}.review-split-answer-card .review-answer{font-size:15.5px;line-height:1.85}.review-split-answer .rating-grid{flex:none;margin-top:auto}.review-split-answer .source-line{margin-top:8px}.flashcard-library-screen,.flashcard-studio-stage{z-index:460;color:#1e293b;background:radial-gradient(circle at 18% 8%,#bfdbfe99,#0000 32%),radial-gradient(circle at 86% 86%,#e0e7ffb3,#0000 38%),linear-gradient(145deg,#f8fbff,#eef5ff 52%,#f8faff);position:fixed;inset:0;overflow:hidden}.flashcard-library-screen:before,.flashcard-studio-stage:before{content:"";pointer-events:none;background-image:radial-gradient(circle,#60a5fa24 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#00000057,#0000 64%);mask-image:linear-gradient(#00000057,#0000 64%)}.flashcard-library-toolbar{z-index:2;min-height:72px;padding:calc(12px + var(--safe-top,0px)) 24px 12px;-webkit-backdrop-filter:blur(24px)saturate(150%);backdrop-filter:blur(24px)saturate(150%);background:#ffffff9e;border-bottom:1px solid #ffffffd1;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:18px;display:grid;position:relative;box-shadow:0 10px 34px #1e40af14}.flashcard-library-heading{gap:2px;min-width:112px;display:grid}.flashcard-library-heading strong{letter-spacing:-.02em;font-size:17px}.flashcard-library-heading span{color:#64748b;font-size:11px}.flashcard-library-tags{scrollbar-width:none;overscroll-behavior-inline:contain;align-items:center;gap:8px;min-width:0;display:flex;overflow-x:auto}.flashcard-library-tags::-webkit-scrollbar{display:none}.flashcard-library-tags button{color:#64748b;cursor:pointer;background:#ffffffad;border:1px solid #94a3b847;border-radius:999px;flex:none;min-height:38px;padding:8px 15px;transition:color .18s,border-color .18s,background .18s,transform .18s;box-shadow:0 5px 16px #3341550d}.flashcard-library-tags button:hover{color:#2563eb;border-color:#93c5fd;transform:translateY(-1px)}.flashcard-library-tags button.active{color:#fff;background:linear-gradient(135deg,#60a5fa,#4f6fe9);border-color:#0000;box-shadow:0 8px 22px #2563eb38}.flashcard-library-grid{z-index:1;height:calc(100% - 72px - var(--safe-top,0px));grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-auto-rows:max-content;align-content:start;gap:clamp(14px,2vw,26px);padding:clamp(20px,3vw,42px);display:grid;position:relative;overflow:auto}.flashcard-library-grid>.flashcard-cover{content-visibility:auto;contain-intrinsic-size:240px 320px}.flashcard-library-status{z-index:470;align-content:center;place-items:center;gap:18px;display:grid}.flashcard-library-status>.compact-action{top:calc(16px + var(--safe-top,0px));position:absolute;left:18px}.flashcard-library-empty{color:#64748b;text-align:center;grid-column:1/-1;padding:70px 20px}.flashcard-cover{isolation:isolate;aspect-ratio:3/4;color:#1e293b;text-align:left;cursor:pointer;background:linear-gradient(160deg,#fffffff5,#f7faffe0);border:1px solid #fffffff5;border-radius:24px;flex-direction:column;justify-content:center;align-self:start;width:100%;min-width:0;padding:clamp(18px,2.2vw,30px);transition:transform .24s cubic-bezier(.22,1,.36,1),box-shadow .24s,border-color .24s;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 48px #1e40af1f,inset 0 1px #fff}.flashcard-cover[aria-disabled=true]{cursor:default}.flashcard-cover:not([aria-disabled=true]):hover{border-color:#93c5fde6;transform:translateY(-6px);box-shadow:0 28px 58px #1e40af2e,inset 0 1px #fff}.flashcard-cover-glow{z-index:-1;aspect-ratio:1;filter:blur(22px);background:#bfdbfe73;border-radius:50%;width:68%;position:absolute;top:-18%;right:-30%}.flashcard-cover-title{text-align:center;overflow-wrap:anywhere;width:100%;max-height:72%;font-size:clamp(17px,1.55vw,26px);font-weight:680;line-height:1.58;overflow:auto}.flashcard-cover-title>:first-child{margin-top:0}.flashcard-cover-title>:last-child{margin-bottom:0}.flashcard-cover-image{object-fit:contain;border-radius:12px;max-width:100%;max-height:72%;margin:auto;display:block}.flashcard-cover-meta{color:#64748b;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;font-size:11px;display:grid;position:absolute;bottom:16px;left:18px;right:18px}.flashcard-cover-meta span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.flashcard-cover-meta>:nth-child(2){color:#54709e;text-align:center;font-weight:650}.flashcard-cover-meta>:last-child{text-align:right}.flashcard-cover-review-status{color:#ef4444;font-weight:700}.flashcard-cover.compact{aspect-ratio:auto;border-radius:17px;height:188px;min-height:188px;padding:18px 14px 42px;box-shadow:0 8px 18px #1e40af14}.flashcard-cover.compact .flashcard-cover-title{max-height:112px;font-size:14px;line-height:1.5}.flashcard-cover.compact .flashcard-cover-image{max-height:112px}.flashcard-cover.compact .flashcard-cover-meta{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:4px 8px;font-size:8px;bottom:9px;left:10px;right:10px}.flashcard-cover.compact .flashcard-cover-meta>:nth-child(2){grid-area:1/1/auto/-1}.flashcard-cover.compact .flashcard-cover-meta>:first-child{text-align:left;grid-area:2/1}.flashcard-cover.compact .flashcard-cover-meta>:last-child{grid-area:2/2}.flashcard-studio-stage{padding:calc(18px + var(--safe-top,0px)) 18px calc(18px + var(--safe-bottom,0px))}.flashcard-studio-main{z-index:2;transform-origin:50%;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.5vw,22px);width:100%;height:100%;display:grid;position:relative}.flashcard-studio-cover-pane,.flashcard-studio-answer-pane{-webkit-backdrop-filter:blur(24px)saturate(145%);backdrop-filter:blur(24px)saturate(145%);background:#ffffff94;border:1px solid #ffffffe6;border-radius:28px;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 68px #1e40af21,inset 0 1px #fffffff5}.flashcard-studio-cover-pane{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;justify-content:stretch;align-items:stretch;padding:0;overflow:visible}.flashcard-studio-cover-pane>.flashcard-cover-stack{isolation:isolate;width:100%;height:100%;position:relative}.flashcard-cover-stack>.flashcard-cover-swipe{z-index:2;width:100%;height:100%;position:relative}.flashcard-cover-stack>.flashcard-cover-swipe>.flashcard-cover,.flashcard-cover-stack>.flashcard-cover-underlay>.flashcard-cover{aspect-ratio:auto;width:100%;height:100%}.flashcard-cover-underlay{z-index:1;opacity:0;pointer-events:none;transition:opacity .16s,transform .2s cubic-bezier(.22,1,.36,1);position:absolute;inset:8px 6px -8px;transform:translateY(12px)scale(.965)}.flashcard-cover-stack[data-swipe-direction=left]>.flashcard-cover-underlay.next,.flashcard-cover-stack[data-swipe-direction=right]>.flashcard-cover-underlay.previous{opacity:1;transform:translateY(8px)scale(.975)}.flashcard-studio-actions{z-index:3;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;top:14px;left:calc(50% + 18px);right:14px}.flashcard-studio-actions>span{color:#64748b;text-align:left;flex:1;font-size:12px}.flashcard-studio-actions-right{gap:6px;display:flex}.flashcard-studio-actions-right>*{pointer-events:auto}.flashcard-studio-back{z-index:9;color:#64748b;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#ffffffc2;border:1px solid #94a3b847;border-radius:999px;align-items:center;gap:6px;min-height:38px;padding:7px 13px;display:inline-flex;position:absolute;top:16px;left:16px;box-shadow:0 6px 18px #1e40af14}.flashcard-studio-back svg{width:16px;height:16px}.flashcard-studio-answer-pane{background:#ffffffe0}.flashcard-studio-reveal{color:#5b72a3;cursor:pointer;background:0 0;border:0;align-content:center;place-items:center;gap:8px;width:100%;height:100%;display:grid}.flashcard-studio-reveal svg{color:#5b8df6;filter:drop-shadow(0 8px 18px #2563eb40);width:36px;height:36px}.flashcard-studio-reveal strong{font-size:clamp(21px,2vw,30px)}.flashcard-studio-reveal span{color:#94a3b8;font-size:12px}.flashcard-studio-answer-scroll{flex:1;min-height:0;padding:clamp(22px,4vw,62px);position:relative;overflow:auto}.flashcard-studio-answer-card{min-height:100%;box-shadow:none;background:0 0;border:0;border-radius:0;padding:clamp(18px,2.5vw,34px)}.flashcard-studio-answer-card .rich-content{font-size:clamp(14px,1.2vw,17px);line-height:1.85}.flashcard-studio-answer-card img{max-width:100%;height:auto}.flashcard-studio-flip-back{color:#94a3b8;cursor:pointer;background:0 0;border:0;margin:14px auto 0;padding:8px 14px;display:block}.flashcard-studio-answer-pane>.rating-grid{background:#ffffffdb;border-top:1px solid #cbd5e1a6;flex:none;margin:0;padding:12px 18px 16px}.flashcard-swipe-surface{transform-origin:50% 115%;will-change:transform;touch-action:none;border-radius:24px;min-width:0;min-height:0;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .18s;position:relative}.flashcard-swipe-surface.dragging{transition:box-shadow .18s}.flashcard-swipe-surface.committing{transition:transform .22s cubic-bezier(.55,.02,.75,.3),opacity .22s}.flashcard-answer-swipe{border-radius:inherit;flex-direction:column;flex:1;width:100%;height:100%;display:flex;overflow:hidden}.flowmark-toolbar{background:#fffffff5;border:1px solid #dbeafe;border-radius:18px;gap:4px;padding:6px;display:flex;box-shadow:0 8px 28px #1e3a8a26}.flowmark-toolbar button{cursor:pointer;background:0 0;border:0;border-radius:12px;min-width:36px;min-height:36px;padding:6px}.flowmark-toolbar button:hover{background:#eff6ff}.flashcard-answer-swipe>.flashcard-studio-answer-scroll{touch-action:none;flex:1}.flashcard-answer-swipe .rich-content,.flashcard-answer-swipe .rich-content *{touch-action:none;-webkit-user-drag:none}.flashcard-answer-swipe>.rating-grid{background:#ffffffdb;border-top:1px solid #cbd5e1a6;flex:none;margin:0;padding:12px 18px 16px}.flashcard-answer-swipe[data-swipe-ready=left]{box-shadow:0 0 0 4px #22c55ed1,0 28px 64px #16a34a38}.flashcard-answer-swipe[data-swipe-ready=right]{box-shadow:0 0 0 4px #ef4444d1,0 28px 64px #dc262638}.flashcard-answer-swipe[data-swipe-ready=up]{box-shadow:0 0 0 4px #3b82f6d1,0 28px 64px #2563eb38}.flashcard-swipe-hint{z-index:8;letter-spacing:.08em;opacity:0;pointer-events:none;background:#ffffffe6;border:2px solid;border-radius:10px;padding:7px 13px;font-size:15px;font-weight:800;transition:opacity .15s;position:absolute}.flashcard-swipe-hint.swipe-left{color:#16a34a;top:34px;right:24px;transform:rotate(8deg)}.flashcard-swipe-hint.swipe-right{color:#dc2626;top:34px;left:24px;transform:rotate(-8deg)}.flashcard-swipe-hint.swipe-up{color:#2563eb;bottom:30px;left:50%;transform:translate(-50%)}.flashcard-cover-swipe .flashcard-swipe-hint{color:#64748b;background:#fffffff0;border-color:#64748b80}.flashcard-swipe-surface[data-swipe-ready=left] .swipe-left,.flashcard-swipe-surface[data-swipe-ready=right] .swipe-right,.flashcard-swipe-surface[data-swipe-ready=up] .swipe-up{opacity:1}.flashcard-studio-drawer{z-index:6;width:min(340px,86vw);padding:calc(12px + var(--safe-top,0px)) 12px calc(12px + var(--safe-bottom,0px));-webkit-backdrop-filter:blur(26px)saturate(150%);backdrop-filter:blur(26px)saturate(150%);background:#f6faffeb;border-right:1px solid #ffffffd9;flex-direction:column;transition:transform .32s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%);box-shadow:20px 0 60px #1e40af2e}.flashcard-studio-stage.drawer-open .flashcard-studio-drawer{transform:translate(0)}.flashcard-studio-drawer-head{flex:none;grid-template-columns:1fr auto auto;align-items:center;gap:8px;min-height:48px;padding:4px 4px 12px;display:grid}.flashcard-studio-drawer-head span{color:#64748b;font-size:11px}.flashcard-studio-drawer-list{align-content:start;gap:10px;min-height:0;padding:2px 4px 22px;display:grid;overflow-y:auto}.flashcard-studio-drawer-list>div{content-visibility:auto;contain-intrinsic-size:188px;min-height:188px}.flashcard-studio-drawer-list>.active .flashcard-cover{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33,0 14px 30px #2563eb1f}.flashcard-studio-drawer-anchor{z-index:7;color:#2563eb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;background:#ffffffe6;border:1px solid #ffffffeb;border-left:0;border-radius:0 16px 16px 0;place-items:center;width:34px;height:74px;padding:0;transition:left .32s cubic-bezier(.22,1,.36,1),background .18s;display:grid;position:fixed;top:50%;left:0;transform:translateY(-50%);box-shadow:8px 8px 24px #1e40af29}.flashcard-studio-drawer-anchor svg{width:18px;height:18px}.flashcard-studio-stage.drawer-open .flashcard-studio-drawer-anchor{left:min(340px,86vw)}body.flashcard-review-fullscreen .modal-overlay{z-index:520}@media (width<=760px){.flashcard-library-toolbar{grid-template-columns:auto 1fr;gap:10px;padding-left:10px;padding-right:10px}.flashcard-library-toolbar>.compact-action{min-height:44px}.flashcard-library-heading{text-align:right}.flashcard-library-tags{grid-column:1/-1}.flashcard-library-grid{height:calc(100% - 112px - var(--safe-top,0px));grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}.flashcard-cover{border-radius:18px;padding:12px}.flashcard-cover-title{font-size:14px}.flashcard-cover-meta{font-size:9px;bottom:9px;left:10px;right:10px}.flashcard-studio-stage{padding:calc(8px + var(--safe-top,0px)) 8px calc(8px + var(--safe-bottom,0px))}.flashcard-studio-main{grid-template-rows:minmax(250px,.82fr) minmax(280px,1.18fr);grid-template-columns:1fr;gap:8px}.flashcard-studio-cover-pane,.flashcard-studio-answer-pane{border-radius:20px}.flashcard-studio-cover-pane{padding:56px 14px 18px}.flashcard-studio-cover-pane>.flashcard-cover-stack{width:100%;height:100%;max-height:none}.flashcard-studio-progress{display:none}.flashcard-studio-answer-scroll{padding:12px}.flashcard-studio-answer-card{border-radius:15px;padding:15px}}.flashcard-studio-stage.native-portrait{padding:calc(8px + var(--safe-top,0px)) 8px calc(8px + var(--safe-bottom,0px))}.flashcard-studio-stage.native-portrait .flashcard-studio-main{display:block}.flashcard-studio-stage.native-portrait .flashcard-studio-cover-pane,.flashcard-studio-stage.native-portrait .flashcard-studio-answer-pane{border-radius:22px;position:absolute;inset:0}.flashcard-studio-stage.native-portrait .flashcard-studio-cover-pane{padding:58px 8px 12px}.flashcard-studio-stage.native-portrait .flashcard-studio-cover-pane>.flashcard-cover-stack{width:100%;height:100%;max-height:none}.flashcard-studio-stage.native-portrait .flashcard-studio-answer-pane{padding-top:54px}.flashcard-studio-stage.native-portrait:not(.revealed) .flashcard-studio-answer-pane,.flashcard-studio-stage.native-portrait.revealed .flashcard-studio-cover-pane{display:none}.flashcard-studio-stage.native-portrait.revealed .flashcard-studio-answer-pane{display:flex}.flashcard-studio-stage.native-portrait .flashcard-studio-answer-scroll{padding:10px 12px}.flashcard-studio-stage.native-portrait .flashcard-studio-answer-card{padding:14px 10px}.flashcard-studio-stage.native-portrait .flashcard-studio-actions{top:10px;left:10px;right:10px}@media (prefers-reduced-motion:reduce){.flashcard-cover,.flashcard-studio-drawer,.flashcard-studio-drawer-anchor{transition:none!important}}@media (width<=640px){.review-split{flex-direction:column;gap:10px;padding:10px;position:relative}.review-split-title{font-size:26px}.review-split-left,.review-split-right{flex:none;position:absolute;inset:10px}.review-split-right,.review-split.revealed .review-split-left{display:none}.review-split.revealed .review-split-right{display:flex}}.clarify-shell{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.clarify-head{border-bottom:1px solid var(--color-border);background:var(--color-bg-card);flex-wrap:wrap;flex:none;align-items:center;gap:12px;padding:12px 20px;display:flex}.clarify-title{align-items:center;gap:6px;font-size:15px;font-weight:700;display:inline-flex}.clarify-modules{flex-wrap:wrap;flex:1;gap:6px;min-width:0;display:flex}.clarify-module{border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;border-radius:9999px;padding:5px 12px;font-size:12px;transition:all .15s}.clarify-module:hover{border-color:var(--color-primary-200);color:var(--color-primary)}.clarify-module.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.clarify-body{flex:1;min-height:0;display:flex;position:relative}.clarify-history{border-right:1px solid var(--color-border);background:#f2f4f6;flex-direction:column;flex:none;width:250px;display:flex}.clarify-history-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:12px 14px;font-size:13px;font-weight:600;display:flex}.clarify-new-btn{border:1px dashed var(--color-primary-200);color:var(--color-primary);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin:10px 10px 6px;padding:8px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.clarify-new-btn:hover{background:var(--color-primary-50);border-style:solid}.clarify-history-list{flex:1;padding:6px;overflow-y:auto}.clarify-history-item{cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:9px 10px;font-size:12.5px;display:flex}.clarify-history-item:hover{background:var(--color-bg-hover,#f1f5f9)}.clarify-history-item.active{background:var(--color-primary-50);color:var(--color-primary);font-weight:600}.clarify-history-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.clarify-main{background:#fff;flex-direction:column;flex:1;min-width:0;display:flex}.clarify-chat{background:#fff;flex:1;min-width:0;overflow-y:auto}.clarify-chat-inner{max-width:760px;margin:0 auto;padding:24px 20px 12px}.clarify-empty{text-align:center;color:var(--color-text-muted);padding:90px 20px}.clarify-empty h3{color:var(--color-text);letter-spacing:.2px;margin:0;font-size:18px;font-weight:600}.clarify-msg{justify-content:flex-start;padding:8px 0;display:flex}.clarify-msg.user{justify-content:flex-end}.clarify-bubble{word-break:break-word;background:#f4f6f8;border:1px solid #e7ebf0;border-radius:16px 16px 16px 6px;max-width:78%;padding:12px 16px;font-size:13.5px;line-height:1.7}.clarify-msg.user .clarify-rich,.clarify-msg.user .clarify-rich strong{color:#fff}.clarify-msg.user .clarify-cite{color:#fff;background:#ffffff2e;border-color:#fff6}.clarify-msg.user .clarify-bubble{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);border-bottom-right-radius:6px;border-bottom-left-radius:16px}.clarify-rich{white-space:normal}.clarify-rich p{margin:.3em 0}.clarify-rich strong{color:var(--color-primary);font-weight:700}.clarify-rich h3{color:var(--color-primary);margin:.5em 0 .2em;font-size:14px}.clarify-rich ul,.clarify-rich ol{margin:.3em 0;padding-left:1.4em}.clarify-rich .katex-display{margin:.3em 0}.clarify-images{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.clarify-images img{border:1px solid var(--color-border);border-radius:8px;max-width:180px;max-height:140px}.clarify-cite{border:1px solid var(--color-primary-200);background:var(--color-primary-50);color:var(--color-primary);cursor:pointer;vertical-align:-1px;white-space:nowrap;border-radius:8px;align-items:center;gap:4px;margin:0 3px;padding:1px 8px;font-size:12px;display:inline-flex}.clarify-cite:hover{background:#dbeafe}.clarify-thinking{color:var(--color-text-muted);align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.clarify-footer{border-top:1px solid var(--color-border);background:#fff;flex:none;padding:6px 20px 14px}.clarify-hint{max-width:760px;color:var(--color-text-muted);margin:0 auto 8px;padding:0 6px;font-size:11.5px}.clarify-composer{background:#fff;border:1px solid #d8dee7;border-radius:18px;flex-direction:column;gap:4px;max-width:760px;margin:0 auto;padding:10px 12px 8px;display:flex;box-shadow:0 4px 24px #0f172a14}.clarify-composer-row{align-items:flex-end;gap:8px;display:flex}.clarify-composer-controls{border-top:1px dashed #e7ebf0;justify-content:flex-end;align-items:center;gap:8px;padding-top:8px;display:flex}.clarify-model-select{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;outline:none;padding:2px 4px;font-size:11.5px}.clarify-think-toggle{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:9999px;padding:3px 10px;font-size:11.5px;transition:all .15s}.clarify-think-toggle:hover{border-color:var(--color-primary-200);color:var(--color-primary)}.clarify-think-toggle.active{background:var(--color-primary-50);border-color:var(--color-primary-200);color:var(--color-primary);font-weight:600}.clarify-composer:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.clarify-composer:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent)}}.clarify-input{resize:none;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:6px 4px;font-size:13.5px}.clarify-pending-img{color:var(--color-primary);background:var(--color-primary-50);border-radius:8px;flex:none;padding:3px 8px;font-size:11.5px}.clarify-send{flex:none;height:36px}.clarify-thinking-box{background:#7f7f7f14;border-radius:8px;margin:0 0 8px}.clarify-thinking-box summary{cursor:pointer;color:var(--color-text-muted);-webkit-user-select:none;user-select:none;padding:6px 10px;font-size:11px}.clarify-thinking-box[open] summary{margin-bottom:6px}.clarify-thinking-chars{color:var(--color-text-muted);margin-left:6px;font-size:11px;font-weight:400}.clarify-thinking-seconds{color:var(--color-text-muted);white-space:nowrap;margin-left:10px;font-size:11px}.clarify-thinking-box summary:hover{color:var(--color-text-secondary)}.clarify-thinking-text{max-height:140px;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word;padding:0 10px 8px;font-size:11.5px;line-height:1.7;overflow-y:auto}.clarify-modal{z-index:400;background:#0f172a73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.clarify-modal-card{background:var(--color-bg-card);width:min(680px,100%);max-height:82vh;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;display:flex}.clarify-modal-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:10px;padding:16px 20px;display:flex}.clarify-modal-body{flex:1;min-height:0;padding:16px 20px;overflow-y:auto}@media (width<=640px){.clarify-bubble{max-width:90%}.clarify-history{z-index:20;padding-bottom:var(--tabbar-height);box-shadow:var(--shadow-lg);position:absolute;top:0;bottom:0;left:0}.clarify-composer{padding:6px 8px}.clarify-modules{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.clarify-modules::-webkit-scrollbar{display:none}.clarify-module{white-space:nowrap;flex:none}}@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-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}:root{--color-bg:#eef2f8;--color-bg-soft:#e8edf6;--color-bg-card:#f8fafd;--color-bg-elevated:#fbfcff;--color-primary:#315fdc;--color-primary-dark:#244bb8;--color-primary-light:#e7edff;--color-primary-subtle:#f0f4ff;--color-text:#18233d;--color-text-secondary:#596984;--color-text-muted:#7b88a1;--color-border:#7484a42e;--color-border-strong:#5a6c9142;--color-surface-edge:#677a9e30;--color-success:#2f9b72;--color-success-light:#e7f6ef;--color-warning:#b67a23;--color-warning-light:#fff4dd;--color-danger:#c64b58;--color-danger-light:#fdecef;--radius-sm:11px;--radius-btn:15px;--radius-card:24px;--radius-modal:28px;--shadow-xs:4px 5px 11px #5c6c8c1c, -2px -2px 5px #ffffff7a;--shadow-sm:7px 8px 18px #5c6c8c1f, -3px -3px 7px #ffffff80;--shadow-md:12px 14px 30px #58698b24, -4px -4px 10px #ffffff80;--shadow-lg:18px 20px 45px #4e5f822b, -5px -5px 13px #ffffff85;--shadow-inset:inset 3px 3px 8px #5b6c8f21, inset -2px -2px 6px #ffffffad;--shadow-primary:0 10px 24px #315fdc3d, inset 0 1px #fff3;--container-max:560px;--page-gutter:20px;--header-height:64px;--tabbar-height:72px}html,body,#root{background:var(--color-bg);color:var(--color-text)}body{font-feature-settings:"kern" 1, "tnum" 1;font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif}::selection{color:var(--color-primary-dark);background:#ccd9ff}:focus-visible{outline-offset:3px;outline:3px solid #315fdc45}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.btn,.btn-primary,.btn-secondary,.icon-button,.quick-action,.tabbar-item{transition:color .16s,background .18s,border-color .18s,box-shadow .18s,transform .18s}.app-shell{width:100%;max-width:var(--container-max);background:radial-gradient(circle at 8% -4%, #ffffff8f, transparent 29%), radial-gradient(circle at 96% 16%, #d0ddff85, transparent 27%), var(--color-bg);flex-direction:column;height:100dvh;min-height:100dvh;margin:0 auto;display:flex;overflow:hidden}.app-shell.canvas-shell{max-width:none}.page-view{width:100%;min-width:0;padding-inline:var(--page-gutter)}.app-header{border-bottom:1px solid var(--soundscape-liquid-edge);-webkit-backdrop-filter:blur(22px)saturate(158%)brightness(1.06);backdrop-filter:blur(22px)saturate(158%)brightness(1.06);background:linear-gradient(#ffffff9e,#f4f9ff7a);border-radius:0 0 22px 22px;position:sticky;box-shadow:0 12px 30px #46587b1f,0 6px 16px #537abc1a,inset 0 1px #ffffffeb,inset 0 -1px #637fb01f,inset 12px 0 26px #fff3}.app-header:after{z-index:0;content:"";pointer-events:none;border:1px solid #ffffff38;border-radius:0 0 19px 19px;position:absolute;inset:3px}.app-header>*{z-index:1;position:relative}.header-fox-logo{object-fit:contain;filter:drop-shadow(0 4px 7px #e25c1433);width:34px;height:28px}.header-actions{flex:none;align-items:center;gap:8px;display:flex}.header-brand img,.header-logo{filter:drop-shadow(0 5px 9px #315fdc29)}.header-title,.view-title,.section-title,.card-title,h1,h2,h3{color:var(--color-text);letter-spacing:-.025em}.muted,.view-subtitle,.section-subtitle,.card-subtitle{color:var(--color-text-muted)}.card,.stat-card,.quick-action,.journal-day,.review-card,.settings-section,.inspiration-card,.clarify-session-item,.clarify-composer,.focus-card{border:1px solid var(--color-surface-edge);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);background:linear-gradient(145deg,#ffffffb8,#f2f6fceb)}.card:hover,.quick-action:hover,.inspiration-card:hover{box-shadow:var(--shadow-md);border-color:#315fdc26}.btn-primary,button.btn-primary{color:#fff;border-radius:var(--radius-btn);box-shadow:var(--shadow-primary);background:linear-gradient(145deg,#3b6be7,#2854c9);border:1px solid #274cb561;font-weight:750}.btn-primary:hover:not(:disabled),button.btn-primary:hover:not(:disabled){background:linear-gradient(145deg,#4474ee,#2c59d0);box-shadow:0 13px 28px #315fdc47,inset 0 1px #ffffff3d}.btn-secondary,button.btn-secondary,.icon-button,.btn-icon{color:var(--color-text-secondary);border:1px solid var(--color-surface-edge);border-radius:var(--radius-btn);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#fbfcff,#e9eef6)}.btn-secondary:hover:not(:disabled),button.btn-secondary:hover:not(:disabled),.icon-button:hover:not(:disabled),.btn-icon:hover:not(:disabled){color:var(--color-primary);box-shadow:var(--shadow-sm);border-color:#315fdc2b}.btn-primary:disabled,.btn-secondary:disabled,.icon-button:disabled{opacity:.52;box-shadow:none}.input,input.input,textarea.input,select.input,.search-input,.rich-editor{color:var(--color-text);box-shadow:var(--shadow-inset);background:#e8edf6bd;border:1px solid #6c7ea029;border-radius:14px}.input:focus,input.input:focus,textarea.input:focus,select.input:focus,.search-input:focus-within,.rich-editor:focus-within{background:#f5f8fd;border-color:#315fdc75;box-shadow:inset 2px 2px 5px #5b6c8f14,0 0 0 3px #315fdc1a}.tag,.tag-pill,.module-tag,.filter-chip,.status-pill,.topic-chip{color:var(--color-text-secondary);background:#eef2f8e6;border:1px solid #6d7ea02b;border-radius:999px;box-shadow:inset 1px 1px 3px #61729114,inset -1px -1px 2px #ffffffc2}.active,.is-active,[aria-selected=true]{--active-color:var(--color-primary)}.tab-group,.segmented-control,.auth-tabs{box-shadow:var(--shadow-inset);background:#e1e7f1c7;border:1px solid #697a9a1f;border-radius:16px;padding:5px}.tab-group button.active,.segmented-control button.active,.auth-tabs button.active,.tab-group [aria-selected=true],.segmented-control [aria-selected=true]{color:var(--color-primary-dark);border-color:var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#fff,#edf2fa)}.tabbar{padding:7px max(10px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));border-top:1px solid var(--soundscape-liquid-edge);-webkit-backdrop-filter:blur(22px)saturate(158%)brightness(1.06);backdrop-filter:blur(22px)saturate(158%)brightness(1.06);background:linear-gradient(#ffffff9e,#f4f9ff7a);border-radius:22px 22px 0 0;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 30px #46587b1f,0 6px 16px #537abc1a,inset 0 1px #ffffffeb,inset 0 -1px #637fb01f,inset 12px 0 26px #fff3}.tabbar:after{z-index:0;content:"";pointer-events:none;border:1px solid #ffffff38;border-radius:19px 19px 0 0;position:absolute;inset:3px}.tabbar-indicator{z-index:1}.tabbar-inner{border:1px solid var(--color-surface-edge);max-width:620px;box-shadow:var(--shadow-inset);background:#e4e9f285;border-radius:20px;margin:0 auto;padding:3px;position:relative}.tabbar-item{min-width:0;min-height:51px;color:var(--color-text-muted);border-radius:16px;flex-direction:column;gap:3px}.tabbar-item>span:last-child{opacity:1;white-space:nowrap;max-width:100%;font-size:10px;font-weight:650;line-height:1;display:block}.tabbar-item svg{width:20px;height:20px}.tabbar-item.active{color:var(--color-primary);text-shadow:0 1px #ffffffb3;flex-grow:1}.tabbar-indicator{border:1px solid var(--color-surface-edge);background:linear-gradient(145deg,#fffffff5,#edf2faf5);border-radius:16px;height:auto;top:3px;bottom:3px;box-shadow:5px 6px 13px #53668921,-2px -2px 5px #ffffff7a}.auth-shell{background:radial-gradient(circle at 18% 14%, #ffffff94, transparent 30%), radial-gradient(circle at 85% 78%, #c3d3ff8a, transparent 34%), var(--color-bg);place-content:center;justify-items:center;gap:24px;min-height:100dvh;padding:40px 20px;display:grid}.auth-brand{text-align:center;justify-items:center;gap:8px;display:grid}.auth-brand img{object-fit:contain;width:142px;height:142px;box-shadow:none;filter:drop-shadow(0 18px 24px #dd58122e);background:0 0;border:0;border-radius:0}.auth-brand-name{color:var(--color-text);letter-spacing:.08em;font-size:clamp(27px,4vw,34px);font-weight:850;line-height:1.15}.auth-brand p{color:var(--color-text-secondary);margin:0;font-size:14px}.auth-features{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.auth-feature{color:var(--color-text-secondary);border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-xs);background:#f7fafec2;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:650;display:inline-flex}.auth-feature svg{width:16px;color:var(--color-primary)}.auth-panel-wrap{width:min(100%,430px)}.auth-panel{width:100%;box-shadow:var(--shadow-lg);border-radius:30px;padding:28px}.auth-tabs{grid-template-columns:1fr 1fr;margin-bottom:25px;display:grid}.auth-tabs button{min-height:40px;color:var(--color-text-muted);background:0 0;border:1px solid #0000;border-radius:12px;font-weight:700}.auth-kicker{color:var(--color-primary);letter-spacing:.08em;margin:0 0 5px;font-size:12px;font-weight:800}.auth-title{margin:0 0 24px;font-size:clamp(25px,6vw,32px)}.auth-submit{justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;display:inline-flex}.auth-submit svg{width:18px}.auth-note{text-align:center;max-width:32ch;margin:18px auto 0;font-size:11px;line-height:1.65}.auth-error{color:var(--color-danger);background:var(--color-danger-light);border:1px solid #c64b5829;border-radius:12px;margin:0 0 14px;padding:10px 12px;font-size:13px}.ai-thinking-status{min-width:0;color:var(--color-text-secondary);box-shadow:var(--shadow-inset);background:#ecf1f9d6;border:1px solid #7789aa24;border-radius:16px;align-items:center;gap:11px;padding:10px 13px 10px 10px;display:inline-flex}.ai-thinking-status.compact{border-radius:12px;gap:8px;padding:6px 9px 6px 7px}.ai-thinking-orb{filter:drop-shadow(0 5px 7px #315fdc2e);border-radius:50%;flex:none;place-items:center;display:grid;overflow:hidden}.ai-thinking-copy{gap:2px;min-width:0;display:grid}.ai-thinking-copy strong{color:var(--color-text-secondary);font-size:12px;line-height:1.2}.ai-thinking-copy small{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.soft-card-deck{cursor:pointer;outline:none;place-items:center;width:188px;height:118px;display:grid;position:relative}.soft-card-deck-item{width:72px;height:94px;color:var(--color-text-secondary);border:1px solid var(--color-surface-edge);background:linear-gradient(150deg,#fff,#e8eef8);border-radius:16px;place-items:end center;padding:12px 7px;display:grid;position:absolute;box-shadow:8px 10px 18px #4c5e8224,-3px -3px 7px #ffffff7a}.soft-card-deck-item:before{content:"";height:34px;box-shadow:var(--shadow-inset);background:linear-gradient(145deg,#315fdc33,#54b7a61a);border-radius:10px;position:absolute;inset:11px 11px auto}.soft-card-deck-item span{font-size:10px;font-weight:750}.home-view,.focus-view,.inspirations-view,.review-view,.journal-view,.settings-view,.clarify-view{color:var(--color-text)}.home-hero,.inspiration-hero,.review-hero,.focus-hero,.hero-card{border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-md);background:linear-gradient(145deg,#fbfdfff0,#e5ecf9eb);border-radius:28px}.home-hero:before,.inspiration-hero:before,.review-hero:before,.focus-hero:before,.hero-card:before,.hero-card:after{opacity:.34;filter:saturate(.7)}.home-hero h1,.inspiration-hero h1,.review-hero h1,.focus-hero h1,.home-hero p,.inspiration-hero p,.review-hero p,.focus-hero p,.hero-card .label,.hero-card .title,.hero-card .description,.hero-card .hero-greeting,.hero-card .hero-countdown-unit,.hero-card .hero-countdown-num,.hero-card .hero-date,.hero-card .hero-sign{color:var(--color-text);text-shadow:none}.hero-card .label,.hero-card .hero-date,.hero-card .description,.hero-card .hero-countdown-unit{color:var(--color-text-secondary)}.hero-card .label svg{color:var(--color-primary)}.hero-card .hero-countdown-num{color:var(--color-primary-dark)}.hero-card .hero-sign{border-top-color:#6f80a026}.hero-card.home-hero{background:linear-gradient(145deg,#4b80ed,#2d5fd8);border-color:#ffffff75;box-shadow:0 16px 34px #315fdc40,inset 0 1px #ffffff47}.hero-card.home-hero:before,.hero-card.home-hero:after{opacity:.22;filter:saturate(.78)}.hero-card.home-hero .label,.hero-card.home-hero .title,.hero-card.home-hero .description,.hero-card.home-hero .hero-greeting,.hero-card.home-hero .hero-countdown-unit,.hero-card.home-hero .hero-countdown-num,.hero-card.home-hero .hero-date,.hero-card.home-hero .hero-sign{color:#fff}.hero-card.home-hero .label,.hero-card.home-hero .hero-date,.hero-card.home-hero .description,.hero-card.home-hero .hero-countdown-unit{color:#ffffffc7}.hero-card.home-hero .label svg{color:#fff}.hero-card.home-hero .hero-sign{border-top-color:#ffffff38}.home-hero p,.inspiration-hero p,.review-hero p,.focus-hero p{color:var(--color-text-secondary)}.home-hero .btn-secondary,.inspiration-hero .btn-secondary,.review-hero .btn-secondary,.focus-hero .btn-secondary{color:var(--color-text-secondary);background:#f8fafed6}.home-stats,.stats-grid{gap:12px}.stat-card{min-width:0;padding:17px}.stat-label,.stat-unit{color:var(--color-text-muted)}.stat-label svg{color:var(--color-primary)}.stat-value{color:var(--color-text);letter-spacing:-.04em;font-weight:820}.stat-icon,.quick-action-icon,.section-icon,.setting-icon{color:var(--color-primary);border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#f6f9ff,#dfe7f7);border-radius:14px;place-items:center;display:grid}.quick-action{border-radius:20px}.quick-action:active,.inspiration-card:active,.stat-card:active{box-shadow:var(--shadow-inset)}.focus-summary{color:var(--color-text);border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-md);-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(145deg,#fbfdfff5,#e2eaf7f0)}.focus-summary span,.focus-summary em{color:var(--color-text-muted)}.focus-summary strong,.focus-summary .focus-summary-num{color:var(--color-primary-dark)}.focus-dot{color:var(--color-primary-dark);border-color:var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#f7faff,#dce5f5)}.standard-timer{border-color:var(--color-surface-edge);box-shadow:var(--shadow-md);background:linear-gradient(145deg,#fafcfff0,#e8eef8f0);border-radius:28px}.timer-ring-track{stroke:#6c7ea024}.timer-ring-progress{filter:drop-shadow(0 7px 8px #315fdc2e)}.timer-adjust-btn,.duration-control button{color:var(--color-primary);border-color:var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#f9fbff,#e3e9f3)}.timer-adjust-btn:active,.duration-control button:active{box-shadow:var(--shadow-inset)}.timer-ring-subject{box-shadow:inset 2px 2px 5px #5b6c8f14,inset -2px -2px 5px #ffffffbd}.inspiration-hero{justify-content:space-between;align-items:center;gap:18px;display:flex;position:relative;overflow:hidden}.inspiration-hero-copy{z-index:1;flex:1;min-width:0;position:relative}.inspiration-hero-actions{flex-wrap:wrap;gap:9px;display:flex}.inspiration-hero-actions button{white-space:nowrap}.inspiration-hero .btn-secondary,.inspiration-hero .btn-ghost{color:var(--color-text-secondary);border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#fbfcff,#e8edf5)}.inspiration-hero .btn-secondary:hover,.inspiration-hero .btn-ghost:hover{color:var(--color-primary-dark);box-shadow:var(--shadow-sm);background:linear-gradient(145deg,#fff,#e9eef7);border-color:#315fdc29}.inspiration-hero .btn-canvas-entry{color:#fff;border-radius:var(--radius-btn);box-shadow:var(--shadow-primary);background:linear-gradient(145deg,#3b6be7,#2854c9);border:1px solid #274cb561;align-items:center;gap:6px;display:inline-flex}.inspiration-editor-actions button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.inspiration-editor-actions svg{width:16px;height:16px}.inspiration-hero-visual{justify-content:center;align-items:center;min-width:190px;display:flex}.home-inspiration-entry{margin-top:16px}.inspiration-library-entry{min-height:216px;color:var(--color-text);isolation:isolate;background:radial-gradient(circle at 88% 12%,#ffd75233,#0000 24%),linear-gradient(145deg,#fbfdfffa,#e4ecfaf2);border:1px solid #aebedc94;border-radius:28px;grid-template-columns:minmax(0,1fr) minmax(300px,390px);align-items:center;padding:28px clamp(24px,4vw,42px);text-decoration:none;display:grid;position:relative;overflow:hidden;box-shadow:10px 14px 30px #4a5b7e24,-4px -4px 12px #ffffffb8}.inspiration-library-entry:after{z-index:-1;content:"";filter:blur(4px);background:#45c4b11a;border-radius:50%;width:250px;height:250px;position:absolute;bottom:-72px;right:-52px}.inspiration-library-entry:focus-visible{outline-offset:4px;outline:3px solid #315fdc47}.inspiration-library-actions{flex-wrap:wrap;gap:8px;display:flex}.inspiration-library-copy{z-index:2;justify-items:start;gap:11px;max-width:460px;display:grid;position:relative}.inspiration-library-eyebrow,.inspiration-library-cta{align-items:center;gap:7px;font-size:13px;font-weight:750;display:inline-flex}.inspiration-library-eyebrow{color:var(--color-primary-dark)}.inspiration-library-eyebrow svg,.inspiration-library-cta svg{width:17px;height:17px}.inspiration-library-eyebrow svg{color:#e2a528}.inspiration-library-copy h2{letter-spacing:-.025em;max-width:440px;margin:0;font-size:clamp(21px,2.4vw,30px);line-height:1.32}.inspiration-library-cta{color:#fff;background:linear-gradient(145deg,#4779ed,#2c5ed6);border-radius:999px;padding:8px 13px;text-decoration:none;box-shadow:0 8px 18px #315fdc33,inset 0 1px #ffffff52}.inspiration-library-cta.secondary{color:#2c4d91;background:#f4f8ffd1;border:1px solid #748ec440;box-shadow:0 6px 14px #465c871a,inset 0 1px #ffffffb8}.inspiration-library-cta svg{transition:transform .18s}.inspiration-library-entry:hover .inspiration-library-cta svg,.inspiration-library-entry:focus-visible .inspiration-library-cta svg{transform:translate(3px)}.inspiration-real-deck{z-index:1;width:100%;height:170px;position:relative}.inspiration-deck-card{width:112px;height:150px;color:var(--color-text);transform-origin:50% 115%;will-change:transform;background:linear-gradient(150deg,#fffffffa,#e8eff9fa);border:1px solid #abbcdaa8;border-radius:18px;flex-direction:column;align-items:flex-start;padding:12px 11px 10px;display:flex;position:absolute;top:8px;left:calc(50% - 56px);overflow:hidden;box-shadow:9px 12px 22px #41537829,-3px -3px 8px #fffc}.inspiration-deck-card:nth-child(2n){background:linear-gradient(150deg,#f8fffcfa,#dbf2edfa)}.inspiration-deck-card:nth-child(3){background:linear-gradient(150deg,#fff,#e6efff);border-color:#6b8fdd8a}.inspiration-deck-category{max-width:100%;color:var(--color-primary-dark);text-overflow:ellipsis;white-space:nowrap;background:#315fdc1a;border-radius:999px;margin-bottom:9px;padding:3px 7px;font-size:9px;font-weight:760;line-height:1.3;display:block;overflow:hidden}.inspiration-deck-card strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.42;display:-webkit-box;overflow:hidden}.inspiration-deck-card p{color:var(--color-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:7px 0 0;font-size:8px;line-height:1.45;display:-webkit-box;overflow:hidden}.inspiration-deck-tag{color:#2e9d8b;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:auto;font-size:8px;font-weight:720;overflow:hidden}.inspiration-page-actions{border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#f9fcfff0,#e7edf7f0);border-radius:20px;flex-wrap:wrap;gap:9px;margin-bottom:20px;padding:12px;display:flex}.inspiration-page-actions button{white-space:nowrap;justify-content:center;align-items:center;gap:6px;display:inline-flex}.inspiration-page-actions svg{width:16px;height:16px}.inspiration-page-actions .btn-canvas-entry{color:#fff;border-radius:var(--radius-btn);box-shadow:var(--shadow-primary);background:linear-gradient(145deg,#3b6be7,#2854c9);border:1px solid #274cb561}.inspiration-card,.review-card{overflow:clip}.favorite-active,.favorite-active svg{color:#d7952c}.review-answer,.review-question,.journal-content,.inspiration-content{line-height:1.75}.ai-content-note{background:#e7edffb8;border-radius:12px;align-items:flex-start;gap:7px;margin-top:10px;padding:10px 12px;font-size:12px;display:flex}.ai-content-note svg{width:15px;height:15px;color:var(--color-primary);flex:none}.settings-section{overflow:hidden}.setting-row+.setting-row{border-top-color:#7081a021}.settings-details-summary,.settings-bound-status{align-items:center;gap:6px;display:inline-flex}.settings-details-summary{color:var(--color-primary);cursor:pointer}.settings-details-summary svg,.settings-bound-status svg{width:15px;height:15px}.settings-bound-status{color:var(--color-success);margin:0 0 12px}.clarify-sidebar,.clarify-chat,.clarify-mobile-panel{background:#f5f8fcb8;border-color:#6e80a124}.clarify-head{-webkit-backdrop-filter:blur(16px)saturate(125%);backdrop-filter:blur(16px)saturate(125%);background:#f8fafde8;border-bottom-color:#6e80a121;box-shadow:0 7px 22px #485b8012}.clarify-module{color:var(--color-text-muted);border-color:var(--color-surface-edge);box-shadow:var(--shadow-xs);background:linear-gradient(145deg,#fafcff,#e9eef6)}.clarify-module.active{color:#fff;background:linear-gradient(145deg,#3c6ce6,#2a55ca);border-color:#0000;box-shadow:0 7px 16px #315fdc33}.clarify-main,.clarify-chat,.clarify-footer{background:linear-gradient(#f4f7fcc2,#eef3f9c2),radial-gradient(circle,#5e70921f 1px,#0000 1px) 0 0/24px 24px}.clarify-empty{justify-items:center;gap:13px;max-width:560px;margin:0 auto;padding:62px 20px 32px;display:grid}.clarify-empty h3{color:var(--color-text);letter-spacing:-.03em;margin:5px 0 0;font-size:clamp(20px,4vw,26px)}.clarify-empty>p{max-width:39ch;color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.65}.clarify-starters{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:min(100%,520px);margin-top:7px;display:grid}.clarify-starters button{min-width:0;color:var(--color-text-secondary);border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-xs);font:inherit;cursor:pointer;background:linear-gradient(145deg,#fbfcff,#e6ecf6);border-radius:14px;padding:11px 12px;font-size:11px;line-height:1.45}.clarify-starters button:hover{color:var(--color-primary-dark);box-shadow:var(--shadow-sm);border-color:#315fdc2e}.clarify-session-item.active{color:var(--color-primary-dark);box-shadow:var(--shadow-sm);background:linear-gradient(145deg,#f8faff,#e4ebfa);border-color:#315fdc2e}.clarify-message.assistant .clarify-bubble,.clarify-assistant-bubble{border:1px solid var(--color-surface-edge);box-shadow:var(--shadow-sm);background:linear-gradient(145deg,#f9fbff,#e8eef8);border-radius:20px 20px 20px 7px}.clarify-message.user .clarify-bubble,.clarify-user-bubble{color:#fff;background:linear-gradient(145deg,#3e6de5,#2b56ca);border-radius:20px 20px 7px;box-shadow:0 9px 20px #315fdc33}.clarify-composer{box-shadow:0 -3px 24px #485a7d14, var(--shadow-sm);border-radius:22px}.clarify-footer,.clarify-composer-controls{border-top-color:#6e80a121}.clarify-composer textarea{background:0 0}.clarify-thinking{display:block}.clarify-head{padding:9px 18px 10px;display:block}.clarify-head-main{grid-template-columns:42px 1fr auto;align-items:center;gap:10px;display:grid}.clarify-title-wrap{justify-items:center;gap:1px;min-width:0;display:grid}.clarify-online{color:#71819d;align-items:center;gap:5px;font-size:10px;display:inline-flex}.clarify-online i{background:#26c281;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #26c2811f}.clarify-mode-switch{background:#eaf1fcc7;border:1px solid #5b7ebc24;border-radius:999px;gap:3px;padding:3px;display:inline-flex;box-shadow:inset 0 1px 1px #ffffffe6,0 5px 16px #395c9714}.clarify-mode-switch button{color:#66758f;min-height:30px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:5px;padding:0 13px;font-size:11px;display:inline-flex}.clarify-mode-switch button svg{width:14px;height:14px}.clarify-mode-switch button.active{color:#fff;background:linear-gradient(145deg,#63a9ff,#3976ed);box-shadow:0 6px 16px #3976ed3d,inset 0 1px #ffffff57}.clarify-knowledge-row{border-top:1px solid #6e80a11a;align-items:center;gap:10px;min-width:0;margin-top:8px;padding-top:8px;display:flex}.clarify-knowledge-label,.clarify-knowledge-count{color:#64738d;white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:10.5px;display:inline-flex}.clarify-knowledge-label svg{color:#4a83ed;width:14px;height:14px}.clarify-knowledge-label small{color:#9aa7bc;font-size:9.5px}.clarify-knowledge-count{color:#3d73d2;font-weight:600}.clarify-knowledge-row .clarify-modules{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.clarify-knowledge-row .clarify-modules::-webkit-scrollbar{display:none}.clarify-knowledge-row .clarify-module{white-space:nowrap;flex:none;padding:5px 11px}.clarify-knowledge-row .clarify-module:disabled{opacity:.58;cursor:not-allowed}.clarify-voice-stage{--voice-accent:#4d92f3;isolation:isolate;background:radial-gradient(circle at 50% 28%,#9ecfff52,#0000 35%),linear-gradient(145deg,#fafdfff5,#e2effde0);flex-direction:column;flex:1;align-items:center;min-height:0;padding:0;display:flex;position:relative;overflow:hidden}.clarify-voice-scroll{flex-direction:column;flex:1;align-items:center;width:100%;min-height:0;padding:18px 18px 10px;scroll-padding-bottom:14px;display:flex;overflow:auto}.clarify-voice-stage[data-state=speaking]{--voice-accent:#3579ee}.clarify-voice-stage[data-state=thinking]{--voice-accent:#6aa9f4}.clarify-voice-stage[data-state=error]{--voice-accent:#ef6b72}.clarify-voice-stage[data-state=paused]{--voice-accent:#8a9bb5}.clarify-voice-ambient{z-index:-1;filter:blur(46px);pointer-events:none;background:#80bbff1f;border-radius:48% 52% 58% 42%;width:310px;height:310px;animation:12s ease-in-out infinite alternate clarify-ambient-drift;position:absolute}.clarify-voice-ambient.ambient-one{top:7%;left:8%}.clarify-voice-ambient.ambient-two{animation-delay:-6s;bottom:11%;right:5%}.clarify-voice-orb-wrap{justify-items:center;gap:6px;margin-top:auto;display:grid}.clarify-voice-orb{aspect-ratio:1;place-items:center;width:clamp(190px,25vh,285px);transition:transform .42s cubic-bezier(.22,.82,.28,1.12),filter .3s;display:grid;position:relative}.clarify-voice-orb[data-state=listening]{animation:2.8s ease-in-out infinite clarify-orb-breathe}.clarify-voice-orb[data-state=thinking]{animation:2.1s ease-in-out infinite clarify-orb-think}.clarify-voice-orb[data-state=speaking]{animation:1.25s ease-in-out infinite clarify-orb-speak}.clarify-voice-orb-glow{background:color-mix(in srgb, var(--voice-accent) 38%, white);filter:blur(32px);opacity:.58;border-radius:50%;position:absolute;inset:13%}.clarify-voice-orb-core{background:radial-gradient(circle at 34% 22%, #fffffffa, #fff6 30%, transparent 52%), linear-gradient(155deg, #edf8fff5, color-mix(in srgb, var(--voice-accent) 38%, #dbeeff));-webkit-backdrop-filter:blur(12px)saturate(130%);backdrop-filter:blur(12px)saturate(130%);border:1px solid #ffffffeb;border-radius:46% 54% 49% 51%/50% 47% 53% 50%;width:78%;height:78%;position:relative;overflow:hidden;box-shadow:inset -18px -22px 42px #3373dc2e,inset 12px 14px 32px #ffffffc7,0 20px 48px #3571ce33,0 0 0 8px #ffffff4d}.clarify-voice-orb-flow{transform-origin:50% 80%;border-radius:54% 46% 48% 52%;width:112%;height:54%;animation:5.2s ease-in-out infinite alternate clarify-orb-flow;position:absolute;bottom:-5%;left:-8%}.clarify-voice-orb-flow.flow-one{background:linear-gradient(18deg,#2d74efb8,#79c1ff2e);box-shadow:inset 0 15px 18px #ffffff40}.clarify-voice-orb-flow.flow-two{background:linear-gradient(170deg,#9bd3ffb3,#3677e88f);width:132%;animation-delay:-2.6s;bottom:-17%;left:-20%}.clarify-voice-orb-shine{filter:blur(3px);background:linear-gradient(135deg,#ffffffe6,#0000);border-radius:50%;position:absolute;inset:10% 48% 50% 13%;transform:rotate(-18deg)}.clarify-voice-state-copy{text-align:center;justify-items:center;gap:3px;display:grid}.clarify-voice-state-copy strong{color:#3174e7;letter-spacing:-.04em;font-size:clamp(20px,3vw,27px)}.clarify-voice-state-copy span{color:#72819a;max-width:46ch;font-size:11.5px;line-height:1.55}.clarify-voice-stage[data-state=error] .clarify-voice-state-copy strong{color:#db5963}.clarify-voice-transcript{color:#273750;-webkit-backdrop-filter:blur(24px)saturate(135%);backdrop-filter:blur(24px)saturate(135%);background:#f8fcffad;border:1px solid #ffffffe0;border-radius:23px;width:min(720px,96%);margin:13px auto 15px;padding:14px 18px;box-shadow:0 16px 48px #3560a61f,inset 0 1px #ffffffb8}.clarify-voice-transcript-section{min-height:43px;position:relative}.clarify-voice-transcript-section>span:first-child{color:#7d8ca4;font-size:10px}.clarify-voice-transcript-section>p{margin:4px 76px 0 0;font-size:12.5px;line-height:1.58}.clarify-voice-transcript-section.assistant>p{margin-right:0}.clarify-voice-transcript-divider{background:#6b89b924;height:1px;margin:10px 0}.clarify-voice-recall{margin-top:8px}.clarify-waveform{align-items:center;gap:3px;height:24px;display:flex;position:absolute;bottom:7px;right:3px}.clarify-waveform i{background:#4c93f4;border-radius:4px;width:2px;height:9px;animation:.9s ease-in-out infinite alternate clarify-wave}.clarify-waveform i:nth-child(2),.clarify-waveform i:nth-child(6){animation-delay:-180ms}.clarify-waveform i:nth-child(3),.clarify-waveform i:nth-child(5){animation-delay:-360ms}.clarify-waveform i:nth-child(4){animation-delay:-540ms}.clarify-voice-dock{z-index:3;-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);background:#f7fbffc2;border:1px solid #ffffffeb;border-radius:27px;flex:none;grid-template-columns:minmax(78px,auto) minmax(106px,auto) 74px minmax(105px,auto) minmax(76px,auto);align-items:center;gap:7px;width:min(680px,96%);min-height:72px;margin:0 auto 8px;padding:7px 10px;display:grid;position:relative;bottom:auto;box-shadow:0 18px 48px #2856a029,inset 0 1px #fffffff0}.clarify-voice-dock-button,.clarify-voice-picker{color:#53637d;min-width:0;height:46px;font:inherit;background:#ffffff8c;border:1px solid #6789bf1f;border-radius:17px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:10.5px;display:flex}.clarify-voice-dock-button{cursor:pointer}.clarify-voice-dock-button:hover{color:#2e72e6;background:#ffffffd1}.clarify-voice-dock-button:disabled{opacity:.42;cursor:default}.clarify-voice-dock-button.danger{color:#d85963}.clarify-voice-dock-button svg,.clarify-voice-picker>svg{flex:none;width:17px;height:17px}.clarify-voice-picker{padding-right:26px;position:relative}.clarify-voice-picker span{flex:none}.clarify-voice-picker select{appearance:none;color:#53637d;min-width:0;font:inherit;cursor:pointer;background:0 0;border:0;outline:0}.clarify-voice-picker>svg:last-child{pointer-events:none;width:13px;height:13px;position:absolute;right:8px}.clarify-voice-primary{color:#fff;cursor:pointer;background:linear-gradient(145deg,#69b3ff,#2f71ee);border:5px solid #ffffffc7;border-radius:50%;justify-self:center;place-items:center;width:66px;height:66px;transition:transform .18s,box-shadow .18s;display:grid;box-shadow:0 12px 28px #2c6fe759,inset 0 2px #ffffff61,0 0 0 1px #376fdc2e}.clarify-voice-primary:hover{transform:translateY(-2px)scale(1.025);box-shadow:0 15px 34px #2c6fe766,inset 0 2px #ffffff61}.clarify-voice-primary:active{transform:scale(.96)}.clarify-voice-primary svg{width:25px;height:25px}@keyframes clarify-orb-flow{to{border-radius:42% 58% 56% 44%;transform:translate(5%,-8%)rotate(13deg)scale(1.08)}}@keyframes clarify-orb-breathe{50%{transform:scale(1.035)}}@keyframes clarify-orb-think{50%{filter:saturate(.9);transform:scale(.96)rotate(-2deg)}}@keyframes clarify-orb-speak{35%{transform:scale(1.045)}70%{transform:scale(.985)}}@keyframes clarify-ambient-drift{to{transform:translate(60px,-25px)rotate(18deg)}}@keyframes clarify-wave{to{opacity:.45;height:23px}}@media (width<=700px){.clarify-head{padding:7px 9px 8px}.clarify-head-main{grid-template-columns:34px 1fr auto}.clarify-title-wrap{justify-items:start}.clarify-title{font-size:13px}.clarify-mode-switch button{min-height:28px;padding:0 9px;font-size:10px}.clarify-mode-switch button svg{display:none}.clarify-knowledge-row{gap:7px;margin-top:6px;padding-top:6px}.clarify-knowledge-label small,.clarify-knowledge-count{display:none}.clarify-knowledge-label{font-size:0}.clarify-knowledge-label svg{width:17px;height:17px}.clarify-voice-scroll{padding:11px 8px 7px;scroll-padding-bottom:10px}.clarify-voice-orb{width:clamp(156px,23vh,205px)}.clarify-voice-orb-wrap{margin-top:4px}.clarify-voice-state-copy strong{font-size:19px}.clarify-voice-state-copy span{font-size:10px}.clarify-voice-transcript{border-radius:18px;width:calc(100% - 8px);margin:9px auto 10px;padding:11px 12px}.clarify-voice-transcript-section>p{margin-right:58px;font-size:11.5px}.clarify-voice-transcript-section.assistant>p{max-height:50px;overflow:hidden}.clarify-voice-dock{border-radius:23px;grid-template-columns:48px minmax(78px,1fr) 62px 58px 48px;gap:4px;width:calc(100% - 4px);min-height:64px;margin-bottom:6px;padding:5px}.clarify-voice-dock-button,.clarify-voice-picker{border-radius:15px;height:43px;padding:0 6px}.clarify-voice-dock-button span,.clarify-voice-picker>span{display:none}.clarify-voice-picker{padding-right:18px}.clarify-voice-primary{border-width:4px;width:58px;height:58px}}@media (prefers-reduced-motion:reduce){.clarify-voice-orb,.clarify-voice-orb-flow,.clarify-voice-ambient,.clarify-waveform i{animation:none!important}}.focus-settings-card,.focus-task-card{min-width:0}.focus-settings-card .card-heading-row,.focus-task-card .card-heading-row{flex-wrap:wrap}.focus-settings-card .section-title,.focus-task-card .section-title{white-space:nowrap}@media (width>=760px){.auth-shell{grid-template-columns:minmax(260px,390px) minmax(360px,430px);grid-template-areas:"brand panel""features panel";gap:20px 72px}.auth-brand{grid-area:brand}.auth-features{grid-area:features}.auth-panel-wrap{grid-area:panel}}@media (width>=768px){:root{--container-max:min(1024px, calc(100vw - 32px));--page-gutter:24px}.tabbar{padding-left:clamp(24px,7vw,88px);padding-right:clamp(24px,7vw,88px)}}@media (width>=960px){.settings-view{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;align-items:start;gap:20px;display:grid}.settings-view>.page-header,.settings-view>.form-error,.settings-view>.btn-primary:last-child{grid-column:1/-1}.settings-view>.card{min-width:0;margin-bottom:0!important}}@media (width>=1100px){:root{--container-max:min(1200px, calc(100vw - 48px));--page-gutter:28px}@media (orientation:landscape) and (hover:none) and (pointer:coarse){:root{--container-max:100%}}.focus-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.focus-task-card .focus-task-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.tabbar{padding-left:clamp(88px,10vw,140px);padding-right:clamp(88px,10vw,140px)}}@media (width<=640px){:root{--radius-card:21px;--radius-modal:24px}.app-header{-webkit-backdrop-filter:blur(14px)saturate(120%);backdrop-filter:blur(14px)saturate(120%)}.auth-shell{padding-top:max(32px, env(safe-area-inset-top));align-content:start;gap:18px}.auth-brand img{border-radius:24px;width:104px;height:104px}.auth-panel{padding:22px}.inspiration-library-entry{grid-template-columns:1fr;min-height:338px;padding:22px}.inspiration-library-copy{align-self:start;gap:8px}.inspiration-library-copy h2{max-width:285px;font-size:21px}.inspiration-library-cta{padding:7px 12px;font-size:12px}.inspiration-real-deck{width:auto;height:166px;position:absolute;bottom:12px;left:8px;right:8px}.inspiration-deck-card{width:104px;height:144px;left:calc(50% - 52px)}.inspiration-page-actions button{flex:calc(50% - 5px)}.inspiration-page-actions .btn-canvas-entry{flex-basis:100%}.inspiration-hero-visual{transform-origin:100%;min-width:140px;position:absolute;top:64px;right:0;transform:scale(.76)}.inspiration-hero{min-height:258px;display:block}.inspiration-hero-copy .title{max-width:calc(100% - 118px)}.inspiration-hero-actions{align-items:stretch;position:absolute;top:145px;left:18px;right:18px}.inspiration-hero-actions button{flex:calc(50% - 5px);justify-content:center;padding:9px 10px;font-size:11px}.inspiration-hero-actions .btn-canvas-entry{flex-basis:100%}.clarify-empty{padding-top:38px}.clarify-starters{grid-template-columns:1fr}.tabbar-item>span:last-child{font-size:9px}}@media (width<=420px){.app-header{justify-content:flex-start;gap:8px;padding-left:12px;padding-right:12px}.header-stat{min-width:0;margin-right:auto}.header-stat span{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.header-icon-btn{flex:none;width:32px;height:32px}.tabbar{padding-left:4px;padding-right:4px}.tabbar-item{padding-left:2px;padding-right:2px}.tabbar-item>span:last-child{font-size:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--soundscape-glass:#fff9;--soundscape-glass-strong:#ffffffb8;--soundscape-edge:#ffffffc7;--soundscape-border:#7991be33;--soundscape-shadow:0 18px 48px #425b9333, 0 4px 14px #4f70b21f;--soundscape-shadow-soft:0 10px 28px #49629424;--soundscape-ink:#17356f;--soundscape-muted:#6d7d9c;--soundscape-accent:#3478ee;--soundscape-blur:14px;--soundscape-liquid:#ffffff42;--soundscape-liquid-edge:#ffffffd1;--soundscape-liquid-blur:22px;--soundscape-liquid-shadow:0 20px 46px #415d912b, 0 6px 16px #537abc1a, inset 0 1px 0 #ffffffeb, inset 0 -1px 0 #637fb01f, inset 12px 0 26px #fff3}.app-shell{position:relative}.app-main-with-soundscape{scroll-padding-bottom:112px;padding-bottom:96px!important}.app-main-clarify{padding-bottom:var(--tabbar-height)!important}.app-shell--clarify .soundscape-dock{bottom:calc(var(--tabbar-height) + 154px + env(safe-area-inset-bottom,0px))}.app-shell--clarify:has(.clarify-voice-stage) .soundscape-dock{display:none}@media (width<=480px){.app-shell--clarify .soundscape-dock{bottom:calc(var(--tabbar-height) + 172px + env(safe-area-inset-bottom,0px))}}.soundscape-dock{z-index:740;bottom:calc(var(--tabbar-height) + 10px + env(safe-area-inset-bottom,0px));color:var(--soundscape-ink);will-change:transform, opacity;position:absolute}.soundscape-dock-expanded{cursor:pointer;touch-action:pan-y;background:var(--soundscape-liquid);border:1px solid var(--soundscape-liquid-edge);width:min(420px,100% - 24px);min-height:68px;box-shadow:var(--soundscape-liquid-shadow);-webkit-backdrop-filter:blur(var(--soundscape-liquid-blur)) saturate(158%) brightness(1.08);backdrop-filter:blur(var(--soundscape-liquid-blur)) saturate(158%) brightness(1.08);border-radius:999px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;padding:8px 9px 8px 10px;transition:filter .18s,box-shadow .24s;display:grid;left:50%;overflow:hidden}.soundscape-dock-expanded:after{z-index:0;content:"";border-radius:inherit;pointer-events:none;border:1px solid #fff3;position:absolute;inset:3px}.soundscape-dock-expanded>*{z-index:1;position:relative}.soundscape-dock-expanded:hover,.soundscape-dock-expanded:focus-visible{filter:brightness(1.06);box-shadow:0 24px 54px #405e9730,0 7px 18px #486fb21f,inset 0 1px #fffffff0,inset 0 -1px #5675a91c,inset 14px 0 30px #ffffff3d}.soundscape-dock-expanded.is-playing{animation:3.4s ease-in-out infinite soundscape-liquid-breathe}.soundscape-dock-primary,.soundscape-dock-next,.soundscape-round-button,.soundscape-now-playing button,.soundscape-track-row button,.soundscape-delete-mix{color:#58709b;background:#ffffff94;border:1px solid #748fc12e;place-items:center;display:inline-grid;box-shadow:0 5px 14px #4660951c,inset 0 1px #ffffffb8}.soundscape-orb,.soundscape-track-icon{color:#fff;border:1px solid #ffffffa8;border-radius:50%;flex:none;place-items:center;display:inline-grid;box-shadow:0 8px 18px #4b6fb433,inset 0 1px 4px #ffffff8c}.soundscape-orb{width:46px;height:46px}.soundscape-orb svg{width:28px;height:28px}.soundscape-orb.playing{animation:2.1s ease-in-out infinite soundscape-orb-breathe}.tone-blue{background:#457feddb}.tone-cyan{background:#43b8ded6}.tone-lilac{background:#976fe9d6}.tone-green{background:#3bbe8fd1}.tone-amber{background:#eba54bd6}.soundscape-dock-copy{min-width:0;margin-left:10px;line-height:1.1;display:grid}.soundscape-dock-copy strong{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:20px}.soundscape-dock-copy>span{color:#3c65af;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;font-weight:760;overflow:hidden}.soundscape-dock-copy small{display:none}.soundscape-dock-primary{color:#fff;background:#3478eedb;border-color:#ffffffb8;border-radius:50%;width:46px;height:46px;margin-left:4px;box-shadow:0 10px 24px #3469d747,inset 0 1px 4px #ffffff85}.soundscape-dock-primary svg{width:22px;height:22px}.soundscape-dock-next{border-radius:50%;width:38px;height:38px;margin-left:7px}.soundscape-dock-next svg{width:18px;height:18px}.soundscape-dock button:active,.soundscape-studio button:active{transform:scale(.94)}.soundscape-dock-collapsed{left:0;bottom:calc(var(--tabbar-height) + 18px + env(safe-area-inset-bottom,0px))}.soundscape-peek{width:38px;height:74px;color:var(--soundscape-ink);background:var(--soundscape-liquid);border:1px solid var(--soundscape-liquid-edge);-webkit-backdrop-filter:blur(var(--soundscape-liquid-blur)) saturate(160%) brightness(1.08);backdrop-filter:blur(var(--soundscape-liquid-blur)) saturate(160%) brightness(1.08);border-left:0;border-radius:0 999px 999px 0;place-items:center;padding:0;transition:width .18s,filter .18s;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 34px #415d912e,inset 0 1px #fffffff0,inset -10px 0 22px #ffffff3d,inset 0 -1px #5372a61f}.soundscape-peek:hover,.soundscape-peek:focus-visible{filter:brightness(1.08)}.soundscape-peek-disc{transform-origin:50%;background:radial-gradient(circle,#f5fafff5 0 6px,#5d7fbb6b 6px 8px,#f5faff9e 8px 10px,#fff0 10px),repeating-radial-gradient(circle,#ffffff80 0 1.5px,#92b0e029 1.5px 3.5px),conic-gradient(from 210deg,#ffffffa8,#c6dcfc33 70deg,#fff9 140deg,#c6dcfc33 215deg,#ffffffa8 300deg,#c6dcfc42 360deg),#e4f0ff85;border-radius:50%;width:62px;height:62px;position:absolute;top:calc(50% - 31px);left:-31px;box-shadow:inset 0 0 0 1px #ffffffbf,0 8px 18px #476db133}.soundscape-dock-collapsed.is-playing .soundscape-peek-disc{animation:4.8s linear infinite soundscape-cd-spin}.soundscape-peek strong{z-index:1;font-variant-numeric:tabular-nums;letter-spacing:-.055em;font-size:9px;font-weight:820;line-height:1;position:relative;translate:3px}.soundscape-studio{z-index:1100;color:var(--soundscape-ink);overscroll-behavior:contain;will-change:transform, opacity;background-color:#edf4fb;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden auto}.soundscape-studio-backdrop{z-index:0;filter:blur(12px)saturate(126%)brightness(1.04);opacity:1;pointer-events:none;background-color:#f5f9ff;background-image:url(/soundscape-tide-bg.png);background-position:top;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0;transform:scale(1.045)}.soundscape-studio-header{z-index:4;min-height:72px;padding:calc(12px + env(safe-area-inset-top,0px)) clamp(16px, 3vw, 34px) 10px;-webkit-backdrop-filter:blur(12px)saturate(128%);backdrop-filter:blur(12px)saturate(128%);background:#f9fcff7a;border-bottom:1px solid #ffffff8a;grid-template-columns:44px 1fr 44px;align-items:center;display:grid;position:sticky;top:0}.soundscape-studio-header h2{text-align:center;margin:0;font-size:20px}.soundscape-round-button{border-radius:50%;width:42px;height:42px}.soundscape-round-button svg{width:21px;height:21px}.soundscape-studio-layout{z-index:1;width:min(1120px,100% - 18px);min-height:calc(100dvh - 72px);padding:8px clamp(14px, 3vw, 34px) calc(36px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(26px)saturate(142%);backdrop-filter:blur(26px)saturate(142%);background:#ffffff38;border:1px solid #ffffffc2;border-radius:34px;margin:8px auto 18px;display:grid;position:relative;box-shadow:0 30px 80px #48659d29,inset 0 1px #ffffffdb}.soundscape-visual-panel{flex-direction:column;justify-content:flex-start;align-items:center;min-height:470px;padding:clamp(42px,9vh,92px) 18px 30px;display:flex;position:relative}.soundscape-timer-block{justify-items:center;display:grid}.soundscape-full-timer{color:#15356f;font-variant-numeric:tabular-nums;letter-spacing:-.055em;text-shadow:0 8px 26px #ffffffb8;font-size:clamp(52px,15vw,72px);font-weight:820;line-height:1}.soundscape-timer-block>p{color:#367be7;margin:14px 0 0;font-size:16px;font-weight:760}.soundscape-timer-progress{background:#6589cd24;border-radius:999px;width:min(260px,72vw);height:5px;margin-top:24px;overflow:hidden;box-shadow:inset 1px 1px 3px #4d679d24}.soundscape-timer-progress i{border-radius:inherit;transform-origin:0;background:#4384ef;width:100%;height:100%;transition:transform .5s linear;display:block}.soundscape-timer-actions{gap:10px;margin-top:22px;display:flex}.soundscape-main-action,.soundscape-secondary-action{border-radius:16px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:0 18px;font-size:13px;font-weight:760;display:inline-flex}.soundscape-main-action{color:#fff;background:#3478eee6;border:1px solid #ffffffb8;box-shadow:0 12px 26px #3469d740,inset 0 1px 3px #ffffff75}.soundscape-secondary-action{color:#526b99;background:var(--soundscape-glass);border:1px solid var(--soundscape-edge);box-shadow:var(--soundscape-shadow-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.soundscape-main-action svg,.soundscape-secondary-action svg{width:18px;height:18px}.soundscape-now-playing{background:var(--soundscape-glass);border:1px solid var(--soundscape-edge);width:min(360px,100%);box-shadow:var(--soundscape-shadow-soft);-webkit-backdrop-filter:blur(var(--soundscape-blur)) saturate(136%);backdrop-filter:blur(var(--soundscape-blur)) saturate(136%);border-radius:20px;grid-template-columns:1fr auto;margin-top:auto;padding:14px 16px;display:grid}.soundscape-now-playing>span{color:var(--soundscape-muted);font-size:10px;font-weight:700}.soundscape-now-playing>strong{grid-column:1;margin-top:3px;font-size:14px}.soundscape-now-playing button{border-radius:50%;grid-area:1/2/span 2;width:40px;height:40px}.soundscape-now-playing button svg{width:19px;height:19px}.soundscape-control-panel{-webkit-backdrop-filter:blur(9px)saturate(126%);backdrop-filter:blur(9px)saturate(126%);background:#f6faff6b;border:1px solid #ffffffa3;border-radius:28px;padding:18px;position:relative;box-shadow:0 24px 60px #49639624}.soundscape-control-heading,.soundscape-section-title{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.soundscape-control-heading h3,.soundscape-section-title h3{margin:0;font-size:16px}.soundscape-control-heading p{color:var(--soundscape-muted);margin:5px 0 0;font-size:11px}.soundscape-control-heading>span{color:#3979e2;font-size:12px;font-weight:800}.soundscape-provider-link{color:#61779f;align-items:center;gap:4px;margin-top:7px;font-size:9px;font-weight:720;text-decoration:none;display:inline-flex}.soundscape-provider-link:hover,.soundscape-provider-link:focus-visible{color:#3478ee}.soundscape-provider-link svg{width:12px;height:12px}.soundscape-track-list{gap:9px;margin-top:14px;display:grid}.soundscape-track-row{background:var(--soundscape-glass);border:1px solid var(--soundscape-edge);min-height:70px;box-shadow:var(--soundscape-shadow-soft);-webkit-backdrop-filter:blur(var(--soundscape-blur)) saturate(136%);backdrop-filter:blur(var(--soundscape-blur)) saturate(136%);will-change:transform, opacity;border-radius:19px;grid-template-columns:42px minmax(80px,1fr) minmax(86px,132px) 18px 30px;align-items:center;gap:10px;padding:10px 11px;display:grid}.soundscape-track-icon{width:42px;height:42px}.soundscape-track-icon svg{width:22px;height:22px}.soundscape-track-name{min-width:0;display:grid}.soundscape-track-name strong{font-size:13px}.soundscape-track-name small{color:var(--soundscape-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;overflow:hidden}.soundscape-volume input{width:100%;accent-color:var(--soundscape-accent)}.soundscape-speaker{color:#667ba3;width:17px;height:17px}.soundscape-track-row button{border-radius:50%;width:28px;height:28px}.soundscape-track-row button svg{width:15px;height:15px}.soundscape-add-row{color:#6e7f9f;text-align:left;background:#ffffff57;border:1px dashed #6889c257;border-radius:18px;align-items:center;gap:12px;width:100%;min-height:58px;margin-top:10px;padding:10px 13px;font-size:13px;font-weight:700;display:flex}.soundscape-add-row>span{border:1px solid var(--soundscape-edge);width:34px;height:34px;box-shadow:var(--soundscape-shadow-soft);background:#ffffff94;border-radius:50%;place-items:center;display:inline-grid}.soundscape-add-row svg{width:18px;height:18px}.soundscape-library-shell{-webkit-backdrop-filter:blur(18px)saturate(136%);backdrop-filter:blur(18px)saturate(136%);background:#ffffff3d;border:1px solid #ffffffb8;border-radius:22px;margin-top:10px;padding:10px;overflow:hidden;box-shadow:0 14px 36px #48659d1f,inset 0 1px #ffffffd1}.soundscape-library-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.soundscape-library-toolbar>span{color:var(--soundscape-muted);flex:none;font-size:9px;font-weight:720}.soundscape-library-search{background:#ffffff7a;border:1px solid #ffffffc7;border-radius:999px;flex:1;align-items:center;gap:7px;min-width:0;min-height:38px;padding:0 11px;display:flex;box-shadow:inset 0 1px #ffffffe6,0 6px 14px #4a659814}.soundscape-library-search svg{color:#7085aa;flex:none;width:16px;height:16px}.soundscape-library-search input{color:#294a7e;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:11px}.soundscape-library-search input::placeholder{color:#8e9cb6}.soundscape-category-tabs{scrollbar-width:none;gap:6px;margin:9px -2px 0;padding:2px;display:flex;overflow-x:auto}.soundscape-category-tabs::-webkit-scrollbar{display:none}.soundscape-category-tabs button{color:#6a7e9f;background:#ffffff47;border:1px solid #ffffffa3;border-radius:999px;flex:none;min-height:32px;padding:0 12px;font-size:10px;font-weight:760}.soundscape-category-tabs button.active{color:#fff;background:#3478eed6;border-color:#fffc;box-shadow:0 7px 16px #3469d733,inset 0 1px #ffffff57}.soundscape-library{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#5477b142 transparent;gap:8px;max-height:420px;margin-top:9px;padding-right:2px;display:grid;overflow-y:auto}.soundscape-library-group{background:#ffffff6b;border:1px solid #ffffffbd;border-radius:17px;overflow:hidden;box-shadow:0 7px 18px #49619317,inset 0 1px #ffffffc2}.soundscape-library-group.expanded{background:#ffffff8a}.soundscape-library-group-button{color:#34517f;text-align:left;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-height:58px;padding:8px 10px;display:grid}.soundscape-library-group-button .soundscape-track-icon{width:38px;height:38px}.soundscape-library-group-button .soundscape-track-icon svg{width:20px;height:20px}.soundscape-library-group-button>span:nth-child(2){min-width:0;display:grid}.soundscape-library-group-button strong{font-size:11px}.soundscape-library-group-button small{color:var(--soundscape-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;overflow:hidden}.soundscape-library-group-button>svg{color:#6f84aa;width:16px;height:16px}.soundscape-variant-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0 8px 8px;display:grid}.soundscape-variant-list button{color:#526c95;text-align:left;background:#f5f9ff94;border:1px solid #7c97c624;border-radius:13px;grid-template-columns:minmax(0,1fr) 15px;align-items:center;gap:7px;min-height:46px;padding:7px 9px;display:grid}.soundscape-variant-list button>span{min-width:0;display:grid}.soundscape-variant-list button strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.soundscape-variant-list button small{color:#8594ad;margin-top:2px;font-size:7px}.soundscape-variant-list button>svg{width:14px;height:14px}.soundscape-variant-list button.selected{color:#2d69cf;background:#e3efffc7;outline:2px solid #3478ee2e}.soundscape-variant-list button:disabled{cursor:not-allowed;opacity:.66}.soundscape-library-empty{min-height:96px;color:var(--soundscape-muted);text-align:center;place-items:center;padding:16px;font-size:10px;display:grid}.soundscape-favorite-button{color:#415d8a;text-align:left;background:var(--soundscape-glass);border:1px solid var(--soundscape-edge);width:100%;min-height:60px;box-shadow:var(--soundscape-shadow-soft);-webkit-backdrop-filter:blur(var(--soundscape-blur));backdrop-filter:blur(var(--soundscape-blur));border-radius:18px;grid-template-columns:34px 1fr;align-items:center;gap:0 11px;margin-top:12px;padding:10px 14px;display:grid}.soundscape-favorite-button>svg{color:#7a8dac;grid-row:1/span 2;width:24px;height:24px}.soundscape-favorite-button>span:first-of-type{font-size:12px;font-weight:800}.soundscape-favorite-button>span:nth-of-type(2){color:var(--soundscape-muted);margin-top:2px;font-size:9px}.soundscape-favorite-button.active>svg{color:#ee6b92}.soundscape-message{color:#3973cd;margin:9px 2px 0;font-size:11px;font-weight:700}.soundscape-mix-section{margin-top:22px}.soundscape-section-title{align-items:center}.soundscape-section-title span{color:var(--soundscape-muted);font-size:10px}.soundscape-mix-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px;display:grid}.soundscape-mix-card,.soundscape-saved-select{color:#34517f;text-align:left;background:var(--soundscape-glass);border:1px solid var(--soundscape-edge);min-width:0;box-shadow:var(--soundscape-shadow-soft);-webkit-backdrop-filter:blur(var(--soundscape-blur));backdrop-filter:blur(var(--soundscape-blur));grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:9px;display:grid}.soundscape-mix-card{border-radius:17px;min-height:64px;padding:9px}.soundscape-mix-card .soundscape-track-icon,.soundscape-saved-select .soundscape-track-icon{width:36px;height:36px}.soundscape-mix-card .soundscape-track-icon svg,.soundscape-saved-select .soundscape-track-icon svg{width:18px;height:18px}.soundscape-mix-card>span:nth-child(2),.soundscape-saved-select>span:nth-child(2){min-width:0;display:grid}.soundscape-mix-card strong,.soundscape-saved-select strong{font-size:11px}.soundscape-mix-card small,.soundscape-saved-select small{color:var(--soundscape-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;overflow:hidden}.soundscape-mix-card>svg,.soundscape-saved-select>svg{color:#4382e8;width:15px;height:15px}.soundscape-mix-card.active{outline:2px solid #3478ee38}.soundscape-saved-list{gap:8px;margin-top:9px;display:grid}.soundscape-saved-row{grid-template-columns:1fr 38px;gap:6px;display:grid}.soundscape-saved-select{border-radius:17px;width:100%;min-height:60px;padding:8px 10px}.soundscape-delete-mix{border-radius:15px;width:38px}.soundscape-delete-mix svg{width:16px;height:16px}.soundscape-saved-row.active .soundscape-saved-select{outline:2px solid #3478ee38}.soundscape-empty-saved{min-height:68px;color:var(--soundscape-muted);text-align:center;background:#ffffff52;border:1px dashed #6889c247;border-radius:17px;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:10px;display:flex}.soundscape-empty-saved svg{width:18px;height:18px}@keyframes soundscape-orb-breathe{0%,to{transform:scale(1);box-shadow:0 8px 18px #4b6fb433,inset 0 1px 4px #ffffff8c}50%{transform:scale(1.055);box-shadow:0 11px 24px #477ade47,inset 0 1px 5px #ffffffad}}@keyframes soundscape-liquid-breathe{0%,to{box-shadow:var(--soundscape-liquid-shadow)}50%{box-shadow:0 24px 52px #405e9733,0 7px 18px #486fb21f,inset 0 1px #fffffff5,inset 0 -1px #5675a91a,inset 16px 0 32px #ffffff42}}@keyframes soundscape-cd-spin{to{transform:rotate(360deg)}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.soundscape-dock-expanded,.soundscape-peek,.soundscape-studio-layout,.soundscape-library-shell,.soundscape-now-playing,.soundscape-track-row,.soundscape-favorite-button,.soundscape-mix-card,.soundscape-saved-select,.soundscape-secondary-action{background:#f8fbfff0}}@media (width>=820px){.app-main-with-soundscape{padding-bottom:106px!important}.soundscape-dock-expanded{grid-template-columns:auto minmax(0,1fr) auto auto;width:500px}.soundscape-dock-copy small{color:var(--soundscape-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:9px;display:block;overflow:hidden}.soundscape-studio-layout{grid-template-columns:minmax(330px,.9fr) minmax(430px,1.1fr);align-items:start;gap:28px;padding-top:24px}.soundscape-visual-panel{min-height:calc(100dvh - 124px);padding-top:clamp(54px,10vh,104px);position:sticky;top:94px}.soundscape-control-panel{padding:22px}}@media (width<=480px){.soundscape-dock-expanded{border-radius:999px;grid-template-columns:43px minmax(0,1fr) 44px 36px;min-height:66px;padding:7px 8px 7px 9px}.soundscape-orb{width:42px;height:42px}.soundscape-orb svg{width:24px;height:24px}.soundscape-dock-copy{margin-left:8px}.soundscape-dock-copy strong{font-size:18px}.soundscape-dock-copy>span{font-size:10px}.soundscape-dock-primary{width:42px;height:42px;margin-left:1px}.soundscape-dock-next{width:34px;height:34px;margin-left:3px}.soundscape-studio-layout{padding-left:10px;padding-right:10px}.soundscape-visual-panel{min-height:430px;padding-top:48px}.soundscape-control-panel{border-radius:24px;padding:13px}.soundscape-track-row{grid-template-columns:40px minmax(70px,1fr) minmax(72px,94px) 16px 28px;gap:7px;min-height:66px;padding:8px}.soundscape-track-icon{width:40px;height:40px}.soundscape-studio-layout{border-radius:28px;width:calc(100% - 10px);margin-top:5px}.soundscape-library-toolbar{flex-direction:column;align-items:stretch}.soundscape-library-toolbar>span{padding-left:4px}.soundscape-variant-list,.soundscape-mix-grid{grid-template-columns:1fr}}@media (width<=360px){.soundscape-dock-expanded{grid-template-columns:38px minmax(0,1fr) 40px 34px;width:calc(100% - 12px)}.soundscape-orb{width:38px;height:38px}.soundscape-dock-copy strong{font-size:16px}.soundscape-track-row{grid-template-columns:38px minmax(64px,1fr) minmax(64px,82px) 26px}.soundscape-speaker{display:none}}@media (prefers-reduced-motion:reduce){.soundscape-dock-expanded.is-playing,.soundscape-orb.playing,.soundscape-dock-collapsed.is-playing .soundscape-peek-disc{animation:none}}@media (width<=819.98px){.soundscape-studio-header{flex:none}.soundscape-studio-layout{min-height:0;margin:8px 9px calc(10px + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;display:flex}.soundscape-visual-panel{flex:none;min-height:0;padding:clamp(26px,5vh,46px) 14px 16px}.soundscape-control-panel{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}}
