@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/7e832ad540183e91-s.280oih_b74u9j.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/2094fb60fd9c8287-s.3qxy1tqak831c.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:300;font-display:swap;src:url(../media/c875c6f5d3e977ac-s.p.1h18_wedhzk4h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/41e95f694c5c4549-s.2b_sldcwg6mn_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6c55a692938ebbbc-s.1emuuracu50qd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a218039a3287bcfd-s.p.43zbiuwnnoiok.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/bdc7e24a509eb931-s.0ynx40_3oa9rk.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0da9c7f357bd9d4d-s.1975l3y3401x_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e6fa89aa22d24ec-s.p.2o7m9ogm38dql.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0a7740363b4d4863-s.3ji57o093q1kd.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5f9d24ebef5d5292-s.19xuq3td7fwu_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e2334d715941921e-s.p.3o_v2fun1jzxk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b53057dbf91a7acf-s.11ypmpdlzqdb_.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/798ea22d9983e047-s.3go-kn2r40gie.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(../media/47fe1b7cd6e6ed85-s.p.3bh2vc0w-r-ll.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins Fallback;src:local(Arial);ascent-override:93.62%;descent-override:31.21%;line-gap-override:8.92%;size-adjust:112.16%}.poppins_2024bc9-module__OvfM1W__className{font-family:Poppins,Poppins Fallback;font-style:normal}.poppins_2024bc9-module__OvfM1W__variable{--font-poppins:"Poppins", "Poppins Fallback"}
*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-1{bottom:.25rem}.bottom-2{bottom:.5rem}.left-1\/2{left:50%}.left-2{left:.5rem}.right-2{right:.5rem}.top-2{top:.5rem}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-6{margin-top:1.5rem}.block{display:block}.inline{display:inline}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-3\.5{height:.875rem}.h-40{height:10rem}.h-8{height:2rem}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-3\.5{width:.875rem}.w-8{width:2rem}.min-w-0{min-width:0}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-pointer{cursor:pointer}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.justify-start{justify-content:flex-start}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-2{border-width:2px}.border-b-2{border-bottom-width:2px}.border-none{border-style:none}.border-accent-pink{border-color:var(--accent-pink)}.border-accent-purple{border-color:var(--accent-purple)}.border-accent-sky{border-color:var(--accent-sky)}.border-border-color{border-color:var(--border-color)}.border-primary{border-color:var(--primary)}.bg-accent-pink{background-color:var(--accent-pink)}.bg-accent-pink-light{background-color:var(--accent-pink-light)}.bg-accent-purple{background-color:var(--accent-purple)}.bg-accent-purple-light{background-color:var(--accent-purple-light)}.bg-accent-sky{background-color:var(--accent-sky)}.bg-accent-sky-light{background-color:var(--accent-sky-light)}.bg-bg-primary{background-color:var(--bg-primary)}.bg-bg-secondary{background-color:var(--bg-secondary)}.bg-black\/50{background-color:#00000080}.bg-primary{background-color:var(--primary)}.bg-primary-light{background-color:var(--primary-light)}.bg-surface{background-color:var(--surface)}.bg-transparent{background-color:#0000}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/90{background-color:#ffffffe6}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))}.from-bg-secondary{--tw-gradient-from:var(--bg-secondary) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary{--tw-gradient-from:var(--primary) var(--tw-gradient-from-position);--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-bg{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--bg) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-bg-secondary{--tw-gradient-to:var(--bg-secondary) var(--tw-gradient-to-position)}.to-primary-dark{--tw-gradient-to:var(--primary-dark) var(--tw-gradient-to-position)}.px-2{padding-left:.5rem;padding-right:.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.capitalize{text-transform:capitalize}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-text-muted{color:var(--text-muted)}.text-text-primary{color:var(--text-primary)}.text-text-secondary{color:var(--text-secondary)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-40{opacity:.4}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:var(--shadow-lg);--tw-shadow-colored:var(--shadow-lg);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:var(--shadow-md);--tw-shadow-colored:var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.ring-primary{--tw-ring-color:var(--primary)}.ring-offset-2{--tw-ring-offset-width:2px}.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)}.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)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-shadow{transition-property:box-shadow;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#61c1c2;--primary-light:#e0f7f7;--primary-dark:#4da8a9;--secondary:#4da8a9;--accent-pink:#f478b8;--accent-pink-light:#ffe4f2;--accent-purple:#9260f4;--accent-purple-light:#ede4ff;--accent-orange:#ff9142;--accent-orange-light:#ffe6d4;--accent-yellow:#ffd12e;--accent-yellow-light:#fff6d4;--accent-sky:#38bdf8;--accent-sky-light:#e0f2fe;--accent-rose:#fecdd3;--accent-violet:#ddd6fe;--accent-green:#4ade80;--accent-green-light:#dcfce7;--success:#4ade80;--success-light:#dcfce7;--warning:#ffd12e;--warning-light:#fff6d4;--bg:#fff;--surface:#fff;--text:#18181b;--text-secondary:#3f3f46;--text-muted:#71717a;--border:#d4d0e8;--bg-primary:#fff;--bg-secondary:#f4f5f7;--text-primary:#18181b;--border-color:#d4d0e8;--radius:16px;--radius-lg:24px;--radius-xl:32px;--radius-sm:12px;--shadow:0 4px 32px #0000000a;--shadow-md:0 2px 8px #0000000f;--shadow-lg:0 8px 40px #61c1c226}[data-theme=dark]{--primary:#7c46f0;--primary-light:#3d2a5c;--primary-dark:#5f33e1;--secondary:#9260f4;--accent-pink:#f478b8;--accent-pink-light:#3d2a42;--accent-purple:#9260f4;--accent-purple-light:#3d2a5c;--accent-orange:#ff9142;--accent-orange-light:#423020;--accent-yellow:#ffd12e;--accent-yellow-light:#423d10;--bg:#121217;--surface:#1e1e26;--text:#f4f4f5;--text-secondary:#d4d4d8;--text-muted:#a1a1aa;--border:#3f3f46;--bg-primary:#121217;--bg-secondary:#1e1e26;--text-primary:#f4f4f5;--border-color:#3f3f46;--shadow:0 4px 32px #0006;--shadow-md:0 2px 8px #0000004d;--shadow-lg:0 8px 40px #00000080}html{background:var(--bg);color:var(--text);height:100vh;font-family:Lexend Deca,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}body{min-height:100vh;margin:0;padding:0;overflow:hidden}#root{height:100vh;overflow:hidden}h1,h2,h3,h4,h5,h6,p,span,div,button,input,textarea,select,a,label{font-family:Lexend Deca,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);border:none;padding:20px}.card-flat{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:none;padding:20px}.card-gradient{background:linear-gradient(135deg, var(--primary-light) 0%, var(--bg) 100%);border-radius:var(--radius-lg);padding:20px;position:relative;overflow:hidden}.card-pink{background:var(--accent-pink-light);border-radius:var(--radius)}.card-purple{background:var(--accent-purple-light);border-radius:var(--radius)}.card-orange{background:var(--accent-orange-light);border-radius:var(--radius)}.card-yellow{background:var(--accent-yellow-light);border-radius:var(--radius)}.card-sky{background:var(--accent-sky-light);border-radius:var(--radius)}.card-rose{background:var(--accent-rose);border-radius:var(--radius)}.card-green{background:var(--accent-green-light);border-radius:var(--radius)}.blur-circle{filter:blur(65px);pointer-events:none;border-radius:50%;position:absolute}.blur-circle-purple{background:radial-gradient(circle, var(--primary-dark) 0%, transparent 70%)}.blur-circle-sky{background:radial-gradient(circle, var(--accent-sky) 0%, transparent 70%)}.blur-circle-yellow{background:radial-gradient(circle, var(--accent-yellow) 0%, transparent 70%)}.blur-circle-green{background:radial-gradient(circle,#4ade80 0%,#0000 70%)}.blur-circle-orange{background:radial-gradient(circle, var(--accent-orange) 0%, transparent 70%)}@media (hover:hover) and (pointer:fine){.hover-lift{transition:transform .2s,box-shadow .2s}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}}@media (hover:none) and (pointer:coarse){.hover-lift{transition:none}.hover-lift:hover{box-shadow:none;transform:none}}.container{max-width:1440px;margin:0 auto;padding:0 24px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.gap-8{gap:32px}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.text-3xl{font-size:30px}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-primary{color:var(--primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-fluid-xs{font-size:clamp(11px,3vw,12px)}.text-fluid-sm{font-size:clamp(12px,3.5vw,14px)}.text-fluid-base{font-size:clamp(14px,4vw,16px)}.text-fluid-lg{font-size:clamp(16px,5vw,20px)}.text-fluid-xl{font-size:clamp(20px,6vw,28px)}.text-center{text-align:center}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.stack{flex-direction:column;gap:16px;display:flex}.stack-sm{flex-direction:column;gap:12px;display:flex}.stack-lg{flex-direction:column;gap:24px;display:flex}.grid-responsive-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:clamp(8px,2vw,16px);display:grid}.touch-target{min-width:44px;min-height:44px}.touch-target-lg{min-width:48px;min-height:48px}.bg-primary{background:var(--primary)}.bg-surface{background:var(--surface)}.bg-primary-light{background:var(--primary-light)}.rounded{border-radius:var(--radius)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-sm{border-radius:var(--radius-sm)}.shadow{box-shadow:var(--shadow)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.p-6{padding:24px}.p-8{padding:32px}.px-4{padding-left:16px;padding-right:16px}.py-2{padding-top:8px;padding-bottom:8px}.w-full{width:100%}.h-full{height:100%}.transition{transition:all .2s}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;min-height:56px;padding:16px 24px;font-size:16px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--primary);color:var(--text);box-shadow:0 4px 12px #61c1c259}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary:hover{background:var(--bg);border-color:var(--primary)}.btn-ghost{color:var(--primary);background:0 0;border:none}.input{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;min-height:56px;padding:16px;font-size:16px;transition:all .2s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.input::placeholder{color:var(--text-secondary)}.form-select{background:var(--bg-primary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:1rem}.label{color:var(--text-secondary);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.chip{background:var(--bg);color:var(--text);border:1.5px solid var(--border);cursor:pointer;border-radius:100px;align-items:center;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.chip.active{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.badge{border-radius:20px;padding:2px 8px;font-size:11px;font-weight:500}.badge-personal{background:var(--primary-light);color:#b3861a}.badge-family{background:var(--success-light);color:#3d8b8d}.badge-custom{background:var(--warning-light);color:#b3861a}.divider{background:var(--border);height:1px;margin:16px 0}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:188px;min-width:188px;height:100vh;max-height:100vh;padding:24px 16px;display:flex;position:fixed;top:0;left:0;overflow:hidden auto}.sidebar-header{flex-shrink:0;margin-bottom:24px}.sidebar-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-bottom:16px;font-size:clamp(12px,3vw,16px);font-weight:400;overflow:hidden}.sidebar-nav{flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.sidebar-nav-item{color:var(--text-secondary);cursor:pointer;border-radius:12px;flex-shrink:0;align-items:center;gap:12px;min-height:44px;padding:10px 12px;text-decoration:none;transition:all .2s;display:flex}.sidebar-nav-item:hover{background:var(--primary-light);color:var(--primary)}.sidebar-nav-icon{color:inherit;opacity:.48;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .2s;display:flex}.sidebar-nav-icon.active{opacity:1;color:var(--primary)}.sidebar-nav-text{color:inherit;opacity:.48;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(13px,3.5vw,16px);font-weight:400;transition:opacity .2s;overflow:hidden}.sidebar-nav-text.active{opacity:1;color:var(--primary)}.sidebar-section{flex-shrink:0;margin-top:24px;margin-bottom:12px}.sidebar-section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:clamp(10px,2.5vw,16px);font-weight:700}.sidebar-quick-action{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-dark) 100%);border-radius:18px;flex-shrink:0;margin-bottom:16px;padding:16px;box-shadow:0 4px 12px #61c1c259}.quick-action-content{justify-content:center;align-items:center;display:flex}.quick-action-text{color:#fff;white-space:nowrap;font-size:clamp(12px,3vw,14px);font-weight:600}.sidebar-logout{background:var(--surface);border:1px solid var(--primary);color:var(--primary);cursor:pointer;border-radius:12px;flex-shrink:0;align-items:center;gap:12px;width:100%;min-height:44px;margin-top:auto;padding:12px;font-size:clamp(12px,3vw,14px);font-weight:500;transition:all .2s;display:flex}.sidebar-logout:hover{background:var(--primary-light);transform:translateY(-1px)}@media (max-width:1024px){.sidebar{width:160px;min-width:160px;padding:20px 12px}.sidebar-nav-text{display:none}.sidebar-nav-item{justify-content:center;padding:10px}.sidebar-header{margin-bottom:20px}.sidebar-title{display:none}.sidebar-project-badge{margin:0 auto}.quick-action-text{font-size:11px}.sidebar-logout span{display:none}.sidebar-logout{justify-content:center}}@media (max-width:768px){.sidebar{width:100%;min-width:100%;max-width:280px;height:auto;max-height:100vh;box-shadow:var(--shadow-lg);transition:left .3s;position:fixed;top:0;left:-100%}.sidebar.open{left:0}.sidebar-nav-text{display:block}.sidebar-nav-item{justify-content:flex-start}.sidebar-logout span{display:inline}.main-content{margin-left:0}}@media (max-width:480px){.sidebar{width:100%;max-width:100%;padding:16px 12px}.sidebar-nav-item{min-height:48px;padding:12px}.sidebar-header{margin-bottom:16px}.sidebar-quick-action{border-radius:12px;padding:12px}}.main-content{background:var(--bg-secondary);min-height:100vh;margin-left:188px;padding:24px 32px;transition:margin-left .3s;overflow-y:auto}@media (max-width:1024px){.main-content{margin-left:160px;padding:20px 24px}}@media (max-width:768px){.main-content{padding:16px;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px));margin-left:0}}@media (max-width:480px){.main-content{padding:12px;padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))}}.page-header{background:var(--surface);box-shadow:var(--shadow);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;display:flex}.page-header .header-left h1{margin-bottom:.5rem}.page-header .header-left p{color:var(--text-muted);margin:0}.filters-section{background:var(--surface);box-shadow:var(--shadow);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.filters-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.search-box{background:var(--bg);border:1px solid var(--border);border-radius:8px;flex:1;align-items:center;gap:.75rem;min-width:250px;padding:.75rem 1rem;display:flex}.search-box svg{color:var(--text-muted)}.search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.filter-select,.filter-input{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;padding:.75rem 1rem;font-size:.875rem}.view-toggle{gap:.5rem;display:flex}.view-btn{background:var(--bg);border:1px solid var(--border);cursor:pointer;color:var(--text-muted);border-radius:6px;padding:.5rem;transition:all .2s}.view-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.clear-filters{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;margin-top:1rem;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.clear-filters:hover{border-color:var(--primary);color:var(--primary)}.events-list{flex-direction:column;gap:2rem;display:flex}.date-group{flex-direction:column;gap:1rem;display:flex}.date-header{border-bottom:2px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.date-title{color:var(--text);text-transform:capitalize;font-size:1.125rem;font-weight:600}.date-count{color:var(--text-muted);font-size:.875rem}.events-cards{flex-direction:column;gap:.75rem;display:flex}.event-card{background:var(--surface);cursor:pointer;box-shadow:var(--shadow);border-left:4px solid;border-radius:12px;padding:1.25rem;transition:all .2s}.event-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.event-personal{border-left-color:var(--accent-purple)}.event-family{border-left-color:var(--accent-sky)}.event-custom{border-left-color:var(--accent-pink)}.event-card-content{flex-direction:column;gap:.75rem;display:flex}.event-card-header{justify-content:space-between;align-items:center;display:flex}.event-card-title{color:var(--text);font-size:1.125rem;font-weight:600}.event-card-type{font-size:1.25rem}.event-card-description{color:var(--text-muted);font-size:.875rem;line-height:1.5}.event-card-meta{flex-wrap:wrap;gap:1.5rem;display:flex}.meta-item{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.meta-item svg{flex-shrink:0}.events-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.event-grid-card{background:var(--surface);cursor:pointer;box-shadow:var(--shadow);border-top:4px solid;border-radius:12px;padding:1.5rem;transition:all .2s}.event-grid-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.event-grid-card.event-personal{border-top-color:var(--accent-purple)}.event-grid-card.event-family{border-top-color:var(--accent-sky)}.event-grid-card.event-custom{border-top-color:var(--accent-pink)}.event-grid-date{color:var(--text-muted);text-transform:capitalize;margin-bottom:.5rem;font-size:.875rem;font-weight:600}.event-grid-title{color:var(--text);margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.event-grid-time,.event-grid-location{color:var(--text-muted);font-size:.875rem}.families-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.family-card{background:var(--surface);cursor:pointer;box-shadow:var(--shadow);border:2px solid #0000;border-radius:16px;padding:2rem;transition:all .2s}.family-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-4px)}.family-card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.family-logo{-o-object-fit:cover;object-fit:cover;border:2px solid var(--primary);border-radius:12px;width:64px;height:64px}.family-icon{font-size:3rem}.family-badge{background:var(--primary-light);color:var(--primary);border-radius:20px;padding:.5rem 1rem;font-size:.875rem;font-weight:600}.family-name{color:var(--text);margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.family-code{color:var(--text-muted);margin-bottom:1rem;font-size:.875rem}.code-text{background:var(--bg);color:var(--primary);border-radius:4px;padding:.25rem .5rem;font-family:monospace}.family-stats{gap:2rem;margin-top:1rem;display:flex}.stat-item{flex-direction:column;align-items:center;display:flex}.stat-value{color:var(--primary);font-size:1.5rem;font-weight:700}.stat-label{color:var(--text-muted);font-size:.75rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.close-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:color .2s;display:flex}.close-btn:hover{color:var(--text);background:var(--bg)}.modal-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.form-group:last-child{margin-bottom:0}.form-group label{color:var(--text);font-size:.875rem;font-weight:600}.modal-actions{border-top:1px solid var(--border);gap:1rem;margin-top:1rem;padding-top:1.5rem;display:flex}.top-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.search-container{background:var(--surface);width:199px;box-shadow:var(--shadow-md);border-radius:8px;align-items:center;gap:12px;padding:10px 16px;display:flex}.search-icon{color:var(--text-muted)}.search-input{color:var(--text);background:0 0;border:none;outline:none;width:100%;font-size:14px}.date-display{color:var(--text);font-size:12px;font-weight:400}.date-picker{background:var(--surface);border:1px solid var(--primary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;transition:all .2s;display:flex}.date-picker:hover{background:var(--primary-light)}.date-picker-text{color:var(--text);font-size:14px}.user-profile{border-radius:12px;align-items:center;gap:12px;padding:8px 12px;transition:all .2s;display:flex}.user-profile:hover{background:var(--surface);box-shadow:var(--shadow-md)}.user-avatar{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:600;display:flex;overflow:hidden}.user-avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.user-name{color:var(--text);font-size:14px;font-weight:500}.month-selector{color:var(--text);align-items:center;gap:8px;font-size:20px;font-weight:600;display:flex}.month-nav{align-items:center;gap:4px;display:flex}.month-nav-btn{cursor:pointer;color:var(--text);background:0 0;border:none;padding:4px;transition:color .2s}.month-nav-btn:hover{color:var(--primary)}.dashboard-container{flex-direction:column;gap:24px;width:100%;max-width:1400px;margin:0 auto;display:flex}.stats-section{margin-bottom:24px}.month-selector-row{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.month-selector{align-items:center;gap:16px;display:flex}.stats-section{text-align:left;flex:1}.stats-cards{grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:20px;display:grid}.stat-card{cursor:pointer;border-radius:29px;align-items:center;gap:16px;height:80px;padding:16px 20px;transition:all .3s;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";filter:blur(40px);background:#ffffff1a;border-radius:50%;width:200px;height:200px;position:absolute;top:-50%;right:-20%}.stat-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat-card-icon{z-index:1;background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:relative}.stat-card-content{z-index:1;flex-direction:column;gap:3px;display:flex;position:relative}.stat-card-title{color:#fff;opacity:.9;font-size:11px;font-weight:500}.stat-card-value{color:#fff;font-size:22px;font-weight:700}.dashboard-grid{flex:1;grid-template-columns:1fr 25%;gap:24px;min-height:0;display:grid}.main-area{flex-direction:column;gap:24px;min-height:0;display:flex}.main-area-item{flex-direction:column;gap:24px;display:flex}.calendar-section-full{flex-direction:column;gap:24px;height:100vh;min-height:0;display:flex}.calendar-white-box{background:#fff;border-radius:25px;width:100%;padding:24px;box-shadow:0 7.84px 27.43px #00000008}.calendar-widget{flex-direction:column;gap:16px;width:100%;display:flex}.timeline-container{background:0 0;width:100%;margin-top:0;padding:0}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.calendar-widget{box-sizing:border-box;flex-direction:column;gap:8px;width:100%;display:flex;overflow:hidden}.calendar-header{justify-content:space-between;align-items:center;display:flex}.calendar-title{color:var(--text);font-size:18px;font-weight:600}.calendar-nav{align-items:center;gap:8px;display:flex}.calendar-nav-btn{background:var(--primary-light);width:28px;height:28px;color:var(--primary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.calendar-grid{flex-direction:column;gap:4px;width:100%;display:flex}.calendar-weekdays{grid-template-columns:repeat(7,1fr);gap:0;width:100%;margin-bottom:8px;display:grid}.calendar-weekday{text-align:center;color:var(--text-secondary);padding:8px 4px;font-size:12px;font-weight:600}.calendar-days{grid-template-columns:repeat(7,1fr);gap:0;width:100%;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex;position:relative}.calendar-day:hover{background:var(--primary-light)}.calendar-day-number{color:var(--text);font-size:14px;font-weight:500}.calendar-day.other-month .calendar-day-number{color:var(--text-muted);opacity:.3}.calendar-day.today{background:var(--primary)}.calendar-day.today .calendar-day-number{color:#fff;font-weight:600}.calendar-with-timeline{flex-direction:column;gap:24px;display:flex}.timeline-container{margin-top:8px}.timeline-widget{box-shadow:none;background:0 0;border-radius:0;padding:0;transition:none}.timeline-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.timeline-widget:hover{box-shadow:var(--shadow-lg)}.timeline-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.timeline-title{color:var(--text);font-size:20px;font-weight:600}.timeline-count{color:var(--text-muted);background:var(--bg);border-radius:20px;padding:6px 12px;font-size:14px;font-weight:500}.timeline-empty{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.timeline-empty svg{opacity:.4}.timeline-empty p{color:var(--text-muted);font-size:14px}.timeline-list{flex-direction:column;gap:12px;display:flex}.timeline-item{cursor:pointer;background:0 0;border-radius:0;align-items:flex-start;gap:10px;padding:0;transition:all .2s;display:flex}.timeline-item:hover{background:0 0;transform:translate(3px)}.timeline-time{min-width:70px;color:var(--text-secondary);align-items:center;gap:3px;font-size:12px;font-weight:600;display:flex}.time-separator{color:var(--text-muted);font-size:11px}.timeline-content{flex:1;align-items:flex-start;gap:10px;display:flex}.timeline-marker{border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:5px}.timeline-info{flex-direction:column;flex:1;gap:3px;display:flex}.timeline-title-item{color:var(--text);margin:0;font-size:14px;font-weight:600}.timeline-description{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.4}.timeline-type{color:var(--text);border-radius:10px;align-self:flex-start;margin-top:3px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-block}.work-progress-section{flex-direction:column;gap:24px;display:flex}.work-progress{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:24px;transition:box-shadow .3s}.work-progress:hover{box-shadow:var(--shadow-lg)}.work-progress-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.work-progress-title{color:var(--text);font-size:22px;font-weight:600}.work-progress-see-all{color:var(--primary);font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.work-progress-see-all:hover{color:var(--primary-dark)}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr}.main-area,.calendar-section-full,.calendar-white-box{height:auto}}@media (max-width:768px){.sidebar{transition:transform .3s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.stats-cards{grid-template-columns:repeat(2,1fr)}}.work-progress-content{flex-direction:column;gap:24px;display:flex}.progress-chart{justify-content:center;align-items:center;display:flex}.task-list{flex-direction:column;gap:12px;display:flex}.task-item{background:var(--primary-light);border-radius:var(--radius);flex-direction:column;gap:8px;padding:16px;transition:all .2s;display:flex}.task-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.task-info{flex-direction:column;gap:4px;display:flex}.task-title{color:var(--text);font-size:16px;font-weight:600}.task-description{color:var(--text-secondary);font-size:12px}.task-progress{align-items:center;gap:12px;display:flex}.progress-bar{background:#0000001a;border-radius:3px;flex:1;height:6px;overflow:hidden}.progress-fill{border-radius:3px;height:100%;transition:width .5s}.progress-percentage{color:var(--text);text-align:right;min-width:40px;font-size:14px;font-weight:600}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width:768px){.sidebar{transition:transform .3s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.stats-cards{grid-template-columns:repeat(2,1fr)}}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.login-background{pointer-events:none;position:absolute;inset:0}.login-container{z-index:1;background:var(--surface);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border-radius:24px;padding:48px 40px;position:relative}.login-header{text-align:center;margin-bottom:32px}.login-logo{justify-content:center;margin-bottom:24px;display:flex}.login-title{color:var(--text);margin-bottom:8px;font-size:28px;font-weight:700}.login-subtitle{color:var(--text-secondary);font-size:16px}.login-form{flex-direction:column;gap:20px;margin-bottom:24px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{color:var(--text-secondary);font-size:14px;font-weight:600}.form-input{border:1.5px solid var(--border);width:100%;color:var(--text);background:var(--bg);border-radius:12px;padding:14px 16px;font-family:inherit;font-size:16px;transition:all .2s}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.form-input::placeholder{color:var(--text-muted)}.form-error{background:var(--accent-rose);color:#c62828;text-align:center;border-radius:12px;padding:12px 16px;font-size:14px}.login-button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;padding:16px;font-size:16px;font-weight:600;transition:all .2s;box-shadow:0 4px 12px #61c1c24d}.login-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-switch{justify-content:center;align-items:center;gap:8px;display:flex}.switch-text{color:var(--text-secondary);font-size:14px}.switch-button{color:var(--primary);cursor:pointer;background:0 0;border:none;font-size:14px;font-weight:600;transition:color .2s}.switch-button:hover{color:var(--primary-dark)}.auth-bg-blur{filter:blur(60px);pointer-events:none;border-radius:50%;position:absolute}.blur-circle-purple{background:radial-gradient(circle, var(--accent-purple-light) 0%, transparent 70%);opacity:.6}.blur-circle-sky{background:radial-gradient(circle, var(--accent-sky-light) 0%, transparent 70%);opacity:.6}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-content{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);padding:2rem;animation:.3s slideUp;overflow:auto}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width:768px){.sidebar{transition:transform .3s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.stats-cards{grid-template-columns:repeat(2,1fr)}}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border:2px solid var(--border);color:var(--text-primary);background:0 0}.btn-secondary:hover{border-color:var(--primary);color:var(--primary)}.btn-danger{color:#fff;background:#ef4444}.btn-danger:hover{background:#dc2626}.form-input,.form-select{border:1.5px solid var(--border);width:100%;color:var(--text-primary);background:var(--bg-primary);border-radius:8px;padding:12px 16px;font-size:16px;transition:all .2s}.form-input:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:16px;padding:2rem;animation:.3s slideUp;overflow:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.close-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;display:flex}.close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-actions{gap:1rem;margin-top:1.5rem;display:flex}.loading-state,.empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.spinner{border:3px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.empty-state h3{color:var(--text-primary);margin:1rem 0 .5rem}.empty-state .btn-primary{margin-top:1.5rem}.welcome-banner{margin-bottom:24px;position:relative}.welcome-banner-inner{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border);flex-direction:column;justify-content:center;min-height:200px;padding:32px;display:flex;position:relative;overflow:hidden}.welcome-content{justify-content:space-between;align-items:center;gap:40px;display:flex}.welcome-text{z-index:2;flex:1;position:relative}.welcome-image{flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.welcome-image img{-o-object-fit:contain;object-fit:contain;width:180px;height:180px}.welcome-subtitle{color:var(--text-secondary);margin-bottom:8px;font-family:Poppins,Lexend Deca,sans-serif;font-size:18px;font-weight:400;display:block}.welcome-title{color:var(--text);margin-bottom:12px;font-family:Poppins,Lexend Deca,sans-serif;font-size:28px;font-weight:600;line-height:1.3}.welcome-description{color:var(--text-muted);font-family:Poppins,Lexend Deca,sans-serif;font-size:14px;font-weight:300;line-height:1.5}.welcome-btn{background:var(--accent-purple);color:#fff;cursor:pointer;z-index:2;border:none;border-radius:100px;align-self:flex-start;margin-top:20px;padding:12px 28px;font-family:Poppins,Lexend Deca,sans-serif;font-size:14px;font-weight:500;transition:all .2s;position:relative}.welcome-btn:hover{background:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.dashboard-layout{height:100vh;display:flex;overflow:hidden}.main-content{flex:1;overflow:auto}.calendar-page{height:100vh;padding:2rem;overflow:auto}.calendar-page-header{background:var(--bg-secondary);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;display:flex}.calendar-grid-container{background:var(--bg-secondary);border-radius:12px;padding:1rem;overflow:auto}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:.5rem;display:grid}.calendar-weekdays{display:contents}.calendar-weekday-header{text-align:center;color:var(--text-secondary);padding:.75rem;font-size:.875rem;font-weight:600}.calendar-days-grid{display:contents}.calendar-day-cell{background:var(--bg-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;min-height:120px;padding:.5rem;transition:all .2s}.calendar-day-cell.current-month{background:var(--bg-primary)}.calendar-day-cell.other-month{background:var(--bg-secondary);opacity:.5}.calendar-day-cell.today{border-color:var(--primary);background:var(--primary-light)}.calendar-day-cell:hover{border-color:var(--primary);transform:translateY(-2px)}.day-number{color:var(--text-primary);margin-bottom:.5rem;font-weight:600}.day-events{flex-direction:column;gap:.25rem;display:flex}.event-chip{cursor:grab;opacity:.75;border-radius:3px;justify-content:space-between;align-items:center;gap:4px;padding:2px 6px;font-size:11px;font-weight:400;transition:all .2s;display:flex}.event-chip:hover{opacity:1}.event-chip:active{cursor:grabbing}.event-personal{color:#6d28d9;background:#6d28d926;border-left:2px solid #6d28d9}.event-family{color:#0ea5e9;background:#0ea5e926;border-left:2px solid #0ea5e9}.event-custom{color:#ec4899;background:#ec489926;border-left:2px solid #ec4899}.event-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.event-time{opacity:.8;font-size:.65rem}.more-events{color:var(--text-secondary);padding:.25rem .5rem;font-size:.75rem}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in{animation:.3s ease-out fadeIn}.animate-slide-up{animation:.4s ease-out slideUp}.animate-slide-down{animation:.3s ease-out slideDown}.animate-scale-in{animation:.2s ease-out scaleIn}.animate-shimmer{background:linear-gradient(to right, var(--bg-secondary) 0%, var(--bg-primary) 50%, var(--bg-secondary) 100%);background-size:1000px 100%;animation:2s linear infinite shimmer}.hover-lift{transition:transform .2s,box-shadow .2s}.hover-lift:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.hover-scale{transition:transform .2s}.hover-scale:hover{transform:scale(1.02)}.skeleton{background:linear-gradient(90deg, var(--bg-secondary) 25%, var(--bg-primary) 50%, var(--bg-secondary) 75%);background-size:200% 100%;border-radius:4px;animation:1.5s infinite shimmer}.map-page{flex-direction:column;min-height:100vh;padding:2rem;display:flex}.map-page-header{background:var(--bg-secondary);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1.5rem;display:flex}.route-info{background:var(--bg-secondary);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem 1.5rem;display:flex}.route-points{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.route-label{color:var(--text-primary);font-weight:600}.route-point{background:var(--primary-light);color:var(--primary);border-radius:12px;padding:.25rem .75rem;font-size:.875rem}.btn-small{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600;transition:all .2s}.btn-small:hover{background:var(--primary-dark)}.map-container{background:var(--bg-secondary);border-radius:16px;flex:1;min-height:600px;position:relative;overflow:hidden}.event-details-panel{background:var(--bg-primary);z-index:1000;width:400px;padding:2rem;animation:.3s slideIn;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-4px 0 20px #0000001a}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.event-details-content{margin-top:2rem}.event-type-badge{background:var(--primary-light);color:var(--primary);border-radius:20px;margin-bottom:1rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-block}.event-title{color:var(--text-primary);margin-bottom:1rem;font-size:1.75rem;font-weight:700}.event-description{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.event-info{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.info-row{color:var(--text-secondary);align-items:center;gap:.75rem;display:flex}.info-row svg{color:var(--primary)}.event-actions{gap:1rem;display:flex}.hover\:bg-bg-secondary:hover{background-color:var(--bg-secondary)}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-primary-dark:hover{background-color:var(--primary-dark)}.hover\:shadow-lg:hover{--tw-shadow:var(--shadow-lg);--tw-shadow-colored:var(--shadow-lg);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:var(--shadow-md);--tw-shadow-colored:var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.focus\:border-primary:focus{border-color:var(--primary)}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.focus\:ring-primary-light:focus{--tw-ring-color:var(--primary-light)}.dark\:bg-gray-800:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity:1;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.dark\:bg-gray-900\/90:where([data-theme=dark],[data-theme=dark] *){background-color:#111827e6}.dark\:text-gray-100:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(243 244 246/var(--tw-text-opacity,1))}.dark\:text-gray-200:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.dark\:text-gray-300:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.dark\:text-gray-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.dark\:text-gray-500:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.dark\:text-red-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.dark\:ring-offset-gray-800:where([data-theme=dark],[data-theme=dark] *){--tw-ring-offset-color:#1f2937}.dark\:hover\:bg-gray-700:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity:1;background-color:rgb(55 65 81/var(--tw-bg-opacity,1))}
