/*! tailwindcss v4.2.1 | 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-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-800:oklch(47.6% .114 61.907);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--drop-shadow-lg:0 4px 4px #00000026;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--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,ui-sans-serif, system-ui, 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;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{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse\!{visibility:collapse!important}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-4{top:calc(var(--spacing) * 4)}.right-0{right:calc(var(--spacing) * 0)}.right-4{right:calc(var(--spacing) * 4)}.left-0{left:calc(var(--spacing) * 0)}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-28{margin-top:calc(var(--spacing) * 28)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.block\!{display:block!important}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table\!{display:table!important}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-48{height:calc(var(--spacing) * 48)}.h-full{height:100%}.min-h-\[44px\]{min-height:44px}.min-h-dvh{min-height:100dvh}.w-1\/2{width:50%}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-5\/6{width:83.3333%}.w-8{width:calc(var(--spacing) * 8)}.w-12{width:calc(var(--spacing) * 12)}.w-60{width:calc(var(--spacing) * 60)}.w-80{width:calc(var(--spacing) * 80)}.w-full{width:100%}.max-w-7xl{max-width:var(--container-7xl)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-\[44px\]{min-width:44px}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)!important}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.resize{resize:both}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-blue-50{border-color:var(--color-blue-50)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-600{border-color:var(--color-blue-600)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-red-200{border-color:var(--color-red-200)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-600{background-color:var(--color-red-600)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-white{background-color:var(--color-white)}.bg-yellow-100{background-color:var(--color-yellow-100)}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-24{padding-block:calc(var(--spacing) * 24)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-blue-400{color:var(--color-blue-400)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-green-900{color:var(--color-green-900)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-red-900{color:var(--color-red-900)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-800{color:var(--color-yellow-800)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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,)}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-green-500\/25{--tw-shadow-color:#00c75840}@supports (color:color-mix(in lab, red, red)){.shadow-green-500\/25{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-green-500) 25%, transparent) var(--tw-shadow-alpha), transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow-lg{--tw-drop-shadow-size:drop-shadow(0 4px 4px var(--tw-drop-shadow-color,#00000026));--tw-drop-shadow:drop-shadow(var(--drop-shadow-lg));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.\[category\:architecture\]{category:architecture}.\[category\:error-recovery\]{category:error-recovery}.\[phase\:all\]{phase:all}.\[phase\:implement\]{phase:implement}.\[phase\:plan\]{phase:plan}.\[phase\:specify\]{phase:specify}.\[rdoc-ref\:lib\/racc\/rdoc\/grammar\.en\.rdoc\]{rdoc-ref:lib/racc/rdoc/grammar.en.rdoc}.placeholder\:text-gray-400::placeholder{color:var(--color-gray-400)}@media (hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-green-600:hover{background-color:var(--color-green-600)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-800:hover{color:var(--color-gray-800)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-2:focus{top:calc(var(--spacing) * 2)}.focus\:left-2:focus{left:calc(var(--spacing) * 2)}.focus\:z-50:focus{z-index:50}.focus\:rounded:focus{border-radius:.25rem}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:border-blue-600:focus{border-color:var(--color-blue-600)}.focus\:bg-white:focus{background-color:var(--color-white)}.focus\:px-3:focus{padding-inline:calc(var(--spacing) * 3)}.focus\:py-2:focus{padding-block:calc(var(--spacing) * 2)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-blue-600:focus{--tw-ring-color:var(--color-blue-600)}.focus\:ring-gray-500:focus{--tw-ring-color:var(--color-gray-500)}.focus\:ring-red-500:focus{--tw-ring-color:var(--color-red-500)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-blue-600:focus-visible{--tw-ring-color:var(--color-blue-600)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.active\:bg-blue-800:active{background-color:var(--color-blue-800)}.active\:bg-gray-300:active{background-color:var(--color-gray-300)}.active\:bg-red-800:active{background-color:var(--color-red-800)}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:48rem){.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-64{height:calc(var(--spacing) * 64)}.md\:w-5\/12{width:41.6667%}.md\:w-7\/12{width:58.3333%}.md\:w-80{width:calc(var(--spacing) * 80)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:items-start{align-items:flex-start}.md\:gap-5{gap:calc(var(--spacing) * 5)}.md\:p-12{padding:calc(var(--spacing) * 12)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:text-right{text-align:right}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}:root{--bg-base:#070f1a;--bg-surface:#0b1828;--bg-card:#0f1f30;--bg-card-hover:#132638;--border:#183050;--border-light:#1e4068;--accent:#4dc957;--accent-bright:#6bde74;--accent-dim:#4dc95724;--accent-glow:#4dc95712;--accent-blue:#3ab8e8;--accent-blue-dim:#3ab8e81f;--accent-green:#4dc957;--accent-green-dim:#4dc9571c;--text-primary:#dff2fc;--text-secondary:#6aaecb;--text-muted:#2c5470;--dot-color:#ffffff06;--header-bg:#070f1ae6;--shadow-accent:#4dc95733;--shadow-dark:#0006;--error:#e05a5a;--error-dim:#e05a5a1a;--error-strong:var(--error);--error-strong-dim:#e05a5a38;--success:#4dc957;--success-dim:#4dc9571a;--success-text:#7ddea6;--error-text:#f09090}[data-theme=light]{--bg-base:#edf6fb;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#f2fcf3;--border:#b8d8ec;--border-light:#96c4e0;--accent:#1f8a2a;--accent-bright:#28a835;--accent-dim:#1f8a2a1a;--accent-glow:#1f8a2a0d;--accent-blue:#1078aa;--accent-blue-dim:#1078aa1a;--accent-green:#1f8a2a;--accent-green-dim:#1f8a2a1a;--text-primary:#06131e;--text-secondary:#104e72;--text-muted:#527a96;--dot-color:#00000008;--header-bg:#edf6fbf0;--shadow-accent:#1f8a2a2e;--shadow-dark:#0000001f;--error:#c43030;--error-dim:#c4303014;--error-strong:var(--error-text);--error-strong-dim:#99202029;--success:#1f8a2a;--success-dim:#1f8a2a14;--success-text:#1f6a28;--error-text:#992020}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:var(--bg-base);background-image:radial-gradient(circle, var(--dot-color) 1px, transparent 1px);color:var(--text-primary);background-size:28px 28px;min-height:100vh;font-family:DM Sans,system-ui,sans-serif;font-weight:300;line-height:1.6;transition:background-color .25s,color .25s}.type-display{font-family:Cormorant Garamond,Georgia,serif}.type-mono{font-family:JetBrains Mono,Fira Code,monospace}.site-header{z-index:50;background:var(--header-bg);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);transition:background .25s,border-color .25s;position:sticky;top:0}.site-header:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent-blue) 20%, var(--accent) 50%, var(--accent-blue) 80%, transparent 100%);opacity:.4;height:1px;position:absolute;bottom:0;left:0;right:0}.header-brand{align-items:center;gap:.75rem;text-decoration:none;display:flex}.header-logo{object-fit:contain;border-radius:6px;flex-shrink:0;width:44px;height:44px;display:block}.header-brand-text{flex-direction:column;line-height:1;display:flex}.header-wordmark{letter-spacing:.06em;color:var(--text-primary);font-family:Cormorant Garamond,serif;font-size:1.125rem;font-weight:500;line-height:1;transition:color .25s}.header-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:2px;font-family:JetBrains Mono,monospace;font-size:.5rem;transition:color .25s;display:block}.header-nav-link{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid #0000;padding-bottom:2px;font-family:JetBrains Mono,monospace;font-size:.6875rem;text-decoration:none;transition:color .15s}.header-nav-link:hover{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.theme-toggle{border:1px solid var(--border-light);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1rem;line-height:1;transition:all .2s;display:inline-flex}.theme-toggle:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.theme-icon--sun{align-items:center;display:flex}.theme-icon--moon{align-items:center;display:none}[data-theme=light] .theme-icon--sun{display:none}[data-theme=light] .theme-icon--moon{display:flex}.registry-menu-wrapper{position:relative}.registry-menu-btn{border:1px solid var(--border-light);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.registry-menu-btn:hover,.registry-menu-btn[aria-expanded=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.registry-menu-btn[aria-expanded=true] .rmb-icon{transform:rotate(45deg)}.rmb-icon{align-items:center;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:flex}.registry-panel{background:var(--bg-card);border:1px solid var(--border);z-index:200;opacity:0;pointer-events:none;border-radius:8px;width:240px;transition:opacity .2s cubic-bezier(.22,1,.36,1),transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;transform:translateY(-8px)scale(.97);box-shadow:0 4px 6px -1px #0000004d,0 20px 50px -8px #00000080,0 0 0 1px #ffffff08,inset 0 1px #ffffff0a}.registry-panel[data-open=true]{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.registry-panel:before{content:"";background:linear-gradient(90deg, var(--accent) 0%, var(--accent-blue) 100%);opacity:.7;height:2px;position:absolute;top:0;left:0;right:0}.registry-panel-header{border-bottom:1px solid var(--border);padding:.75rem 1rem .5rem}.registry-panel-label{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.5rem;display:block}.registry-panel-title{color:var(--text-primary);margin-top:2px;font-family:Cormorant Garamond,serif;font-size:.95rem;font-weight:500;line-height:1.2}.registry-panel-items{padding:.4rem 0}.registry-divider{border:none;border-top:1px solid var(--border);margin:.25rem 1rem}.registry-item{color:var(--text-secondary);align-items:center;gap:.75rem;padding:.6rem 1rem;text-decoration:none;transition:all .15s;display:flex;position:relative;overflow:hidden}.registry-item:before{content:"";background:var(--accent);width:0;transition:width .2s;position:absolute;top:0;bottom:0;left:0}.registry-item:hover{background:var(--accent-dim);color:var(--text-primary)}.registry-item:hover:before{width:2px}.registry-item:hover .ri-icon{color:var(--accent);transform:scale(1.1)}.registry-item:hover .ri-name{letter-spacing:.15em}.ri-icon{background:var(--bg-surface);border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.ri-name{letter-spacing:.12em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.6rem;transition:letter-spacing .2s}@media (max-width:480px){.registry-panel{width:200px;right:-10px}}.patient-menu-wrapper{position:relative}.patient-menu-btn{border:1px solid var(--border-light);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.patient-menu-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.pmb-icon{align-items:center;display:flex}.psm-backdrop{z-index:1000;-webkit-backdrop-filter:blur(5px);opacity:0;pointer-events:none;background:#070f1acc;justify-content:center;align-items:center;padding:1rem;transition:opacity .22s;display:flex;position:fixed;inset:0}.psm-backdrop[data-open=true]{opacity:1;pointer-events:auto}.psm-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:100%;max-width:920px;height:min(680px,88vh);transition:transform .28s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative;overflow:hidden;transform:translateY(18px)scale(.985);box-shadow:0 32px 64px -12px #000000bf,0 0 0 1px #ffffff0a,inset 0 1px #ffffff0d}.psm-panel:before{content:"";background:linear-gradient(90deg, var(--accent-blue) 0%, var(--accent) 100%);z-index:1;height:2px;position:absolute;top:0;left:0;right:0}.psm-backdrop[data-open=true] .psm-panel{transform:translateY(0)scale(1)}.psm-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem 1.1rem;display:flex}.psm-eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--accent-blue);margin-bottom:3px;font-family:JetBrains Mono,monospace;font-size:.5rem;display:block}.psm-title{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:500;line-height:1}.psm-close{border:1px solid var(--border-light);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;transition:all .15s;display:flex}.psm-close:hover{border-color:var(--error);color:var(--error);background:var(--error-dim)}.psm-filters{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-direction:column;flex-shrink:0;gap:.65rem;padding:.9rem 1.5rem;display:flex}.psm-search-row{align-items:center;gap:.75rem;display:flex}.psm-input-wrapper{flex:1;position:relative}.psm-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.psm-search-input{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:6px;outline:none;padding:.55rem .75rem .55rem 2.1rem;font-family:DM Sans,sans-serif;font-size:.875rem;font-weight:300;transition:border-color .15s,box-shadow .15s}.psm-search-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-dim)}.psm-search-input::placeholder{color:var(--text-muted)}.psm-type-select{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:6px;outline:none;min-width:175px;padding:.55rem .75rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;transition:border-color .15s}.psm-type-select:focus{border-color:var(--accent-blue)}.psm-filter-tabs{gap:.375rem;display:flex}.psm-tab{letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;padding:.3rem .7rem;font-family:JetBrains Mono,monospace;font-size:.54rem;transition:all .15s}.psm-tab:hover{border-color:var(--border-light);color:var(--text-secondary)}.psm-tab.active{background:var(--accent-blue-dim);border-color:var(--accent-blue);color:var(--accent-blue)}.psm-results-container{flex:1;position:relative;overflow-y:auto}.psm-results-container::-webkit-scrollbar{width:4px}.psm-results-container::-webkit-scrollbar-track{background:0 0}.psm-results-container::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.psm-empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:3.5rem 1.5rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;display:flex}.psm-table{border-collapse:collapse;table-layout:fixed;width:100%}.psm-th{letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);background:var(--bg-surface);z-index:2;white-space:nowrap;padding:.55rem 1rem;font-family:JetBrains Mono,monospace;font-size:.49rem;position:sticky;top:0}.psm-th-id{width:82px}.psm-th-cpf{width:140px}.psm-row{border-bottom:1px solid var(--border);transition:background .12s}.psm-row:last-child{border-bottom:none}.psm-row:hover{background:var(--bg-card-hover)}.psm-cell-id,.psm-cell-name,.psm-cell-type,.psm-cell-cpf,.psm-cell-phone{color:var(--text-secondary);vertical-align:middle;padding:.65rem 1rem;font-size:.8125rem;font-weight:300}.psm-cell-id{width:82px}.psm-cell-cpf{width:140px}.psm-cell-name{color:var(--text-primary);font-weight:400}.psm-id-link{letter-spacing:.06em;color:var(--accent-blue);font-family:JetBrains Mono,monospace;font-size:.7rem;text-decoration:none}.psm-id-link:hover{text-underline-offset:2px;text-decoration:underline}.psm-type-badge{letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:3px;padding:.18rem .45rem;font-family:JetBrains Mono,monospace;font-size:.54rem;display:inline-block}.psm-cell-cpf{font-family:JetBrains Mono,monospace;font-size:.7rem}.psm-wa-link{color:#25d366;letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:.7rem;text-decoration:none}.psm-wa-link:hover{text-underline-offset:2px;text-decoration:underline}.psm-muted{color:var(--text-muted)}.psm-sentinel{height:1px}.psm-loading{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;justify-content:center;align-items:center;gap:.65rem;padding:1.25rem;font-family:JetBrains Mono,monospace;font-size:.58rem;display:flex}@keyframes psm-spin{to{transform:rotate(360deg)}}.psm-spinner{border:2px solid var(--border-light);border-top-color:var(--accent-blue);border-radius:50%;flex-shrink:0;width:15px;height:15px;animation:.75s linear infinite psm-spin}.psm-footer{border-top:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1.5rem;display:flex}.psm-result-count{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.56rem}.psm-btn-new{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-blue);border:1px solid var(--accent-blue);white-space:nowrap;background:0 0;border-radius:4px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-family:JetBrains Mono,monospace;font-size:.58rem;text-decoration:none;transition:all .15s;display:inline-flex}.psm-btn-new:hover{background:var(--accent-blue-dim);box-shadow:0 0 12px var(--accent-blue-dim)}@media (max-width:640px){.psm-panel{border-radius:10px;height:min(680px,95vh)}.psm-header{padding:1rem}.psm-filters{padding:.75rem 1rem}.psm-search-row{flex-direction:column;align-items:stretch}.psm-type-select{min-width:unset}.psm-th-cpf,.psm-cell-cpf{display:none}}.page-title{letter-spacing:-.02em;color:var(--text-primary);font-family:Cormorant Garamond,serif;font-size:clamp(1.5rem,3vw,2rem);font-weight:400;line-height:1}.page-label{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-family:JetBrains Mono,monospace;font-size:.625rem;display:block}.divider-accent{background:linear-gradient(90deg, var(--accent) 0%, var(--accent-blue) 40%, var(--border) 70%, transparent 100%);opacity:.45;border:none;height:1px;margin:1.5rem 0}.registry-card{background:var(--bg-card);border:1px solid var(--border);border-left:2px solid var(--accent);transition:background .2s,border-left-color .2s,transform .2s,box-shadow .2s;position:relative}.registry-card:hover{background:var(--bg-card-hover);border-left-color:var(--accent-bright);box-shadow:-4px 0 20px var(--accent-dim), 0 4px 24px var(--shadow-dark);transform:translate(3px)}.record-label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.25rem;font-family:JetBrains Mono,monospace;font-size:.5625rem;display:block}.record-name{color:var(--text-primary);font-family:Cormorant Garamond,serif;font-size:1.4375rem;font-weight:400;line-height:1.1}.record-id{color:var(--text-muted);letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:.5625rem}.btn{letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;padding:.45rem 1.1rem;font-family:JetBrains Mono,monospace;font-size:.6875rem;text-decoration:none;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600}.btn-primary:hover{background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:0 4px 20px var(--shadow-accent)}.btn-ghost{color:var(--text-secondary);border-color:var(--border-light);background:0 0}.btn-ghost:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-glow)}.btn-cancel{color:var(--text-muted);border-color:var(--border);background:0 0}.btn-cancel:hover{color:var(--text-secondary);border-color:var(--border-light)}.btn-danger{color:var(--error);background:0 0;border-color:#d45a5a4d}.btn-danger:hover{background:var(--error-dim);border-color:var(--error)}.btn-secondary{color:var(--text-secondary);border-color:var(--border-light);background:0 0}.btn-secondary:hover{color:var(--text-primary);border-color:var(--border-light);background:#ffffff0a}.btn-accent{background:var(--accent-blue-dim);color:var(--accent-blue);border-color:#3ab8e859}.btn-accent:hover{border-color:var(--accent-blue);background:#3ab8e833}.form-panel{background:var(--bg-surface);border:1px solid var(--border);border-top:1px solid var(--accent);padding:1.5rem;display:block;position:relative}.main-content{max-width:72rem;margin:0 auto;padding:2.5rem 1.5rem}.main-content--wide{max-width:100%;padding:.1rem 1.5rem}.patient-form-panel-full{width:calc(100vw - 3rem);margin-left:calc(50% - 50vw + 1.5rem);margin-right:calc(50% - 50vw + 1.5rem)}.main-content--wide .patient-form-panel-full{width:100%;margin-left:0;margin-right:0}.form-panel:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-blue), transparent);height:1px;position:absolute;top:-1px;left:0;right:0}.form-title{color:var(--text-secondary);letter-spacing:.02em;margin-bottom:1.25rem;font-family:Cormorant Garamond,serif;font-size:1.125rem;font-weight:400}.field-label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem;font-family:JetBrains Mono,monospace;font-size:.5625rem;display:block}.field-input{background:var(--bg-base);border:1px solid var(--border-light);width:100%;color:var(--text-primary);outline:none;padding:.625rem .875rem;font-family:DM Sans,sans-serif;font-size:.9375rem;font-weight:300;transition:border-color .2s,box-shadow .2s;display:block}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.field-color{background:var(--bg-base);border:1px solid var(--border-light);cursor:pointer;outline:none;width:100%;height:42px;padding:3px;transition:border-color .2s,box-shadow .2s;display:block}.field-color::-webkit-color-swatch-wrapper{padding:0}.field-color::-webkit-color-swatch{border:none}.field-color::-moz-color-swatch{border:none}.field-color:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.field-input::placeholder{color:var(--text-muted)}.field-input.has-error{border-color:var(--error)}.field-input.has-error:focus{box-shadow:0 0 0 3px var(--error-dim)}.form-group{flex-direction:column;gap:.25rem;display:flex}.form-label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.5625rem;display:block}.form-input,.form-select{background:var(--bg-base);border:1px solid var(--border-light);width:100%;color:var(--text-primary);outline:none;padding:.625rem .875rem;font-family:DM Sans,sans-serif;font-size:.9375rem;font-weight:300;transition:border-color .2s,box-shadow .2s;display:block}.form-input:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.form-input::placeholder{color:var(--text-muted)}textarea.form-input{resize:vertical;min-height:2.6rem}.form-errors{background:var(--error-dim);border:1px solid #d45a5a40;border-left:2px solid var(--error);color:var(--error-text);padding:.75rem .875rem;font-size:.8125rem}.form-errors p+p{margin-top:.25rem}.notice-success{background:var(--success-dim);border:1px solid #4a9a7740;border-left:2px solid var(--success);color:var(--success-text);letter-spacing:.06em;padding:.625rem .875rem;font-family:JetBrains Mono,monospace;font-size:.6875rem}.notice-success:before{content:"✓  ";color:var(--success)}.error-box{background:var(--error-dim);border:1px solid #d45a5a40;border-left:2px solid var(--error);color:var(--error-text);padding:.75rem .875rem;font-size:.8125rem}.error-box h2{letter-spacing:.12em;text-transform:uppercase;color:var(--error);margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.625rem}.empty-state{border:1px dashed var(--border);background:var(--accent-glow);text-align:center;padding:3.5rem 1rem;position:relative}.empty-state-icon{border:1px solid var(--border-light);border-top:2px solid var(--accent);justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 1rem;display:flex;position:relative}.empty-state-icon:after{content:"∅";color:var(--text-muted);font-family:Cormorant Garamond,serif;font-size:1.25rem}.empty-state p{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.6875rem}.count-badge{letter-spacing:.1em;background:var(--accent-dim);color:var(--accent);vertical-align:middle;border:1px solid #4dc95740;padding:.15rem .55rem;font-family:JetBrains Mono,monospace;font-size:.5625rem}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:.22s forwards fadeSlideIn}#schools article,#dentists article,#health_plans article{animation:.25s both fadeSlideIn}.show-card{background:var(--bg-card);border:1px solid var(--border);border-top:1px solid var(--accent);padding:2rem;display:block;position:relative}.show-card:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-blue) 50%, transparent 80%);height:1px;position:absolute;top:-1px;left:0;right:0}.back-link{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.625rem;text-decoration:none;transition:color .15s}.back-link:before{content:"← "}.back-link:hover{color:var(--accent-blue)}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.flex-wrap{flex-wrap:wrap}.w-full{width:100%}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.hidden{display:none!important}.list-disc{list-style:outside}.ml-4{margin-left:1rem}.mt-1{margin-top:.25rem}.patient-page{width:calc(100vw - 3rem);margin-left:calc(50% - 50vw + 1.5rem);margin-right:calc(50% - 50vw + 1.5rem)}.patient-layout-form{flex-direction:column;gap:1rem;display:flex}.patient-layout-grid{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.patient-column{flex-direction:column;gap:1rem;min-width:0;display:flex}.patient-section-card{background:linear-gradient(165deg, var(--bg-surface) 0%, var(--bg-card) 100%)}@supports (color:color-mix(in lab, red, red)){.patient-section-card{background:linear-gradient(165deg, var(--bg-surface) 0%, color-mix(in srgb, var(--bg-card) 75%, transparent) 100%)}}.patient-section-card{border:1px solid var(--border);border-top:1px solid var(--accent-blue);padding:1rem}.patient-section-header{margin-bottom:1rem}.patient-section-title{letter-spacing:.04em;color:var(--text-secondary);text-transform:uppercase;margin:0;font-family:JetBrains Mono,monospace;font-size:.75rem}.patient-section-subtitle{color:var(--text-muted);margin:.35rem 0 0;font-size:.78rem}.patient-fields-grid{gap:.85rem;display:grid}.patient-fields-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-fields-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-field-full{grid-column:1/-1}.patient-radio-group{border:1px solid var(--border-light);background:var(--bg-base);flex-wrap:wrap;align-items:center;gap:.8rem;min-height:40px;padding:.5rem .75rem;display:flex}.patient-radio-option,.patient-checkbox-option{color:var(--text-primary);align-items:center;gap:.45rem;font-size:.88rem;display:inline-flex}.patient-check-stack{flex-direction:column;justify-content:center;gap:.55rem;min-height:100%;display:flex}.patient-tabs{flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem;display:flex}.patient-tab{border:1px solid var(--border-light);background:var(--bg-base)}@supports (color:color-mix(in lab, red, red)){.patient-tab{background:color-mix(in srgb, var(--bg-base) 88%, transparent)}}.patient-tab{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:.45rem .65rem;font-family:JetBrains Mono,monospace;font-size:.62rem;transition:all .2s}.patient-tab:hover{color:var(--accent-blue);border-color:var(--accent-blue)}.patient-tab.is-active{color:#fff;border-color:var(--accent-blue);background:linear-gradient(90deg, var(--accent-blue) 0%, var(--accent) 100%)}@supports (color:color-mix(in lab, red, red)){.patient-tab.is-active{background:linear-gradient(90deg, color-mix(in srgb, var(--accent-blue) 70%, transparent) 0%, color-mix(in srgb, var(--accent) 45%, transparent) 100%)}}.patient-tab-panel{border:1px dashed var(--border-light);background:var(--bg-base);display:none}@supports (color:color-mix(in lab, red, red)){.patient-tab-panel{background:color-mix(in srgb, var(--bg-base) 90%, transparent)}}.patient-tab-panel{padding:.9rem}.patient-tab-panel.is-active{display:block}.patient-panel-title{color:var(--accent-blue);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .8rem;font-family:JetBrains Mono,monospace;font-size:.62rem}.patient-odonto-controls{max-width:360px;margin-bottom:.75rem}.patient-odonto-view-wrap{padding:.5rem 0}.patient-odonto-readonly [data-tooth-id]{pointer-events:none}.patient-panel-actions{justify-content:flex-end;margin-top:.8rem;display:flex}.patient-inline-section-title{color:var(--text-secondary);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .75rem;font-family:JetBrains Mono,monospace;font-size:.62rem}.patient-nested-list{flex-direction:column;gap:.65rem;margin-top:.75rem;display:flex}.patient-nested-item{border:1px solid var(--border-light);background:var(--bg-base)}@supports (color:color-mix(in lab, red, red)){.patient-nested-item{background:color-mix(in srgb, var(--bg-base) 92%, transparent)}}.patient-nested-item{padding:.75rem}.patient-media-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;margin-top:.75rem;display:grid}.patient-media-card{border:1px solid var(--border-light);background:var(--bg-base)}@supports (color:color-mix(in lab, red, red)){.patient-media-card{background:color-mix(in srgb, var(--bg-base) 90%, transparent)}}.patient-media-card{padding:.75rem}.patient-media-card.is-marked-for-removal{opacity:.58;border-color:var(--error)}.patient-media-thumb-shell{border:1px dashed var(--border-light);background:var(--bg-card);justify-content:center;align-items:center;min-height:130px;display:flex}.patient-media-thumb{object-fit:cover;width:100%;max-height:200px}.patient-media-description{color:var(--text-primary);margin:.65rem 0 .55rem;font-size:.88rem}.patient-media-actions{flex-wrap:wrap;gap:.45rem;display:flex}.patient-file-badge{background:var(--accent-blue);border-radius:6px;min-width:78px;min-height:78px}@supports (color:color-mix(in lab, red, red)){.patient-file-badge{background:color-mix(in srgb, var(--accent-blue) 22%, transparent)}}.patient-file-badge{border:1px solid var(--accent-blue);color:var(--text-primary);letter-spacing:.08em;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:.95rem;display:inline-flex}.patient-file-badge--large{min-width:92px;min-height:92px;margin-bottom:.65rem}.patient-modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:120;background:#060c14bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.patient-modal{background:var(--bg-surface);border:1px solid var(--border-light);width:min(900px,96vw);max-height:88vh;padding:1rem;position:relative;overflow-y:auto}.patient-modal--compact{width:min(460px,96vw)}.patient-modal-close{border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;background:0 0;margin-left:auto;padding:.35rem .55rem;font-size:.72rem;display:block}.patient-modal-title{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .65rem;font-family:JetBrains Mono,monospace;font-size:.72rem}.patient-modal-image{width:100%;height:auto}.patient-modal-actions{gap:.5rem;margin-top:.7rem;display:flex}.patient-modal-file-name{color:var(--text-primary);word-break:break-all;margin:0 0 .7rem;font-size:.85rem}.patient-odontogram-card{position:sticky;top:76px}.odontogram-shell{border:1px solid var(--border-light);background:var(--bg-base);padding:.75rem}.odontogram-caption-row{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.68rem;display:flex}.odontogram-row{grid-template-columns:repeat(16,minmax(34px,1fr));gap:.3rem;display:grid}.odontogram-divider{background:linear-gradient(90deg, var(--accent-blue) 0%, var(--accent) 100%);height:2px}@supports (color:color-mix(in lab, red, red)){.odontogram-divider{background:linear-gradient(90deg, color-mix(in srgb, var(--accent-blue) 65%, transparent) 0%, color-mix(in srgb, var(--accent) 60%, transparent) 100%)}}.odontogram-divider{margin:.8rem 0}.odontogram-tooth{background:var(--bg-card)}@supports (color:color-mix(in lab, red, red)){.odontogram-tooth{background:color-mix(in srgb, var(--bg-card) 88%, transparent)}}.odontogram-tooth{border:1px solid var(--border-light);cursor:pointer;flex-direction:column;align-items:center;gap:.22rem;min-height:72px;padding:.35rem .15rem .3rem;transition:border-color .2s,transform .2s;display:flex}.odontogram-tooth:hover{border-color:var(--accent-blue);transform:translateY(-1px)}.odontogram-tooth-number{color:var(--accent-blue);font-family:JetBrains Mono,monospace;font-size:.57rem}.odontogram-tooth-shape{border:2px solid var(--text-secondary);width:20px;height:24px}@supports (color:color-mix(in lab, red, red)){.odontogram-tooth-shape{border:2px solid color-mix(in srgb, var(--text-secondary) 80%, transparent)}}.odontogram-tooth-shape{border-radius:45% 45% 40% 40%}.odontogram-tooth-shape--lower{border-radius:40% 40% 45% 45%}.odontogram-surfaces{grid-template-rows:repeat(3,6px);grid-template-columns:repeat(3,6px);gap:1px;display:grid}.odontogram-surfaces span{background:var(--bg-surface)}@supports (color:color-mix(in lab, red, red)){.odontogram-surfaces span{background:color-mix(in srgb, var(--bg-surface) 90%, #fff 10%)}}.odontogram-surfaces span{border:1px solid var(--border-light)}@supports (color:color-mix(in lab, red, red)){.odontogram-surfaces span{border:1px solid color-mix(in srgb, var(--border-light) 70%, transparent)}}.odontogram-surfaces span:first-child{grid-area:1/2}.odontogram-surfaces span:nth-child(2){grid-area:2/1}.odontogram-surfaces span:nth-child(3){grid-area:2/2}.odontogram-surfaces span:nth-child(4){grid-area:2/3}.odontogram-surfaces span:nth-child(5){grid-area:3/2}.odontogram-tooth:active .odontogram-surfaces span:nth-child(3),.odontogram-tooth:focus-visible .odontogram-surfaces span:nth-child(3){background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.odontogram-tooth:active .odontogram-surfaces span:nth-child(3),.odontogram-tooth:focus-visible .odontogram-surfaces span:nth-child(3){background:color-mix(in srgb, var(--accent) 75%, #fff 25%)}}.odontogram-legend{color:var(--text-muted);flex-direction:column;gap:.45rem;margin-top:.8rem;font-size:.72rem;display:flex}.odontogram-dot{background:var(--accent);border-radius:999px;width:8px;height:8px;margin-right:.35rem;display:inline-block}.odontogram-dot--soft{background:var(--accent-blue)}.patient-treatments-card{border-top-color:var(--accent)}.patient-muted-note{color:var(--text-muted);margin:0;font-size:.85rem}.patient-form-actions{align-items:center;gap:.625rem;padding-top:.25rem;display:flex}@media (min-width:1180px){.patient-layout-grid{grid-template-columns:minmax(0,1fr) minmax(520px,.95fr)}.patient-column-right{min-width:520px}}@media (max-width:1179px){.patient-fields-grid--three,.patient-media-list{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-odontogram-card{position:static}}@media (max-width:860px){.patient-fields-grid--two,.patient-fields-grid--three{grid-template-columns:minmax(0,1fr)}.patient-tabs{flex-direction:column}.patient-tab{text-align:left;width:100%}.odontogram-row{grid-template-columns:repeat(8,minmax(38px,1fr))}.patient-media-list{grid-template-columns:minmax(0,1fr)}}@media (max-width:460px){.patient-form-panel-full,.patient-page{width:100%;margin-left:0;margin-right:0}.patient-section-card{padding:.8rem}.odontogram-row{grid-template-columns:repeat(4,minmax(42px,1fr))}}.patient-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.patient-panel-header-left{min-width:0}.patient-panel-actions-nav{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:.5rem;max-width:760px;margin-left:auto;display:flex}.patient-action-btn{border:1px solid var(--border-light);color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;text-align:center;background:0 0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:.3rem;width:auto;min-width:96px;padding:.55rem .85rem;font-family:JetBrains Mono,monospace;font-size:.58rem;text-decoration:none;transition:all .15s;display:inline-flex}.patient-action-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.patient-action-btn svg{flex-shrink:0}.patient-action-btn span{text-wrap:balance;line-height:1.15}.patient-action-btn--success{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.patient-action-btn--success:hover{border-color:var(--accent-bright);color:var(--accent-bright);background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.patient-action-btn--success:hover{background:color-mix(in srgb, var(--accent) 20%, transparent)}}.patient-action-btn--danger{color:var(--error);background:0 0;border-color:#d45a5a59}.patient-action-btn--danger:hover{border-color:var(--error);background:var(--error-dim)}@media (max-width:640px){.patient-panel-actions-nav{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:.4rem;width:100%;max-width:none;margin-left:0;display:grid}.patient-action-btn{letter-spacing:.1em;flex:auto;gap:.22rem;width:100%;min-width:0;padding:.5rem .55rem;font-size:.52rem}.patient-action-btn svg{width:15px;height:15px}}.patient-media-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.patient-media-link-card{border:1px solid var(--border-light);background:var(--bg-base);flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.patient-media-link-card{background:color-mix(in srgb, var(--bg-base) 90%, transparent)}}.patient-media-link-card{color:var(--text-secondary);text-align:center;text-decoration:none;transition:all .18s}.patient-media-link-card:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.patient-media-link-card svg{stroke:currentColor;flex-shrink:0}.patient-media-link-label{letter-spacing:.14em;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.7rem}.patient-media-link-count{color:var(--text-primary);font-family:Cormorant Garamond,serif;font-size:1.5rem;font-weight:400;line-height:1}.media-page{flex-direction:column;gap:2rem;display:flex}.media-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.media-page-breadcrumb{flex-shrink:0}.media-page-identity{flex:1;min-width:0}.media-page-section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);margin-top:.25rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.media-page-nav{flex-shrink:0;align-items:flex-start;gap:.5rem;display:flex}.media-upload-section{background:var(--bg-card)}@supports (color:color-mix(in lab, red, red)){.media-upload-section{background:color-mix(in srgb, var(--bg-card) 80%, transparent)}}.media-upload-section{border:1px solid var(--border);border-left:2px solid var(--accent-blue);padding:1.25rem}.media-upload-title{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:.65rem;margin:0 0 1rem;font-family:JetBrains Mono,monospace;font-size:.65rem;display:flex}.media-count-badge{background:var(--accent-blue-dim);border:1px solid var(--accent-blue);min-width:22px;height:22px;color:var(--accent-blue);letter-spacing:.05em;border-radius:2px;justify-content:center;align-items:center;padding:0 6px;font-family:JetBrains Mono,monospace;font-size:.65rem;display:inline-flex}.media-upload-form{flex-direction:column;gap:1rem;display:flex}.media-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.gallery-card{border:1px solid var(--border-light);background:var(--bg-card);flex-direction:column;transition:border-color .18s,box-shadow .18s;display:flex}.gallery-card:hover{border-color:var(--accent-blue);box-shadow:0 4px 20px var(--shadow-dark)}.gallery-card-thumb{aspect-ratio:4/3;background:var(--bg-base);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.gallery-card-thumb{background:color-mix(in srgb, var(--bg-base) 90%, transparent)}}.gallery-card-thumb{border-bottom:1px solid var(--border);justify-content:center;align-items:center;display:flex}.gallery-thumb{object-fit:cover;width:100%;height:100%;display:block}.gallery-thumb-placeholder{width:100%;height:100%;color:var(--text-muted);letter-spacing:.1em;justify-content:center;align-items:center;font-family:JetBrains Mono,monospace;font-size:1.25rem;display:flex}.gallery-card-body{flex-direction:column;flex:1;gap:.5rem;padding:.75rem;display:flex}.gallery-card-date{letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.6rem;display:block}.gallery-card-description{flex-direction:column;flex:1;gap:.35rem;display:flex}.gallery-description-text{color:var(--text-primary);word-break:break-word;margin:0;font-size:.82rem;line-height:1.5}.gallery-inline-form{flex-direction:column;gap:.5rem;display:flex}.gallery-inline-textarea{resize:vertical;min-height:60px;font-size:.82rem}.gallery-inline-actions{gap:.4rem;display:flex}.gallery-edit-btn{border:1px solid var(--border);color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;align-self:flex-start;padding:.25rem .6rem;font-family:JetBrains Mono,monospace;font-size:.6rem;transition:all .15s}.gallery-edit-btn:hover{color:var(--accent-blue);border-color:var(--accent-blue);background:var(--accent-blue-dim)}.gallery-card-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:.35rem;margin-top:auto;padding-top:.5rem;display:flex}.gallery-card-actions .btn{gap:.3rem;padding:.3rem .65rem;font-size:.6rem}.gallery-card-actions form{display:contents}.gallery-empty{text-align:center;color:var(--text-muted);letter-spacing:.08em;border:1px dashed var(--border);grid-column:1/-1;padding:3rem 1rem;font-family:JetBrains Mono,monospace;font-size:.75rem}.files-list{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}@media (max-width:1100px){.files-list{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.files-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.files-list{grid-template-columns:1fr}}.file-card{border:1px solid var(--border-light);background:var(--bg-card);flex-direction:column;gap:.75rem;padding:1rem;transition:border-color .18s;display:flex}.file-card:hover{border-color:var(--accent-blue)}.file-card-main{align-items:flex-start;gap:1rem;display:flex}.file-card-icon{flex-shrink:0}.file-card-info{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.file-card-filename{color:var(--text-primary);word-break:break-all;margin:0;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:500}.file-card-filename--muted{color:var(--text-muted)}.file-card-meta{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.file-meta-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);background:var(--accent-blue-dim);border:1px solid var(--border-light);padding:.15rem .45rem;font-family:JetBrains Mono,monospace;font-size:.6rem}.file-meta-separator{color:var(--text-muted);font-size:.7rem}@media (max-width:1200px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-upload-grid{grid-template-columns:minmax(0,1fr)}.media-page-header{flex-direction:column}}@media (max-width:540px){.gallery-grid,.patient-media-links{grid-template-columns:minmax(0,1fr)}}.panel-tab-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.btn-add-record{letter-spacing:.07em;text-transform:uppercase;border:1px dashed var(--accent);color:var(--accent);cursor:pointer;background:0 0;align-items:center;gap:.375rem;padding:.3rem .65rem;font-family:JetBrains Mono,monospace;font-size:.68rem;font-weight:600;line-height:1;transition:background .15s,border-style .15s,box-shadow .15s;display:inline-flex}.btn-add-record:hover{background:var(--accent-glow);box-shadow:0 0 0 3px var(--accent-glow);border-style:solid}.patient-modal--form{border-radius:2px;width:min(480px,96vw);padding:1.5rem}.patient-modal-form-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.patient-modal-form-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-blue);margin:0 0 .25rem;font-family:JetBrains Mono,monospace;font-size:.6rem}.patient-modal-form-title{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:600}.patient-modal-form-close{border:1px solid var(--border-light);width:1.75rem;height:1.75rem;color:var(--text-muted);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,border-color .15s;display:flex}.patient-modal-form-close:hover{color:var(--text-secondary);border-color:var(--border)}.patient-modal-form-actions{border-top:1px solid var(--border-light);justify-content:flex-end;gap:.5rem;margin-top:1.25rem;padding-top:1rem;display:flex}.cal-page{flex-direction:column;height:calc(100vh - 57px);display:flex;overflow:hidden}.cal-page:has(.cal-side-panel--open){flex-direction:row}.cal-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.cal-side-panel{border-left:0px solid var(--border);background:var(--bg-surface);flex-direction:column;flex-shrink:0;width:0;transition:width .28s cubic-bezier(.34,1.56,.64,1),border-left-width .1s;display:flex;overflow:hidden}.cal-side-panel--open{border-left-width:1px;width:340px;overflow-y:auto}.cal-side-panel::-webkit-scrollbar{width:3px}.cal-side-panel::-webkit-scrollbar-track{background:0 0}.cal-side-panel::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.cal-toolbar{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.cal-toolbar:after{content:none}.cal-toolbar-left{flex-direction:column;min-width:80px;line-height:1;display:flex}.cal-toolbar-center{align-items:center;gap:1rem;display:flex}.cal-center-info{flex-direction:column;align-items:center;gap:.4rem;display:flex}.cal-dentist-filter{justify-content:center;display:flex}.cal-dentist-select{color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);cursor:pointer;text-align:center;border-radius:4px;outline:none;min-width:160px;padding:.25rem .6rem;font-family:DM Sans,sans-serif;font-size:.8rem;font-weight:400;transition:border-color .15s}.cal-dentist-select:focus,.cal-dentist-select:hover{border-color:var(--accent-blue)}.cal-toolbar-right{align-items:center;gap:.6rem;display:flex}.cal-nav-btn{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-blue);border:1px solid var(--border-light);white-space:nowrap;background:0 0;border-radius:4px;flex-direction:column;align-items:center;gap:.2rem;padding:.45rem .9rem;font-family:JetBrains Mono,monospace;font-size:.6rem;text-decoration:none;transition:all .15s;display:inline-flex}.cal-nav-btn:hover{border-color:var(--accent-blue);background:var(--accent-blue-dim)}.cal-week-label{color:var(--text-primary);white-space:nowrap;letter-spacing:-.01em;font-family:Cormorant Garamond,serif;font-size:1.05rem;font-weight:500}.cal-date-jump{align-items:center;gap:0;display:flex}.cal-date-input{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-right:none;border-radius:4px 0 0 4px;outline:none;width:130px;padding:.38rem .6rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;transition:border-color .15s}.cal-date-input:focus{border-color:var(--accent-blue);z-index:1}.cal-date-btn{background:var(--accent-blue);border:1px solid var(--accent-blue);color:#fff;cursor:pointer;border-radius:0 4px 4px 0;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s;display:inline-flex}.cal-date-btn:hover{background:#2ea3d0}.cal-new-btn{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);white-space:nowrap;background:0 0;border-radius:4px;flex-direction:column;align-items:center;gap:.2rem;padding:.45rem .9rem;font-family:JetBrains Mono,monospace;font-size:.58rem;text-decoration:none;transition:all .15s;display:inline-flex}.cal-new-btn:hover{background:var(--accent-dim);box-shadow:0 0 14px var(--accent-dim)}@media (max-width:640px){.cal-toolbar{flex-wrap:wrap;gap:.5rem;padding:.65rem .85rem}.cal-toolbar-left{flex:1;min-width:0}.cal-toolbar-right{align-items:center;gap:.4rem;display:flex}.cal-date-jump,.cal-new-btn-label{display:none}.cal-new-btn{padding:.5rem .65rem}.cal-toolbar-center{justify-content:space-between;gap:.5rem;width:100%}.cal-center-info{flex:1;min-width:0}.cal-week-label{text-align:center;white-space:normal;font-size:.85rem;line-height:1.3}.cal-dentist-select{width:100%;min-width:0;font-size:.75rem}.cal-nav-btn{flex-shrink:0;padding:.45rem .55rem;font-size:.55rem}}.cal-grid-wrapper{flex:1;overflow:auto}.cal-grid-wrapper::-webkit-scrollbar{width:5px;height:5px}.cal-grid-wrapper::-webkit-scrollbar-track{background:0 0}.cal-grid-wrapper::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}.cal-grid{border-left:1px solid var(--border);grid-template-rows:auto 1fr;grid-template-columns:56px repeat(7,minmax(110px,1fr));min-width:850px;display:grid}.cal-corner{background:var(--bg-surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);z-index:10;position:sticky;top:0}.cal-day-header{background:var(--bg-surface);border-bottom:1px solid var(--border);border-right:1px solid var(--border);text-align:center;z-index:10;flex-direction:column;align-items:center;gap:.15rem;padding:.6rem .5rem .5rem;display:flex;position:sticky;top:0}.cal-day-header--today{background:var(--accent-blue-dim)}.cal-day-name{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.52rem;display:block}.cal-day-number{color:var(--text-secondary);font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:500;line-height:1}.cal-day-number--today{color:var(--accent-blue)}.cal-day-dentists{flex-wrap:wrap;justify-content:center;gap:3px;min-height:10px;display:flex}.cal-dentist-icon{opacity:.9;cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;text-decoration:none;transition:opacity .15s,transform .15s;display:inline-flex}.cal-dentist-icon:hover{opacity:1;transform:translateY(-1px)}.cal-dentist-badge{color:#fff;text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.56rem;font-weight:700;line-height:1}.cal-time-gutter{background:var(--bg-surface);border-right:1px solid var(--border);position:relative}.cal-time-label{letter-spacing:.05em;color:var(--text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.48rem;position:absolute;right:6px;transform:translateY(-50%)}.cal-time-label--half{color:var(--border-light);font-size:.42rem}.cal-day-col{border-right:1px solid var(--border);position:relative}.cal-hour-line{background:var(--border);pointer-events:none;height:1px;position:absolute;left:0;right:0}.cal-half-line{background:var(--border);opacity:.4;pointer-events:none;height:1px;position:absolute;left:0;right:0}.cal-now-line{background:var(--accent);z-index:5;pointer-events:none;height:2px;position:absolute;left:0;right:0}.cal-now-line:before{content:"";background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;left:-4px}.appt-card{border-left:3px solid var(--accent-blue);background:var(--bg-card);cursor:pointer;z-index:4;border-radius:4px;flex-direction:column;gap:1px;padding:3px 5px;text-decoration:none;transition:filter .15s,transform .15s,box-shadow .15s;display:flex;position:absolute;left:2px;right:2px;overflow:hidden;box-shadow:0 1px 4px #00000040}.appt-card:hover{filter:brightness(1.12);z-index:6;transform:scaleX(.98);box-shadow:0 3px 12px #00000059}.appt-card--evaluation{background:repeating-linear-gradient(135deg, var(--bg-card) 0px, var(--bg-card) 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-card--novo{background-color:#f59e0b1f}.appt-card--confirmado{background-color:#2563eb1f}.appt-card--finalizado{background-color:#4dc9571a}.appt-card--ausente{background-color:#dc262624}.appt-card--rescheduled{background-color:#7e22ce29}.appt-card--old-scheduled{background-color:#6b728038}.appt-card--evaluation.appt-card--novo{background:repeating-linear-gradient(135deg, #f59e0b1f 0px, #f59e0b1f 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-card--evaluation.appt-card--confirmado{background:repeating-linear-gradient(135deg, #2563eb1f 0px, #2563eb1f 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-card--evaluation.appt-card--ausente{background:repeating-linear-gradient(135deg, #dc262624 0px, #dc262624 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-card--evaluation.appt-card--rescheduled{background:repeating-linear-gradient(135deg, #7e22ce29 0px, #7e22ce29 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-card--evaluation.appt-card--finalizado{background:repeating-linear-gradient(135deg, #4dc9571a 0px, #4dc9571a 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-card--evaluation.appt-card--old-scheduled{background:repeating-linear-gradient(135deg, #6b728038 0px, #6b728038 4px, var(--bg-surface) 4px, var(--bg-surface) 8px)}.appt-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;position:absolute;top:4px;right:4px}.appt-eval-badge{letter-spacing:.1em;text-transform:uppercase;color:#fff;background:#00000059;border-radius:2px;align-self:flex-start;padding:1px 3px;font-family:JetBrains Mono,monospace;font-size:.42rem;line-height:1}.appt-budget-indicator{color:var(--accent);opacity:.85;flex-shrink:0;align-items:center;display:inline-flex}.appt-name-row{flex-shrink:0;align-items:center;gap:3px;min-width:0;display:flex}.appt-name-row .appt-name{flex:1;min-width:0}.appt-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-family:DM Sans,sans-serif;font-size:.7rem;font-weight:500;line-height:1.2;overflow:hidden}.appt-time{letter-spacing:.04em;color:var(--text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.48rem}.appt-panel{flex-direction:column;gap:0;min-height:100%;padding:1.25rem;display:flex}.appt-panel-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.appt-panel-close{border:1px solid var(--border-light);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:4px;transition:all .15s;display:flex}.appt-panel-close:hover{border-color:var(--error);color:var(--error);background:var(--error-dim)}.appt-panel-badges{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.appt-badge{letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:3px;padding:.22rem .5rem;font-family:JetBrains Mono,monospace;font-size:.5rem}.appt-badge--patient{color:var(--accent-blue);background:var(--accent-blue-dim);border-color:#3ab8e859}.appt-badge--eval{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b59}.appt-panel-info{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:0;margin:0 0 1rem;display:flex;overflow:hidden}.appt-info-row{border-bottom:1px solid var(--border);gap:.5rem;padding:.55rem .75rem;display:flex}.appt-info-row:last-child{border-bottom:none}.appt-info-row--obs{flex-direction:column;gap:.2rem}.appt-info-row dt{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;min-width:68px;padding-top:1px;font-family:JetBrains Mono,monospace;font-size:.52rem}.appt-info-row dd{color:var(--text-primary);align-items:center;gap:.4rem;margin:0;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;display:flex}.appt-dentist-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.appt-panel-section{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem}.appt-panel-section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.6rem;display:block}.appt-panel-actions{flex-direction:column;gap:.4rem;display:flex}.appt-panel-actions-secondary{border-top:1px solid var(--border);gap:.4rem;margin-top:.4rem;padding-top:.6rem;display:flex}.appt-action-btn{letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:.45rem;width:100%;padding:.5rem .9rem;font-family:JetBrains Mono,monospace;font-size:.58rem;text-decoration:none;transition:all .15s;display:inline-flex}.appt-action-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.appt-panel-actions-secondary .appt-action-btn{flex:1}.appt-action-btn--confirm{color:var(--accent-green);border-color:#4dc95766}.appt-action-btn--confirm:hover{background:var(--accent-green-dim);border-color:var(--accent-green)}.appt-action-btn--finalize{color:#8b5cf6;border-color:#8b5cf666}.appt-action-btn--finalize:hover{background:#8b5cf614;border-color:#8b5cf6}.appt-action-btn--absent{color:var(--error);border-color:#e05a5a59}.appt-action-btn--absent:hover{background:var(--error-dim);border-color:var(--error)}.appt-action-btn--revert{border-color:var(--border);color:var(--text-muted);font-size:.65rem}.appt-action-btn--revert:hover{background:var(--bg-hover,#0000000d);border-color:var(--border-light);color:var(--text-secondary)}.appt-action-btn--convert{color:#f59e0b;border-color:#f59e0b59}.appt-action-btn--convert:hover{background:#f59e0b14;border-color:#f59e0b}.appt-action-btn--budget{color:#3ab8e8;border-color:#3bb8e859}.appt-action-btn--budget:hover{background:#3bb8e814;border-color:#3ab8e8}.appt-action-btn--edit{border-color:var(--border-light);color:var(--text-secondary)}.appt-action-btn--edit:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.appt-action-btn--delete{color:var(--error);border-color:#e05a5a40}.appt-action-btn--delete:hover{background:var(--error-dim);border-color:var(--error)}.appt-form-type-toggle{border:1px solid var(--border);border-radius:5px;gap:0;margin-bottom:1rem;display:flex;overflow:hidden}.appt-type-option{cursor:pointer;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-card);border-right:1px solid var(--border);flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.45rem .5rem;font-family:JetBrains Mono,monospace;font-size:.58rem;transition:all .15s;display:flex}.appt-type-option:last-child{border-right:none}.appt-type-option:has(input:checked){background:var(--accent-blue-dim);color:var(--accent-blue)}.appt-type-option input[type=radio]{display:none}.appt-field{margin-bottom:.75rem}.appt-field-row{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem;display:grid}.appt-form-footer{border-top:1px solid var(--border);flex-direction:column;gap:.4rem;margin-top:.5rem;padding-top:.75rem;display:flex}.appt-submit-btn{letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:.55rem 1rem;font-family:JetBrains Mono,monospace;font-size:.62rem;font-weight:600;transition:all .15s;display:inline-flex}.appt-submit-btn:hover{background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:0 4px 16px var(--shadow-accent)}.appt-cancel-btn{letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:.45rem 1rem;font-family:JetBrains Mono,monospace;font-size:.58rem;transition:all .15s;display:inline-flex}.appt-cancel-btn:hover{color:var(--text-secondary);border-color:var(--border-light)}.appt-patient-dropdown{z-index:50;background:var(--bg-card);border:1px solid var(--border);border-top:none;border-radius:0 0 4px 4px;max-height:220px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 6px 16px #0000002e}.appt-patient-dropdown::-webkit-scrollbar{width:3px}.appt-patient-dropdown::-webkit-scrollbar-track{background:0 0}.appt-patient-dropdown::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.appt-patient-option{color:var(--text-primary);cursor:pointer;border-bottom:1px solid var(--border-faint,var(--border));white-space:nowrap;text-overflow:ellipsis;padding:.5rem .75rem;font-family:DM Sans,sans-serif;font-size:.8125rem;transition:background .1s;overflow:hidden}.appt-patient-option:last-child{border-bottom:none}.appt-patient-option:hover{background:var(--accent-dim);color:var(--accent)}[data-controller=patient-search]{position:relative}.cal-header-btn{border:1px solid var(--border-light);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:all .2s;display:inline-flex}.cal-header-btn:hover{border-color:var(--accent-green);color:var(--accent-green);background:var(--accent-green-dim)}.treatment-page{flex-direction:column;height:calc(100vh - 57px);display:flex;overflow:hidden}.treatment-header{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.treatment-header-left{flex-direction:column;line-height:1;display:flex}.treatment-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.trt-action-btn{letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);border:1px solid var(--border-light);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;flex-direction:column;align-items:center;gap:.25rem;min-width:54px;padding:.5rem .9rem;font-family:JetBrains Mono,monospace;font-size:.58rem;text-decoration:none;transition:all .15s;display:inline-flex}.trt-action-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.trt-action-btn--muted{color:var(--text-muted)}.trt-action-btn--danger{color:var(--accent-red,#ef4444);border-color:#0000}.trt-action-btn--danger:hover{background:#ef444415;border-color:#ef4444}.treatment-body{flex:1;gap:0;display:flex;overflow:hidden}.treatment-info-card{border-right:1px solid var(--border);background:var(--bg-surface);flex-direction:column;flex-shrink:0;gap:.1rem;width:280px;min-width:240px;padding:1.25rem 1.125rem;display:flex;overflow-y:auto}.treatment-info-section-title{letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem;font-family:JetBrains Mono,monospace;font-size:.62rem}.treatment-totals-title{letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-top:.25rem;margin-bottom:.5rem;font-family:JetBrains Mono,monospace;font-size:.62rem}.treatment-info-row{align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.treatment-info-label{color:var(--text-muted);flex-shrink:0;min-width:75px;font-family:JetBrains Mono,monospace;font-size:.65rem}.treatment-info-value{color:var(--text-primary);font-size:.84rem}.trt-subtotal{color:var(--text-muted)}.treatment-totals{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.treatment-discount-row{flex-wrap:wrap;align-items:flex-start;gap:.5rem;padding:.3rem 0;display:flex}.treatment-discount-inputs{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.treatment-discount-inputs>div{align-items:center;gap:.3rem;display:inline-flex}.treatment-discount-inputs .treatment-info-label{white-space:nowrap;min-width:auto;line-height:1}.trt-discount-input{text-align:right;height:1.9rem;background:var(--bg-base)!important;border:1px solid var(--border-light)!important;width:70px!important;color:var(--text-primary)!important;padding:.28rem .5rem!important;font-size:.8rem!important}.treatment-installment-row{flex-wrap:wrap;align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.treatment-procedures-section{flex-direction:column;flex:1;display:flex;overflow:hidden}.treatment-procedures-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex}.treatment-procedures-title{color:var(--text-primary);font-family:Cormorant Garamond,serif;font-size:1.1rem;font-weight:500}.trt-new-proc-btn{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-blue);border:1px solid var(--border-light);white-space:nowrap;background:0 0;border-radius:4px;align-items:center;gap:.35rem;padding:.4rem .85rem;font-family:JetBrains Mono,monospace;font-size:.6rem;text-decoration:none;transition:all .15s;display:inline-flex}.trt-new-proc-btn:hover{border-color:var(--accent-blue);background:var(--accent-blue-dim)}#procedures-list{flex:1;overflow-y:auto}.procedures-empty{text-align:center;color:var(--text-muted);padding:2rem 1.5rem;font-size:.875rem}.badge-count{background:var(--accent-blue);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:18px;margin-left:.2rem;padding:.1rem .4rem;font-family:JetBrains Mono,monospace;font-size:.65rem;display:inline-flex}.proc-modal-overlay{z-index:300;background:#0000008c;justify-content:center;align-items:flex-start;padding:2rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.proc-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;width:100%;max-width:840px;padding:1.5rem;position:relative;box-shadow:0 20px 60px #00000059}.proc-modal-header{justify-content:space-between;align-items:center;margin-bottom:1.25rem;display:flex}.proc-modal-title{color:var(--text-primary);font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:500}.proc-modal-close{color:var(--text-muted);border-radius:4px;padding:.3rem;text-decoration:none;transition:color .15s}.proc-modal-close:hover{color:var(--text-primary)}.proc-modal-row{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.proc-modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.75rem;margin-top:1.25rem;padding-top:1rem;display:flex}.odonto-wrap{border:1px solid var(--border);border-radius:6px;margin:1rem 0 .5rem;overflow:hidden}.odonto-tabs{border-bottom:1px solid var(--border);display:flex}.odonto-tab{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.5rem 1rem;font-family:JetBrains Mono,monospace;font-size:.65rem;transition:all .15s}.odonto-tab:hover{color:var(--text-primary)}.odonto-tab--active{color:var(--accent-blue);border-bottom-color:var(--accent-blue);background:var(--accent-blue-dim)}.odonto-panel{background:var(--bg-card);padding:.75rem .5rem}.odonto-panel--hidden{display:none}.odonto-arch{justify-content:center;align-items:flex-end;gap:0;display:flex}.odonto-arch--upper{margin-bottom:0}.odonto-arch--lower{margin-top:0}.odonto-quadrant{gap:2px;display:flex}.odonto-quadrant--right{flex-direction:row-reverse}.odonto-midline--v{background:var(--accent-blue);border-radius:1px;align-self:stretch;width:2px;margin:0 2px}.odonto-hline{background:var(--border);height:2px;margin:2px .5rem}.odonto-tooth{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:3px;flex-direction:column;align-items:center;gap:2px;padding:2px;transition:background .1s;display:flex}.odonto-tooth:hover{background:var(--bg-hover,#ffffff0f)}.odonto-tooth--selected .odonto-tooth-num{color:var(--accent-blue);font-weight:700}.odonto-tooth-num{color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.55rem;line-height:1;transition:color .1s}.odonto-tooth-svg{border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;border-radius:2px;display:block}.odonto-part{fill:#0000;stroke:var(--border);stroke-width:.5px;cursor:pointer;transition:fill .1s}.odonto-part:hover{fill:var(--accent-blue-dim)}.odonto-part--selected{stroke:#e74c3c;fill:#e74c3caa!important}.proc-tabs-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:0 1.25rem;display:flex}.proc-tabs-nav{gap:0;display:flex}.proc-tab-btn{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:.7rem 1.1rem;font-family:JetBrains Mono,monospace;font-size:.62rem;transition:all .15s}.proc-tab-btn:hover{color:var(--text-secondary)}.proc-tab-btn--active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.proc-tab-panel--hidden{display:none!important}.proc-cards-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.85rem;padding:1.125rem 1.25rem;display:grid;overflow-y:auto}.proc-card{--pc-color:#6b7280;background:var(--bg-card);border:1px solid var(--border-light);border-top:2px solid var(--pc-color);border-radius:0 0 6px 6px;flex-direction:column;gap:0;transition:box-shadow .15s,transform .12s;display:flex;overflow:hidden}.proc-card:hover{box-shadow:0 4px 18px var(--shadow-dark);transform:translateY(-1px)}.proc-card-header{justify-content:space-between;align-items:center;padding:.55rem .8rem .3rem;display:flex}.proc-card-status{letter-spacing:.1em;text-transform:uppercase;color:var(--pc-color);background:var(--pc-color);font-family:JetBrains Mono,monospace;font-size:.55rem}@supports (color:color-mix(in lab, red, red)){.proc-card-status{background:color-mix(in srgb, var(--pc-color) 14%, transparent)}}.proc-card-status{border:1px solid var(--pc-color)}@supports (color:color-mix(in lab, red, red)){.proc-card-status{border:1px solid color-mix(in srgb, var(--pc-color) 32%, transparent)}}.proc-card-status{border-radius:20px;padding:.15rem .5rem}.proc-card-actions{align-items:center;gap:.25rem;display:flex}.proc-card-actions form{margin:0;display:inline-flex}.icon-btn{border:1px solid var(--border-light);width:1.55rem;height:1.55rem;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;text-decoration:none;transition:all .15s;display:inline-flex}.icon-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.icon-btn svg{width:13px;height:13px;display:block}.icon-btn--danger{border-color:var(--error)}@supports (color:color-mix(in lab, red, red)){.icon-btn--danger{border-color:color-mix(in srgb, var(--error) 25%, transparent)}}.icon-btn--danger{color:var(--error)}.icon-btn--danger:hover{border-color:var(--error);background:var(--error-dim);color:var(--error)}.proc-card-name{color:var(--text-primary);padding:.1rem .8rem .45rem;font-family:Cormorant Garamond,serif;font-size:1rem;font-weight:600;line-height:1.25}.proc-card-meta{border-top:1px solid var(--border-light);flex-direction:column;gap:.2rem;padding:.4rem .8rem;display:flex}.proc-card-meta-row{align-items:baseline;gap:.4rem;display:flex}.proc-card-meta-key{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;min-width:54px;font-family:JetBrains Mono,monospace;font-size:.58rem}.proc-card-meta-val{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.78rem}.proc-card-footer{border-top:1px solid var(--border-light);background:var(--pc-color);justify-content:flex-end;align-items:center;padding:.45rem .8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.proc-card-footer{background:color-mix(in srgb, var(--pc-color) 5%, var(--bg-card))}}.proc-card-footer{margin-top:auto}.proc-card-value{color:var(--pc-color);font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:.82rem;font-weight:600}.odonto-view-wrap{flex:1;padding:1rem 1.25rem;overflow-y:auto}.odonto-view-legend{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;padding-bottom:.6rem;display:flex}.odonto-view-legend-item{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:.35rem;font-family:JetBrains Mono,monospace;font-size:.6rem;display:flex}.odonto-view-legend-dot{border-radius:50%;width:10px;height:10px}@media (max-width:640px){.treatment-body{flex-direction:column}.treatment-info-card{border-right:none;border-bottom:1px solid var(--border);width:100%;max-height:50vh}.odonto-tooth-svg{width:24px;height:24px}.odonto-tooth-num{font-size:.48rem}.proc-modal{padding:1rem}.proc-modal-row{flex-direction:column;gap:.75rem}}.odonto-anatomy{height:40px;color:var(--text-muted);cursor:pointer;justify-content:center;align-items:flex-end;display:flex}.odonto-anatomy--lower{align-items:flex-start}.odonto-tooth-anatomy{opacity:.6;transition:opacity .15s,color .15s;display:block}.odonto-tooth:hover .odonto-tooth-anatomy{opacity:1}.odonto-tooth--selected .odonto-tooth-anatomy{color:var(--accent-blue);opacity:1}.odonto-tooth--whole .odonto-tooth-svg{border-color:var(--accent-blue)}.odonto-tooth--whole .odonto-part{fill:#3ab8e82e!important;stroke:var(--accent-blue)!important}.odonto-anatomy--lower svg{transform:scaleY(-1)}.treatment-cards-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.treatment-card{--trt-color:#6b7280;background:var(--bg-card);border:1px solid var(--border-light);border-top:3px solid var(--trt-color);color:inherit;border-radius:0 0 6px 6px;flex-direction:column;min-height:240px;text-decoration:none;transition:box-shadow .18s,border-color .18s,transform .15s;display:flex;position:relative;overflow:hidden}.treatment-card:hover{box-shadow:0 6px 24px var(--shadow-dark);border-color:var(--trt-color);transform:translateY(-2px)}.treatment-card-stripe{background:var(--trt-color);opacity:.18;height:4px}.treatment-card-header{justify-content:space-between;align-items:center;padding:.65rem .85rem .25rem;display:flex}.treatment-card-seq{color:var(--text-muted);letter-spacing:.08em;font-family:JetBrains Mono,monospace;font-size:.6rem}.treatment-card-status{letter-spacing:.1em;text-transform:uppercase;color:var(--trt-color);background:var(--trt-color);font-family:JetBrains Mono,monospace;font-size:.55rem}@supports (color:color-mix(in lab, red, red)){.treatment-card-status{background:color-mix(in srgb, var(--trt-color) 12%, transparent)}}.treatment-card-status{border:1px solid var(--trt-color)}@supports (color:color-mix(in lab, red, red)){.treatment-card-status{border:1px solid color-mix(in srgb, var(--trt-color) 30%, transparent)}}.treatment-card-status{border-radius:20px;padding:.15rem .5rem}.treatment-card-name{color:var(--text-primary);padding:.2rem .85rem .4rem;font-family:Cormorant Garamond,serif;font-size:1rem;font-weight:600;line-height:1.25}.treatment-card-date{color:var(--text-muted);align-items:center;gap:.3rem;padding:0 .85rem .5rem;font-family:JetBrains Mono,monospace;font-size:.6rem;display:flex}.treatment-card-procs{border-top:1px solid var(--border-light);flex-direction:column;flex:1;gap:.28rem;margin:0;padding:.4rem .85rem;list-style:none;display:flex}.treatment-card-proc-item{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.4rem;font-size:.75rem;display:flex;overflow:hidden}.treatment-card-proc-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.treatment-card-proc-more{color:var(--text-muted);padding-left:1rem;font-size:.65rem;font-style:italic}.treatment-card-proc-empty{color:var(--text-muted);font-size:.75rem;font-style:italic}.treatment-card-footer{border-top:1px solid var(--border-light);background:var(--trt-color);justify-content:space-between;align-items:center;padding:.5rem .85rem;display:flex}@supports (color:color-mix(in lab, red, red)){.treatment-card-footer{background:color-mix(in srgb, var(--trt-color) 5%, var(--bg-card))}}.treatment-card-footer{margin-top:auto}.treatment-card-total-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,monospace;font-size:.6rem}.treatment-card-total-value{color:var(--trt-color);font-variant-numeric:tabular-nums;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:600}@media (max-width:640px){.treatment-cards-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}.modules-menu-btn:hover,.modules-menu-btn[aria-expanded=true]{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.modules-menu-btn[aria-expanded=true] .rmb-icon{transform:rotate(0)}.sales-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:.75rem 1.25rem;margin-bottom:.5rem;padding:1rem 0 .5rem;display:flex}.sales-filter-group{flex-direction:column;gap:.3rem;min-width:0;display:flex}.sales-filter-label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.52rem}.sales-filter-select{background:var(--bg-surface);border:1px solid var(--border-light);height:32px;color:var(--text-primary);cursor:pointer;border-radius:4px;min-width:150px;padding:0 .65rem;font-family:DM Sans,sans-serif;font-size:.8rem;transition:border-color .15s}.sales-filter-select:focus{border-color:var(--accent-blue);outline:none}.sales-status-combobox{min-width:220px;position:relative}.sales-status-trigger{background:var(--bg-surface);border:1px solid var(--border-light);width:100%;height:32px;color:var(--text-primary);cursor:pointer;border-radius:4px;justify-content:space-between;align-items:center;gap:.5rem;padding:0 .65rem;font-family:DM Sans,sans-serif;font-size:.8rem;transition:border-color .15s;display:flex}.sales-status-trigger:focus{border-color:var(--accent-blue);outline:none}.sales-status-dropdown{z-index:30;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:6px;width:100%;max-height:215px;padding:.35rem;position:absolute;top:calc(100% + .35rem);left:0;overflow-y:auto;box-shadow:0 10px 30px #00000040}.sales-status-option{color:var(--text-primary);cursor:pointer;border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .45rem;font-family:DM Sans,sans-serif;font-size:.78rem;display:flex}.sales-status-option:hover{background:var(--accent-dim)}.sales-status-option input[type=checkbox]{accent-color:var(--accent-blue)}.sales-status-dropdown::-webkit-scrollbar{width:4px}.sales-status-dropdown::-webkit-scrollbar-track{background:0 0}.sales-status-dropdown::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.sales-filter-input{background:var(--bg-surface);border:1px solid var(--border-light);height:32px;color:var(--text-primary);border-radius:4px 0 0 4px;min-width:200px;padding:0 .65rem;font-family:DM Sans,sans-serif;font-size:.8rem;transition:border-color .15s}.sales-filter-input:focus{border-color:var(--accent-blue);outline:none}.sales-filter-search-row{align-items:stretch;display:flex}.sales-filter-search-btn{background:var(--accent-blue);color:#fff;cursor:pointer;border:none;border-radius:0 4px 4px 0;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:opacity .15s;display:inline-flex}.sales-filter-search-btn:hover{opacity:.85}.sales-type-toggle{border:1px solid var(--border-light);border-radius:4px;display:flex;overflow:hidden}.sales-type-btn{background:var(--bg-surface);border:none;border-right:1px solid var(--border-light);height:32px;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;padding:0 .75rem;font-family:JetBrains Mono,monospace;font-size:.58rem;transition:all .15s}.sales-type-btn:last-child{border-right:none}.sales-type-btn:hover{background:var(--accent-dim);color:var(--text-primary)}.sales-type-btn--active{background:var(--accent);color:#fff}.sales-type-btn--active:hover{background:var(--accent);opacity:.88}.sales-card-owner{align-items:center;gap:.4rem;padding:.1rem .85rem 0;display:flex}.sales-card-owner-badge{letter-spacing:.12em;text-transform:uppercase;border-radius:2px;flex-shrink:0;padding:1px 4px;font-family:JetBrains Mono,monospace;font-size:.48rem}.sales-card-owner-badge--patient{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d}.sales-card-owner-badge--eval{color:#fbbf24;background:#f59e0b1f;border:1px solid #f59e0b4d}.sales-card-owner-name{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:500;overflow:hidden}@media (max-width:480px){.header-brand-text{display:none}}@media (max-width:600px){.site-header>div{gap:.5rem;padding:.6rem .75rem}nav{gap:.4rem!important}.registry-menu-btn,.modules-menu-btn,.theme-toggle,.patient-menu-btn,.cal-header-btn{width:30px;height:30px}}@media (max-width:640px){.sales-filters{flex-direction:column;align-items:stretch}.sales-filter-input{flex:1;min-width:0}.sales-filter-select{width:100%;min-width:0}}.pr-page{flex-direction:column;gap:0;padding-top:0;display:flex}.pr-form-card{background:var(--bg-surface);border-bottom:1px solid var(--border);position:relative}.pr-form-card:after{content:"";background:linear-gradient(90deg, var(--accent) 0%, var(--accent-blue) 50%, transparent 80%);opacity:.5;height:1px;position:absolute;bottom:0;left:0;right:0}.pr-sqbtn{letter-spacing:.14em;text-transform:uppercase;min-width:52px;min-height:52px;color:var(--accent);border:1px solid var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:.5rem;font-family:JetBrains Mono,monospace;font-size:.5rem;text-decoration:none;transition:all .15s;display:inline-flex}.pr-sqbtn:hover{background:var(--accent-dim);box-shadow:0 0 14px var(--accent-dim)}.pr-sqbtn--save{color:#fff;background:var(--accent);border-color:var(--accent)}.pr-sqbtn--save:hover{background:var(--accent-bright);border-color:var(--accent-bright);box-shadow:0 4px 18px var(--shadow-accent);color:#fff}.pr-section-strip{background:var(--bg-base);border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:.55rem 1.5rem;display:flex}.pr-section-icon{color:var(--text-muted);flex-shrink:0;align-items:center;display:flex}.pr-section-label{letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.5rem}.pr-form-grid{grid-template-columns:auto 1fr 1fr 1fr;align-items:start;gap:1rem 1.25rem;padding:1.25rem 1.5rem;display:grid}.pr-form-field{flex-direction:column;gap:.4rem;display:flex}.pr-form-field--wide{grid-column:span 2}.pr-form-field--left-half{grid-column:1/3}.pr-form-field--right-half{grid-column:3/5}@media (max-width:980px){.pr-form-field--left-half,.pr-form-field--right-half{grid-column:span 4}}.pr-type-toggle{background:var(--bg-base);border:1px solid var(--border-light);align-items:center;gap:1.1rem;padding:.62rem .875rem;display:flex}.pr-type-option{cursor:pointer;color:var(--text-secondary);white-space:nowrap;align-items:center;gap:.4rem;font-family:DM Sans,sans-serif;font-size:.875rem;font-weight:300;transition:color .15s;display:flex}.pr-type-option input[type=radio]{accent-color:var(--accent);cursor:pointer}.pr-type-option:has(input:checked) span{color:var(--text-primary);font-weight:500}.pr-table-section{padding:1rem 1.5rem 2rem}.pr-week-bar{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.pr-week-label{letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.5625rem}.pr-week-select{background:var(--bg-card);border:1px solid var(--border-light);color:var(--text-primary);cursor:pointer;border-radius:4px;outline:none;min-width:240px;padding:.4rem .75rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;transition:border-color .15s}.pr-week-select:focus{border-color:var(--accent-blue)}.pr-filter-bar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.pr-filter-left,.pr-filter-right{align-items:center;gap:.6rem;display:flex}.pr-filter-label{letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.5rem}.pr-filter-input-wrap{position:relative}.pr-filter-input{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);border-radius:4px;outline:none;width:200px;padding:.4rem .75rem .4rem 2rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;transition:border-color .15s,box-shadow .15s}.pr-filter-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-dim)}.pr-filter-input::placeholder{color:var(--text-muted)}.pr-filter-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.6rem;transform:translateY(-50%)}.pr-show-select{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:4px;outline:none;padding:.4rem .6rem;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:300;transition:border-color .15s}.pr-show-select:focus{border-color:var(--accent-blue)}.pr-table-wrap{background:var(--bg-surface);border:1px solid var(--border);position:relative;overflow:visible}.pr-table{border-collapse:collapse;width:100%;font-size:.8125rem}.pr-th{letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-base);text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:.6rem .875rem;font-family:JetBrains Mono,monospace;font-size:.5rem}.pr-th--sort{color:var(--text-secondary)}.pr-sort-arrow{color:var(--accent);margin-left:3px}.pr-th--actions{text-align:center;width:60px}.pr-tr{border-bottom:1px solid var(--border);transition:background .1s}.pr-tr:last-child{border-bottom:none}.pr-tr:hover{background:var(--bg-card-hover)}.pr-td{color:var(--text-secondary);vertical-align:middle;padding:.65rem .875rem;font-weight:300}.pr-td--mono{letter-spacing:.04em;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:.75rem}.pr-td--value{letter-spacing:.03em;color:var(--text-primary);white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:.8125rem}.pr-td--desc{max-width:160px;color:var(--text-muted);font-size:.75rem}.pr-td--actions{text-align:center;padding:.4rem .5rem}.pr-patient-link{color:var(--accent-blue);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:.8125rem;text-decoration:none;transition:color .15s}.pr-patient-link:hover{color:var(--text-primary);text-decoration:underline}.pr-plan-name{color:var(--text-secondary);font-size:.8125rem}.pr-dash{color:var(--text-muted)}.pr-badge{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:2px;align-items:center;padding:.2rem .5rem;font-family:JetBrains Mono,monospace;font-size:.5rem;display:inline-flex}.pr-badge--person-pf{background:var(--accent-blue-dim);color:var(--accent-blue);border:1px solid #3ab8e840}.pr-badge--person-pj{color:#a990f0;background:#9370db1f;border:1px solid #9370db40}.pr-badge--person-plano{color:#e5a800;background:#ffb4001a;border:1px solid #ffb40038}.pr-badge--status-pendente{color:#e5940a;background:#ffa0281f;border:1px solid #ffa02840}.pr-badge--status-lancado{background:var(--accent-green-dim);color:var(--accent-green);border:1px solid #4dc95740}.pr-badge--nf-nao_enviado{color:var(--accent-blue);background:#3ab8e81a;border:1px solid #3ab8e838}.pr-badge--nf-em_processamento{color:#e5a800;background:#ffb4001a;border:1px solid #ffb40038}.pr-badge--nf-erro{background:var(--error-dim);color:var(--error-text);border:1px solid #e05a5a40}.pr-badge--nf-criado{background:var(--accent-green-dim);color:var(--accent-green);border:1px solid #4dc95740}.pr-actions-wrap{justify-content:center;display:inline-flex;position:relative}.pr-actions-btn{border:1px solid var(--border);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:3px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.pr-actions-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--accent-blue-dim)}.pr-actions-dropdown{background:var(--bg-card);border:1px solid var(--border);z-index:100;opacity:0;pointer-events:none;border-radius:6px;width:170px;transition:opacity .18s,transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;transform:translateY(-6px)scale(.97);box-shadow:0 8px 24px #0006,0 0 0 1px #ffffff08,inset 0 1px #ffffff0a}.pr-actions-dropdown:before{content:"";background:linear-gradient(90deg, var(--accent) 0%, var(--accent-blue) 100%);opacity:.6;height:2px;position:absolute;top:0;left:0;right:0}.pr-actions-dropdown[data-open=true]{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.pr-table tbody tr:nth-last-child(-n+3) .pr-actions-dropdown{top:auto;bottom:calc(100% + 6px);transform:translateY(6px)scale(.97)}.pr-table tbody tr:nth-last-child(-n+3) .pr-actions-dropdown[data-open=true]{transform:translateY(0)scale(1)}.pr-action-item{letter-spacing:.1em;text-transform:uppercase;width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.6rem;padding:.55rem .875rem;font-family:JetBrains Mono,monospace;font-size:.5625rem;text-decoration:none;transition:background .12s,color .12s;display:flex;position:relative}.pr-action-item:before{content:"";background:var(--accent);width:0;transition:width .15s;position:absolute;top:0;bottom:0;left:0}.pr-action-item:hover{background:var(--accent-dim);color:var(--text-primary)}.pr-action-item:hover:before{width:2px}.pr-action-item--danger{color:var(--error-text)}.pr-action-item--danger:hover{background:var(--error-dim);color:var(--error)}.pr-action-item--danger:hover:before{background:var(--error)}.pr-action-item--blue{color:var(--accent-blue)}.pr-action-item--blue:hover{background:var(--accent-blue-dim);color:var(--accent-blue)}.pr-action-item--blue:hover:before{background:var(--accent-blue)}.pr-attached-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-left:auto}.pr-empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;font-family:DM Sans,sans-serif;font-size:.875rem;font-weight:300;display:flex}.pr-modal-backdrop{z-index:500;-webkit-backdrop-filter:blur(4px);background:#070f1abf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.pr-modal-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;width:100%;max-width:440px;position:relative;overflow:hidden;box-shadow:0 24px 48px #0009,0 0 0 1px #ffffff0a,inset 0 1px #ffffff0d}.pr-modal-panel:before{content:"";background:linear-gradient(90deg, var(--accent-blue) 0%, var(--accent) 100%);height:2px;position:absolute;top:0;left:0;right:0}.pr-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:1.1rem 1.5rem .9rem;display:flex}.pr-modal-title{color:var(--text-primary);margin:2px 0 0;font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:500;line-height:1}.pr-modal-close{border:1px solid var(--border-light);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;transition:all .15s;display:flex}.pr-modal-close:hover{border-color:var(--error);color:var(--error);background:var(--error-dim)}.pr-modal-footer{border-top:1px solid var(--border);background:var(--bg-base);justify-content:flex-end;gap:.5rem;padding:.875rem 1.5rem 1.25rem;display:flex}[data-theme=light] .pr-badge--person-pj{color:#6b46c1;background:#6b46c114;border-color:#6b46c133}[data-theme=light] .pr-badge--person-plano{color:#b07800;background:#ffb40014;border-color:#ffb40033}[data-theme=light] .pr-badge--status-pendente{color:#c47a00;background:#ffa02814;border-color:#ffa02833}[data-theme=light] .pr-badge--nf-em_processamento{color:#b07800;background:#ffb40014;border-color:#ffb40033}.mv-report-wrap{background:var(--bg-surface);border:1px solid var(--border);overflow-x:auto}.mv-report-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:.75rem}.mv-th{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-base);text-align:right;border-bottom:2px solid var(--border);border-right:1px solid var(--border);z-index:1;padding:.55rem .75rem;font-family:JetBrains Mono,monospace;font-size:.5rem;position:sticky;top:0}.mv-th--label{text-align:left;min-width:110px}.mv-th--cat{text-align:left;min-width:170px}.mv-th--num{min-width:80px}.mv-th--avg{color:var(--text-secondary);border-left:2px solid var(--border);min-width:90px}.mv-td{border-bottom:1px solid var(--border);border-right:1px solid var(--border);vertical-align:middle;padding:.45rem .75rem}.mv-td--grupo{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:.625rem}.mv-td--cat{color:var(--text-secondary);font-weight:300}.mv-td--num{text-align:right;letter-spacing:.02em;color:var(--accent-blue);font-family:JetBrains Mono,monospace}.mv-td--zero{text-align:right;color:var(--text-muted);font-family:JetBrains Mono,monospace}.mv-td--avg{text-align:right;letter-spacing:.02em;background:var(--bg-base);color:var(--text-secondary);border-left:2px solid var(--border);font-family:JetBrains Mono,monospace}.mv-tr--type--rec .mv-td--grupo,.mv-tr--type--rec .mv-td--cat,.mv-tr--type--expense .mv-td--grupo,.mv-tr--type--expense .mv-td--cat{background:var(--bg-base)}.mv-tr--subtotal td{border-bottom:2px solid var(--border);font-weight:500}.mv-tr--subtotal--rec td{background:var(--accent-green-dim)}.mv-tr--subtotal--rec .mv-td--num,.mv-tr--subtotal--rec .mv-td--subtotal-label,.mv-tr--subtotal--rec .mv-td--avg{color:var(--accent-green)}.mv-tr--subtotal--expense td{background:var(--error-dim)}.mv-tr--subtotal--expense .mv-td--num,.mv-tr--subtotal--expense .mv-td--subtotal-label,.mv-tr--subtotal--expense .mv-td--avg{color:var(--error-text)}.mv-tr--total-despesas td{background:var(--error-strong-dim);border-bottom:2px solid var(--border);font-weight:600}.mv-tr--total-despesas .mv-td--num,.mv-tr--total-despesas .mv-td--subtotal-label,.mv-tr--total-despesas .mv-td--avg{color:var(--error-strong)}.mv-tr--lucro td{background:var(--accent-green-dim);border-bottom:2px solid var(--border);font-weight:600}.mv-tr--lucro .mv-td--subtotal-label{color:var(--accent-green)}.mv-td--lucro-pos{color:var(--accent-green)!important}.mv-td--lucro-neg{color:var(--error-strong)!important}.mv-tr--spacer td{background:var(--bg-base);border:none;height:.875rem}.mv-tr--patients td{background:var(--bg-base);border-bottom:none}.mv-tr--patients .mv-td--num{color:var(--text-secondary)}.mv-tr--patients .mv-td--subtotal-label,.mv-tr--patients .mv-td--avg{color:var(--text-muted)}.mv-td--subtotal-label{letter-spacing:.14em;text-transform:uppercase;padding-left:.875rem;font-family:JetBrains Mono,monospace;font-size:.5625rem}[data-theme=light] .mv-tr--subtotal--rec .mv-td--num,[data-theme=light] .mv-tr--subtotal--rec .mv-td--subtotal-label,[data-theme=light] .mv-tr--subtotal--rec .mv-td--avg{color:var(--accent-green)}[data-theme=light] .mv-tr--subtotal--expense .mv-td--num,[data-theme=light] .mv-tr--subtotal--expense .mv-td--subtotal-label,[data-theme=light] .mv-tr--subtotal--expense .mv-td--avg{color:var(--error)}.auth-body{background-color:var(--bg-base);background-image:radial-gradient(circle, var(--dot-color) 1px, transparent 1px);background-size:28px 28px;justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-wrapper{justify-content:center;align-items:center;width:100%;padding:2rem 1rem;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border);width:100%;max-width:24rem;box-shadow:0 8px 40px var(--shadow-dark);border-radius:1rem;padding:2.5rem 2rem}.auth-brand{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.auth-logo{flex-shrink:0;width:52px;height:52px}.auth-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .125rem;font-size:.6875rem}.auth-title{color:var(--text-primary);letter-spacing:.01em;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.375rem;font-weight:400}.auth-alert{background:var(--error-dim);border:1px solid var(--error);color:var(--error-text);border-radius:.5rem;margin-bottom:1.25rem;padding:.625rem .875rem;font-size:.8125rem}.auth-form{flex-direction:column;gap:1.25rem;display:flex}.auth-field{flex-direction:column;gap:.375rem;display:flex}.auth-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:.75rem;font-weight:500}.auth-input{background:var(--bg-surface);border:1px solid var(--border);color:var(--text-primary);border-radius:.5rem;width:100%;padding:.625rem .875rem;font-family:DM Sans,system-ui,sans-serif;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}.auth-input::placeholder{color:var(--text-muted)}.auth-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-dim);outline:none}.auth-submit{background:var(--accent);color:#fff;cursor:pointer;letter-spacing:.02em;border:none;border-radius:.5rem;width:100%;margin-top:.5rem;padding:.75rem 1.5rem;font-family:DM Sans,system-ui,sans-serif;font-size:.9375rem;font-weight:500;transition:background .15s,transform .1s}.auth-submit:hover{background:var(--accent-bright);transform:translateY(-1px)}.auth-submit:active{transform:translateY(0)}.user-menu-btn{position:relative}.user-menu-panel{min-width:14rem;left:auto;right:0}.registry-item--danger,.registry-item--danger .ri-icon{color:var(--error)}.registry-item--danger:hover{background:var(--error-dim);color:var(--error-text)}.user-avatar{background:var(--accent-dim);border:1px solid var(--border);width:2.25rem;height:2.25rem;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:DM Sans,system-ui,sans-serif;font-size:.875rem;font-weight:600;display:flex}.user-role-badge{letter-spacing:.1em;text-transform:uppercase;border:1px solid;border-radius:9999px;align-items:center;padding:.2rem .5rem;font-size:.625rem;font-weight:600;display:inline-flex}.user-role-badge--admin{border-color:var(--accent);color:var(--accent);background:#4dc9571f}.user-role-badge--socios{background:var(--accent-blue-dim);border-color:var(--accent-blue);color:var(--accent-blue)}.user-role-badge--staff{color:#e0965a;background:#e0965a1f;border-color:#e0965a}.user-role-badge--secretaria{color:#b482dc;background:#b482dc1f;border-color:#b482dc}.btn-icon{width:1.75rem;height:1.75rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.375rem;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-icon:hover{background:var(--bg-card-hover);border-color:var(--border);color:var(--text-primary)}.btn-icon--danger:hover{background:var(--error-dim);border-color:var(--error);color:var(--error-text)}.registry-tag{letter-spacing:.04em;background:var(--accent-blue-dim);border:1px solid var(--border);color:var(--text-secondary);border-radius:9999px;align-items:center;padding:.15rem .5rem;font-size:.6875rem;font-weight:500;display:inline-flex}.field-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236AAECB' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.25rem}.form-error-banner{background:var(--error-dim);border:1px solid var(--error);color:var(--error-text);border-radius:.5rem;padding:.75rem 1rem;font-size:.8125rem}.form-error-banner p{margin:0;line-height:1.6}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}