/* CenterBuddy - Production CSS */
*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
::before,::after{--tw-content:''}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal}
body{margin:0;line-height:inherit}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}
a{color:inherit;text-decoration:inherit}
button,input,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}
button{text-transform:none;background-color:transparent;background-image:none}
img,svg{display:block;vertical-align:middle}
img{max-width:100%;height:auto}
input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}
button{cursor:pointer}
:disabled{cursor:default}
h1,h2,h3,h4,h5,h6{font-family:Public Sans,sans-serif;font-weight:600}
.font-display{font-family:Public Sans,sans-serif;font-weight:700}
.font-label-md,.font-label-sm{font-family:Inter,sans-serif}
.font-body-md,.font-body-lg,.font-body-sm{font-family:Inter,sans-serif}

/* Color Variables */
:root{
  --background:#f8f9fa;
  --surface-container-lowest:#ffffff;
  --surface-container-high:#e7e8e9;
  --surface-container:#edeeef;
  --surface-container-low:#f3f4f5;
  --surface-container-highest:#e1e3e4;
  --surface-dim:#d9dadb;
  --primary:#004655;
  --primary-container:#005f73;
  --on-primary:#ffffff;
  --on-primary-container:#91d7ee;
  --secondary:#845400;
  --secondary-container:#ffa91e;
  --on-secondary:#ffffff;
  --on-secondary-container:#6a4300;
  --tertiary:#004749;
  --tertiary-container:#006163;
  --on-tertiary:#ffffff;
  --on-tertiary-container:#72dde0;
  --error:#ba1a1a;
  --error-container:#ffdad6;
  --on-error:#ffffff;
  --on-error-container:#93000a;
  --on-surface:#191c1d;
  --on-surface-variant:#3f484c;
  --outline-variant:#bfc8cc;
  --primary-fixed:#b2ebff;
  --primary-fixed-dim:#8bd1e8;
  --secondary-fixed:#ffddb6;
  --secondary-fixed-dim:#ffb95a;
  --inverse-surface:#2e3132;
  --inverse-on-surface:#f0f1f2;
  --inverse-primary:#8bd1e8;
}

.dark{
  --background:#191c1d;
  --surface-container-lowest:#2e3132;
  --surface-container-high:#3f484c;
  --surface-container:#3f484c;
  --surface-container-low:#2e3132;
  --surface-container-highest:#191c1d;
  --surface-dim:#191c1d;
  --on-surface:#f0f1f2;
  --on-surface-variant:#e1e3e4;
}

/* Base Styles */
body{background-color:var(--background);color:var(--on-surface);font-family:Inter,sans-serif;font-size:16px;line-height:24px}
.bg-background{background-color:var(--background)}
.bg-surface{background-color:var(--surface-container-low)}
.bg-surface-container-low{background-color:var(--surface-container-low)}
.bg-surface-container-lowest{background-color:var(--surface-container-lowest)}
.bg-surface-container-high{background-color:var(--surface-container-high)}
.bg-surface-container-highest{background-color:var(--surface-container-highest)}
.bg-surface-dim{background-color:var(--surface-dim)}
.bg-primary{background-color:var(--primary)}
.bg-primary-container{background-color:var(--primary-container)}
.bg-secondary{background-color:var(--secondary)}
.bg-secondary-container{background-color:var(--secondary-container)}
.bg-tertiary{background-color:var(--tertiary)}
.bg-tertiary-container{background-color:var(--tertiary-container)}
.bg-error{background-color:var(--error)}
.bg-error-container{background-color:var(--error-container)}
.bg-primary-fixed{background-color:var(--primary-fixed)}
.bg-secondary-fixed{background-color:var(--secondary-fixed)}
.bg-inverse-surface{background-color:var(--inverse-surface)}

.text-on-surface{color:var(--on-surface)}
.text-on-surface-variant{color:var(--on-surface-variant)}
.text-on-primary{color:var(--on-primary)}
.text-on-primary-container{color:var(--on-primary-container)}
.text-on-secondary{color:var(--on-secondary)}
.text-on-secondary-container{color:var(--on-secondary-container)}
.text-on-tertiary{color:var(--on-tertiary)}
.text-on-tertiary-container{color:var(--on-tertiary-container)}
.text-on-error{color:var(--on-error)}
.text-on-error-container{color:var(--on-error-container)}
.text-primary{color:var(--primary)}
.text-secondary{color:var(--secondary)}
.text-tertiary{color:var(--tertiary)}
.text-error{color:var(--error)}

.border-outline-variant{border-color:var(--outline-variant)}
.border-primary{border-color:var(--primary)}
.border-error{border-color:var(--error)}

.rounded-full{border-radius:9999px}
.rounded-xl{border-radius:0.75rem}
.rounded-lg{border-radius:0.5rem}
.rounded-md{border-radius:0.375rem}

.px-gutter{padding-left:24px;padding-right:24px}
.py-gutter{padding-top:24px;padding-bottom:24px}
.p-md{padding:24px}
.p-sm{padding:12px}
.p-lg{padding:24px}
.p-xs{padding:4px}
.py-xs{padding-top:4px;padding-bottom:4px}
.px-xs{padding-left:4px;padding-right:4px}
.py-sm{padding-top:12px;padding-bottom:12px}
.px-sm{padding-left:12px;padding-right:12px}
.px-md{padding-left:24px;padding-right:24px}
.py-md{padding-top:24px;padding-bottom:24px}
.plg{padding-left:24px}
.prg{padding-right:24px}
.pl-md{padding-left:24px}
.pr-md{padding-right:24px}
.m-md{margin:24px}
.mt-md{margin-top:24px}
.mb-md{margin-bottom:24px}
.mb-xs{margin-bottom:4px}
.mb-sm{margin-bottom:12px}
.mb-lg{margin-bottom:40px}
.mb-xl{margin-bottom:64px}
.mt-lg{margin-top:40px}
.mt-auto{margin-top:auto}
.mx-auto{margin-left:auto;margin-right:auto}
.gap-sm{gap:12px}
.gap-md{gap:24px}
.gap-xs{gap:4px}
.gap-lg{gap:40px}
.ml-gutter{margin-left:24px}
.ml-lg{margin-left:40px}
.ml-sm{margin-left:12px}
.ml-md{margin-left:24px}
.ml-auto{margin-left:auto}
.mr-sm{margin-right:12px}
.mr-md{margin-right:24px}
.mr-gutter{margin-right:24px}
.mb-base{margin-bottom:8px}
.mt-base{margin-top:8px}
.mt-xs{margin-top:4px}
.gap-base{gap:8px}
.gap-lg{gap:40px}

.flex{display:flex}
.inline-flex{display:inline-flex}
.grid{display:grid}
.hidden{display:none}
.block{display:block}
.inline-block{display:inline-block}
.shrink-0{flex-shrink:0}
.flex-col{flex-direction:column}
.flex-row{flex-direction:row}
.flex-wrap{flex-wrap:wrap}
.items-center{align-items:center}
.items-start{align-items:flex-start}
.items-end{align-items:flex-end}
.justify-center{justify-content:center}
.justify-between{justify-content:space-between}
.justify-end{justify-content:flex-end}
.flex-1{flex:1 1 0%}
.flex-grow{flex-grow:1}
.flex-shrink-0{flex-shrink:0}
.flex-wrap{flex-wrap:wrap}
.gap-0{gap:0}
.gap-1{gap:0.25rem}
.gap-2{gap:0.5rem}
.gap-3{gap:0.75rem}
.gap-4{gap:1rem}
.gap-5{gap:1.25rem}
.gap-6{gap:1.5rem}
.gap-8{gap:2rem}
.space-y-3>*{margin-top:0.75rem}
.space-y-4>*{margin-top:1rem}
.space-y-md>*{margin-top:24px}
.space-y-sm>*{margin-top:12px}
.space-y-xs>*{margin-top:4px}
.space-y-lg>*{margin-top:40px}

.w-full{width:100%}
.w-auto{width:auto}
.min-h-screen{min-height:100vh}
.h-20{height:5rem}
.h-16{height:4rem}
.h-32{height:8rem}
.h-48{height:12rem}
.h-64{height:16rem}
.h-80{height:20rem}
.h-96{height:24rem}
.h-auto{height:auto}
.h-full{height:100%}
.h-screen{height:100vh}
.max-w-md{max-width:28rem}
.max-w-lg{max-width:32rem}
.max-w-2xl{max-width:42rem}
.max-w-3xl{max-width:48rem}
.max-w-4xl{max-width:56rem}
.max-w-container-max{max-width:1280px}
.max-w-xl{max-width:36rem}
.max-w-xs{max-width:20rem}
.max-h-\[calc\(100vh-300px\)\]{max-height:calc(100vh - 300px)}
.max-h-\[calc\(100vh-80px\)\]{max-height:calc(100vh - 80px)}
.aspect-square{aspect-ratio:1/1}
.aspect-video{aspect-ratio:16/9}

.top-0{top:0}
.top-4{top:1rem}
.top-md{top:24px}
.right-0{right:0}
.right-4{right:1rem}
.right-sm{right:12px}
.bottom-0{bottom:0}
.bottom-2{bottom:0.5rem}
.bottom-md{bottom:24px}
.left-0{left:0}
.left-2{left:0.5rem}
.left-4{left:1rem}
.left-md{left:24px}
.left-1\/3{left:33.333333%}
.left-2\/3{left:66.666667%}
.top-1\/4{top:25%}
.top-1\/2{top:50%}
.z-10{z-index:10}
.z-20{z-index:20}
.z-40{z-index:40}
.z-50{z-index:50}
.-z-10{z-index:-10}

.absolute{position:absolute}
.relative{position:relative}
.sticky{position:sticky}
.fixed{position:fixed}
.inset-0{top:0;right:0;bottom:0;left:0}

.overflow-hidden{overflow:hidden}
.overflow-y-auto{overflow-y:auto}
.overflow-x-auto{overflow-x:auto}

.cursor-pointer{cursor:pointer}

.transition-all{transition:all 150ms}
.transition-colors{transition:color 150ms,background-color 150ms,border-color 150ms}
.transition-transform{transform 150ms}
.transition-opacity{opacity 150ms}
.duration-300{transition-duration:300ms}
.duration-500{transition-duration:500ms}
.duration-700{transition-duration:700ms}

.transform{transform:translateX(var(--tw-translate-x,0)) translateY(var(--tw-translate-y,0)) rotate(var(--tw-rotate,0)) skewX(var(--tw-skew-x,0)) skewY(var(--tw-skew-y,0)) scaleX(var(--tw-scale-x,1)) scaleY(var(--tw-scale-y,1))}
.scale-95{transform:scale(.95)}
.scale-98{transform:scale(.98)}
.hover\:scale-105:hover{transform:scale(1.05)}
.hover\:scale-110:hover{transform:scale(1.1)}
.hover\:translate-x-1:hover{transform:translateX(0.25rem)}
.hover\:shadow-md:hover{box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1)}
.active\:scale-90:active{transform:scale(.9)}
.active\:opacity-80:active{opacity:0.8}
.group-hover\:scale-105:hover{transform:scale(1.05)}
.group-hover\:scale-110:hover{transform:scale(1.1)}
.group-hover\:border-primary\/50:hover{border-color:rgba(0,70,85,0.5)}
.group-hover\:text-primary:hover{color:var(--primary)}
.group:hover .group-hover\:shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1)}

.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05)}
.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1),0 2px 4px -2px rgb(0 0 0 / 0.1)}
.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1),0 4px 6px -4px rgb(0 0 0 / 0.1)}
.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1),0 8px 10px -6px rgb(0 0 0 / 0.1)}
.shadow-2xl{box-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25)}
.shadow-none{box-shadow:none}
.dark\:shadow-none{box-shadow:none}

.border{border-width:1px}
.border-b{border-bottom-width:1px}
.border-t{border-top-width:1px}
.border-l{border-left-width:1px}
.border-r{border-right-width:1px}
.border-t-2{border-top-width:2px}
.border-t-4{border-top-width:4px}
.border-l-4{border-left-width:4px}
.border-\[1px\]{border-width:1px}
.border-outline-variant\/10{border-color:rgba(191,200,204,0.1)}
.border-outline-variant\/20{border-color:rgba(191,200,204,0.2)}
.border-outline-variant\/30{border-color:rgba(191,200,204,0.3)}
.border-white\/20{border-color:rgba(255,255,255,0.2)}
.border-white\/30{border-color:rgba(255,255,255,0.3)}
.border-black\/40{border-color:rgba(0,0,0,0.4)}
.border-black\/50{border-color:rgba(0,0,0,0.5)}
.border-black\/80{border-color:rgba(0,0,0,0.8)}
.border-primary\/20{border-color:rgba(0,70,85,0.2)}
.border-error\/20{border-color:rgba(186,26,26,0.2)}

.ring-1{box-shadow:0 0 0 1px var(--tw-ring-color,currentColor)}

.focus\:outline-none:focus{outline:none}
.focus\:border-primary:focus{border-color:var(--primary)}
.focus\:border-primary:focus{outline:none}
.focus\:ring-1:focus{box-shadow:0 0 0 1px var(--primary)}
.focus\:ring-0:focus{box-shadow:none}

.text-display{font-size:3rem;line-height:3.5rem;letter-spacing:-0.02em;font-weight:700}
.text-headline-lg{font-size:2rem;line-height:2.5rem;letter-spacing:-0.01em;font-weight:600}
.text-headline-md{font-size:1.5rem;line-height:2rem;font-weight:600}
.text-headline-sm{font-size:1.25rem;line-height:1.75rem;font-weight:600}
.text-body-lg{font-size:1.125rem;line-height:1.75rem;font-weight:400}
.text-body-md{font-size:1rem;line-height:1.5rem;font-weight:400}
.text-body-sm{font-size:0.875rem;line-height:1.25rem;font-weight:400}
.text-label-md{font-size:0.875rem;line-height:1rem;letter-spacing:0.01em;font-weight:600}
.text-label-sm{font-size:0.75rem;line-height:1rem;letter-spacing:0.04em;font-weight:500}

.font-bold{font-weight:700}
.font-semibold{font-weight:600}
.font-medium{font-weight:500}
.font-normal{font-weight:400}

.uppercase{text-transform:uppercase}
.lowercase{text-transform:lowercase}
.capitalize{text-transform:capitalize}
.italic{font-style:italic}
.tracking-wider{letter-spacing:0.05em}
.tracking-widest{letter-spacing:0.1em}
.leading-tight{line-height:1.25}
.line-through{text-decoration:line-through}

.text-center{text-align:center}
.text-left{text-align:left}
.text-right{text-align:right}
.align-middle{vertical-align:middle}

.whitespace-nowrap{white-space:nowrap}

.select-none{user-select:none}
.selection\:bg-primary-fixed::selection{background-color:var(--primary-fixed)}
.selection\:text-on-primary-fixed::selection{color:var(--on-primary-fixed)}

.opacity-80{opacity:0.8}
.opacity-60{opacity:0.6}
.opacity-50{opacity:0.5}
.opacity-40{opacity:0.4}
.opacity-30{opacity:0.3}
.opacity-20{opacity:0.2}
.opacity-10{opacity:0.1}
.opacity-0{opacity:0}

.pointer-events-none{pointer-events:none}
.pointer-events-auto{pointer-events:auto}

.bg-none{background-image:none}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}
.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}
.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}
.from-primary{--tw-gradient-from:var(--primary);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-primary\/10{--tw-gradient-from:rgba(0,70,85,0.1);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-primary\/20{--tw-gradient-from:rgba(0,70,85,0.2);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-secondary{--tw-gradient-from:var(--secondary);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-secondary\/10{--tw-gradient-from:rgba(0,70,85,0.1);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-secondary\/20{--tw-gradient-from:rgba(0,70,85,0.2);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-primary-container{--tw-gradient-from:var(--primary-container);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-primary-container\/10{--tw-gradient-from:rgba(0,95,115,0.1);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-primary-container\/20{--tw-gradient-from:rgba(0,95,115,0.2);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-secondary-container{--tw-gradient-from:var(--secondary-container);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-secondary-container\/20{--tw-gradient-from:rgba(255,169,30,0.2);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-tertiary-container{--tw-gradient-from:var(--tertiary-container);--tw-gradient-to:rgb(0 70 85 / 0)}
.from-tertiary-container\/30{--tw-gradient-from:rgba(0,97,99,0.3);--tw-gradient-to:rgb(0 70 85 / 0)}
.to-primary-container{--tw-gradient-to:var(--primary-container)}
.to-primary-container\/20{--tw-gradient-to:rgba(0,95,115,0.2)}
.to-primary-container\/30{--tw-gradient-to:rgba(0,95,115,0.3)}
.to-secondary-container{--tw-gradient-to:var(--secondary-container)}
.to-primary{--tw-gradient-to:var(--primary)}
.to-tertiary-container{--tw-gradient-to:var(--tertiary-container)}
.to-primary\/5{--tw-gradient-to:rgba(0,70,85,0.05)}
.to-white\/50{--tw-gradient-to:rgba(255,255,255,0.5)}
.to-transparent{--tw-gradient-to:transparent}
.to-black\/40{--tw-gradient-to:rgba(0,0,0,0.4)}
.to-black\/80{--tw-gradient-to:rgba(0,0,0,0.8)}
.to-primary-fixed-dim{--tw-gradient-to:var(--primary-fixed-dim)}

.via-primary\/10{--tw-gradient-stops:var(--tw-gradient-from),rgba(0,70,85,0.1),var(--tw-gradient-to)}

.bg-cover{background-size:cover}
.bg-center{background-position:center}

.object-cover{object-fit:cover}
.object-contain{object-contain}

.backdrop-blur-md{backdrop-filter:blur(12px)}
.backdrop-blur-xl{backdrop-filter:blur(24px)}
.backdrop-blur-\[12px\]{backdrop-filter:blur(12px)}

.-skew-x-12{transform:skewX(-12deg)}

.animate-pulse{animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(1.05)}}

.animate-ping{animation:ping 1s cubic-bezier(0,0,0.2,1) infinite}
@keyframes ping{75%,100%{transform:scale(2);opacity:0}}

.animate-bounce{animation:bounce 1s infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-25%)}}

.material-symbols-outlined{font-family:'Material Symbols Outlined';font-weight:400;font-style:normal;font-variant:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:'liga';-webkit-font-smoothing:antialiased;display:inline-block;vertical-align:middle;overflow:hidden}
.material-symbols-outlined.fill-icon{font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24}

/* Dark mode */
.dark .text-primary-fixed-dim{color:var(--primary-fixed-dim)}
.dark .bg-surface-container\/70{background-color:rgba(62,72,76,0.7)}
.dark .border-outline\/10{border-color:rgba(111,121,124,0.1)}
.dark .text-surface-variant{color:var(--surface-variant)}
.dark .text-primary-fixed-dim{color:var(--primary-fixed-dim)}

/* Responsive */
@media(min-width:768px){.md\:flex{display:flex}.md\:block{display:block}.md\:hidden{display:none}.md\:grid{display:grid}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-7{grid-column:span 7/span 7}.md\:col-span-8{grid-column:span 8/span 8}.md\:col-span-12{grid-column:span 12/span 12}.md\:row-span-2{grid-row:span 2/span 2}.md\:w-auto{width:auto}.md\:w-80{width:20rem}.md\:text-left{text-align:left}.md\:h-\[calc\(100vh-80px\)\]{height:calc(100vh - 80px)}.md\:h-\[600px\]{height:600px}.md\:h-\[500px\]{height:500px}.md\:text-headline-lg{font-size:2rem;line-height:2.5rem}.md\:text-headline-lg-mobile{font-size:1.5rem;line-height:2rem}.md\:p-md{padding:24px}.md\:p-lg{padding:24px}.md\:pl-lg{padding-left:24px}.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\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-col{flex-direction:column}.md\:static{position:static}.md\:sticky{position:sticky}.md\:top-20{top:5rem}.md\:bottom-auto{bottom:auto}.md\:top-auto{top:auto}.md\:h-screen{height:100vh}}

@media(min-width:1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:block{display:block}.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:w-80{width:20rem}.lg\:grid{display:grid}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:justify-center{justify-content:center}.lg\:top-20{top:5rem}.lg\:static{position:static}.lg\:sticky{position:sticky}.lg\:p-lg{padding:24px}.lg\:gap-lg{gap:40px}.lg\:gap-md{gap:24px}.lg\:gap-xl{gap:64px}.lg\:flex-col{flex-direction:column}.lg\:flex-1{flex:1 1 0%}.lg\:h-\[calc\(100vh-80px\)\]{height:calc(100vh - 80px)}.lg\:top-\[104px\]{top:104px}.lg\:overflow-hidden{overflow:hidden}.lg\:flex-shrink-0{flex-shrink:0}.lg\:mb-xl{margin-bottom:64px}.lg\:mt-auto{margin-top:auto}.lg\:ml-xl{margin-left:40px}.lg\:text-right{text-align:right}.lg\:h-screen{height:100vh}}

/* Bottom safe area for mobile */
.pb-safe{padding-bottom:env(safe-area-inset-bottom)}

/* Glass card effect */
.glass-card{background:rgba(255,255,255,0.7);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.2);box-shadow:0 4px 20px rgba(0,95,115,0.05)}

/* Feed scrollbar */
.feed-scroll::-webkit-scrollbar{width:4px}.feed-scroll::-webkit-scrollbar-track{background:transparent}.feed-scroll::-webkit-scrollbar-thumb{background:#bfc8cc;border-radius:10px}

/* Custom scrollbar */
.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#bfc8cc;border-radius:10px}

/* Pulse ring animation */
.pulse-ring{animation:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(1.2)}}

/* Premium glow */
.premium-glow{box-shadow:0 0 40px rgba(132,84,0,0.1)}

/* Step active line */
.step-active::before{content:'';position:absolute;left:11px;top:32px;bottom:-8px;width:2px;background:repeating-linear-gradient(to bottom,#004655 0,#004655 4px,transparent 4px,transparent 8px)}

/* Ticker animation */
.ticker-wrap{overflow:hidden;white-space:nowrap}
.ticker-move{display:inline-block;animation:ticker 30s linear infinite}
@keyframes ticker{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}

/* Input styles */
input,select,textarea{border:1px solid var(--outline-variant);border-radius:0.5rem;padding:0.75rem 1rem;background:var(--surface-container-lowest);color:var(--on-surface);font-size:0.875rem;line-height:1rem;transition:border-color 150ms,box-shadow 150ms}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}
input::placeholder{color:var(--on-surface-variant);opacity:0.5}
select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 0.5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}
select option{background:var(--surface-container-lowest);color:var(--on-surface)}

/* Range slider */
input[type="range"]{appearance:none;background:transparent}
input[type="range"]::-webkit-slider-thumb{appearance:none;height:1rem;width:1rem;border-radius:50%;background:var(--primary);cursor:pointer;margin-top:-0.25rem}
input[type="range"]::-webkit-slider-runnable-track{width:100%;height:0.5rem;background:var(--surface-container-high);border-radius:0.25rem}

/* Checkbox */
input[type="checkbox"]{appearance:none;width:1.25rem;height:1.25rem;border:1px solid var(--outline-variant);border-radius:0.25rem;background:var(--surface-container-lowest);cursor:pointer;position:relative;flex-shrink:0}
input[type="checkbox"]:checked{background:var(--primary);border-color:var(--primary)}
input[type="checkbox"]:checked::after{content:'';position:absolute;top:2px;left:6px;width:5px;height:10px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* Radio */
input[type="radio"]{appearance:none;width:1.25rem;height:1.25rem;border:1px solid var(--outline-variant);border-radius:50%;background:var(--surface-container-lowest);cursor:pointer;position:relative;flex-shrink:0}
input[type="radio"]:checked{border-color:var(--primary)}
input[type="radio"]:checked::after{content:'';position:absolute;top:3px;left:3px;width:0.75rem;height:0.75rem;border-radius:50%;background:var(--primary)}

/* Progress bar */
.progress-bar{width:100%;height:0.5rem;background:var(--surface-container-high);border-radius:9999px;overflow:hidden}
.progress-bar>div{height:100%;background:var(--primary);border-radius:9999px}

/* Badge */
.badge{display:inline-flex;align-items:center;padding:0.125rem 0.5rem;font-size:0.625rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;border-radius:9999px}

/* Card hover effect */
.card-hover{transition:all 0.3s ease}
.card-hover:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(99,102,241,0.2)}

/* Fade in animation */
.animate-in{fade-in:1s}
@keyframes fade-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.slide-in-from-bottom-8{--tw-enter-translate-y:2rem}
.\!tw-enter-translate-y:enter(translateY(2rem))}