:root{--bg:#15161b;--surface:#1e2027;--surface-raised:#262933;--border:#34384433;--border-strong:#3a3e4a;--text:#edeef2;--text-secondary:#9a9dab;--text-muted:#6b6e7a;--accent:#4d8dfa;--accent-text:#f5f8ff;--danger:#e2574c;--danger-bg:#3a2320;--success:#5cc98a;--success-bg:#1c2e22;--radius:10px;--accent-tint-08:color-mix(in srgb,var(--accent) 8%,transparent);--accent-tint-14:color-mix(in srgb,var(--accent) 14%,transparent);--accent-tint-24:color-mix(in srgb,var(--accent) 24%,transparent);--radius-card:var(--radius);--radius-button:var(--radius);--radius-fab:50%;--radius-chip:999px;--radius-toggle:8px;--shadow-raised:none;--shadow-fab:0 4px 14px rgba(0,0,0,.4);--backdrop-filter:none;--header-bg:var(--bg);--menu-bg:var(--surface-raised);--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}html[data-platform-theme=material]{--bg:color-mix(in srgb,var(--accent) 4%,#16151a);--surface:color-mix(in srgb,var(--accent) 6%,#1e1c22);--surface-raised:color-mix(in srgb,var(--accent) 10%,#26232a);--border:color-mix(in srgb,var(--accent) 10%,#34384433);--border-strong:color-mix(in srgb,var(--accent) 16%,#3a3e4a);--shadow-raised:none;--shadow-fab:0 1px 3px rgba(0,0,0,.3),0 1px 2px rgba(0,0,0,.2);--radius-card:16px;--radius-button:999px;--radius-fab:16px;--radius-chip:999px;--radius-toggle:999px;--header-bg:var(--surface-raised);--font-family:Roboto,"Segoe UI",Helvetica,Arial,sans-serif;--icon-close:url(/icons/material/close.svg);--icon-camera:url(/icons/material/camera.svg);--icon-image:url(/icons/material/image.svg);--icon-calendar:url(/icons/material/calendar.svg);--icon-chart:url(/icons/material/chart.svg);--icon-chat:url(/icons/material/chat.svg);--icon-settings:url(/icons/material/settings.svg);--icon-back:url(/icons/material/back.svg);--icon-forward:url(/icons/material/forward.svg);--icon-lock:url(/icons/material/lock.svg);--icon-check:url(/icons/material/check.svg);--icon-key:url(/icons/material/key.svg);--icon-bolt:url(/icons/material/bolt.svg);--icon-chevron-down:url(/icons/material/chevron-down.svg);--icon-chevron-up:url(/icons/material/chevron-up.svg);--icon-send:url(/icons/material/send.svg);--icon-plus:url(/icons/material/plus.svg);--icon-shuffle:url(/icons/material/shuffle.svg);--icon-package:url(/icons/material/package.svg);--icon-target:url(/icons/material/target.svg);--icon-group:url(/icons/material/group.svg);--icon-arrow-up:url(/icons/material/arrow-up.svg);--icon-arrow-down:url(/icons/material/arrow-down.svg);--icon-badminton:url(/icons/material/badminton.svg)}html[data-platform-theme=glass]{--bg:linear-gradient(160deg,color-mix(in srgb,var(--accent) 16%,transparent) 0%,transparent 55%),#0c0d13;--surface:color-mix(in srgb,var(--accent) 5%,rgba(30,28,38,.55));--surface-raised:color-mix(in srgb,var(--accent) 8%,rgba(40,37,48,.62));--border:hsla(0,0%,100%,.14);--border-strong:hsla(0,0%,100%,.22);--menu-bg:color-mix(in srgb,var(--accent) 8%,rgba(28,26,36,.94));--shadow-raised:0 8px 32px rgba(0,0,0,.35),inset 0 1px 0 hsla(0,0%,100%,.1);--shadow-fab:0 8px 24px color-mix(in srgb,var(--accent) 35%,transparent),inset 0 1px 0 hsla(0,0%,100%,.18);--backdrop-filter:blur(20px) saturate(1.6);--header-bg:color-mix(in srgb,var(--accent) 6%,rgba(20,18,28,.6));--radius-card:26px;--radius-button:999px;--radius-fab:999px;--radius-chip:999px;--radius-toggle:999px;--font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;--icon-close:url(/icons/glass/close.svg);--icon-camera:url(/icons/glass/camera.svg);--icon-image:url(/icons/glass/image.svg);--icon-calendar:url(/icons/glass/calendar.svg);--icon-chart:url(/icons/glass/chart.svg);--icon-chat:url(/icons/glass/chat.svg);--icon-settings:url(/icons/glass/settings.svg);--icon-back:url(/icons/glass/back.svg);--icon-forward:url(/icons/glass/forward.svg);--icon-lock:url(/icons/glass/lock.svg);--icon-check:url(/icons/glass/check.svg);--icon-key:url(/icons/glass/key.svg);--icon-bolt:url(/icons/glass/bolt.svg);--icon-chevron-down:url(/icons/glass/chevron-down.svg);--icon-chevron-up:url(/icons/glass/chevron-up.svg);--icon-send:url(/icons/glass/send.svg);--icon-plus:url(/icons/glass/plus.svg);--icon-shuffle:url(/icons/glass/shuffle.svg);--icon-package:url(/icons/glass/package.svg);--icon-target:url(/icons/glass/target.svg);--icon-group:url(/icons/glass/group.svg);--icon-arrow-up:url(/icons/glass/arrow-up.svg);--icon-arrow-down:url(/icons/glass/arrow-down.svg);--icon-badminton:url(/icons/glass/badminton.svg)}*{box-sizing:border-box}body,html{padding:0;margin:0;background:var(--bg);color:var(--text);font-family:var(--font-family);-webkit-tap-highlight-color:transparent;overflow-x:clip}body{min-height:100dvh}button{font-family:inherit}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible){outline:none}input,select{font-family:inherit}::selection{background:var(--accent);color:var(--accent-text)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.icon{width:1em;height:1em;flex-shrink:0;background:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}.icon,html[data-platform-theme] .icon-emoji{display:none}html[data-platform-theme] .icon{display:inline-block}.icon-close{mask-image:var(--icon-close);-webkit-mask-image:var(--icon-close)}.icon-camera{mask-image:var(--icon-camera);-webkit-mask-image:var(--icon-camera)}.icon-image{mask-image:var(--icon-image);-webkit-mask-image:var(--icon-image)}.icon-calendar{mask-image:var(--icon-calendar);-webkit-mask-image:var(--icon-calendar)}.icon-chart{mask-image:var(--icon-chart);-webkit-mask-image:var(--icon-chart)}.icon-chat{mask-image:var(--icon-chat);-webkit-mask-image:var(--icon-chat)}.icon-settings{mask-image:var(--icon-settings);-webkit-mask-image:var(--icon-settings)}.icon-back{mask-image:var(--icon-back);-webkit-mask-image:var(--icon-back)}.icon-forward{mask-image:var(--icon-forward);-webkit-mask-image:var(--icon-forward)}.icon-lock{mask-image:var(--icon-lock);-webkit-mask-image:var(--icon-lock)}.icon-check{mask-image:var(--icon-check);-webkit-mask-image:var(--icon-check)}.icon-key{mask-image:var(--icon-key);-webkit-mask-image:var(--icon-key)}.icon-bolt{mask-image:var(--icon-bolt);-webkit-mask-image:var(--icon-bolt)}.icon-chevron-down{mask-image:var(--icon-chevron-down);-webkit-mask-image:var(--icon-chevron-down)}.icon-chevron-up{mask-image:var(--icon-chevron-up);-webkit-mask-image:var(--icon-chevron-up)}.icon-send{mask-image:var(--icon-send);-webkit-mask-image:var(--icon-send)}.icon-plus{mask-image:var(--icon-plus);-webkit-mask-image:var(--icon-plus)}.icon-shuffle{mask-image:var(--icon-shuffle);-webkit-mask-image:var(--icon-shuffle)}.icon-package{mask-image:var(--icon-package);-webkit-mask-image:var(--icon-package)}.icon-target{mask-image:var(--icon-target);-webkit-mask-image:var(--icon-target)}.icon-group{mask-image:var(--icon-group);-webkit-mask-image:var(--icon-group)}.icon-arrow-up{mask-image:var(--icon-arrow-up);-webkit-mask-image:var(--icon-arrow-up)}.icon-arrow-down{mask-image:var(--icon-arrow-down);-webkit-mask-image:var(--icon-arrow-down)}.icon-badminton{mask-image:var(--icon-badminton);-webkit-mask-image:var(--icon-badminton)}@keyframes overlaySlideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.overlay-panel{animation:overlaySlideIn .22s ease-out}@media (prefers-reduced-motion:reduce){.overlay-panel{animation:none}}@keyframes sessionSlideFromRight{0%{transform:translateX(16px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes sessionSlideFromLeft{0%{transform:translateX(-16px);opacity:0}to{transform:translateX(0);opacity:1}}.session-slide-older{animation:sessionSlideFromRight .22s ease-out}.session-slide-newer{animation:sessionSlideFromLeft .22s ease-out}.slide-from-right{animation:sessionSlideFromRight .22s ease-out}.slide-from-left{animation:sessionSlideFromLeft .22s ease-out}@media (prefers-reduced-motion:reduce){.session-slide-newer,.session-slide-older,.slide-from-left,.slide-from-right{animation:none}}@keyframes idleFadeIn{0%{opacity:0}to{opacity:1}}.idle-fade-in{animation:idleFadeIn .18s ease-out}@media (prefers-reduced-motion:reduce){.idle-fade-in{animation:none}}@keyframes chatBubbleIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-bubble-in{animation:chatBubbleIn .18s ease-out}@media (prefers-reduced-motion:reduce){.chat-bubble-in{animation:none}}@keyframes scrimFadeIn{0%{opacity:0}to{opacity:1}}.scrim-fade{animation:scrimFadeIn .15s ease-out}@keyframes dialogPopIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.confirm-dialog{animation:dialogPopIn .18s ease-out}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.edit-by-date-sheet{animation:sheetSlideUp .22s cubic-bezier(.2,.8,.4,1)}@keyframes fabDialPop{0%{opacity:0;transform:translateY(8px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.fab-dial>*{animation:fabDialPop .16s ease-out backwards}.fab-dial>:first-child{animation-delay:.02s}.fab-dial>:nth-child(2){animation-delay:.05s}.fab-dial>:nth-child(3){animation-delay:.08s}.fab-dial>:nth-child(4){animation-delay:.11s}@keyframes panelExpandIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.hand-toggle-panel{animation:panelExpandIn .16s ease-out}@media (prefers-reduced-motion:reduce){.confirm-dialog,.edit-by-date-sheet,.fab-dial>*,.hand-toggle-panel,.scrim-fade{animation:none}}.ripple-btn{position:relative;overflow:hidden}.ripple-effect{position:absolute;display:none;border-radius:50%;background:hsla(0,0%,100%,.28);pointer-events:none;transform:scale(0);animation:rippleExpand .5s ease-out}html[data-platform-theme=material] .ripple-effect{display:block}@keyframes rippleExpand{to{transform:scale(1);opacity:0}}html[data-platform-theme=material] .fab-press:active{border-radius:50%}@media (prefers-reduced-motion:reduce){.ripple-effect{animation:none;display:none}html[data-platform-theme=material] .fab-press:active{border-radius:var(--radius-fab)}}.markdown{line-height:1.5}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 8px}.markdown ol,.markdown ul{margin:0 0 8px;padding-left:20px}.markdown li{margin:2px 0}.markdown li>p{margin:0}.markdown strong{color:var(--text);font-weight:600}.markdown a{color:var(--accent)}.markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;border:1px solid var(--border-strong);border-radius:4px;padding:1px 5px;font-size:.92em}.markdown code,.markdown pre{background:var(--surface-raised)}.markdown pre{border:1px solid var(--border-strong);border-radius:8px;padding:10px 12px;overflow-x:auto;margin:0 0 8px}.markdown pre code{background:none;border:none;padding:0}.markdown h1,.markdown h2,.markdown h3{margin:12px 0 6px;font-size:1em;font-weight:600;color:var(--text)}.markdown h1:first-child,.markdown h2:first-child,.markdown h3:first-child{margin-top:0}.markdown blockquote{margin:0 0 8px;padding-left:10px;border-left:2px solid var(--border-strong);color:var(--text-secondary)}.markdown hr{border:none;border-top:1px solid var(--border-strong);margin:10px 0}.markdown-table-scroll{overflow-x:auto;margin:0 0 8px;-webkit-overflow-scrolling:touch}.markdown-table-scroll table{border-collapse:collapse;width:100%;font-size:.95em;margin:0}.markdown td,.markdown th{border:1px solid var(--border-strong);padding:4px 8px;text-align:left}.markdown th{background:var(--surface-raised)}