/*! 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-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-outline-style:solid}}}@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;--radius-xs:.125rem;--radius-sm:.25rem;--ease-out:cubic-bezier(0, 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)}}@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}.fixed{position:fixed}.static{position:static}.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}}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.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}.border{border-style:var(--tw-border-style);border-width:1px}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.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{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-right:env(safe-area-inset-right,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--font-ui:Inter, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;--color-app-background:oklch(96.8% .007 155);--color-surface-elevated:oklch(100% 0 0);--color-surface-secondary:oklch(95.5% .008 155);--color-surface-tertiary:oklch(92.5% .011 155);--color-text-primary:oklch(23.5% .018 160);--color-text-secondary:oklch(46% .018 160);--color-text-tertiary:oklch(54% .016 160);--color-border:oklch(30% .02 160/.12);--color-border-strong:oklch(30% .02 160/.22);--color-accent:oklch(48% .085 160);--color-accent-pressed:oklch(41% .08 160);--color-accent-subtle:oklch(94.5% .03 158);--color-on-accent:oklch(100% 0 0);--color-success:oklch(50% .1 152);--color-warning:oklch(52% .11 62);--color-danger:oklch(52% .16 26);--color-info:oklch(50% .08 235);--color-overlay:oklch(20% .02 160/.42);--color-inverse-surface:oklch(27% .02 160);--color-inverse-text:oklch(97% .005 160);--tint-success:var(--color-success)}@supports (color:color-mix(in lab, red, red)){:root{--tint-success:color-mix(in oklab, var(--color-success) 12%, var(--color-surface-elevated))}}:root{--tint-warning:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){:root{--tint-warning:color-mix(in oklab, var(--color-warning) 13%, var(--color-surface-elevated))}}:root{--tint-danger:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){:root{--tint-danger:color-mix(in oklab, var(--color-danger) 11%, var(--color-surface-elevated))}}:root{--tint-info:var(--color-info)}@supports (color:color-mix(in lab, red, red)){:root{--tint-info:color-mix(in oklab, var(--color-info) 11%, var(--color-surface-elevated))}}:root{--fs-large-title:28px;--fs-title:22px;--fs-title-sm:19px;--fs-headline:17px;--fs-body:15px;--fs-callout:14px;--fs-footnote:13px;--fs-caption:12px;--fs-input:17px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--page-gutter:16px;--radius-xs:8px;--radius-sm:10px;--radius-control:12px;--radius-card:16px;--radius-sheet:20px;--radius-large:24px;--shadow-card:0 1px 2px oklch(25% .03 160/.05);--shadow-raised:0 10px 30px oklch(25% .03 160/.12);--shadow-sheet:0 24px 70px oklch(20% .03 160/.22);--z-sticky:10;--z-nav:30;--z-toast:300;--ease-out:cubic-bezier(.22, .8, .24, 1);--duration-fast:.14s;--duration-base:.22s;--text:var(--color-text-primary);--muted:var(--color-text-secondary);--accent:var(--color-accent);--accent-soft:var(--color-accent-subtle);--line:var(--color-border);--page-bg:var(--color-app-background);--danger:var(--color-danger);--warn:var(--color-warning);--surface:var(--color-surface-elevated);--surface-strong:var(--color-surface-elevated);font-family:var(--font-ui);color:var(--color-text-primary);background:var(--color-app-background)}.app-root.dark-theme{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-app-background:oklch(20.5% .012 160);--color-surface-elevated:oklch(25% .013 160);--color-surface-secondary:oklch(29% .014 160);--color-surface-tertiary:oklch(33% .015 160);--color-text-primary:oklch(95% .008 160);--color-text-secondary:oklch(79% .014 160);--color-text-tertiary:oklch(72% .014 160);--color-border:oklch(100% 0 0/.1);--color-border-strong:oklch(100% 0 0/.18);--color-accent:oklch(79% .1 158);--color-accent-pressed:oklch(85% .09 158);--color-accent-subtle:oklch(79% .1 158/.16);--color-on-accent:oklch(22% .03 160);--color-success:oklch(79% .1 155);--color-warning:oklch(85% .11 80);--color-danger:oklch(77% .12 25);--color-info:oklch(79% .07 230);--color-overlay:oklch(8% .01 160/.6);--color-inverse-surface:oklch(93% .01 160);--color-inverse-text:oklch(22% .02 160);--tint-success:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.app-root.dark-theme{--tint-success:color-mix(in oklab, var(--color-success) 16%, var(--color-surface-elevated))}}.app-root.dark-theme{--tint-warning:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){.app-root.dark-theme{--tint-warning:color-mix(in oklab, var(--color-warning) 16%, var(--color-surface-elevated))}}.app-root.dark-theme{--tint-danger:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.app-root.dark-theme{--tint-danger:color-mix(in oklab, var(--color-danger) 16%, var(--color-surface-elevated))}}.app-root.dark-theme{--tint-info:var(--color-info)}@supports (color:color-mix(in lab, red, red)){.app-root.dark-theme{--tint-info:color-mix(in oklab, var(--color-info) 16%, var(--color-surface-elevated))}}.app-root.dark-theme{--shadow-card:0 1px 2px oklch(0% 0 0/.25);--shadow-raised:0 12px 32px oklch(0% 0 0/.35);--shadow-sheet:0 24px 70px oklch(0% 0 0/.5)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{background:#f1f4f0;width:100%;height:100%;min-height:100%;margin:0;overflow:hidden}html[data-app-theme=dark],html[data-app-theme=dark] body,html[data-app-theme=dark] #root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#202724}html[data-app-theme=light],html[data-app-theme=light] body,html[data-app-theme=light] #root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f1f4f0}body{overscroll-behavior:none;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--color-accent)}h1,h2,h3,h4,p{margin:0}svg{flex:none}:focus-visible{outline:2px solid var(--color-accent)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:2px solid color-mix(in oklab, var(--color-accent) 70%, transparent)}}:focus-visible{outline-offset:1px}::-webkit-scrollbar{display:none}*{scrollbar-width:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-root{inset:0 0 auto;top:var(--app-viewport-top,0px);height:var(--app-viewport-height,100dvh);color:var(--color-text-primary);background:var(--color-app-background);font-size:var(--fs-body);isolation:isolate;grid-template-columns:248px minmax(0,1fr);line-height:1.45;display:grid;position:fixed;overflow:hidden}.desktop-sidebar{background:var(--color-surface-elevated);border-right:1px solid var(--color-border);min-width:0;height:100%;z-index:var(--z-nav);flex-direction:column;gap:4px;padding:20px 14px 16px;display:flex}.sidebar-brand{align-items:center;gap:12px;min-width:0;padding:4px 8px 20px;display:flex}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{font-size:var(--fs-body);letter-spacing:-.01em;font-weight:650}.sidebar-brand small{color:var(--color-text-secondary);font-size:var(--fs-caption);margin-top:2px}.brand-mark{background:var(--color-accent);width:36px;height:36px;color:var(--color-on-accent);border-radius:11px;flex:none;place-items:center;display:grid}.brand-mark svg{stroke-width:2.2px;width:22px;height:22px}.sidebar-nav{gap:4px;display:grid}.nav-link{border-radius:var(--radius-control);width:100%;min-height:44px;color:var(--color-text-secondary);font-size:var(--fs-body);text-align:left;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:0;align-items:center;gap:12px;padding:0 12px;font-weight:500;display:flex;position:relative}.nav-link.is-active{background:var(--color-accent-subtle);color:var(--color-accent);font-weight:650}.nav-icon{flex:none;place-items:center;width:24px;height:24px;display:grid}.sidebar-bottom{margin-top:auto}.own-profile-link{border:1px solid var(--color-border);background:var(--color-surface-elevated);text-align:left;border-radius:14px;align-items:center;gap:10px;width:100%;min-height:56px;padding:8px 10px;display:flex}.own-profile-label{flex:1;min-width:0}.own-profile-label strong,.own-profile-label small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.own-profile-label strong{font-size:var(--fs-callout);font-weight:600}.own-profile-label small{color:var(--color-text-secondary);font-size:var(--fs-caption);margin-top:1px}.mobile-bottom-nav{display:none}.app-workspace{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.app-topbar{background:var(--color-surface-elevated);border-bottom:1px solid var(--color-border);min-height:84px;z-index:var(--z-sticky);flex:none;align-items:center;gap:16px;padding:0 clamp(24px,3vw,44px);display:flex}.app-topbar.compact-topbar{display:none}.topbar-title{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.topbar-title>div{min-width:0}.topbar-title small{color:var(--color-text-secondary);font-size:var(--fs-footnote);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.topbar-title h1{color:var(--color-text-primary);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font-size:26px;font-weight:700;line-height:1.15;overflow:hidden}.app-topbar .brand-mark{display:none}.topbar-actions{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.screen-stage{flex:1;min-width:0;min-height:0;overflow:hidden}.app-banner{padding:10px var(--page-gutter);border-bottom:1px solid var(--color-border);background:var(--tint-warning);color:var(--color-text-primary);font-size:var(--fs-footnote);flex:none;align-items:center;gap:10px;line-height:1.4;display:flex}.app-banner.info{background:var(--tint-info)}.app-banner>svg{width:20px;height:20px;color:var(--color-warning)}.app-banner.info>svg{color:var(--color-info)}.app-banner>span{flex:1;min-width:0}.app-banner .text-button{min-height:36px;font-size:var(--fs-callout)}.page-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;width:100%;height:100%;min-height:0;animation:page-enter var(--duration-base) ease-out both;padding:24px clamp(24px,3vw,44px) 40px;overflow:hidden auto}.app-toast{left:50%;bottom:calc(24px + var(--safe-area-bottom));z-index:var(--z-toast);background:var(--color-inverse-surface);width:max-content;max-width:min(560px,100% - 32px);box-shadow:var(--shadow-raised);color:var(--color-inverse-text);font-size:var(--fs-callout);animation:toast-in var(--duration-base) var(--ease-out) both;border-radius:14px;align-items:flex-start;gap:10px;padding:12px 16px;line-height:1.4;display:flex;position:fixed;transform:translate(-50%)}.app-toast-mark{width:20px;height:20px;color:var(--color-inverse-text);place-items:center;display:grid}.app-toast-mark svg{width:20px;height:20px}.app-toast.success .app-toast-mark{color:oklch(78% .12 152)}.app-toast.warning .app-toast-mark{color:oklch(82% .12 75)}.app-toast.error .app-toast-mark{color:oklch(75% .14 25)}.dark-theme .app-toast.success .app-toast-mark{color:oklch(48% .1 152)}.dark-theme .app-toast.warning .app-toast-mark{color:oklch(50% .11 62)}.dark-theme .app-toast.error .app-toast-mark{color:oklch(50% .16 26)}.app-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-width:0;height:100%;padding:24px;display:flex}.app-state h2{font-size:var(--fs-title-sm);margin-top:6px;font-weight:650}.app-state p{max-width:400px;color:var(--color-text-secondary);font-size:var(--fs-body)}.app-state .app-state-hint{font-size:var(--fs-footnote)}.app-state-retry{min-width:160px;margin-top:8px}.primary-action,.secondary-action,.danger-action,.action-button,.secondary-button{border-radius:var(--radius-control);min-height:48px;font-size:var(--fs-body);text-align:center;white-space:normal;transition:background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, transform var(--duration-fast) ease;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.primary-action svg,.secondary-action svg,.danger-action svg{width:20px;height:20px}.primary-action,.action-button{background:var(--color-accent);color:var(--color-on-accent)}.secondary-action,.secondary-button{border-color:var(--color-border);background:var(--color-surface-secondary);color:var(--color-text-primary)}.danger-action{background:var(--tint-danger);color:var(--color-danger)}.danger-action.is-quiet{min-height:44px;font-size:var(--fs-callout);background:0 0;padding:0 10px}.is-small{border-radius:var(--radius-sm);min-height:40px;font-size:var(--fs-callout);padding:0 14px}.is-small svg{width:18px;height:18px}.is-block{width:100%}@media (hover:hover){.primary-action:not(:disabled):hover,.action-button:not(:disabled):hover{background:var(--color-accent-pressed)}.secondary-action:not(:disabled):hover,.secondary-button:not(:disabled):hover{background:var(--color-surface-tertiary)}.danger-action:not(:disabled):hover{background:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.danger-action:not(:disabled):hover{background:color-mix(in oklab, var(--color-danger) 18%, var(--color-surface-elevated))}}.text-button:not(:disabled):hover{color:var(--color-accent-pressed)}.list-row:not(:disabled):hover,.home-attention-row:hover,.home-action-card:hover,.tool-button:hover{background:var(--color-surface-secondary)}}.primary-action:not(:disabled):active,.secondary-action:not(:disabled):active,.danger-action:not(:disabled):active{transform:scale(.98)}.primary-action:disabled,.secondary-action:disabled,.danger-action:disabled,.action-button:disabled,.secondary-button:disabled{opacity:.45}.text-button{min-height:44px;color:var(--color-accent);font-size:var(--fs-body);text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0 4px;font-weight:600;display:inline-flex}.text-button svg{width:18px;height:18px}.text-button:disabled{opacity:.45}.tool-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-elevated);min-height:40px;color:var(--color-text-secondary);font-size:var(--fs-callout);align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.tool-button svg{width:18px;height:18px}.icon-action{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-elevated);width:44px;height:44px;color:var(--color-text-primary);flex:none;place-items:center;display:grid;position:relative}.icon-action svg{width:22px;height:22px}.badge-count{border:2px solid var(--color-surface-elevated);background:var(--color-danger);color:oklch(100% 0 0);border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:grid;position:absolute;top:3px;right:3px}.dark-theme .badge-count{color:oklch(20% .02 25)}.close-button,.sheet-back-button{background:var(--color-surface-secondary);width:36px;height:36px;color:var(--color-text-secondary);border:0;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.close-button:before,.sheet-back-button:before{content:"";position:absolute;inset:-4px}.close-button svg,.sheet-back-button svg{width:18px;height:18px}.sheet-back-button svg{width:20px;height:20px}.nav-back-button{min-height:44px;color:var(--color-accent);font-size:var(--fs-headline);background:0 0;border:0;align-items:center;gap:2px;margin-left:-6px;padding:0 8px 0 2px;font-weight:500;display:inline-flex}.nav-back-button svg{width:24px;height:24px}.eyebrow{color:var(--color-accent);font-size:var(--fs-footnote);letter-spacing:0;font-weight:600;display:block}.page-header{justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 20px;display:flex}.page-header>div{min-width:0}.page-header h1{color:var(--color-text-primary);letter-spacing:-.03em;font-size:32px;font-weight:700;line-height:1.1}.page-header p{color:var(--color-text-secondary);font-size:var(--fs-body);margin-top:6px}.page-header-action{flex:none}.section-head,.group-head{justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-bottom:10px;display:flex}.section-title{color:var(--color-text-primary);font-size:var(--fs-title-sm);letter-spacing:-.02em;align-items:center;gap:8px;font-weight:700;line-height:1.25;display:flex}.section-head .text-button,.group-head .text-button{min-height:40px;font-size:var(--fs-callout)}.group-title{color:var(--color-text-secondary);font-size:var(--fs-footnote);letter-spacing:.01em;margin:0 4px 8px;font-weight:600}.group-head .group-title{margin-bottom:0}.count-pill{background:var(--tint-warning);min-width:24px;height:24px;color:var(--color-warning);font-size:var(--fs-footnote);letter-spacing:0;border-radius:12px;place-items:center;padding:0 8px;font-weight:700;display:inline-grid}.row-chevron{color:var(--color-text-tertiary);place-items:center;display:grid}.row-chevron svg{width:18px;height:18px}.surface-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);box-shadow:var(--shadow-card);padding:14px 16px}.list-group{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);box-shadow:var(--shadow-card);overflow:hidden}.list-group.list-group>*+*{border-top:1px solid var(--color-border)}.list-row{width:100%;min-width:0;min-height:60px;color:var(--color-text-primary);text-align:left;transition:background-color var(--duration-fast) ease;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);grid-auto-columns:max-content;grid-auto-flow:column;align-items:center;gap:12px;padding:10px 14px;display:grid}.list-row:disabled{opacity:.5}.list-row-icon{border-radius:var(--radius-sm);background:var(--color-accent-subtle);width:36px;height:36px;color:var(--color-accent);flex:none;place-items:center;display:grid}.list-row-icon svg{width:20px;height:20px}.list-row-icon.is-info{background:var(--tint-info);color:var(--color-info)}.list-row-icon.is-danger{background:var(--tint-danger);color:var(--color-danger)}.list-row-copy{min-width:0;display:block}.list-row-copy strong,.list-row-copy small{overflow-wrap:anywhere;display:block}.list-row-copy strong{color:var(--color-text-primary);font-size:var(--fs-body);font-weight:600;line-height:1.3}.list-row-copy small{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin-top:2px;line-height:1.35}.info-row{justify-content:space-between;align-items:baseline;gap:16px;min-width:0;min-height:48px;padding:12px 16px;display:flex}.info-row small{max-width:48%;color:var(--color-text-secondary);font-size:var(--fs-callout);flex:none}.info-row strong{min-width:0;color:var(--color-text-primary);font-size:var(--fs-body);text-align:right;overflow-wrap:anywhere;font-weight:500}.status-chip{background:var(--tint-success);width:max-content;max-width:100%;min-height:24px;color:var(--color-success);font-size:var(--fs-caption);border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 8px;font-weight:650;line-height:1.25;display:inline-flex}.status-chip:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.status-chip.expired{background:var(--tint-danger);color:var(--color-danger)}.status-chip.expiring,.status-chip.low{background:var(--tint-warning);color:var(--color-warning)}.status-chip.empty{background:var(--color-surface-secondary);color:var(--color-text-secondary)}.status-chip.review{background:var(--tint-info);color:var(--color-info)}.notice{border:1px solid var(--color-info);align-items:flex-start;gap:12px;min-width:0;margin:0;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.notice{border:1px solid color-mix(in oklab, var(--color-info) 22%, transparent)}}.notice{background:var(--tint-info);color:var(--color-text-primary);font-size:var(--fs-callout);border-radius:14px;line-height:1.45}.notice>svg{width:20px;height:20px;color:var(--color-info);margin-top:1px}.notice>div,.notice>span,.notice>p{flex:1;min-width:0}.notice strong,.notice h4{font-size:var(--fs-body);font-weight:650;display:block}.notice p+p,.notice strong+p,.notice h4+p{margin-top:4px}.notice.warning{border-color:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){.notice.warning{border-color:color-mix(in oklab, var(--color-warning) 28%, transparent)}}.notice.warning{background:var(--tint-warning)}.notice.warning>svg{color:var(--color-warning)}.notice.danger{border-color:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.notice.danger{border-color:color-mix(in oklab, var(--color-danger) 26%, transparent)}}.notice.danger{background:var(--tint-danger)}.notice.danger>svg{color:var(--color-danger)}.notice.neutral{border-color:var(--color-border);background:var(--color-surface-secondary)}.notice.neutral>svg{color:var(--color-text-secondary)}.state-icon{background:var(--color-accent-subtle);width:48px;height:48px;color:var(--color-accent);border-radius:15px;flex:none;place-items:center;display:grid}.state-icon svg{width:24px;height:24px}.state-icon.success{background:var(--tint-success);color:var(--color-success)}.state-icon.danger{background:var(--tint-danger);color:var(--color-danger)}.state-icon.warning{background:var(--tint-warning);color:var(--color-warning)}.state-icon.info{background:var(--tint-info);color:var(--color-info)}.state-icon.neutral{background:var(--color-surface-secondary);color:var(--color-text-secondary)}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:560px;margin:8px auto;padding:32px 20px;display:flex}.empty-state .state-icon{border-radius:18px;width:56px;height:56px}.empty-state h2,.empty-state h3{color:var(--color-text-primary);font-size:var(--fs-title-sm);margin-top:6px;font-weight:650}.empty-state p{max-width:40ch;color:var(--color-text-secondary);font-size:var(--fs-body)}.empty-state>.primary-action,.empty-state-actions{margin-top:8px}.empty-state-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.empty-inline{border:1px dashed var(--color-border-strong);border-radius:var(--radius-card);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:20px 16px;display:flex}.empty-inline p{max-width:36ch;color:var(--color-text-secondary);font-size:var(--fs-callout)}.spinner{border:2.5px solid var(--color-accent-subtle);border-top-color:var(--color-accent);border-radius:50%;flex:none;width:24px;height:24px;animation:.8s linear infinite spin;display:inline-block}.spinner.small{border-width:2px;width:16px;height:16px}.loading-line{align-items:center;gap:8px;display:inline-flex}.segmented,.auth-mode-switch{border-radius:var(--radius-control);background:var(--color-surface-tertiary);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;min-width:0;padding:3px;display:grid}.segmented>button,.auth-mode-switch>button{min-width:0;min-height:38px;color:var(--color-text-secondary);font-size:var(--fs-callout);white-space:nowrap;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-weight:600;display:inline-flex}.segmented>button[aria-selected=true],.segmented>button[aria-pressed=true],.segmented>button.selected,.segmented>button.is-active,.segmented>button.active,.auth-mode-switch>button.is-active{background:var(--color-surface-elevated);color:var(--color-text-primary);box-shadow:0 1px 3px oklch(20% .02 160/.14)}.segmented b{color:var(--color-accent);font-weight:650}.field{gap:6px;min-width:0;display:grid}.field-label{color:var(--color-text-secondary);font-size:var(--fs-footnote);align-items:baseline;gap:6px;font-weight:600;display:flex}.field-label em{color:var(--color-danger);font-style:normal}.field-optional{color:var(--color-text-tertiary);font-weight:400}.input{border:1.5px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-secondary);width:100%;min-width:0;min-height:50px;color:var(--color-text-primary);font-size:var(--fs-input);appearance:none;transition:border-color var(--duration-fast) ease;outline:none;padding:12px 14px;line-height:1.3}.input::placeholder{color:var(--color-text-tertiary)}.input:focus,.input:focus-visible{border-color:var(--color-accent);outline:none}.input.is-invalid,.input[aria-invalid=true]{border-color:var(--color-danger)}.input:disabled{opacity:.55}textarea.input{resize:vertical;min-height:92px;line-height:1.45}select.input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%238a958e' 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 12px center;background-repeat:no-repeat;padding-right:40px}input.input[type=month]{min-height:50px}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;display:grid}.field-row.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.input-with-action{grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0;display:grid}.input-with-action .secondary-action{min-height:50px;padding:0 14px}.checkbox-row{min-height:44px;color:var(--color-text-primary);font-size:var(--fs-callout);align-items:center;gap:12px;line-height:1.35;display:flex}.checkbox-row input{width:22px;height:22px;accent-color:var(--color-accent);flex:none;margin:0}.field-hint{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.4}.field-error,.form-error{color:var(--color-danger);font-size:var(--fs-footnote);overflow-wrap:anywhere;margin:0;line-height:1.4}.form-success{color:var(--color-success);font-size:var(--fs-footnote);margin:0;line-height:1.4}.form-section{gap:14px;min-width:0;display:grid}.form-section-title{color:var(--color-text-primary);font-size:var(--fs-headline);letter-spacing:-.01em;margin:0;font-weight:650}.sheet-body>.form-section+.form-section,.sheet-body>.photo-intake-card+.form-section{margin-top:6px}.stack-actions{gap:8px;display:grid}.danger-zone{border-top:1px solid var(--color-border);justify-items:stretch;gap:4px;padding-top:16px;display:grid}.danger-zone .text-button{color:var(--color-text-secondary);justify-self:center}.chip-list{flex-wrap:wrap;gap:6px;display:flex}.chip-list span,.profile-allergies span{background:var(--tint-danger);min-width:0;max-width:100%;color:var(--color-danger);font-size:var(--fs-footnote);overflow-wrap:anywhere;border-radius:999px;padding:4px 10px;font-weight:600}.modal-backdrop{z-index:100;padding:calc(24px + var(--safe-area-top)) calc(24px + var(--safe-area-right)) calc(24px + var(--safe-area-bottom)) calc(24px + var(--safe-area-left));overscroll-behavior:none;background:var(--color-overlay);justify-content:center;align-items:center;animation:.18s ease-out both backdrop-in;display:flex;position:fixed;inset:0;overflow:hidden}[data-overlay-scroll]{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;min-height:0;overflow-y:auto}[data-overlay-scroll]::-webkit-scrollbar{display:none}.sheet{border-radius:var(--radius-sheet);background:var(--color-surface-elevated);width:min(560px,100%);min-width:0;min-height:0;max-height:100%;box-shadow:var(--shadow-sheet);color:var(--color-text-primary);animation:modal-in var(--duration-base) var(--ease-out) both;flex-direction:column;display:flex;position:relative;overflow:hidden}.sheet-grabber{display:none}.sheet-header{border-bottom:1px solid var(--color-border);flex:none;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.sheet-heading{flex:1;min-width:0}.sheet-title{color:var(--color-text-primary);font-size:var(--fs-title-sm);letter-spacing:-.015em;overflow-wrap:anywhere;font-weight:700;line-height:1.25}.sheet-subtitle{color:var(--color-text-secondary);font-size:var(--fs-callout);overflow-wrap:anywhere;margin-top:3px;line-height:1.4}.sheet-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:18px;min-height:0;padding:16px 20px 20px;display:flex;overflow-y:auto}.sheet>.sheet-body:last-child{padding-bottom:calc(20px + var(--safe-area-bottom))}.sheet-intro{color:var(--color-text-secondary);font-size:var(--fs-callout);line-height:1.45}.sheet-footer{padding:12px 20px calc(12px + var(--safe-area-bottom));border-top:1px solid var(--color-border);background:var(--color-surface-elevated);flex:none;gap:8px;display:grid}.sheet-footer-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:10px;display:grid}.sheet-footer-actions>button{min-width:0}.medicine-sheet{width:min(680px,100%)}.vision-review-sheet{width:min(720px,100%)}.backup-sheet,.chat-deduct-sheet{width:min(480px,100%)}.family-access-sheet{width:min(600px,100%)}.background-modal{width:min(720px,100%)}.profile-detail-modal{width:min(640px,100%)}.camera-capture-backdrop{padding:24px}.sheet-confirm-layer{z-index:2;background:var(--color-overlay);border-radius:inherit;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.sheet-confirm{border-radius:var(--radius-sheet);background:var(--color-surface-elevated);width:min(100%,420px);box-shadow:var(--shadow-sheet);gap:10px;padding:20px;display:grid}.sheet-confirm h3{font-size:var(--fs-title-sm);font-weight:700}.sheet-confirm p{color:var(--color-text-secondary);font-size:var(--fs-callout)}.sheet-confirm .stack-actions{margin-top:6px}.inline-confirm{border:1px solid var(--color-warning);gap:10px;margin-top:10px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.inline-confirm{border:1px solid color-mix(in oklab, var(--color-warning) 28%, transparent)}}.inline-confirm{border-radius:var(--radius-control);background:var(--tint-warning)}.inline-confirm p{color:var(--color-text-primary);font-size:var(--fs-callout);line-height:1.45}.inline-confirm-actions{flex-wrap:wrap;gap:8px;display:flex}.inline-confirm-actions>button{flex:140px;min-height:44px}.home-dashboard{flex-direction:column;gap:24px;width:100%;max-width:1180px;margin-inline:auto;display:flex}.home-profile-context{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);width:100%;min-width:0;box-shadow:var(--shadow-card);color:var(--color-text-primary);text-align:left;align-items:center;gap:12px;padding:12px 14px;display:flex}.home-profile-avatar{background:var(--color-accent-subtle);width:44px;height:44px;color:var(--color-accent);font-size:var(--fs-headline);border-radius:14px;flex:none;place-items:center;font-weight:650;display:grid;overflow:hidden}.home-profile-avatar img{object-fit:cover;width:100%;height:100%}.home-profile-copy{flex:1;gap:1px;min-width:0;display:grid}.home-profile-copy small,.home-profile-copy em{color:var(--color-text-secondary);font-size:var(--fs-footnote);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.home-profile-copy strong{font-size:var(--fs-headline);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.home-profile-link{color:var(--color-text-tertiary);place-items:center;display:grid}.home-profile-link svg{width:20px;height:20px}.home-overview-card{border:1px solid var(--color-border);border-radius:var(--radius-sheet);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);grid-template-columns:minmax(180px,.8fr) minmax(0,1.4fr);align-items:center;gap:24px;padding:20px 22px;display:grid}.home-overview-total{align-items:baseline;gap:10px;min-width:0;display:flex}.home-overview-total strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:48px;font-weight:700;line-height:1}.home-overview-total span{color:var(--color-text-secondary);font-size:var(--fs-body);line-height:1.3}.home-overview-stats{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid}.home-overview-stats>div{border-left:1px solid var(--color-border);gap:4px;min-width:0;padding:4px 16px;display:grid}.home-overview-stats strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:700;line-height:1.1}.home-overview-stats span{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.3;display:block}.home-overview-stats strong{align-items:center;gap:8px;display:flex}.home-overview-stats strong:before{content:"";background:var(--color-success);border-radius:50%;flex:none;width:8px;height:8px}.home-overview-stats .stat-warning strong:before{background:var(--color-warning)}.home-overview-stats .stat-danger strong:before{background:var(--color-danger)}.home-empty-cabinet{border:1px dashed var(--color-border-strong);border-radius:var(--radius-card);align-items:center;gap:14px;margin-top:12px;padding:16px;display:flex}.home-empty-cabinet>div{flex:1;min-width:0}.home-empty-cabinet strong,.home-attention-empty strong{font-size:var(--fs-body);font-weight:650;display:block}.home-empty-cabinet p,.home-attention-empty p{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:3px;line-height:1.45}.home-lower-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.85fr);align-items:start;gap:24px;display:grid}.home-attention-section,.home-actions-section{min-width:0}.home-attention-row{width:100%;min-width:0;min-height:68px;color:var(--color-text-primary);text-align:left;transition:background-color var(--duration-fast) ease;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.home-attention-mark{background:var(--tint-info);width:40px;height:40px;color:var(--color-info);border-radius:12px;place-items:center;display:grid}.home-attention-mark svg{width:22px;height:22px}.tone-danger .home-attention-mark{background:var(--tint-danger);color:var(--color-danger)}.tone-warning .home-attention-mark{background:var(--tint-warning);color:var(--color-warning)}.home-attention-copy{min-width:0;display:grid}.home-attention-copy strong{font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.home-attention-status{color:var(--color-info);font-size:var(--fs-footnote);margin-top:1px;font-weight:650}.tone-danger .home-attention-status{color:var(--color-danger)}.tone-warning .home-attention-status{color:var(--color-warning)}.home-attention-copy small{color:var(--color-text-secondary);font-size:var(--fs-footnote);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-more-attention{width:100%;min-height:52px;color:var(--color-accent);font-size:var(--fs-callout);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0 14px 0 66px;font-weight:600;display:flex}.home-more-attention svg{width:18px;height:18px}.home-attention-empty{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);align-items:flex-start;gap:14px;padding:16px;display:flex}.home-attention-empty .state-icon{border-radius:12px;width:40px;height:40px}.home-attention-empty.is-clear{border-color:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.home-attention-empty.is-clear{border-color:color-mix(in oklab, var(--color-success) 22%, var(--color-border))}}.home-actions-list{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);box-shadow:var(--shadow-card);overflow:hidden}.home-action-card{width:100%;min-width:0;min-height:64px;color:var(--color-text-primary);text-align:left;transition:background-color var(--duration-fast) ease;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:10px 14px;display:grid}.home-action-card+.home-action-card{border-top:1px solid var(--color-border)}.home-action-icon{background:var(--color-accent-subtle);width:40px;height:40px;color:var(--color-accent);border-radius:12px;place-items:center;display:grid}.home-action-icon svg{width:22px;height:22px}.home-action-card>span:nth-child(2){gap:2px;min-width:0;display:grid}.home-action-card strong{font-size:var(--fs-body);font-weight:600}.home-action-card small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.home-action-arrow{color:var(--color-text-tertiary);place-items:center;display:grid}.home-action-arrow svg{width:18px;height:18px}.cabinet-page{width:100%}.cabinet-tools{gap:12px;margin:0 0 20px;display:grid}.medicine-search{border:1.5px solid var(--color-border);background:var(--color-surface-elevated);width:min(100%,640px);min-height:50px;color:var(--color-text-tertiary);transition:border-color var(--duration-fast) ease;border-radius:14px;align-items:center;gap:10px;padding:0 14px;display:flex}.medicine-search:focus-within{border-color:var(--color-accent)}.medicine-search svg{width:20px;height:20px}.medicine-search input{width:100%;min-width:0;min-height:46px;color:var(--color-text-primary);font-size:var(--fs-input);background:0 0;border:0;outline:0}.medicine-search input::placeholder{color:var(--color-text-tertiary)}.medicine-search input::-webkit-search-cancel-button{appearance:none}.attention-filters{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.attention-filters button{border:1px solid var(--color-border);background:var(--color-surface-elevated);min-height:40px;color:var(--color-text-primary);font-size:var(--fs-callout);white-space:nowrap;transition:background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, color var(--duration-fast) ease;border-radius:20px;flex:none;align-items:center;gap:8px;padding:0 8px 0 14px;font-weight:500;display:inline-flex}.attention-filters button b{background:var(--color-surface-secondary);min-width:24px;height:24px;color:var(--color-text-secondary);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;border-radius:12px;place-items:center;padding:0 7px;font-weight:650;display:inline-grid}.attention-filters button.selected{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.attention-filters button.selected b{background:var(--color-on-accent)}@supports (color:color-mix(in lab, red, red)){.attention-filters button.selected b{background:color-mix(in oklab, var(--color-on-accent) 22%, transparent)}}.attention-filters button.selected b{color:inherit}.cabinet-inline-state{color:var(--color-text-secondary);font-size:var(--fs-footnote);align-items:center;gap:8px;display:flex}.cabinet-inline-error{color:var(--color-danger)}.cabinet-inline-error .text-button{min-height:36px;font-size:var(--fs-footnote)}.cabinet-utility-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cabinet-utility-actions .text-button{min-height:40px;font-size:var(--fs-callout);margin-right:auto}.vision-jobs{gap:12px;margin-bottom:24px;display:grid}.vision-job-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:12px;display:grid}.vision-job-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);gap:12px;padding:14px 16px;display:grid}.vision-job-card.is-ready{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.vision-job-card.is-ready{border-color:color-mix(in oklab, var(--color-accent) 35%, var(--color-border))}}.vision-job-card.is-failed{border-color:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.vision-job-card.is-failed{border-color:color-mix(in oklab, var(--color-danger) 30%, var(--color-border))}}.vision-job-heading{align-items:center;gap:12px;min-width:0;display:flex}.vision-job-heading>div{min-width:0}.vision-job-heading strong,.vision-job-heading small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.vision-job-heading strong{font-size:var(--fs-body);font-weight:600}.vision-job-heading small{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin-top:2px}.vision-job-icon{background:var(--color-accent-subtle);width:40px;height:40px;color:var(--color-accent);border-radius:12px;flex:none;place-items:center;display:grid}.vision-job-icon svg{width:22px;height:22px}.is-failed .vision-job-icon{background:var(--tint-danger);color:var(--color-danger)}.vision-job-actions{flex-wrap:wrap;gap:8px;display:flex}.vision-job-actions>button{flex:160px;min-height:44px}.vision-job-note{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.45}.medicine-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));align-items:stretch;gap:12px;display:grid}.medicine-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);transition:border-color var(--duration-fast) ease, transform var(--duration-fast) ease;overflow:hidden}.medicine-card.expired{border-color:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.medicine-card.expired{border-color:color-mix(in oklab, var(--color-danger) 34%, var(--color-border))}}.medicine-card.expiring,.medicine-card.low{border-color:var(--color-warning)}@supports (color:color-mix(in lab, red, red)){.medicine-card.expiring,.medicine-card.low{border-color:color-mix(in oklab, var(--color-warning) 32%, var(--color-border))}}.medicine-card:active{transform:scale(.99)}.medicine-card-open{width:100%;min-width:0;height:100%;color:var(--color-text-primary);text-align:left;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr);grid-template-areas:"icon chip""name name""meta meta""facts facts""pkg pkg";align-content:start;align-items:center;column-gap:12px;padding:16px;display:grid}.medicine-card-open:focus-visible{outline:2px solid var(--color-accent);outline-offset:-3px;border-radius:var(--radius-card)}.medicine-card-icon{background:var(--color-accent-subtle);width:44px;height:44px;color:var(--color-accent);border-radius:13px;grid-area:icon;place-items:center;display:grid}.medicine-card-icon svg{width:24px;height:24px}.medicine-card-icon.tone-expired{background:var(--tint-danger);color:var(--color-danger)}.medicine-card-icon.tone-expiring,.medicine-card-icon.tone-low{background:var(--tint-warning);color:var(--color-warning)}.medicine-card-icon.tone-empty{background:var(--color-surface-secondary);color:var(--color-text-secondary)}.medicine-card-open>.status-chip{grid-area:chip;justify-self:end}.medicine-card-name{font-size:var(--fs-headline);letter-spacing:-.01em;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-area:name;margin-top:14px;font-weight:650;line-height:1.25;display:-webkit-box;overflow:hidden}.medicine-card-meta{color:var(--color-text-secondary);font-size:var(--fs-callout);text-overflow:ellipsis;white-space:nowrap;grid-area:meta;margin-top:3px;overflow:hidden}.medicine-card-insets{grid-area:facts;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.medicine-card-insets>span{border-radius:var(--radius-control);background:var(--color-surface-secondary);min-width:0;padding:10px 12px;display:block}.medicine-card-insets small,.medicine-card-insets strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.medicine-card-insets small{color:var(--color-text-secondary);font-size:var(--fs-caption)}.medicine-card-insets strong{font-size:var(--fs-callout);margin-top:2px;font-weight:600}.medicine-card-stock.level-critical strong{color:var(--color-danger)}.medicine-card-stock.level-warn strong{color:var(--color-warning)}.medicine-card-stock.level-unknown strong{color:var(--color-text-secondary)}.medicine-card-package-more{color:var(--color-text-secondary);font-size:var(--fs-footnote);grid-area:pkg;margin-top:10px}.medicine-card-more{display:none}.cabinet-empty{margin-top:12px}.medicine-detail-modal{border-radius:var(--radius-large);background:var(--color-app-background);width:min(1040px,100%);height:min(880px,100%);min-height:0;box-shadow:var(--shadow-sheet);color:var(--color-text-primary);animation:modal-in var(--duration-base) var(--ease-out) both;flex-direction:column;display:flex;overflow:hidden}.detail-nav-bar{background:var(--color-app-background);border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:6px 20px;display:flex}.detail-edit-button{font-size:var(--fs-body)}.medicine-detail-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;flex:1;min-height:0;padding:0 28px 28px;overflow:hidden auto}.medicine-detail-header{align-items:center;gap:16px;padding:22px 0 16px;display:flex}.medicine-detail-icon{background:var(--color-accent-subtle);width:60px;height:60px;color:var(--color-accent);border-radius:18px;flex:none;place-items:center;display:grid}.medicine-detail-icon svg{width:30px;height:30px}.medicine-detail-icon.tone-expired{background:var(--tint-danger);color:var(--color-danger)}.medicine-detail-icon.tone-expiring,.medicine-detail-icon.tone-low{background:var(--tint-warning);color:var(--color-warning)}.medicine-detail-icon.tone-empty{background:var(--color-surface-tertiary);color:var(--color-text-secondary)}.medicine-detail-heading-copy{flex:1;min-width:0}.medicine-detail-heading-copy h2{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:28px;font-weight:700;line-height:1.15}.medicine-detail-heading-copy p{color:var(--color-text-secondary);font-size:var(--fs-body);overflow-wrap:anywhere;margin-top:4px}.detail-facts{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px;display:grid}.detail-fact{align-content:start;gap:2px;min-width:0;padding:14px 16px;display:grid}.detail-fact+.detail-fact{border-left:1px solid var(--color-border)}.detail-fact small{color:var(--color-text-secondary);font-size:var(--fs-caption);font-weight:500}.detail-fact strong{color:var(--color-text-primary);font-size:var(--fs-headline);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;align-items:center;gap:6px;font-weight:650;line-height:1.25;display:flex}.detail-fact span{color:var(--color-text-tertiary);font-size:var(--fs-caption);line-height:1.3}.detail-fact-status strong{color:var(--color-success)}.detail-fact-status strong i{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.detail-fact-status.expired strong{color:var(--color-danger)}.detail-fact-status.expiring strong,.detail-fact-status.low strong{color:var(--color-warning)}.detail-fact-status.empty strong{color:var(--color-text-secondary)}.detail-fact-status.review strong{color:var(--color-info)}.stock-value-changed{animation:.36s ease-out stock-value-pop}.medicine-local-tabs{z-index:var(--z-sticky);isolation:isolate;background:var(--color-app-background);margin:0 -28px 16px;padding:11px 31px;position:sticky;top:0}.medicine-local-tabs:before{content:"";z-index:-1;border-radius:var(--radius-control);background:var(--color-surface-tertiary);position:absolute;inset:8px 28px}.medicine-local-tabs>button{min-height:40px}.medicine-detail-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;min-width:0;display:grid}.medicine-detail-main{flex-direction:column;gap:20px;min-width:0;display:flex}.detail-group{min-width:0}.detail-muted{color:var(--color-text-secondary);font-size:var(--fs-callout);line-height:1.5}.detail-note{color:var(--color-text-primary);font-size:var(--fs-body);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.package-summary{align-items:center;gap:12px;display:flex}.detail-readiness,.detail-correction{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card)}.detail-readiness>summary{cursor:pointer;grid-template-columns:36px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:64px;padding:12px 16px;list-style:none;display:grid}.detail-readiness>summary::-webkit-details-marker{display:none}.detail-correction>summary::-webkit-details-marker{display:none}.detail-readiness>summary:after,.detail-correction>summary:after{content:"";border-right:2px solid var(--color-text-tertiary);border-bottom:2px solid var(--color-text-tertiary);width:9px;height:9px;transition:transform var(--duration-fast) ease;justify-self:center;transform:rotate(45deg)translate(-2px,-2px)}.detail-readiness[open]>summary:after,.detail-correction[open]>summary:after{transform:rotate(225deg)translate(-2px,-2px)}.readiness-icon{border-radius:var(--radius-sm);background:var(--tint-warning);width:36px;height:36px;color:var(--color-warning);place-items:center;display:grid}.readiness-icon svg{width:20px;height:20px}.readiness-icon.is-ok{background:var(--tint-success);color:var(--color-success)}.readiness-copy{min-width:0}.readiness-copy strong,.readiness-copy small{display:block}.readiness-copy strong{font-size:var(--fs-body);font-weight:600}.readiness-copy small{font-size:var(--fs-footnote);margin-top:2px;font-weight:600;line-height:1.35}.readiness-ok{color:var(--color-success)}.readiness-attention{color:var(--color-warning)}.detail-readiness-content{color:var(--color-text-secondary);font-size:var(--fs-callout);gap:10px;padding:0 16px 16px;line-height:1.5;display:grid}.detail-readiness-content ul{gap:6px;margin:0;padding-left:18px;display:grid}.detail-readiness-content li strong{color:var(--color-text-primary)}.manual-review-hint{border-left:3px solid var(--color-warning);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--tint-warning);color:var(--color-text-primary);padding:10px 12px}.ai-readiness-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ai-readiness-actions .secondary-action{min-height:44px;font-size:var(--fs-callout)}.detail-correction{gap:10px;padding:14px 16px;display:grid}.detail-correction>p{color:var(--color-text-secondary);font-size:var(--fs-callout)}.detail-correction>summary{min-height:44px;color:var(--color-text-primary);font-size:var(--fs-body);cursor:pointer;grid-template-columns:minmax(0,1fr) 20px;align-items:center;font-weight:600;list-style:none;display:grid}.correction-fields{gap:12px;display:grid}.correction-fields>p{color:var(--color-text-secondary);font-size:var(--fs-callout);line-height:1.45}.correction-message{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.duplicate-row{padding:12px 14px}.duplicate-row-main{align-items:center;gap:12px;display:flex}.duplicate-row-main .list-row-copy{flex:1}.deduct-panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);gap:14px;padding:18px;display:grid;position:sticky;top:72px}.deduct-panel-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.deduct-panel-heading h3{font-size:var(--fs-headline);font-weight:650}.deduct-panel-caption{color:var(--color-text-secondary);font-size:var(--fs-callout)}.deduct-current{color:var(--color-text-primary);font-size:var(--fs-headline);font-variant-numeric:tabular-nums;transition:color var(--duration-base) ease;font-weight:700}.deduct-current small{color:var(--color-text-secondary);font-size:var(--fs-callout);font-weight:500}.deduct-controls{gap:10px;display:grid}.deduct-stepper{grid-template-columns:52px minmax(64px,1fr) 52px;gap:8px;display:grid}.deduct-stepper button{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-secondary);min-height:52px;color:var(--color-accent);place-items:center;display:grid}.deduct-stepper button svg{width:22px;height:22px}.deduct-stepper button:disabled{opacity:.4}.deduct-stepper input{border:1.5px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-elevated);width:100%;min-width:0;min-height:52px;color:var(--color-text-primary);text-align:center;font-variant-numeric:tabular-nums;outline:none;font-size:20px;font-weight:650}.deduct-stepper input:focus{border-color:var(--color-accent)}.quick-amounts{flex-wrap:wrap;gap:8px;display:flex}.quick-amounts button{border:1px solid var(--color-border);background:var(--color-surface-elevated);min-width:52px;min-height:40px;color:var(--color-text-primary);font-size:var(--fs-callout);font-variant-numeric:tabular-nums;border-radius:20px;padding:0 12px;font-weight:600}.quick-amounts button.active{border-color:var(--color-accent);background:var(--color-accent-subtle);color:var(--color-accent)}.wide-action{width:100%;min-height:52px;font-size:var(--fs-headline)}.deduct-message{font-size:var(--fs-callout);align-items:center;gap:6px;margin:0;font-weight:600;line-height:1.4;display:flex}.deduct-message svg{width:18px;height:18px}.deduct-message.success{color:var(--color-success);animation:.18s ease-out confirmation-in}.deduct-message.error{color:var(--color-danger)}.deduct-result{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.45}.deduct-result strong{color:var(--color-text-primary);font-weight:650}.package-microcards{gap:10px;display:grid}.package-microcard-wrap{gap:2px;min-width:0;display:grid}.package-microcard-wrap>.package-split-action{justify-self:end}.package-microcard{border:1px solid var(--color-border);background:var(--color-surface-elevated);width:100%;min-width:0;color:var(--color-text-primary);text-align:left;border-radius:14px;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:14px 16px;display:grid}.package-microcard.is-first{border-color:var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.package-microcard.is-first{border-color:color-mix(in oklab, var(--color-accent) 40%, var(--color-border))}}.package-microcard.is-first{background:var(--color-accent-subtle)}@supports (color:color-mix(in lab, red, red)){.package-microcard.is-first{background:color-mix(in oklab, var(--color-accent-subtle) 55%, var(--color-surface-elevated))}}.package-microcard-main,.package-microcard-side{gap:3px;min-width:0;display:grid}.package-microcard-main strong{font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.package-microcard-main small,.package-microcard-side small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.package-microcard-side{text-align:right;justify-items:end}.package-microcard-side strong{font-size:var(--fs-callout);font-weight:600}.package-microcard.is-first .package-microcard-side small{color:var(--color-accent);font-weight:600}.package-microcard.is-expired .package-microcard-side small{color:var(--color-danger);font-weight:600}.package-microcard-chevron{color:var(--color-text-tertiary);place-items:center;display:grid}.package-microcard-chevron svg{width:18px;height:18px}.package-split-action{min-height:36px;color:var(--color-text-secondary);font-size:var(--fs-footnote)}.package-split-confirm{width:100%}.verified-source-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);gap:8px;padding:16px;display:grid}.sheet .verified-source-card{background:var(--color-surface-secondary);box-shadow:none}.verified-source-card+.verified-source-card{margin-top:10px}.verified-source-card>p{color:var(--color-text-primary);font-size:var(--fs-callout);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.source-card-title{align-items:center;gap:10px;min-width:0;display:flex}.source-card-title strong,.source-card-title a{min-width:0;font-size:var(--fs-body);overflow-wrap:anywhere;font-weight:650;line-height:1.35}.verified-mark{border-radius:var(--radius-sm);background:var(--tint-success);width:32px;height:32px;color:var(--color-success);flex:none;place-items:center;display:grid}.verified-mark svg{width:18px;height:18px}.source-identity{color:var(--color-text-secondary)!important}.source-provenance{color:var(--color-text-tertiary);font-size:var(--fs-caption)}.source-trade-name{font-size:var(--fs-headline);font-weight:650}.verified-fact{border-top:1px solid var(--color-border);gap:4px;padding-top:10px;display:grid}.verified-fact small{color:var(--color-text-secondary);font-size:var(--fs-caption);font-weight:650}.verified-fact p{color:var(--color-text-primary);font-size:var(--fs-callout);overflow-wrap:anywhere;line-height:1.5}.verified-fact blockquote{border-left:3px solid var(--color-border-strong);color:var(--color-text-secondary);font-size:var(--fs-footnote);overflow-wrap:anywhere;margin:4px 0 0;padding-left:10px;line-height:1.45}.source-link{min-height:36px;color:var(--color-accent);font-size:var(--fs-callout);overflow-wrap:anywhere;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.source-link svg{width:16px;height:16px}.source-card-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.source-auto-card{gap:12px;display:grid}.source-auto-head{align-items:flex-start;gap:12px;min-width:0;display:flex}.source-auto-head>div{flex:1;min-width:0}.source-auto-head strong{font-size:var(--fs-body);font-weight:650;display:block}.source-auto-head p{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:2px;line-height:1.45}.source-auto-head .state-icon{border-radius:12px;width:40px;height:40px}.source-document{border-top:1px solid var(--color-border);gap:2px;padding-top:10px;display:grid}.source-document strong{font-size:var(--fs-callout)}.source-facts{gap:8px;display:grid}.source-facts>strong{font-size:var(--fs-callout)}.source-candidates{gap:10px;display:grid}.source-candidate{border:1px solid var(--color-border);background:var(--color-surface-elevated);border-radius:14px;gap:4px;min-width:0;padding:14px;display:grid}.source-candidate strong{font-size:var(--fs-body);overflow-wrap:anywhere;font-weight:650}.source-candidate p,.source-candidate small{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.4}.source-conflicts{align-items:flex-start;gap:6px;font-weight:600;display:flex;color:var(--color-warning)!important}.source-conflicts svg{width:16px;height:16px;margin-top:1px}.source-candidate-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.source-candidate-actions .primary-action{min-height:44px;font-size:var(--fs-callout)}.manual-source-row{gap:4px;padding:12px 14px;display:grid}.manual-source-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.manual-source-head strong{min-width:0;font-size:var(--fs-body);overflow-wrap:anywhere;font-weight:600}.manual-source-url{color:var(--color-text-tertiary);font-size:var(--fs-caption);word-break:break-all}.manual-source-row p{font-size:var(--fs-callout);line-height:1.45}.manual-source-actions{gap:8px;display:flex}.manual-source-form{gap:12px;margin-top:4px;display:grid}.batch-sheet{width:min(560px,100%)}.package-detail-view{gap:16px;display:grid}.package-detail-status{flex-wrap:wrap;gap:8px;display:flex}.package-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.package-detail-facts>div{border-radius:var(--radius-control);background:var(--color-surface-secondary);min-width:0;padding:12px 14px}.package-detail-facts dt{color:var(--color-text-secondary);font-size:var(--fs-caption)}.package-detail-facts dd{color:var(--color-text-primary);font-size:var(--fs-body);overflow-wrap:anywhere;margin:3px 0 0;font-weight:600}.package-history{display:grid}.package-detail-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.package-edit-form{gap:14px;display:grid}.history-row{grid-template-columns:minmax(0,1fr) auto;grid-auto-columns:max-content;grid-auto-flow:column;align-items:center;gap:10px;min-width:0;min-height:60px;padding:10px 14px;display:grid}.delta-pill{border-radius:var(--radius-xs);background:var(--tint-success);color:var(--color-success);font-size:var(--fs-callout);white-space:nowrap;font-variant-numeric:tabular-nums;padding:3px 8px;font-weight:650}.delta-pill.is-negative{background:var(--tint-danger);color:var(--color-danger)}.file-name{overflow-wrap:anywhere}.photo-intake-card{border:1px solid var(--color-accent);gap:12px;padding:14px;display:grid}@supports (color:color-mix(in lab, red, red)){.photo-intake-card{border:1px solid color-mix(in oklab, var(--color-accent) 24%, var(--color-border))}}.photo-intake-card{border-radius:var(--radius-card);background:var(--color-accent-subtle)}@supports (color:color-mix(in lab, red, red)){.photo-intake-card{background:color-mix(in oklab, var(--color-accent-subtle) 60%, var(--color-surface-elevated))}}.photo-intake-main{align-items:flex-start;gap:12px;min-width:0;display:flex}.photo-intake-main strong{font-size:var(--fs-body);font-weight:650;display:block}.photo-intake-main p{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin-top:2px;line-height:1.4}.photo-intake-icon{background:var(--color-accent);width:44px;height:44px;color:var(--color-on-accent);border-radius:13px;flex:none;place-items:center;display:grid}.photo-intake-icon svg{width:24px;height:24px}.photo-intake-open{background:var(--color-surface-elevated);width:100%;color:var(--color-accent)}.photo-intake-list{gap:8px;display:grid}.photo-intake-file{border-radius:var(--radius-sm);background:var(--color-surface-elevated);min-width:0;min-height:44px;font-size:var(--fs-callout);align-items:center;gap:8px;padding:0 4px 0 12px;display:flex}.photo-intake-file svg{width:18px;height:18px;color:var(--color-text-secondary)}.photo-intake-file span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.duplicate-review{gap:14px}.duplicate-candidate{gap:10px;padding:14px;display:grid}.vision-photos{gap:8px;display:grid}.vision-photo-strip{overscroll-behavior-x:contain;gap:10px;margin:0 -20px;padding:0 20px 2px;display:flex;overflow-x:auto}.vision-photo-strip figure{border:1px solid var(--color-border);background:var(--color-surface-secondary);border-radius:14px;flex:none;width:132px;margin:0;padding:6px}.vision-photo-strip img{object-fit:contain;border-radius:9px;width:100%;height:120px;display:block}.vision-photo-strip figcaption{color:var(--color-text-secondary);font-size:var(--fs-caption);padding:6px 2px 0;line-height:1.3}.review-card{border:1px solid var(--color-border);background:var(--color-surface-secondary);font-size:var(--fs-callout);border-radius:14px;gap:6px;padding:14px;display:grid}.review-card-head{align-items:center;gap:10px;display:flex}.review-card-head svg{width:22px;height:22px;color:var(--color-accent)}.review-card-head strong,.review-card-head small{display:block}.review-card-head strong{font-size:var(--fs-body);font-weight:650}.review-card-head small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.review-card-title{font-size:var(--fs-headline);font-weight:650}.review-card p{color:var(--color-text-secondary);line-height:1.45}.review-card small{color:var(--color-text-tertiary);font-size:var(--fs-caption)}.review-card .review-card-warning{color:var(--color-warning);font-weight:600}.review-details{border:1px solid var(--color-border);background:var(--color-surface-secondary);color:var(--color-text-secondary);font-size:var(--fs-callout);border-radius:14px;padding:12px 14px;line-height:1.45}.review-details summary{min-height:32px;color:var(--color-accent);cursor:pointer;font-weight:600}.review-details ul{gap:4px;margin:8px 0 0;padding-left:18px;display:grid}.review-details strong{color:var(--color-text-primary)}.review-structured{border-top:1px solid var(--color-border);gap:4px;margin-top:10px;padding-top:10px;display:grid}.review-warnings{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin:0;padding-left:20px}.draft-status{color:var(--color-text-secondary);font-size:var(--fs-footnote);text-align:center;justify-content:center;align-items:center;gap:8px;display:flex}.file-text-button{font-size:var(--fs-callout);justify-self:start;position:relative}.camera-capture-panel{--camera-surface:oklch(17% .01 160);--camera-text:oklch(97% .004 160);--camera-muted:oklch(80% .01 160);border-radius:var(--radius-large);background:var(--camera-surface);width:min(760px,100%);height:min(860px,100%);color:var(--camera-text);box-shadow:var(--shadow-sheet);flex-direction:column;display:flex;position:relative;overflow:hidden}.camera-capture-header{flex:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 10px 20px;display:flex}.camera-capture-header small{color:var(--camera-muted);font-size:var(--fs-footnote);display:block}.camera-capture-header h2{color:var(--camera-text);font-size:var(--fs-title-sm);font-weight:700}.camera-close{width:40px;height:40px;color:var(--camera-text);background:oklch(100% 0 0/.14);border:0;border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.camera-close svg{width:20px;height:20px}.camera-close:before{content:"";position:absolute;inset:-4px}.camera-capture-modes{background:oklch(100% 0 0/.1);flex:none;margin:0 16px 10px}.camera-capture-modes>button{color:var(--camera-muted)}.camera-capture-modes>button[aria-selected=true]{color:oklch(20% .02 160);background:oklch(100% 0 0/.92)}.camera-capture-preview{background:oklch(8% 0 0);flex:1;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.camera-capture-preview video{object-fit:cover;width:100%;height:100%}.camera-capture-fallback{color:var(--camera-muted);font-size:var(--fs-callout);text-align:center;place-content:center;justify-items:center;gap:12px;padding:24px;line-height:1.5;display:grid;position:absolute;inset:0}.camera-capture-fallback svg{width:32px;height:32px}.camera-capture-fallback p{max-width:32ch}.camera-scan-frame{pointer-events:none;border:2px solid oklch(100% 0 0/.9);border-radius:22px;width:min(78%,480px);height:min(56%,340px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 999px oklch(0% 0 0/.32)}.camera-scan-frame.code{border-color:oklch(82% .13 155);border-radius:14px;width:min(84%,560px);height:120px}.camera-code-result{width:min(100% - 24px,520px);max-height:min(55%,360px);color:var(--camera-text);font-size:var(--fs-footnote);text-align:center;overflow-wrap:anywhere;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:oklch(20% .02 160/.92);border-radius:14px;gap:4px;padding:12px 14px;line-height:1.4;display:grid;position:absolute;top:12px;left:50%;overflow-y:auto;transform:translate(-50%)}.camera-code-result strong{font-size:var(--fs-body)}.camera-code-ok{color:oklch(82% .13 155);justify-content:center;align-items:center;gap:6px;font-weight:650;display:inline-flex}.camera-code-ok svg{width:18px;height:18px}.camera-capture-message{min-height:44px;color:var(--camera-muted);font-size:var(--fs-footnote);text-align:center;flex:none;padding:10px 20px;line-height:1.45}.camera-thumbnails{flex:none;gap:8px;padding:0 16px 10px;display:flex;overflow-x:auto}.camera-thumbnails figure{background:oklch(25% .01 160);border-radius:12px;flex:none;width:72px;height:72px;margin:0;position:relative;overflow:hidden}.camera-thumbnails img{object-fit:cover;width:100%;height:100%;display:block}.camera-thumbnails figcaption{color:oklch(100% 0 0);background:oklch(0% 0 0/.6);justify-content:space-between;align-items:center;padding:2px 4px 2px 6px;font-size:11px;display:flex;position:absolute;inset:auto 0 0}.camera-thumbnails figcaption button{color:oklch(100% 0 0);background:oklch(100% 0 0/.2);border:0;border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:relative}.camera-thumbnails figcaption button svg{width:14px;height:14px}.camera-thumbnails figcaption button:before{content:"";position:absolute;inset:-8px}.camera-capture-actions{flex:none;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;min-height:96px;padding:10px 16px;display:grid}.camera-file-picker{min-height:44px;color:var(--camera-text);font-size:var(--fs-callout);background:oklch(100% 0 0/.14);border-radius:22px;justify-self:start;align-items:center;gap:8px;padding:0 14px;font-weight:600;display:inline-flex;position:relative}.camera-file-picker svg{width:20px;height:20px}.camera-file-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.camera-shutter{background:0 0;border:4px solid oklch(100% 0 0);border-radius:50%;place-items:center;width:74px;height:74px;display:grid}.camera-shutter span{width:58px;height:58px;transition:transform var(--duration-fast) ease;background:oklch(100% 0 0);border-radius:50%}.camera-shutter:active span{transform:scale(.92)}.camera-shutter:disabled{opacity:.4}.camera-capture-actions.is-code{justify-content:space-between;display:flex}.camera-file-picker,.camera-done{white-space:nowrap}.camera-done{color:oklch(20% .02 160);min-height:44px;font-size:var(--fs-callout);background:oklch(100% 0 0);border:0;border-radius:22px;justify-self:end;padding:0 18px;font-weight:650}.camera-done:disabled{color:var(--camera-muted);background:oklch(100% 0 0/.14)}.camera-no-code-actions{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 16px 14px;display:grid}.camera-no-code-actions button{border-radius:var(--radius-control);min-height:48px;color:var(--camera-text);font-size:var(--fs-callout);background:oklch(100% 0 0/.14);border:0;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.camera-no-code-actions button.is-primary{color:oklch(20% .02 160);background:oklch(100% 0 0)}.camera-no-code-actions svg{width:18px;height:18px}.chat-screen{grid-template-columns:minmax(0,1fr) minmax(260px,300px);grid-template-areas:"conversation context";min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.chat-main{flex-direction:column;grid-area:conversation;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--color-border);background:var(--color-surface-elevated);flex:none;align-items:center;gap:12px;padding:14px 20px;display:flex}.chat-header-icon{background:var(--color-accent-subtle);width:40px;height:40px;color:var(--color-accent);border-radius:12px;flex:none;place-items:center;display:grid}.chat-header-icon svg{width:22px;height:22px}.chat-header>div{min-width:0}.chat-header h2{font-size:var(--fs-headline);font-weight:650;line-height:1.25}.chat-header p{color:var(--color-text-secondary);font-size:var(--fs-footnote);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;overflow:hidden}.chat-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:14px;min-height:0;padding:18px 20px;display:flex;overflow-y:auto}.chat-message{flex:none;width:100%;display:flex}.chat-message.user{justify-content:flex-end}.chat-message-content{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;max-width:min(84%,720px);display:flex}.chat-message.user .chat-message-content{align-items:flex-end}.chat-markdown{border:1px solid var(--color-border);background:var(--color-surface-elevated);max-width:100%;box-shadow:var(--shadow-card);color:var(--color-text-primary);font-size:var(--fs-body);overflow-wrap:anywhere;border-radius:20px 20px 20px 6px;padding:11px 15px;line-height:1.5}.chat-message.user .chat-markdown{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent);border-radius:20px 20px 6px}.chat-message.is-emergency .chat-markdown{border-color:var(--color-danger)}@supports (color:color-mix(in lab, red, red)){.chat-message.is-emergency .chat-markdown{border-color:color-mix(in oklab, var(--color-danger) 45%, var(--color-border))}}.chat-message.is-emergency .chat-markdown{background:var(--tint-danger)}.chat-message.is-failed .chat-markdown{color:var(--color-text-secondary);border-style:dashed}.chat-markdown p{margin:0 0 8px}.chat-markdown p:last-child{margin-bottom:0}.chat-markdown ul,.chat-markdown ol{margin:4px 0 8px;padding-left:20px}.chat-markdown li+li{margin-top:4px}.chat-markdown a{color:var(--color-accent)}.chat-message.user .chat-markdown a{color:inherit}.chat-message-time{color:var(--color-text-tertiary);font-variant-numeric:tabular-nums;padding:0 6px;font-size:11px}.chat-quick-replies{flex-wrap:wrap;gap:8px;max-width:100%;display:flex}.chat-quick-reply{border:1px solid var(--color-accent);align-items:center;min-height:40px;padding:8px 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.chat-quick-reply{border:1px solid color-mix(in oklab, var(--color-accent) 35%, var(--color-border))}}.chat-quick-reply{background:var(--color-surface-elevated);color:var(--color-accent);font-size:var(--fs-callout);text-align:left;border-radius:20px;font-weight:600;line-height:1.25}.chat-inline-retry{border:1px solid var(--color-border);background:var(--color-surface-elevated);min-height:40px;color:var(--color-accent);font-size:var(--fs-callout);border-radius:20px;padding:0 14px;font-weight:600}.chat-disclaimer{max-width:100%;color:var(--color-text-tertiary);font-size:var(--fs-caption);padding:0 6px;line-height:1.45}.chat-blocked-medicine,.chat-medicine-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);width:min(100%,560px);box-shadow:var(--shadow-card);color:var(--color-text-primary);gap:10px;padding:14px;display:grid}.chat-blocked-medicine{border-color:var(--color-warning);grid-template-columns:40px minmax(0,1fr);align-items:center}@supports (color:color-mix(in lab, red, red)){.chat-blocked-medicine{border-color:color-mix(in oklab, var(--color-warning) 30%, var(--color-border))}}.chat-blocked-medicine>button{grid-column:1/-1;justify-self:start}.chat-card-icon{background:var(--color-accent-subtle);width:40px;height:40px;color:var(--color-accent);border-radius:12px;flex:none;place-items:center;display:grid}.chat-card-icon svg{width:22px;height:22px}.chat-card-icon.is-warning{background:var(--tint-warning);color:var(--color-warning)}.chat-card-copy{gap:2px;min-width:0;display:grid}.chat-card-copy strong{font-size:var(--fs-body);overflow-wrap:anywhere;font-weight:650}.chat-card-copy span{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.4}.chat-medicine-heading{align-items:center;gap:12px;min-width:0;display:flex}.chat-medicine-stock{color:var(--color-text-primary);font-size:var(--fs-callout);font-weight:600}.chat-medicine-reason{color:var(--color-text-secondary);font-size:var(--fs-callout);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.chat-source-details{border-top:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--fs-footnote);padding-top:10px;line-height:1.45}.chat-source-details summary{min-height:32px;color:var(--color-accent);font-size:var(--fs-callout);cursor:pointer;align-items:center;font-weight:600;display:flex}.chat-source-details p{margin-top:6px}.chat-source-details a{color:var(--color-accent);overflow-wrap:anywhere;font-weight:600}.chat-source-warning{color:var(--color-warning)}.chat-card-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chat-deduct-confirmation{color:var(--color-success);font-size:var(--fs-footnote);align-items:center;gap:4px;font-weight:650;animation:.18s ease-out confirmation-in;display:inline-flex}.chat-deduct-confirmation svg{width:16px;height:16px}.chat-typing{border:1px solid var(--color-border);background:var(--color-surface-elevated);border-radius:20px 20px 20px 6px;align-self:flex-start;gap:5px;padding:14px 16px;display:flex}.chat-typing i{background:var(--color-text-tertiary);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite typing}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}.chat-loading-history{color:var(--color-text-secondary);font-size:var(--fs-footnote);align-items:center;gap:8px;margin:0 auto;display:inline-flex}.chat-composer{border-top:1px solid var(--color-border);background:var(--color-surface-elevated);flex:none;align-items:center;gap:8px;padding:10px 12px;display:flex}.chat-composer input{border:1.5px solid var(--color-border);background:var(--color-surface-secondary);width:0;min-width:0;min-height:46px;color:var(--color-text-primary);font-size:var(--fs-input);border-radius:23px;outline:none;flex:1;padding:10px 16px}.chat-composer input:focus{border-color:var(--color-accent)}.chat-composer input::placeholder{color:var(--color-text-tertiary)}.chat-composer button{background:var(--color-accent);width:46px;height:46px;color:var(--color-on-accent);transition:background-color var(--duration-fast) ease;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.chat-composer button svg{stroke-width:2.2px;width:22px;height:22px}.chat-composer button:disabled{background:var(--color-surface-tertiary);color:var(--color-text-tertiary)}.chat-offline-note{background:var(--tint-warning);color:var(--color-text-primary);font-size:var(--fs-footnote);text-align:center;flex:none;padding:8px 16px}.chat-context{border-left:1px solid var(--color-border);background:var(--color-surface-elevated);grid-area:context;min-width:0;min-height:0;max-height:100%;padding:16px;overflow-y:auto}.chat-context-toggle{width:100%;min-height:52px;color:var(--color-text-primary);text-align:left;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) 32px;align-items:center;gap:10px;padding:0;display:grid}.chat-context-avatar{background:var(--color-accent-subtle);width:40px;height:40px;color:var(--color-accent);border-radius:12px;place-items:center;font-weight:650;display:grid;overflow:hidden}.chat-context-avatar img{object-fit:cover;width:100%;height:100%}.chat-context-label{min-width:0}.chat-context-label strong,.chat-context-label small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-context-label strong{font-size:var(--fs-body);font-weight:650}.chat-context-label small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.chat-context-toggle b{background:var(--color-surface-secondary);width:32px;height:32px;color:var(--color-text-secondary);border-radius:50%;place-items:center;display:grid}.chat-context-toggle b svg{width:16px;height:16px}.chat-context-body{gap:10px;margin-top:12px;display:grid}.chat-context-block{background:var(--color-surface-secondary);border-radius:14px;gap:8px;padding:14px;display:grid}.chat-context-block h3{color:var(--color-text-secondary);font-size:var(--fs-footnote);font-weight:600}.chat-context-block .text-button{min-height:36px;font-size:var(--fs-callout)}.chat-person-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.chat-person-stats small,.chat-person-stats strong{display:block}.chat-person-stats small,.chat-allergies small{color:var(--color-text-secondary);font-size:var(--fs-caption)}.chat-person-stats strong{font-size:var(--fs-callout);margin-top:2px;font-weight:600}.chat-allergies p{font-size:var(--fs-callout);overflow-wrap:anywhere;margin-top:2px;line-height:1.4}.chat-inventory-count{align-items:baseline;gap:8px;display:flex}.chat-inventory-count strong{font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.chat-inventory-count span{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.chat-empty-profile{margin:auto}.profile-page{width:100%;max-width:1180px;margin-inline:auto}.profile-back-link{min-height:44px;color:var(--color-accent);font-size:var(--fs-headline);background:0 0;border:0;align-items:center;gap:2px;margin:-8px 0 4px -8px;padding:0 8px 0 2px;font-weight:500;display:inline-flex}.profile-back-link svg{width:24px;height:24px}.profile-settings-button{flex:none}.profile-page-header .profile-settings-button{width:44px;height:44px}.profile-dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);align-items:start;gap:20px;display:grid}.profile-own-card{border:1px solid var(--color-border);border-radius:var(--radius-sheet);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);gap:16px;padding:20px;display:grid}.profile-own-heading{align-items:center;gap:16px;min-width:0;display:flex}.profile-own-heading>div{min-width:0}.profile-own-heading h2{font-size:var(--fs-title);letter-spacing:-.02em;overflow-wrap:anywhere;margin-top:6px;font-weight:700;line-height:1.2}.profile-own-heading p{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:2px}.profile-you-pill{background:var(--color-accent-subtle);min-height:22px;color:var(--color-accent);font-size:var(--fs-caption);border-radius:11px;align-items:center;padding:0 9px;font-weight:650;display:inline-flex}.profile-avatar{background:var(--color-accent-subtle);width:44px;height:44px;color:var(--color-accent);font-size:var(--fs-headline);border-radius:14px;flex:none;place-items:center;font-weight:650;display:inline-grid;overflow:hidden}.profile-avatar.small{width:36px;height:36px;font-size:var(--fs-callout);border-radius:11px}.profile-avatar.large{border-radius:20px;width:64px;height:64px;font-size:26px}.profile-avatar img,.family-avatar img{object-fit:cover;width:100%;height:100%}.profile-own-facts{background:var(--color-surface-secondary);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-own-facts>div{min-width:0;padding:12px 14px}.profile-own-facts>div+div{border-left:1px solid var(--color-border)}.profile-own-facts small,.profile-own-facts strong{overflow-wrap:anywhere;display:block}.profile-own-facts small{color:var(--color-text-secondary);font-size:var(--fs-caption)}.profile-own-facts strong{font-size:var(--fs-body);margin-top:2px;font-weight:600}.profile-allergies{gap:6px;display:grid}.profile-allergies>small{color:var(--color-text-secondary);font-size:var(--fs-footnote);font-weight:600}.profile-allergies>div{flex-wrap:wrap;gap:6px;display:flex}.profile-allergies>p{color:var(--color-text-tertiary);font-size:var(--fs-callout)}.profile-own-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-own-actions>button{flex:130px}.profile-missing{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.profile-missing>div{flex:1;min-width:180px}.profile-missing h2{font-size:var(--fs-title-sm);font-weight:650}.profile-missing p{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:4px}.profile-quick-settings{align-self:start}.profile-setting-count{background:var(--color-accent-subtle);min-width:28px;height:26px;color:var(--color-accent);font-size:var(--fs-footnote);font-variant-numeric:tabular-nums;border-radius:13px;place-items:center;padding:0 8px;font-weight:700;display:grid}.profile-family-section{grid-column:1/-1;gap:12px;min-width:0;display:grid}.profile-family-heading{justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:0 4px;display:flex}.family-identity{align-items:center;gap:14px;min-width:0;display:flex}.family-identity>div{min-width:0}.family-identity small{color:var(--color-text-secondary);font-size:var(--fs-footnote);display:block}.family-identity h2{font-size:var(--fs-title-sm);overflow-wrap:anywhere;font-weight:700;line-height:1.25}.family-identity p{color:var(--color-text-secondary);font-size:var(--fs-callout)}.family-avatar{background:var(--color-accent-subtle);width:52px;height:52px;color:var(--color-accent);border-radius:16px;flex:none;place-items:center;display:grid;overflow:hidden}.family-avatar svg{width:26px;height:26px}.profile-family-members{display:grid}.profile-family-member .profile-avatar{width:40px;height:40px;font-size:var(--fs-body);border-radius:12px}.profile-family-empty{color:var(--color-text-secondary);font-size:var(--fs-callout);align-items:flex-start;gap:12px;padding:16px;line-height:1.45;display:flex}.profile-family-empty svg{width:22px;height:22px;color:var(--color-accent)}.profile-family-actions{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.profile-join-family-link{font-size:var(--fs-callout)}.profile-logout-group{margin-top:16px}.profile-logout-row .list-row-copy strong{color:var(--color-danger)}.profile-inline-note{margin-top:12px}.profile-detail-header{align-items:center}.profile-detail-kicker{color:var(--color-text-secondary);font-size:var(--fs-footnote);display:block}.telegram-profile-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-secondary);gap:12px;padding:16px;display:grid}.telegram-profile-heading{align-items:center;gap:12px;display:flex}.telegram-profile-heading strong,.telegram-profile-heading small{display:block}.telegram-profile-heading strong{font-size:var(--fs-body);font-weight:650}.telegram-profile-heading small{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin-top:2px}.telegram-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.telegram-id{color:var(--color-text-secondary);font-size:var(--fs-caption)}.telegram-code{border-radius:var(--radius-control);background:var(--color-surface-elevated);gap:8px;padding:14px;display:grid}.telegram-code>small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.telegram-code>strong{letter-spacing:.14em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.telegram-code>div{flex-wrap:wrap;gap:8px;display:flex}.profile-photo-edit-row{align-items:center;gap:14px;display:flex}.profile-photo-edit-row>div{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.photo-upload-button{position:relative;overflow:hidden}.photo-upload-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.family-photo-editor{border-radius:var(--radius-card);background:var(--color-surface-secondary);align-items:center;gap:14px;padding:14px;display:flex}.family-photo-editor>div{gap:4px;min-width:0;display:grid}.family-photo-editor strong{font-size:var(--fs-body);font-weight:600}.family-photo-editor small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.family-photo-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.notifications-page{width:100%;max-width:900px;margin-inline:auto}.notice-summary{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);box-shadow:var(--shadow-card);align-items:center;gap:14px;margin-bottom:12px;padding:16px;display:flex}.notice-summary-count{background:var(--color-accent-subtle);min-width:48px;height:48px;color:var(--color-accent);font-size:var(--fs-title);font-variant-numeric:tabular-nums;border-radius:15px;place-items:center;padding:0 8px;font-weight:700;display:grid}.notice-summary>div{min-width:0}.notice-summary strong,.notice-summary small{display:block}.notice-summary strong{font-size:var(--fs-body);font-weight:650}.notice-summary small{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin-top:2px;line-height:1.4}.notification-settings{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;padding:12px 14px 12px 16px;display:flex}.notification-settings>div{flex:1;min-width:0}.notification-settings strong,.notification-settings small{display:block}.notification-settings strong{font-size:var(--fs-body);font-weight:600}.notification-settings small{color:var(--color-text-secondary);font-size:var(--fs-footnote);margin-top:2px}.notification-settings>.form-error{flex-basis:100%}.notification-list{gap:10px;display:grid}.notification-row{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-width:0;box-shadow:var(--shadow-card);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.notification-symbol{background:var(--tint-info);width:40px;height:40px;color:var(--color-info);border-radius:12px;place-items:center;display:grid}.notification-symbol svg{width:22px;height:22px}.notification-row.danger .notification-symbol{background:var(--tint-danger);color:var(--color-danger)}.notification-row.warning .notification-symbol{background:var(--tint-warning);color:var(--color-warning)}.notification-row.family .notification-symbol{background:var(--color-accent-subtle);color:var(--color-accent)}.notification-row.is-actionable{width:100%;color:var(--color-text-primary);text-align:left}.notification-detail{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:3px;line-height:1.45;display:block}.notification-copy{min-width:0;display:block}.notification-copy strong{font-size:var(--fs-body);overflow-wrap:anywhere;font-weight:600;line-height:1.3;display:block}.notification-copy p{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:3px;line-height:1.45}.notification-copy small{color:var(--color-text-tertiary);font-size:var(--fs-caption);margin-top:4px;display:block}.family-access-intro strong{font-size:var(--fs-body);font-weight:650;display:block}.family-access-intro p,.family-access-muted{color:var(--color-text-secondary);font-size:var(--fs-callout);margin-top:4px;line-height:1.5}.family-created-invite{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-secondary);gap:12px;padding:16px;display:grid}.family-created-invite h3{font-size:var(--fs-headline);margin-top:8px;font-weight:650}.family-created-invite p{color:var(--color-text-secondary);font-size:var(--fs-callout)}.invite-status-pill{background:var(--color-surface-tertiary);max-width:100%;min-height:24px;color:var(--color-text-secondary);font-size:var(--fs-caption);border-radius:12px;align-items:center;padding:2px 10px;font-weight:650;display:inline-flex}.invite-status-pill.is-active{background:var(--tint-success);color:var(--color-success)}.family-invite-actions{flex-wrap:wrap;gap:8px;display:flex}.family-invite-actions button{flex:150px;min-height:44px}.invite-secret-code{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;min-width:0;padding-top:10px;display:flex}.invite-secret-code code{min-width:0;font-size:var(--fs-footnote);overflow-wrap:anywhere}.family-invitation-list{gap:4px;display:grid}.family-invitation-list-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.family-invitation-list-title h3{font-size:var(--fs-body);font-weight:650}.family-invitation-list ul{margin:0;padding:0;list-style:none}.family-invitation-row{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:10px 0;display:flex}.family-invitation-row>div{justify-items:start;gap:4px;min-width:0;display:grid}.family-invitation-row small{color:var(--color-text-secondary);font-size:var(--fs-footnote)}.family-join-section{gap:12px;display:grid}.family-join-preview{border:1px solid var(--color-danger);margin:0;padding:12px 14px}@supports (color:color-mix(in lab, red, red)){.family-join-preview{border:1px solid color-mix(in oklab, var(--color-danger) 24%, transparent)}}.family-join-preview{border-radius:var(--radius-control);background:var(--tint-danger);color:var(--color-danger);font-size:var(--fs-callout);overflow-wrap:anywhere;line-height:1.5}.family-join-preview.is-success{border-color:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.family-join-preview.is-success{border-color:color-mix(in oklab, var(--color-success) 26%, transparent)}}.family-join-preview.is-success{background:var(--tint-success);color:var(--color-success)}.background-tabs{flex:none;margin:14px 20px 0}.background-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:10px;display:grid!important}.background-option{border:1.5px solid var(--color-border);background:var(--color-surface-elevated);border-radius:14px;min-width:0;position:relative;overflow:hidden}.background-option.selected{border-color:var(--color-accent)}.background-select{width:100%;min-height:64px;color:var(--color-text-primary);text-align:left;background:0 0;border:0;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:10px;padding:4px 44px 4px 4px;display:grid}.background-thumb{color:oklch(100% 0 0);border-radius:10px;place-items:center;width:56px;height:56px;display:grid;box-shadow:inset 0 0 0 1px oklch(0% 0 0/.06)}.background-thumb svg{background:var(--color-accent);border-radius:50%;width:22px;height:22px;padding:3px}.background-label{min-width:0}.background-label strong,.background-label small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.background-label strong{font-size:var(--fs-callout);font-weight:600}.background-label small{color:var(--color-text-secondary);font-size:var(--fs-caption);margin-top:2px}.favorite-button{width:40px;height:40px;color:var(--color-text-tertiary);background:0 0;border:0;border-radius:50%;font-size:18px;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.favorite-button.liked{color:var(--color-danger)}.empty-favorites{color:var(--color-text-secondary);font-size:var(--fs-callout);text-align:center;grid-column:1/-1;padding:32px 16px}html:has(.app-root.auth-root){height:auto;min-height:100%;overflow:hidden auto}html:has(.app-root.auth-root) body{height:auto;min-height:100%;overflow:hidden auto}html:has(.app-root.auth-root) #root{height:auto;min-height:100svh;overflow:visible}html:has(.app-root.auth-root){scroll-padding-block:max(12px, env(safe-area-inset-top)) 12px}.app-root.auth-root{background:var(--color-app-background);width:100%;height:auto;min-height:100svh;display:block;position:relative;inset:auto;overflow:visible}.app-root.auth-root:not(.dark-theme):focus-within,.app-root.auth-root:not(.dark-theme):focus-within .auth-screen{background:#fff!important}.app-root.auth-root.dark-theme:focus-within,.app-root.auth-root.dark-theme:focus-within .auth-screen{background:#202724!important}.auth-screen{width:100%;min-height:100svh;padding:calc(28px + var(--safe-area-top)) calc(20px + var(--safe-area-right)) calc(28px + var(--safe-area-bottom)) calc(20px + var(--safe-area-left));background:var(--color-app-background);place-items:center;display:grid;overflow:visible}.auth-card{border:1px solid var(--color-border);border-radius:var(--radius-large);background:var(--color-surface-elevated);width:min(100%,460px);box-shadow:var(--shadow-raised);color:var(--color-text-primary);padding:32px}.auth-brand{justify-items:start;gap:8px;margin-bottom:24px;display:grid}.auth-brand .brand-mark{border-radius:16px;width:52px;height:52px;margin-bottom:8px}.auth-brand .brand-mark svg{width:28px;height:28px}.auth-brand h1{font-size:var(--fs-large-title);letter-spacing:-.03em;font-weight:700;line-height:1.12}.auth-brand p{max-width:44ch;color:var(--color-text-secondary);font-size:var(--fs-body);line-height:1.5}.auth-mode-switch{margin-bottom:20px}.auth-mode-switch>button{min-height:42px;font-size:var(--fs-body)}.auth-form{gap:16px;display:grid}.auth-field{min-width:0;color:var(--color-text-secondary);font-size:var(--fs-footnote);gap:6px;font-weight:600;display:grid}.auth-field>span:first-child{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.auth-field small{color:var(--color-text-tertiary);font-size:var(--fs-caption);font-weight:400}.auth-field input,.auth-field textarea,.auth-input-unit{border:1.5px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-secondary);width:100%;min-width:0;min-height:52px;color:var(--color-text-primary);font-size:var(--fs-input);padding:12px 14px;font-weight:400}.auth-field input,.auth-field textarea{scroll-margin-block:12px}.auth-field input:focus,.auth-field textarea:focus{box-shadow:none;border-color:var(--color-accent);outline:none!important}.auth-field textarea{resize:vertical;min-height:84px;line-height:1.45}.auth-field input::placeholder,.auth-field textarea::placeholder{color:var(--color-text-tertiary)}.auth-password-control{align-items:center;display:flex;position:relative}.auth-password-control input{padding-right:96px}.auth-show-password{border-radius:var(--radius-sm);min-height:44px;color:var(--color-accent);font-size:var(--fs-callout);background:0 0;border:0;padding:0 12px;font-weight:600;position:absolute;right:4px}.auth-invite-field{gap:6px;display:grid}.auth-inline-action{min-height:44px;color:var(--color-accent);font-size:var(--fs-callout);background:0 0;border:0;justify-self:start;padding:0 4px;font-weight:600}.auth-inline-status,.auth-error{border:1px solid var(--color-danger);margin:0;padding:12px 14px}@supports (color:color-mix(in lab, red, red)){.auth-inline-status,.auth-error{border:1px solid color-mix(in oklab, var(--color-danger) 24%, transparent)}}.auth-inline-status,.auth-error{border-radius:var(--radius-control);background:var(--tint-danger);color:var(--color-danger);font-size:var(--fs-callout);overflow-wrap:anywhere;line-height:1.45}.auth-inline-status.is-success{border-color:var(--color-success)}@supports (color:color-mix(in lab, red, red)){.auth-inline-status.is-success{border-color:color-mix(in oklab, var(--color-success) 25%, transparent)}}.auth-inline-status.is-success{background:var(--tint-success);color:var(--color-success)}.auth-submit{width:100%;min-height:52px;font-size:var(--fs-headline)}.auth-invite-note{border:1px solid var(--color-success);gap:4px;margin:0 0 16px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab, red, red)){.auth-invite-note{border:1px solid color-mix(in oklab, var(--color-success) 26%, transparent)}}.auth-invite-note{border-radius:var(--radius-control);background:var(--tint-success);color:var(--color-text-primary);font-size:var(--fs-callout);overflow-wrap:anywhere;line-height:1.45}.auth-invite-note>span{color:var(--color-text-secondary)}.auth-footer{color:var(--color-text-secondary);font-size:var(--fs-footnote);text-align:center;margin-top:20px;line-height:1.45}.onboarding-card{width:min(100%,820px)}.onboarding-progress{background:var(--color-surface-secondary);border-radius:2px;height:4px;margin:-8px 0 24px;overflow:hidden}.onboarding-progress span{background:var(--color-accent);width:100%;height:100%;display:block}.onboarding-brand{margin-bottom:20px}.onboarding-brand h1{max-width:24ch}.onboarding-form{gap:18px;display:grid}.onboarding-profile-name{background:var(--color-surface-secondary);border-radius:14px;align-items:center;gap:12px;min-width:0;padding:12px;display:flex}.onboarding-profile-name>div{gap:2px;min-width:0;display:grid}.onboarding-profile-name strong{font-size:var(--fs-body);overflow-wrap:anywhere}.onboarding-profile-name small{color:var(--color-text-secondary);font-size:var(--fs-footnote);line-height:1.4}.onboarding-fields-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.auth-input-unit{align-items:center;gap:8px;padding:0 14px;display:flex}.auth-field .auth-input-unit input{background:0 0;border:0;min-height:48px;padding:10px 0}.auth-field .auth-input-unit input:focus{box-shadow:none!important;outline:none!important}.auth-input-unit:focus-within{border-color:var(--color-accent)}.auth-input-unit small{flex:none}.onboarding-allergies{grid-column:1/-1}.onboarding-actions{justify-content:flex-end;gap:10px;display:flex}.onboarding-actions button{min-height:50px}.onboarding-loading{min-height:52px;color:var(--color-text-secondary);align-items:center;gap:10px;display:flex}@media (width<=999px){.app-root.keyboard-visible .mobile-bottom-nav{display:none!important}.app-root{flex-direction:column;height:auto;display:flex;bottom:0}.app-root.keyboard-visible{height:var(--app-viewport-height);bottom:auto}.app-root.medicine-local-mode .mobile-bottom-nav{display:none!important}.desktop-sidebar{display:none}.app-workspace{flex:1;order:1;height:auto;min-height:0}.app-topbar,.app-topbar.compact-topbar{min-height:calc(56px + var(--safe-area-top));padding:var(--safe-area-top) calc(12px + var(--safe-area-right)) 0 calc(16px + var(--safe-area-left));gap:12px;display:flex}.app-topbar .brand-mark{border-radius:10px;width:32px;height:32px;display:grid}.app-topbar .brand-mark svg{width:20px;height:20px}.topbar-title{gap:10px}.topbar-title small{font-size:var(--fs-caption);line-height:1.25}.topbar-title h1{font-size:var(--fs-headline);letter-spacing:-.01em;font-weight:650;line-height:1.25}.topbar-actions{gap:6px}.topbar-add-action{border-radius:50%;width:44px;min-height:44px;padding:0}.topbar-add-action svg{width:22px;height:22px}.topbar-add-action span{display:none}.topbar-bell{background:0 0;border-color:#0000}.mobile-bottom-nav{--nav-item-height:58px;z-index:var(--z-nav);min-height:calc(var(--nav-item-height) + var(--safe-area-bottom));padding:0 calc(8px + var(--safe-area-right)) var(--safe-area-bottom) calc(8px + var(--safe-area-left));grid-template-columns:repeat(var(--nav-count,4), minmax(0, 1fr));isolation:isolate;border-top:1px solid var(--color-border);background:var(--color-surface-elevated);order:2;display:grid;position:relative}.mobile-nav-item{z-index:1;min-width:0;height:var(--nav-item-height);position:relative}.mobile-nav-link{width:100%;height:100%;min-height:0;color:var(--color-text-secondary);transition:color var(--duration-fast) ease;background:0 0;border-radius:0;flex-direction:column;justify-content:flex-start;align-items:center;gap:0;padding:8px 0 0;display:flex}.mobile-nav-link.is-active{color:var(--color-accent);font-weight:inherit;background:0 0}.mobile-nav-link .nav-icon{width:60px;height:30px}.mobile-nav-link .nav-icon svg{width:24px;height:24px}.mobile-nav-link:focus-visible{outline-offset:-4px;border-radius:14px}.mobile-nav-link-label{color:var(--color-text-secondary);text-align:center;white-space:nowrap;pointer-events:none;font-size:11px;font-weight:500;line-height:1.2;position:absolute;top:40px;left:0;right:0}.mobile-nav-item.is-active .mobile-nav-link-label{color:var(--color-accent);font-weight:650}.mobile-active-indicator{z-index:0;top:8px;left:calc(8px + var(--safe-area-left));width:calc((100% - 16px - var(--safe-area-left) - var(--safe-area-right)) / var(--nav-count,4));pointer-events:none;height:30px;transition:transform var(--duration-base) var(--ease-out);will-change:transform;position:absolute}.mobile-active-indicator:before{content:"";border:1px solid var(--color-accent);width:60px;height:30px;position:absolute;top:0;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.mobile-active-indicator:before{border:1px solid color-mix(in oklab, var(--color-accent) 24%, transparent)}}.mobile-active-indicator:before{background:var(--color-accent-subtle);border-radius:15px}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.mobile-active-indicator:before{background:var(--color-accent-subtle)}@supports (color:color-mix(in lab, red, red)){.mobile-active-indicator:before{background:color-mix(in oklab, var(--color-accent-subtle) 72%, transparent)}}.mobile-active-indicator:before{box-shadow:inset 0 1px 0 var(--color-surface-elevated), 0 3px 10px var(--color-accent)}@supports (color:color-mix(in lab, red, red)){.mobile-active-indicator:before{box-shadow:inset 0 1px 0 color-mix(in oklab, var(--color-surface-elevated) 70%, transparent), 0 3px 10px color-mix(in oklab, var(--color-accent) 12%, transparent)}}.mobile-active-indicator:before{-webkit-backdrop-filter:blur(14px)saturate(1.35);backdrop-filter:blur(14px)saturate(1.35)}}.app-toast{bottom:calc(70px + var(--safe-area-bottom))}.app-root.medicine-local-mode .app-toast,.app-root.keyboard-visible .app-toast{bottom:calc(16px + var(--safe-area-bottom))}.page-scroll{padding:20px calc(var(--page-gutter) + var(--safe-area-right)) 28px calc(var(--page-gutter) + var(--safe-area-left))}.page-header h1{font-size:var(--fs-large-title)}.medicine-detail-layout{flex-direction:column;align-items:stretch;gap:20px;display:flex}.deduct-panel{order:-1;position:static}.medicine-detail-layout:not([data-tab=overview]) .deduct-panel{display:none}.chat-screen{grid-template:"context""conversation"minmax(0,1fr)/minmax(0,1fr)}.chat-header{display:none}.chat-context{max-height:46vh;padding:6px calc(12px + var(--safe-area-right)) 6px calc(16px + var(--safe-area-left));border-left:0;border-bottom:1px solid var(--color-border)}.chat-context.expanded{padding-bottom:14px}.chat-messages{padding:16px calc(var(--page-gutter) + var(--safe-area-right)) 16px calc(var(--page-gutter) + var(--safe-area-left))}.chat-message-content{max-width:92%}.chat-context-body{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-dashboard-grid{grid-template-columns:minmax(0,1fr);gap:16px}.profile-family-section{grid-column:auto}}@media (width>=768px) and (width<=999px){.profile-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-family-section{grid-column:1/-1}.home-lower-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.medicine-detail-modal{width:min(760px,100%)}}@media (width<=767px){.modal-backdrop{padding:calc(8px + var(--safe-area-top)) 0 0;align-items:flex-end}.sheet{border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;max-height:100%;animation:sheet-up .28s var(--ease-out) both;width:100%!important}.sheet-grabber{background:var(--color-border-strong);border-radius:3px;flex:none;width:36px;height:5px;margin:8px auto -4px;display:block}.sheet-header{padding:14px calc(16px + var(--safe-area-right)) 12px calc(16px + var(--safe-area-left))}.sheet-body{padding:16px calc(16px + var(--safe-area-right)) 20px calc(16px + var(--safe-area-left))}.sheet-footer{padding:12px calc(16px + var(--safe-area-right)) calc(12px + var(--safe-area-bottom)) calc(16px + var(--safe-area-left))}.batch-sheet{min-height:min(620px,100%)}.vision-photo-strip{margin:0 -16px;padding:0 16px 2px}.background-tabs{margin:12px 16px 0}.background-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-confirm-layer{place-items:end stretch;padding:0}.sheet-confirm{width:100%;padding-bottom:calc(20px + var(--safe-area-bottom));border-radius:var(--radius-sheet) var(--radius-sheet) 0 0}.medicine-detail-backdrop,.camera-capture-backdrop{align-items:stretch;padding:0}.medicine-detail-modal{width:100%;height:auto;box-shadow:none;animation:page-push .26s var(--ease-out) both;border-radius:0}.detail-nav-bar{min-height:calc(52px + var(--safe-area-top));padding:var(--safe-area-top) calc(12px + var(--safe-area-right)) 0 calc(12px + var(--safe-area-left))}.medicine-detail-scroll{padding:0 calc(16px + var(--safe-area-right)) calc(28px + var(--safe-area-bottom)) calc(16px + var(--safe-area-left))}.medicine-detail-header{align-items:flex-start;gap:14px;padding:16px 0 14px}.medicine-detail-icon{border-radius:16px;width:52px;height:52px}.medicine-detail-icon svg{width:26px;height:26px}.medicine-detail-heading-copy h2{font-size:var(--fs-title)}.detail-fact{padding:12px}.detail-fact strong{font-size:var(--fs-body)}.medicine-local-tabs{margin:0 calc(-16px - var(--safe-area-right)) 14px calc(-16px - var(--safe-area-left));padding:9px calc(19px + var(--safe-area-right)) 11px calc(19px + var(--safe-area-left))}.medicine-local-tabs:before{inset:6px calc(16px + var(--safe-area-right)) 8px calc(16px + var(--safe-area-left))}.medicine-local-tabs>button{font-size:var(--fs-footnote);padding:0 2px}.deduct-panel{padding:16px}.camera-capture-panel{width:100%;height:100%;padding:var(--safe-area-top) var(--safe-area-right) var(--safe-area-bottom) var(--safe-area-left);box-shadow:none;border-radius:0}.page-header{align-items:center;margin-bottom:16px}.page-header p{font-size:var(--fs-callout);margin-top:2px}.page-header-action{min-height:44px;font-size:var(--fs-callout);padding:0 14px}.home-dashboard{gap:22px}.home-overview-card{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px}.home-overview-total strong{font-size:44px}.home-overview-stats{background:var(--color-surface-secondary);border-radius:14px;padding:12px 0}.home-overview-stats>div{padding:2px 12px}.home-overview-stats>div:first-child{border-left:0}.home-overview-stats strong{font-size:var(--fs-title)}.home-overview-stats span{font-size:var(--fs-caption)}.home-empty-cabinet{flex-wrap:wrap}.home-empty-cabinet>.primary-action{width:100%}.home-lower-grid{grid-template-columns:minmax(0,1fr);gap:22px}.home-actions-list{box-shadow:none;background:0 0;border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid;overflow:visible}.home-action-card,.home-action-card+.home-action-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface-elevated);min-height:104px;box-shadow:var(--shadow-card);flex-direction:column;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 12px;display:flex}.home-action-card small,.home-action-arrow{display:none}.home-action-card strong{font-size:var(--fs-callout);line-height:1.25}.attention-filters{margin:0 calc(-1 * var(--page-gutter) - var(--safe-area-right)) 0 calc(-1 * var(--page-gutter) - var(--safe-area-left));padding:0 calc(var(--page-gutter) + var(--safe-area-right)) 2px calc(var(--page-gutter) + var(--safe-area-left));overscroll-behavior-x:contain;scroll-padding-inline:var(--page-gutter);flex-wrap:nowrap;overflow-x:auto}.medicine-search{width:100%}.medicine-grid{grid-template-columns:minmax(0,1fr);gap:10px}.medicine-card-open{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"icon name chip""icon meta meta""icon facts facts""icon pkg pkg";align-items:start;row-gap:2px;padding:14px}.medicine-card-icon{align-self:start}.medicine-card-name{font-size:var(--fs-body);align-self:center;margin-top:0}.medicine-card-open>.status-chip{margin-left:4px}.medicine-card-meta{font-size:var(--fs-footnote);margin-top:0}.medicine-card-insets{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:8px;display:flex}.medicine-card-insets>span{background:0 0;border-radius:0;padding:0}.medicine-card-insets small{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.medicine-card-insets strong{font-size:var(--fs-callout);margin-top:0}.medicine-card-expiry strong{color:var(--color-text-secondary);font-weight:500}.medicine-card-package-more{margin-top:4px}.chat-blocked-medicine,.chat-medicine-card{width:100%}.profile-own-card{padding:16px}.profile-own-heading{gap:14px}.profile-own-heading h2{font-size:var(--fs-title-sm)}.profile-family-actions>.primary-action{width:100%}.auth-screen{padding:calc(16px + var(--safe-area-top)) calc(12px + var(--safe-area-right)) calc(20px + var(--safe-area-bottom)) calc(12px + var(--safe-area-left));place-items:start center}.auth-screen:focus-within{padding-bottom:0}.auth-card{border-radius:var(--radius-sheet);box-shadow:var(--shadow-card);margin-block:auto;padding:24px 18px}.auth-brand{margin-bottom:20px}.onboarding-card{margin-block:8px}.onboarding-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.onboarding-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);display:grid}}@media (width<=380px){:root{--page-gutter:12px}.field-row.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.field-row.cols-3>:last-child{grid-column:1/-1}.home-actions-list{grid-template-columns:minmax(0,1fr)}.home-action-card,.home-action-card+.home-action-card{flex-direction:row;justify-content:flex-start;align-items:center;min-height:60px}.detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-fact:nth-child(3){border-left:0;border-top:1px solid var(--color-border);grid-column:1/-1}.medicine-local-tabs>button{font-size:var(--fs-caption)}.onboarding-fields-grid{grid-template-columns:minmax(0,1fr)}.onboarding-allergies{grid-column:auto}.onboarding-actions{grid-template-columns:minmax(0,1fr)}.sheet-footer-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}}@media (width<=767px) and (height<=640px){.medicine-detail-header{padding:10px 0}.medicine-detail-heading-copy h2{font-size:var(--fs-title-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (display-mode:standalone) and (width<=999px){html:has(.app-root:not(.auth-root)){height:100vh;min-height:100vh;background:var(--color-surface-elevated)!important}html:has(.app-root:not(.auth-root)) body{height:100vh;min-height:100vh;background:var(--color-surface-elevated)!important}html:has(.app-root:not(.auth-root)) #root{height:100vh;min-height:100vh;background:var(--color-surface-elevated)!important}html[data-app-theme=light]:has(.app-root:not(.auth-root)){background:#fff!important}html[data-app-theme=light]:has(.app-root:not(.auth-root)) body{background:#fff!important}html[data-app-theme=light]:has(.app-root:not(.auth-root)) #root{background:#fff!important}html[data-app-theme=dark]:has(.app-root:not(.auth-root)){background:#27312c!important}html[data-app-theme=dark]:has(.app-root:not(.auth-root)) body{background:#27312c!important}html[data-app-theme=dark]:has(.app-root:not(.auth-root)) #root{background:#27312c!important}.app-root:not(.auth-root):not(.keyboard-visible){height:100vh;bottom:auto;background:var(--page-bg)!important}}@keyframes page-enter{0%{opacity:.4}to{opacity:1}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}@keyframes sheet-up{0%{opacity:.6;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes page-push{0%{opacity:.6;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes stock-value-pop{0%{transform:scale(1)}35%{color:var(--color-accent);transform:scale(1.06)}to{transform:scale(1)}}@keyframes confirmation-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes typing{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner{animation-duration:1.4s!important;animation-iteration-count:infinite!important}.mobile-active-indicator{transition: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-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-outline-style{syntax:"*";inherits:false;initial-value:solid}
