/*! 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)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-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}}}@layer theme{:host,:root{--font-sans:ui-rounded,-apple-system,"SF Pro Rounded","Segoe UI",system-ui,"Noto Sans","Helvetica Neue",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--color-rose-100:#f7e4ec;--color-rose-600:#c2607f;--color-rose-700:#9a3d5c;--color-rose-800:#7c2a5e;--spacing:8px;--leading-tight:1.25;--ease-out:cubic-bezier(.22,.61,.36,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-cream-050:#fffbf7;--color-surface:#fff;--color-sun-100:#f4ede6;--color-sun-200:#efe1eb;--color-rose-050:#fdedf1;--color-peach-050:#fdf0e4;--color-peach-100:#f9e3ce;--color-peach-700:#7a4a20;--color-peach-800:#5f3814;--color-lavender-050:#eae3f9;--color-lavender-100:#ded3f2;--color-lavender-700:#54427f;--color-lavender-800:#3e3064;--color-plum-050:#f6e9f2;--color-plum-100:#f3e6f0;--color-plum-500:#7d3f6b;--color-plum-600:#6e3565;--color-plum-700:#5a2a52;--color-plum-800:#431e3e;--color-plum-900:#2e1329;--color-ink-900:#2e1329;--color-ink-700:#3a1e35;--color-ink-500:#6b5566;--color-ink-400:#8a6b85;--color-line-soft:#f0dce5;--color-line-strong:#ddc6d8;--color-line-active:#6e3565;--color-success-050:#eaf3e9;--color-success-700:#3c6148;--color-error-050:#fbeae7;--color-error-100:#f6d8d1;--color-error-700:#8c3a2a;--color-error-800:#6e2a1d;--color-info-050:#eae3f9;--color-info-700:#54427f;--color-disabled-bg:#efe1eb;--color-disabled-fg:#8a6b85;--color-ring-menstruelle:#c75579;--color-ring-folliculaire:#be7038;--color-ring-ovulatoire:#7e64c4;--color-ring-luteale:#8c6a86;--font-display:ui-serif,"Iowan Old Style",Georgia,"Times New Roman",serif;--text-75:.8125rem;--text-100:.9375rem;--text-200:1.0625rem;--text-300:1.1875rem;--text-400:1.375rem;--text-500:1.6875rem;--text-600:2.125rem;--text-700:2.75rem;--spacing-50:4px;--spacing-150:12px;--spacing-250:20px;--spacing-75:4px;--radius-100:8px;--radius-200:14px;--radius-300:20px;--radius-400:28px;--radius-full:999px;--shadow-100:0 1px 2px #3a1e350f;--shadow-200:0 6px 18px #3a1e3514;--shadow-300:0 14px 34px #3a1e351f}}@layer base{*,::backdrop,:after,:before{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}:host,html{-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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.bg-plum-600{background-color:var(--color-plum-600)}.p-10{padding:calc(var(--spacing) * 10)}.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,)}.shadow-100{--tw-shadow:0 1px 2px var(--tw-shadow-color,#3a1e350f)}.shadow-100,.shadow-200{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-200{--tw-shadow:0 6px 18px var(--tw-shadow-color,#3a1e3514)}.shadow-300{--tw-shadow:0 14px 34px var(--tw-shadow-color,#3a1e351f)}.ring,.shadow-300{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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))}}:root{--color-cream-050:#fffbf7;--color-surface:#fff;--color-sun-100:#f4ede6;--color-sun-200:#efe1eb;--color-rose-050:#fdedf1;--color-rose-100:#f7e4ec;--color-rose-600:#c2607f;--color-rose-700:#9a3d5c;--color-rose-800:#7c2a5e;--color-peach-050:#fdf0e4;--color-peach-100:#f9e3ce;--color-peach-700:#7a4a20;--color-peach-800:#5f3814;--color-lavender-050:#eae3f9;--color-lavender-100:#ded3f2;--color-lavender-700:#54427f;--color-lavender-800:#3e3064;--color-plum-050:#f6e9f2;--color-plum-100:#f3e6f0;--color-plum-500:#7d3f6b;--color-plum-600:#6e3565;--color-plum-700:#5a2a52;--color-plum-800:#431e3e;--color-plum-900:#2e1329;--color-ink-900:#2e1329;--color-ink-700:#3a1e35;--color-ink-500:#6b5566;--color-ink-400:#8a6b85;--color-line-soft:#f0dce5;--color-line-strong:#ddc6d8;--color-line-active:#6e3565;--color-success-050:#eaf3e9;--color-success-700:#3c6148;--color-error-050:#fbeae7;--color-error-100:#f6d8d1;--color-error-700:#8c3a2a;--color-error-800:#6e2a1d;--color-info-050:#eae3f9;--color-info-700:#54427f;--color-disabled-bg:#efe1eb;--color-disabled-fg:#8a6b85;--bg-app:var(--color-cream-050);--bg-surface:var(--color-surface);--bg-muted:var(--color-sun-100);--text-primary:var(--color-ink-700);--text-title:var(--color-ink-900);--text-secondary:var(--color-ink-500);--text-meta:var(--color-ink-400);--text-on-accent:#fff;--link:var(--color-plum-700);--link-hover:var(--color-plum-800);--border-default:var(--color-line-soft);--border-strong:var(--color-line-strong);--focus-ring:var(--color-plum-600);--phase-menstruelle-bg:var(--color-rose-050);--phase-menstruelle-ink:var(--color-rose-800);--phase-menstruelle-soft:var(--color-rose-700);--phase-folliculaire-bg:var(--color-peach-050);--phase-folliculaire-ink:var(--color-peach-700);--phase-ovulatoire-bg:var(--color-lavender-050);--phase-ovulatoire-ink:var(--color-lavender-700);--phase-luteale-bg:var(--color-plum-050);--phase-luteale-ink:var(--color-plum-700);--ring-track:var(--color-sun-100);--ring-active:var(--color-plum-600);--ring-fertile:var(--color-lavender-100);--ring-menstruelle:#c75579;--ring-folliculaire:#be7038;--ring-ovulatoire:#7e64c4;--ring-luteale:#8c6a86;--font-sans:ui-rounded,-apple-system,"SF Pro Rounded","Segoe UI",system-ui,"Noto Sans","Helvetica Neue",sans-serif;--font-display:ui-serif,"Iowan Old Style",Georgia,"Times New Roman",serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--font-size-75:.8125rem;--font-size-100:.9375rem;--font-size-200:1.0625rem;--font-size-300:1.1875rem;--font-size-400:1.375rem;--font-size-500:1.6875rem;--font-size-600:2.125rem;--font-size-700:2.75rem;--leading-tight:1.2;--leading-snug:1.35;--leading-body:1.6;--leading-number:1;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-meta:.08em;--tracking-small:.01em;--tracking-display:-.015em;--measure-reading:68ch;--space-0:0;--space-50:4px;--space-100:8px;--space-150:12px;--space-200:16px;--space-250:20px;--space-300:24px;--space-400:32px;--space-500:40px;--space-600:48px;--space-700:64px;--space-800:80px;--size-tap:44px;--size-control:48px;--size-control-lg:52px;--size-icon:24px;--size-hit-icon:44px;--size-nav-mobile:64px;--size-nav-desktop:56px;--size-dot:8px;--radius-100:8px;--radius-200:14px;--radius-300:20px;--radius-400:28px;--radius-full:999px;--shadow-100:0 1px 2px #3a1e350f;--shadow-200:0 6px 18px #3a1e3514;--shadow-300:0 14px 34px #3a1e351f;--shadow-focus:0 0 0 3px var(--color-cream-050),0 0 0 6px var(--color-plum-600);--shadow-lift:0 2px 6px #3a1e351a;--border-1:1px solid var(--color-line-soft);--border-2:2px solid var(--color-line-strong);--border-width-1:1px;--border-width-2:2px;--bp-md:640px;--bp-lg:768px;--bp-xl:1024px;--container:1120px;--gutter-mobile:20px;--gutter-md:28px;--gutter-desktop:32px;--grid-gap:var(--space-200);--motion-fast:.12s;--motion-base:.2s;--motion-slow:.32s;--motion-ring:.7s;--ease-out:cubic-bezier(.22,.61,.36,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--z-base:0;--z-raised:10;--z-nav:40;--z-toast:60;--z-modal:80}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-200);line-height:var(--leading-body);letter-spacing:var(--tracking-small);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}h1,h2,h3,h4{color:var(--text-title);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-display);line-height:var(--leading-tight);overflow-wrap:break-word;margin:0}h1{font-size:var(--font-size-500)}h2{font-size:var(--font-size-400)}h3{font-size:var(--font-size-300)}p{overflow-wrap:break-word;margin:0}a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--link-hover)}button{font:inherit;letter-spacing:inherit}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-100)}::selection{background:var(--color-plum-050);color:var(--color-plum-800)}.ds-eyebrow{font-size:var(--font-size-75);font-weight:var(--weight-medium);letter-spacing:var(--tracking-meta);text-transform:uppercase;color:var(--color-ink-500)}.ds-shell{background:var(--bg-app);grid-template-rows:auto 1fr auto;min-height:100vh;display:grid}.ds-main{width:100%;max-width:var(--container);padding:var(--space-300) var(--gutter-mobile) calc(var(--space-700) + var(--space-400));margin-inline:auto}.ds-grid-2,.ds-main{gap:var(--space-400);min-width:0;display:grid}.ds-grid-2{grid-template-columns:1fr}.ds-row{align-items:center;flex-wrap:wrap;display:flex}.ds-row,.ds-stack{gap:var(--space-150);min-width:0}.ds-stack{display:grid}.ds-measure{max-width:var(--measure-reading)}.ds-topbar{z-index:var(--z-nav);justify-content:space-between;align-items:center;gap:var(--space-200);min-height:var(--size-nav-desktop);padding:var(--space-150) var(--gutter-mobile);background:#fffbf7eb;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.ds-topbar{background:color-mix(in srgb,var(--color-cream-050) 92%,transparent)}}.ds-topbar{border-bottom:var(--border-1)}.ds-brand{align-items:center;gap:var(--space-100);font-family:var(--font-display);font-size:var(--font-size-400);color:var(--text-title);display:flex}.ds-nav{z-index:var(--z-nav);min-height:var(--size-nav-mobile);padding:var(--space-50) var(--space-50) calc(var(--space-50) + env(safe-area-inset-bottom,0px));background:var(--color-surface);border-top:var(--border-1);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -6px 18px #3a1e3512}.ds-nav-item{min-height:var(--size-tap);padding:var(--space-50) var(--space-50);border-radius:var(--radius-200);color:var(--text-secondary);font-size:var(--font-size-75);font-weight:var(--weight-medium);align-content:center;justify-items:center;gap:2px;text-decoration:none;display:grid}.ds-nav-item.is-active{color:var(--color-plum-700);background:var(--color-plum-050);font-weight:var(--weight-semibold)}.ds-nav-item .ds-icon{width:var(--size-icon);height:var(--size-icon)}.ds-card{background:var(--bg-surface);border:var(--border-1);border-radius:var(--radius-300);box-shadow:var(--shadow-100);padding:var(--space-250);gap:var(--space-150);min-width:0;display:grid}.ds-card--phase{background:var(--phase-bg,var(--bg-surface))}.ds-card--raised{box-shadow:var(--shadow-200)}.ds-section-title{justify-content:space-between;align-items:baseline;gap:var(--space-150);display:flex}.ds-btn{justify-content:center;align-items:center;gap:var(--space-100);min-height:var(--size-control);padding:0 var(--space-300);border:var(--border-width-2) solid transparent;border-radius:var(--radius-300);font-size:var(--font-size-100);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-base) var(--ease-out);display:inline-flex}.ds-btn--primary{background:var(--color-plum-600);color:var(--text-on-accent);box-shadow:var(--shadow-200)}.ds-btn--primary:hover{background:var(--color-plum-800);box-shadow:var(--shadow-lift);transform:translateY(-2px)}.ds-btn--primary:active{transform:translateY(0)scale(.98)}.ds-btn--secondary{background:var(--bg-surface);color:var(--color-plum-700);border-color:var(--color-plum-600)}.ds-btn--ghost{color:var(--color-plum-700);background:0 0;border-color:#0000}.ds-btn--block{width:100%}.ds-btn--lg{min-height:var(--size-control-lg);font-size:var(--font-size-200)}.ds-btn[aria-disabled=true],.ds-btn[disabled]{background:var(--color-disabled-bg);color:var(--color-disabled-fg);box-shadow:none;cursor:not-allowed;border-color:#0000;transform:none}.ds-chip{align-items:center;gap:var(--space-100);min-height:var(--size-tap);padding:0 var(--space-200);border:var(--border-width-2) solid var(--color-line-strong);border-radius:var(--radius-full);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-100);font-weight:var(--weight-medium);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out);display:inline-flex}.ds-chip:hover{border-color:var(--color-plum-500)}.ds-chip[aria-pressed=true]{background:var(--chip-bg,var(--color-plum-050));border-color:var(--chip-ink,var(--color-plum-700));color:var(--chip-ink,var(--color-plum-800));font-weight:var(--weight-semibold)}.ds-chip__check{flex:none;width:18px;height:18px;display:none}.ds-chip[aria-pressed=true] .ds-chip__check{display:block}.ds-chip-group{gap:var(--space-100);flex-wrap:wrap;min-width:0;display:flex}.ds-field{gap:var(--space-50);min-width:0;display:grid}.ds-label{font-size:var(--font-size-100);font-weight:var(--weight-medium);color:var(--text-title)}.ds-input,.ds-select,.ds-textarea{width:100%;min-height:var(--size-control);padding:var(--space-150) var(--space-200);background:var(--bg-surface);color:var(--text-primary);border:var(--border-width-2) solid var(--color-line-strong);border-radius:var(--radius-200);font:inherit;font-size:var(--font-size-200)}.ds-textarea{resize:vertical;min-height:96px}.ds-input:hover,.ds-textarea:hover{border-color:var(--color-plum-500)}.ds-input:focus-visible,.ds-textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.ds-help{font-size:var(--font-size-75);color:var(--text-secondary)}.ds-input[aria-invalid=true]{border-color:var(--color-error-700)}.ds-error-text{font-size:var(--font-size-75);font-weight:var(--weight-medium);color:var(--color-error-700)}.ds-input:disabled,.ds-textarea:disabled{background:var(--bg-muted);color:var(--color-disabled-fg);cursor:not-allowed}.ds-badge{align-items:center;gap:var(--space-50);min-height:28px;padding:0 var(--space-150);font-size:var(--font-size-75);font-weight:var(--weight-semibold);background:var(--badge-bg,var(--color-plum-050));color:var(--badge-ink,var(--color-plum-700));display:inline-flex}.ds-badge,.ds-dot{border-radius:var(--radius-full)}.ds-dot{width:var(--size-dot);height:var(--size-dot);flex:none}.ds-ring{place-items:center;width:100%;max-width:280px;margin-inline:auto;display:grid;position:relative}.ds-ring svg{width:100%;height:auto;display:block}.ds-ring__track{fill:none;stroke:var(--ring-track);stroke-width:14px;stroke-linecap:round}.ds-ring__fertile{fill:none;stroke:var(--ring-fertile);stroke-width:14px;stroke-linecap:round}.ds-ring__progress{fill:none;stroke:var(--ring-active);stroke-width:14px;stroke-linecap:round;transition:stroke-dashoffset var(--motion-ring) var(--ease-out)}.ds-ring__center{text-align:center;place-content:center;gap:2px;display:grid;position:absolute;inset:0}.ds-ring__day{font-size:var(--font-size-600);font-weight:var(--weight-bold);line-height:var(--leading-number);color:var(--text-title);font-variant-numeric:tabular-nums}.ds-ring__phase{font-size:var(--font-size-100);font-weight:var(--weight-semibold);color:var(--phase-ink,var(--color-plum-700))}.ds-live-region{inset:var(--space-200) var(--space-200) auto;z-index:var(--z-toast);gap:var(--space-100);justify-items:stretch;max-width:420px;margin-inline:auto;display:grid;position:fixed}.ds-toast{align-items:flex-start;gap:var(--space-150);padding:var(--space-150) var(--space-200);background:var(--bg-surface);border:var(--border-1);border-radius:var(--radius-300);box-shadow:var(--shadow-300);color:var(--text-primary);font-size:var(--font-size-100);animation:ds-toast-in var(--motion-base) var(--ease-out);display:flex}.ds-toast__icon{width:var(--size-icon);height:var(--size-icon);flex:none}.ds-toast--success .ds-toast__icon{color:var(--color-success-700)}.ds-toast--error .ds-toast__icon{color:var(--color-error-700)}.ds-toast__close{min-width:var(--size-tap);min-height:var(--size-tap);border-radius:var(--radius-100);color:var(--text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;margin-left:auto;display:grid}@keyframes ds-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.ds-banner{align-items:center;gap:var(--space-150);padding:var(--space-200);border-radius:var(--radius-200);font-size:var(--font-size-100);background:var(--color-error-050);color:var(--color-error-700);border:var(--border-width-2) solid var(--color-error-100);flex-wrap:wrap;display:flex}.ds-banner--info{background:var(--color-info-050);color:var(--color-info-700);border-color:var(--color-lavender-100)}.ds-banner--success{background:var(--color-success-050);color:var(--color-success-700);border-color:#cfe3cd}.ds-skeleton{border-radius:var(--radius-100);background:linear-gradient(90deg,var(--color-sun-100) 25%,#fbf3ec 37%,var(--color-sun-100) 63%);height:16px;animation:ds-shimmer 1.2s var(--ease-in-out) infinite;background-size:400% 100%}.ds-skeleton--ring{border-radius:var(--radius-400);height:200px}.ds-skeleton--chip{border-radius:var(--radius-full);width:132px;height:44px}.ds-skeleton--line{height:60px}@keyframes ds-shimmer{0%{background-position:100%}to{background-position:0}}.ds-spinner{border-radius:var(--radius-full);border:2px solid;border-top:2px solid #0000;flex:none;width:18px;height:18px;animation:ds-spin .8s linear infinite}@keyframes ds-spin{to{transform:rotate(1turn)}}.ds-empty{justify-items:center;gap:var(--space-150);padding:var(--space-500) var(--space-250);text-align:center;background:var(--bg-surface);border:var(--border-1);border-radius:var(--radius-400);color:var(--text-secondary);display:grid}.ds-empty svg{width:56px;height:56px;color:var(--color-plum-500)}.ds-thread{gap:var(--space-200);max-width:var(--measure-reading);display:grid}.ds-bubble{overflow-wrap:break-word;padding:var(--space-150) var(--space-200);border-radius:var(--radius-300);font-size:var(--font-size-200);line-height:var(--leading-body);min-width:0}.ds-bubble--user{background:var(--color-plum-600);max-width:85%;color:var(--text-on-accent);border-bottom-right-radius:var(--radius-100);justify-self:end}.ds-bubble--assistant{background:var(--bg-surface);border:var(--border-1);max-width:92%;box-shadow:var(--shadow-100);color:var(--text-primary);border-bottom-left-radius:var(--radius-100);justify-self:start}.ds-bubble--thinking{color:var(--text-secondary);font-size:var(--font-size-100)}.ds-composer{align-items:flex-end;gap:var(--space-100);padding:var(--space-150);background:var(--bg-surface);border:var(--border-1);border-radius:var(--radius-300);box-shadow:var(--shadow-200);display:flex}.ds-composer .ds-textarea{background:var(--bg-muted);min-height:var(--size-control);border-color:#0000}.ds-icon-btn{min-width:var(--size-hit-icon);min-height:var(--size-hit-icon);border-radius:var(--radius-200);background:var(--color-plum-600);color:var(--text-on-accent);cursor:pointer;border:0;place-items:center;display:grid}.ds-icon-btn[disabled]{background:var(--color-disabled-bg);color:var(--color-disabled-fg);cursor:not-allowed}.ds-icon{width:var(--size-icon);height:var(--size-icon);flex:none;display:block}.ds-icon--stroke{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.ds-list{gap:var(--space-100);margin:0;padding:0;list-style:none;display:grid}.ds-list-item>span{overflow-wrap:break-word;min-width:0}.ds-list-item{gap:var(--space-150);padding:var(--space-150) var(--space-200);background:var(--bg-surface);border:var(--border-1);grid-template-columns:auto 1fr auto;min-width:0;display:grid}.ds-list-item,.ds-list-item a,.ds-list-item button{align-items:center;min-height:var(--size-tap);border-radius:var(--radius-200)}.ds-list-item a,.ds-list-item button{min-width:var(--size-tap);padding:0 var(--space-150);color:var(--color-plum-700);font-weight:var(--weight-semibold);font-size:var(--font-size-100);justify-content:center;text-decoration:none;display:inline-flex}a.ds-badge{min-height:var(--size-tap);padding:0 var(--space-200)}.ds-skip{left:var(--space-150);padding:var(--space-100) var(--space-200);background:var(--color-surface);color:var(--color-plum-800);border-radius:var(--radius-200);box-shadow:var(--shadow-200);transition:top var(--motion-fast) var(--ease-out);position:absolute;top:-48px}.ds-skip:focus{top:var(--space-150)}@media (min-width:640px){.ds-main{padding-inline:var(--gutter-md);gap:var(--space-500)}}@media (min-width:768px){body{font-size:var(--font-size-300)}.ds-grid-2{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start}.ds-ring{max-width:320px}.ds-ring__day{font-size:var(--font-size-700)}}@media (min-width:1024px){.ds-main{padding:var(--space-500) var(--gutter-desktop) var(--space-700)}.ds-nav{justify-content:end;gap:var(--space-100);min-height:var(--size-nav-desktop);padding:var(--space-100) var(--space-150);box-shadow:none;background:0 0;border-top:0;grid-template-columns:none;position:sticky;inset:auto}.ds-nav-item{padding:var(--space-100) var(--space-200);font-size:var(--font-size-100);grid-auto-flow:column}.ds-card{padding:var(--space-300)}.ds-live-region{inset:auto var(--gutter-desktop) var(--space-300) auto;justify-items:end}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.ds-skeleton{background:var(--color-sun-100);animation:none}.ds-spinner{border-top-color:currentColor;animation:none}.ds-btn--primary:hover{transform:none}.ds-ring__progress{transition:none}}@media print{.ds-composer,.ds-live-region,.ds-nav{display:none}body{background:#fff}}.dc-brand{display:none}body.dc-shell{min-height:100dvh;display:block}@media (min-width:1024px){body.dc-shell{flex-direction:column;display:flex}.dc-nav{padding-inline:var(--gutter-desktop);background:#fffbf7eb;order:-1;top:0}@supports (color:color-mix(in lab,red,red)){.dc-nav{background:color-mix(in srgb,var(--color-cream-050) 92%,transparent)}}.dc-nav{border-bottom:var(--border-1)}.dc-brand{margin-right:auto;display:flex}.ds-main{flex:1}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-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}