@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Homemade+Apple&family=Playfair+Display:ital,wght@0,400;0,600;1,400&display=swap";*,*:before,*:after{box-sizing:border-box}html,body{background-color:#f9f6f0;color:#2c251c;font-family:Lora,serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;width:100%;background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(44,37,28,.02) 2px,rgba(44,37,28,.02) 4px)}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;color:#2c251c;font-weight:600;word-break:break-word;overflow-wrap:anywhere}.handwritten{font-family:Homemade Apple,cursive}.btn{font-family:Inter,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;font-size:.9rem;padding:.75rem 1.5rem;min-height:48px;border-radius:8px 225px 12px 255px/255px 15px 225px 8px;border:2px solid #2C251C;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:3px 4px #2c251c}.btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:5px 6px #2c251c}.btn:active{transform:translateY(2px) scale(.98);box-shadow:0 0 #2c251c}.btn-primary{background-color:#5c82a6;color:#f9f6f0}.btn-primary:hover{background-color:#4a6b8c;color:#f0c05a;border-color:#2c251c}.btn-secondary{background-color:transparent;color:#2c251c}.btn-secondary:hover{background-color:#f0c05a4d}.header{position:sticky;top:0;z-index:100;background:#f9f6f0f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:2px solid #2C251C;border-radius:0 0 15px 255px/0 0 225px 15px;box-shadow:0 8px #2c251c0d}.navbar{padding:1rem 0}.nav-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center}@media (max-width: 380px){.nav-container{padding:0 .75rem}}.nav-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:#2c251c;font-family:Homemade Apple,cursive;font-size:2rem;transition:transform .2s ease}@media (max-width: 380px){.nav-logo{font-size:1.45rem;gap:.5rem}}.nav-logo svg{color:#d96c6c;transform:rotate(-10deg)}@media (max-width: 380px){.nav-logo svg{width:22px;height:22px}}.nav-logo span{padding-top:5px}.nav-logo:hover{transform:scale(1.05) rotate(2deg)}.nav-menu{display:flex;list-style:none;gap:2rem;margin:0;padding:0}.nav-link{text-decoration:none;color:#2c251c;font-family:Playfair Display,serif;font-weight:600;font-size:1.25rem;letter-spacing:.5px;position:relative;transition:all .3s ease;padding:.25rem .5rem;z-index:1}.nav-link:before{content:"";position:absolute;bottom:2px;left:-2px;right:-2px;height:40%;background-color:#f0c05a;z-index:-1;transform:scaleX(0) rotate(-2deg);transform-origin:left;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);border-radius:2px}.nav-link:hover,.nav-link.active{color:#2c251c}.nav-link:hover:before,.nav-link.active:before{transform:scaleX(1) rotate(-2deg)}.mobile-menu-btn{display:none;background:transparent;border:none;cursor:pointer;padding:.5rem;flex-direction:column;gap:6px;z-index:102}.mobile-menu-btn .hamburger-line{width:30px;height:3px;background-color:#2c251c;border-radius:2px;transition:all .3s ease}.mobile-menu-btn.active .hamburger-line:nth-child(1){transform:translateY(9px) rotate(45deg)}.mobile-menu-btn.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-btn.active .hamburger-line:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.mobile-menu-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#fdfbf7cc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;opacity:0;transition:opacity .3s ease}.mobile-menu-overlay.active{display:block;opacity:1}.mobile-menu{position:fixed;top:0;right:-100%;width:80%;max-width:350px;height:100vh;background:#fffffff2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:101;padding:6rem 2rem;border-left:2px solid #2C251C;box-shadow:-10px 0 30px #0000001a;transition:right .4s cubic-bezier(.175,.885,.32,1.1)}.mobile-menu.active{right:0}.mobile-menu .mobile-nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.mobile-menu .mobile-nav-link{display:flex;align-items:center;gap:1rem;font-size:1.5rem;font-family:Homemade Apple,cursive;color:#2c251c;text-decoration:none;padding:.5rem 0;border-bottom:1px dashed rgba(212,201,188,.5)}.mobile-menu .mobile-nav-link svg{color:#5c82a6}.mobile-menu .mobile-nav-link.active{color:#5c82a6;border-bottom-color:#f0c05a}.mobile-menu .mobile-nav-link.active svg{color:#f0c05a}@media (max-width: 768px){.nav-menu{display:none}.mobile-menu-btn{display:flex}}.footer{background:transparent;padding:4rem 2rem 2rem;position:relative}.footer:before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#D4C9BC,transparent)}.footer .footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem;max-width:1200px;margin:0 auto 3rem}.footer .footer-section h4{font-family:Homemade Apple,cursive;color:#2c251c;font-size:1.5rem;margin-bottom:1.5rem;position:relative;display:inline-block}.footer .footer-section h4:after{content:"";position:absolute;bottom:-5px;left:0;width:30px;height:3px;background:#f0c05a;transform:rotate(-3deg)}.footer .footer-section p{color:#5a4a3a;font-family:Lora,serif;line-height:1.6}.footer .footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.footer .footer-links li a{color:#5a4a3a;text-decoration:none;font-family:Inter,sans-serif;transition:color .2s ease,transform .2s ease;display:inline-block}.footer .footer-links li a:hover{color:#5c82a6;transform:translate(5px)}.footer .footer-bottom{text-align:center;color:#5a4a3a99;font-family:Inter,sans-serif;font-size:.9rem;padding-top:2rem;border-top:1px dashed rgba(212,201,188,.5)}@layer theme,base,components,utilities;@layer theme{@theme default{ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --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-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --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-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --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-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --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-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --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-300: oklch(80.9% .105 251.813); --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-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --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-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --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-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 0); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-mauve-50: oklch(98.5% 0 0); --color-mauve-100: oklch(96% .003 325.6); --color-mauve-200: oklch(92.2% .005 325.62); --color-mauve-300: oklch(86.5% .012 325.68); --color-mauve-400: oklch(71.1% .019 323.02); --color-mauve-500: oklch(54.2% .034 322.5); --color-mauve-600: oklch(43.5% .029 321.78); --color-mauve-700: oklch(36.4% .029 323.89); --color-mauve-800: oklch(26.3% .024 320.12); --color-mauve-900: oklch(21.2% .019 322.12); --color-mauve-950: oklch(14.5% .008 326); --color-olive-50: oklch(98.8% .003 106.5); --color-olive-100: oklch(96.6% .005 106.5); --color-olive-200: oklch(93% .007 106.5); --color-olive-300: oklch(88% .011 106.6); --color-olive-400: oklch(73.7% .021 106.9); --color-olive-500: oklch(58% .031 107.3); --color-olive-600: oklch(46.6% .025 107.3); --color-olive-700: oklch(39.4% .023 107.4); --color-olive-800: oklch(28.6% .016 107.4); --color-olive-900: oklch(22.8% .013 107.4); --color-olive-950: oklch(15.3% .006 107.1); --color-mist-50: oklch(98.7% .002 197.1); --color-mist-100: oklch(96.3% .002 197.1); --color-mist-200: oklch(92.5% .005 214.3); --color-mist-300: oklch(87.2% .007 219.6); --color-mist-400: oklch(72.3% .014 214.4); --color-mist-500: oklch(56% .021 213.5); --color-mist-600: oklch(45% .017 213.2); --color-mist-700: oklch(37.8% .015 216); --color-mist-800: oklch(27.5% .011 216.9); --color-mist-900: oklch(21.8% .008 223.9); --color-mist-950: oklch(14.8% .004 228.8); --color-taupe-50: oklch(98.6% .002 67.8); --color-taupe-100: oklch(96% .002 17.2); --color-taupe-200: oklch(92.2% .005 34.3); --color-taupe-300: oklch(86.8% .007 39.5); --color-taupe-400: oklch(71.4% .014 41.2); --color-taupe-500: oklch(54.7% .021 43.1); --color-taupe-600: oklch(43.8% .017 39.3); --color-taupe-700: oklch(36.7% .016 35.7); --color-taupe-800: oklch(26.8% .011 36.5); --color-taupe-900: oklch(21.4% .009 43.1); --color-taupe-950: oklch(14.7% .004 49.3); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --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: 1.5 ; --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: 1.2 ; --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px rgb(0 0 0 / .05); --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25); --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / .05); --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05); --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05); --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05); --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15); --drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12); --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15); --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1); --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / .15); --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15); --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2); --text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075); --text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1); --text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme( --font-sans--font-feature-settings, initial ); --default-font-variation-settings: --theme( --font-sans--font-variation-settings, initial ); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme( --font-mono--font-feature-settings, initial ); --default-mono-font-variation-settings: --theme( --font-mono--font-variation-settings, initial ); }@theme default inline reference{ --blur: 8px; --shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05); --drop-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 1px 1px rgb(0 0 0 / .06); --radius: .25rem; --max-width-prose: 65ch; }}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:--theme(--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:--theme(--default-font-feature-settings,normal);font-variation-settings:--theme(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:--theme(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:--theme(--default-mono-font-feature-settings,normal);font-variation-settings:--theme(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}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{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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:color-mix(in oklab,currentcolor 50%,transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{@tailwind utilities;}@theme{ --color-paper-bg: var(--paper-bg); --color-ink-dark: var(--ink-dark); --color-ink-light: var(--ink-light); --color-accent-blue: var(--accent-blue); --color-accent-yellow: var(--accent-yellow); --color-accent-red: var(--accent-red); --color-border-brown: var(--border-brown); }@keyframes polaroid-float{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes draw-underline{to{stroke-dashoffset:0}}.home-page{min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;padding:2rem;background:linear-gradient(to bottom,transparent,rgba(92,130,166,.05)),#f9f6f0}.home-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(#D4C9BC 1px,transparent 1px),linear-gradient(90deg,#D4C9BC 1px,transparent 1px);background-size:40px 40px;opacity:.3;pointer-events:none;z-index:0}.home-content{position:relative;z-index:10;max-width:800px;width:100%;display:flex;flex-direction:column;align-items:center;text-align:center}.hero-title-group{position:relative;margin-bottom:2rem}.hero-title-group h1{font-size:clamp(3rem,8vw,5rem);color:#2c251c;line-height:1.1;margin:0;text-shadow:2px 2px 0px rgba(240,192,90,.4)}.hero-title-group h1 span{display:inline-block}.hero-title-group h1 .accent{font-family:Homemade Apple,cursive;color:#5c82a6;font-size:1.2em;transform:rotate(-5deg);display:inline-block;position:relative}.hero-title-group h1 .accent:after{content:"";position:absolute;bottom:5px;left:-5%;width:110%;height:8px;background-color:#f0c05a99;z-index:-1;transform:rotate(2deg);border-radius:4px}.hero-title-group p{font-family:Lora,serif;font-size:1.25rem;color:#5a4a3a;margin:1.5rem auto 0;font-style:italic;max-width:500px}.hero-actions{display:flex;gap:1.5rem;margin-top:3rem}.hero-actions .btn-sketch{background:transparent;color:#2c251c;font-family:Homemade Apple,cursive;font-size:1.5rem;padding:1rem 2rem;border:2px solid #2C251C;border-radius:255px 15px 225px/15px 225px 15px 255px;transition:all .3s ease;box-shadow:4px 4px #2c251c1a}.hero-actions .btn-sketch:hover{background-color:#f0c05a;transform:translate(-2px,-2px) rotate(-2deg);box-shadow:8px 8px #2c251c26}.hero-actions .btn-sketch.secondary{border-color:#5c82a6;color:#5c82a6;border-radius:15px 225px 15px 255px/255px 15px 225px}.hero-actions .btn-sketch.secondary:hover{background-color:#5c82a61a;transform:translate(-2px,-2px) rotate(2deg)}.floating-sketch{position:absolute;opacity:.15;pointer-events:none;z-index:1;color:#2c251c}.floating-sketch.sketch-1{top:10%;left:10%;transform:rotate(-15deg);width:120px}.floating-sketch.sketch-2{bottom:15%;right:10%;transform:rotate(20deg);width:150px}.donation-cta{margin-top:3.5rem;font-family:Inter,sans-serif;font-size:.95rem;color:#5a4a3a;display:inline-flex;align-items:center;justify-content:center;background:#fff;padding:.5rem 1.25rem;border-radius:30px;box-shadow:0 4px 12px #2c251c0a;border:1px solid rgba(44,37,28,.05);z-index:10}.donation-cta .heart-icon{animation:heartPulse 2.5s infinite ease-in-out}.donation-cta .donate-link{color:#5c82a6;font-weight:600;text-decoration:none;margin-left:.25rem;border-bottom:1.5px dashed #5C82A6;transition:color .2s,border-color .2s}.donation-cta .donate-link:hover{color:#4a6b8c;border-bottom-style:solid}@keyframes heartPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.showcase-section{background:#f9f6f0;padding:5rem 2rem;position:relative}.showcase-section:before{content:"";position:absolute;top:0;left:5%;right:5%;height:1px;background:#d4c9bc;opacity:.5}.showcase-content{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:4rem}.showcase-doodle-side{flex-shrink:0}.featured-doodle-frame{position:relative;background:#fff;padding:12px 12px 0;box-shadow:0 4px 20px #2c251c1a,0 1px 3px #2c251c0f;transform:rotate(-3deg);width:280px}.featured-doodle-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(212,201,188,.4);pointer-events:none}.tape{position:absolute;width:55px;height:18px;z-index:10;opacity:.5;border-radius:2px}.tape.tape-left{top:-7px;left:18px;background:#f0c05ab3;transform:rotate(-8deg)}.tape.tape-right{top:-5px;right:18px;background:#f0c05a99;transform:rotate(5deg)}.featured-doodle-img{width:100%;display:block;border-radius:2px}.featured-doodle-caption{padding:10px 4px 14px;display:flex;flex-direction:column;gap:4px}.featured-doodle-caption .caption-to{font-family:Homemade Apple,cursive;font-size:.85rem;color:#2c251c}.featured-doodle-caption .caption-msg{font-family:Lora,serif;font-size:.78rem;color:#5a4a3a;font-style:italic;line-height:1.4}.showcase-text-side h2{font-family:Playfair Display,serif;font-size:1.8rem;color:#2c251c;margin:0 0 1.25rem;line-height:1.3}.showcase-text-side p{font-family:Lora,serif;font-size:1rem;color:#5a4a3a;line-height:1.65;margin:0 0 1rem}.showcase-text-side p:last-of-type{margin-bottom:1.75rem}.showcase-cta{display:inline-flex;align-items:center;gap:8px;font-family:Homemade Apple,cursive;font-size:1.1rem;color:#5c82a6;text-decoration:none;border-bottom:2px dashed #5C82A6;padding-bottom:2px;transition:all .2s ease}.showcase-cta:hover{color:#4a6b8c;border-bottom-style:solid;transform:translate(4px)}@media (max-width: 768px){.hero-actions{flex-direction:column;width:100%}.hero-actions .btn-sketch{width:100%}.showcase-content{flex-direction:column;gap:2.5rem;text-align:center}.featured-doodle-frame{width:260px}}@media (max-width: 380px){.home-page{padding:1rem}.hero-title-group{margin-bottom:1.5rem}.hero-title-group h1{font-size:2.2rem!important}.hero-title-group h1 .accent{font-size:1.1em}.hero-title-group p{font-size:1.05rem;margin-top:1.2rem;padding:0 .25rem;line-height:1.4}.hero-actions{margin-top:2rem;gap:1rem}.hero-actions .btn-sketch{font-size:1.25rem;padding:.75rem 1.5rem}.donation-cta{margin-top:2rem;font-size:.85rem;padding:.4rem 1rem}.showcase-section{padding:3rem 1.25rem}.featured-doodle-frame{width:230px}.showcase-text-side h2{font-size:1.4rem}}.create-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom,rgba(92,130,166,.08),transparent),#f9f6f0;padding:2rem 1rem}.create-intro{text-align:center;max-width:500px;margin:0 auto}.create-intro h1{font-family:Homemade Apple,cursive;font-size:clamp(2.5rem,6vw,4rem);color:#2c251c;transform:rotate(-2deg);margin-bottom:1rem}.create-intro p{font-size:1.2rem;color:#5a4a3a;margin-bottom:2rem}.recipient-form{position:relative;background:#fff;padding:2rem;border-radius:2px;box-shadow:#2c251c26;border:1px solid rgba(44,37,28,.1);transform:rotate(1deg);margin-bottom:3rem}.recipient-form:before{content:"";position:absolute;top:-15px;left:50%;transform:translate(-50%);width:60px;height:30px;background:#d4c9bc99;box-shadow:0 1px 2px #0000001a}.recipient-form .recipient-input{width:100%;border:none;border-bottom:2px dashed #D4C9BC;padding:.5rem 0;font-size:1.5rem;font-family:Inter,sans-serif;color:#2c251c;background:transparent;outline:none;transition:border-color .3s;text-align:center;margin-bottom:2rem}.recipient-form .recipient-input:focus{border-color:#5c82a6}.create-tips h3{font-family:Homemade Apple,cursive;color:#f0c05a;font-size:1.5rem}.create-tips ul{list-style:none;padding:0;color:#5a4a3a;font-style:italic}.create-tips ul li{margin-bottom:.5rem;position:relative;display:inline-block;width:100%}.create-tips ul li:before{content:"-";margin-right:.5rem;color:#5c82a6}.canvas-workspace{max-width:1200px;width:100%;position:relative;padding:3rem 2rem;background:#f3efe3;border:1px solid rgba(212,201,188,.6);box-shadow:0 15px 35px #2c251c0f,0 0 0 8px #2c251c04;border-radius:16px}@media (max-width: 768px){.canvas-workspace{padding:1rem;background:#f3efe3;border-radius:12px;border:1px solid rgba(212,201,188,.4);box-shadow:0 10px 25px #2c251c0d}}.mobile-only-back{display:none!important}.canvas-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:2px solid #D4C9BC;padding-bottom:1rem;flex-wrap:wrap;gap:1.5rem;min-width:0;width:100%}@media (max-width: 900px){.canvas-header{margin-bottom:1.25rem;padding-bottom:.75rem;gap:.5rem;flex-wrap:nowrap}}.canvas-header .header-left{display:flex;align-items:center;min-width:0;flex:1}.canvas-header .header-left h2{font-family:Playfair Display,serif;font-size:1.8rem;color:#2c251c;word-break:break-word;overflow-wrap:anywhere;margin:0;min-width:0}@media (max-width: 900px){.canvas-header .header-left h2{font-size:clamp(1rem,4.2vw,1.25rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center}}.canvas-header .header-left h2 .recipient-name{font-family:Homemade Apple,cursive;color:#5c82a6;text-decoration:underline dashed rgba(240,192,90,.5);text-underline-offset:4px;padding-left:.5rem;word-break:break-word;overflow-wrap:anywhere}@media (max-width: 900px){.canvas-header .header-left h2 .recipient-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px;display:inline-block}}.canvas-header .header-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;flex-shrink:0}@media (max-width: 900px){.canvas-header .header-right{flex-wrap:nowrap;gap:.5rem}}.canvas-header .header-right .action-group{display:flex;align-items:center;gap:.25rem}.canvas-header .header-right .header-divider{width:1px;height:24px;background-color:#2c251c26;margin:0 .25rem}.canvas-header .header-right .toolbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem .85rem;font-size:.85rem;font-weight:500;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;border:1px solid rgba(44,37,28,.1);background:#fff;color:#2c251c;font-family:Inter,sans-serif}.canvas-header .header-right .toolbar-btn svg{flex-shrink:0}.canvas-header .header-right .toolbar-btn:not(:disabled):hover{background-color:#2c251c0d;border-color:#2c251c}.canvas-header .header-right .toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.canvas-header .header-right .toolbar-btn.btn-danger:not(:disabled):hover{background-color:#fee2e2;border-color:#ef4444;color:#b91c1c}.canvas-header .header-right .toolbar-btn.change-recipient-btn{margin-right:.25rem}.canvas-header .header-right .toolbar-btn.send-doodle-btn{background:#5c82a6;color:#fff;border-color:transparent}.canvas-header .header-right .toolbar-btn.send-doodle-btn:not(:disabled):hover{background:#4a6b8c;transform:translateY(-1px);box-shadow:0 4px 10px #5c82a633}@media (max-width: 768px){.canvas-header .header-right .toolbar-btn .btn-label{display:none}.canvas-header .header-right .toolbar-btn{padding:.55rem}}@media (max-width: 900px){.mobile-only-back{display:inline-flex!important;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:50%;margin-right:.5rem;flex-shrink:0;border:2px solid #2C251C;background:#fff;color:#2c251c;box-shadow:2px 2px #2c251c;cursor:pointer;outline:none;transition:all .15s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent}.mobile-only-back:active{transform:translate(1px,1px);box-shadow:1px 1px #2c251c;background-color:#f0c05a4d}.desktop-only{display:none!important}}.canvas-main{display:flex;gap:2rem;align-items:flex-start}@media (max-width: 900px){.canvas-main{flex-direction:column;align-items:stretch;width:100%}}.canvas-sidebar{flex-shrink:0;width:250px;display:flex;flex-direction:column;gap:2rem;background:#fff;padding:1.5rem;border:1px solid #D4C9BC;box-shadow:4px 4px #d4c9bc;border-radius:12px}@media (max-width: 900px){.canvas-sidebar{display:none}}.canvas-area{flex:1;min-width:0;display:flex;flex-direction:column;gap:1.5rem;position:relative;max-width:100%}@media (max-width: 900px){.canvas-area{width:100%;padding-bottom:5rem}}.canvas-working-bounds{width:100%;max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.canvas-board{background:#faf8f5;padding:1.5rem;box-shadow:0 1px 3px #2c251c0d,0 10px 30px #2c251c14,0 20px 50px #2c251c0f;border:1px solid rgba(44,37,28,.08);border-radius:12px;position:relative;touch-action:none}.canvas-board .canvas-container{cursor:crosshair;padding:0!important;margin:0!important;border-radius:6px;overflow:hidden;background-color:#fff;border:1px solid rgba(44,37,28,.12);box-shadow:inset 0 2px 5px #2c251c08}.canvas-board:before{content:"";position:absolute;top:6px;right:-6px;bottom:-6px;left:6px;background:#f4f1ec;border:1px solid rgba(44,37,28,.06);border-radius:12px;z-index:-1;box-shadow:0 5px 15px #2c251c0a}.canvas-board:after{content:"";position:absolute;top:-12px;left:50%;transform:translate(-50%) rotate(-1deg);width:120px;height:28px;background:#e5dacbb3;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);border-left:3px dashed rgba(0,0,0,.05);border-right:3px dashed rgba(0,0,0,.05);box-shadow:0 1px 2px #0000000a;z-index:5;pointer-events:none}@media (max-width: 768px){.canvas-board{padding:.75rem;background:#faf8f5;border-radius:8px;box-shadow:0 4px 15px #2c251c0d}.canvas-board:before{display:none!important}}.canvas-wrapper-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center}.canvas-wrapper-container .canvas-wrapper{display:flex;justify-content:center;align-items:center;width:100%;overflow:hidden}.canvas-wrapper-container .canvas-wrapper canvas{touch-action:none!important}.canvas-wrapper-container .canvas-label{font-family:Homemade Apple,cursive;color:#5a4a3a;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.canvas-wrapper-container .canvas-label svg{color:#f0c05a}.canvas-message{width:100%;margin:0 auto}.canvas-message textarea{width:100%;padding:1rem 1.5rem;background:#fffc;border:1px dashed #D4C9BC;border-radius:4px;font-family:Homemade Apple,cursive;font-size:16px;color:#2c251c;resize:vertical;min-height:100px;box-shadow:inset 0 2px 4px #00000005;transition:all .3s ease;background-image:repeating-linear-gradient(transparent,transparent 31px,rgba(92,130,166,.1) 31px,rgba(92,130,166,.1) 32px);line-height:32px}.canvas-message textarea:focus{outline:none;background:#fff;border-color:#f0c05a;box-shadow:0 4px 12px #2c251c0d}.canvas-message textarea::placeholder{color:#5a4a3a80;line-height:32px}.success-message{text-align:center;background:#fff;padding:4rem 2rem;border-radius:2px;box-shadow:#2c251c26;transform:rotate(2deg)}.success-message h1{font-family:Homemade Apple,cursive;color:#5c82a6;font-size:3rem}.success-message p{font-family:Lora,serif;color:#2c251c}.color-palette-section,.brush-selector-section,.toolbar-section{display:flex;flex-direction:column;gap:1rem;width:100%}.color-palette-section h3,.brush-selector-section h3,.toolbar-section h3{font-family:Inter,sans-serif;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;color:#5a4a3a;margin-bottom:.5rem;border-bottom:1px solid rgba(44,37,28,.1);padding-bottom:.25rem}.colors-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;justify-items:center}.colors-grid .color-btn{width:32px;height:32px;border-radius:50%;border:2px solid rgba(44,37,28,.1);cursor:pointer;transition:transform .2s ease,border-color .2s ease}.colors-grid .color-btn:hover{transform:scale(1.15) rotate(5deg)}.colors-grid .color-btn.active{border:3px solid #2C251C;transform:scale(1.2);box-shadow:0 4px 8px #0000001a}.brush-grid{display:grid;grid-template-columns:auto auto;gap:.75rem}.brush-grid .brush-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:transparent;border:1px solid rgba(44,37,28,.1);padding:.75rem .5rem;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#2c251c;font-family:Inter,sans-serif;font-size:.8rem}.brush-grid .brush-btn svg{opacity:.6}.brush-grid .brush-btn:hover{background:#f0c05a1a;border-color:#f0c05a;transform:translateY(-2px)}.brush-grid .brush-btn.active{background:#f0c05a;border-color:#2c251c;font-weight:600}.brush-grid .brush-btn.active svg{opacity:1}.drawing-toolbar{display:flex;flex-direction:column;gap:.75rem}.drawing-toolbar .toolbar-row{display:flex;gap:.5rem;width:100%}.drawing-toolbar .toolbar-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:#fff;border:1px solid #D4C9BC;border-radius:4px;cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;color:#2c251c;transition:all .2s ease}.drawing-toolbar .toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.drawing-toolbar .toolbar-btn:not(:disabled):hover{background:#2c251c0d;border-color:#2c251c}.drawing-toolbar .toolbar-btn.primary{background:#5c82a6;color:#fff;border-color:transparent}.drawing-toolbar .toolbar-btn.primary:not(:disabled):hover{background:#4a6b8c;transform:translateY(-2px);box-shadow:0 4px 6px #5c82a633}.drawing-toolbar .toolbar-btn.danger{color:#d96c6c;border-color:#d96c6c80}.drawing-toolbar .toolbar-btn.danger:not(:disabled):hover{background:#d96c6c1a;border-color:#d96c6c}.sidebar-section{display:flex;flex-direction:column;gap:.5rem;width:100%}.sidebar-section h3{font-family:Inter,sans-serif;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;color:#5a4a3a;margin-bottom:.5rem;border-bottom:1px solid rgba(44,37,28,.1);padding-bottom:.25rem}.brush-size-control{display:flex;align-items:center;gap:1rem;width:100%}.brush-size-control .brush-size-slider{flex:1;height:6px;background:#d4c9bc66;border-radius:3px;outline:none;-webkit-appearance:none;cursor:pointer}.brush-size-control .brush-size-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:#2c251c;border:2px solid white;border-radius:50%;box-shadow:0 2px 4px #00000026;transition:transform .1s}.brush-size-control .brush-size-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.brush-size-control .brush-size-value{font-size:.9rem;font-weight:600;color:#2c251c;min-width:45px;text-align:right;font-variant-numeric:tabular-nums;font-family:monospace}.custom-color{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;width:100%}.custom-color .color-picker{-webkit-appearance:none;border:none;width:32px;height:32px;border-radius:50%;cursor:pointer;outline:none;padding:0;background:none}.custom-color .color-picker::-webkit-color-swatch-wrapper{padding:0}.custom-color .color-picker::-webkit-color-swatch{border:2px solid white;box-shadow:0 0 0 1px #00000026,0 2px 4px #0000001a;border-radius:50%}.custom-color .color-hex-input{flex:1;min-width:0;padding:.4rem .6rem;font-size:.85rem;font-family:monospace;border:1px solid #D4C9BC;border-radius:6px;outline:none;color:#2c251c;background:transparent}.custom-color .color-hex-input:focus{border-color:#5c82a6}.custom-color button{padding:.4rem .75rem;font-size:.8rem;font-weight:500;border-radius:6px;border:1px solid rgba(44,37,28,.1);background:#f8f9fa;color:#2c251c;cursor:pointer;transition:all .2s}.custom-color button:hover{background:#e9ecef;border-color:#2c251c33}.mobile-tool-dock{display:none}@media (max-width: 900px){.mobile-tool-dock{display:block;position:fixed;bottom:0;left:0;right:0;z-index:60}}.mobile-dock-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000040;z-index:59;animation:fadeIn .2s ease}.mobile-tool-strip{display:flex;justify-content:space-around;align-items:center;background:#ffffffeb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid rgba(212,201,188,.4);padding:.6rem 1rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px));gap:.5rem;z-index:61;position:relative}.strip-btn{display:flex;flex-direction:column;align-items:center;gap:.2rem;background:none;border:none;cursor:pointer;padding:.5rem;border-radius:12px;transition:all .2s ease;min-height:48px;flex:1;min-width:0;justify-content:center;color:#2c251c}.strip-btn.active{background:#5c82a61f;color:#5c82a6}.strip-btn:active{transform:scale(.92)}.strip-icon{display:flex;align-items:center;justify-content:center}.strip-color-dot{width:24px;height:24px;border-radius:50%;border:2px solid rgba(44,37,28,.2);box-shadow:0 1px 3px #00000026}.strip-label{font-size:.65rem;font-family:Inter,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.strip-chevron{transition:transform .3s ease}.strip-chevron.rotated{transform:rotate(180deg)}.mobile-tool-sheet{position:fixed;bottom:0;left:0;right:0;background:#fffffff7;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px 24px 0 0;box-shadow:0 -8px 30px #0000001f;z-index:60;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1);max-height:55vh;overflow-y:auto;padding-bottom:70px}.mobile-tool-sheet.open{transform:translateY(0)}.sheet-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem .5rem;border-bottom:1px solid rgba(212,201,188,.2);position:sticky;top:0;background:#fffffff7;z-index:2}.sheet-header:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:36px;height:4px;background:#2c251c26;border-radius:4px}.sheet-title{font-family:Playfair Display,serif;font-weight:700;font-size:1rem;color:#2c251c}.sheet-close{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:50%;color:#5a4a3a;transition:all .2s;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center}.sheet-close:hover{background:#2c251c14;color:#2c251c}.sheet-content{padding:1rem 1.25rem}.mobile-brush-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.25rem}.mobile-brush-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.75rem .5rem;background:#f9f6f099;border:2px solid transparent;border-radius:14px;cursor:pointer;transition:all .2s ease;min-height:70px;justify-content:center;color:#2c251c}.mobile-brush-btn span{font-size:.7rem;font-family:Inter,sans-serif;font-weight:600}.mobile-brush-btn.active{border-color:#5c82a6;background:#5c82a614;box-shadow:0 2px 8px #5c82a633}.mobile-brush-btn:active{transform:scale(.93)}.mobile-size-control{background:#f9f6f080;border-radius:14px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.mobile-size-control label{font-family:Inter,sans-serif;font-weight:600;font-size:.85rem;color:#2c251c}.mobile-size-control input[type=range]{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#2c251c1f;border-radius:4px;outline:none}.mobile-size-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:#5c82a6;cursor:pointer;box-shadow:0 2px 6px #5c82a666}.size-preview{display:flex;justify-content:center;padding:.5rem}.size-dot{border-radius:50%;transition:all .15s ease;min-width:4px;min-height:4px}.mobile-color-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;margin-bottom:1rem}.mobile-color-btn{width:100%;aspect-ratio:1;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 4px #0000001a;min-height:48px}.mobile-color-btn.active{border-color:#2c251c;box-shadow:0 0 0 3px #5c82a64d;transform:scale(1.1)}.mobile-color-btn:active{transform:scale(.9)}.mobile-custom-color{display:flex;align-items:center;gap:1rem;padding:.75rem;background:#f9f6f080;border-radius:14px}.mobile-color-picker{width:48px;height:48px;border:none;border-radius:12px;cursor:pointer;padding:0}.mobile-color-picker::-webkit-color-swatch-wrapper{padding:2px}.mobile-color-picker::-webkit-color-swatch{border:2px solid rgba(44,37,28,.1);border-radius:10px}.mobile-color-label{font-family:Inter,sans-serif;font-weight:600;font-size:.85rem;color:#5a4a3a}.mobile-actions-grid{display:flex;flex-direction:column;gap:.75rem}.mobile-action-btn{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f9f6f099;border:2px solid transparent;border-radius:16px;cursor:pointer;transition:all .2s ease;font-family:Inter,sans-serif;font-weight:600;font-size:1rem;color:#2c251c;min-height:56px}.mobile-action-btn:active{transform:scale(.97)}.mobile-action-btn.danger{color:#d96c6c;border-color:#d96c6c33;background:#d96c6c0d}.mobile-action-btn.primary{background:#5c82a6;color:#fff;border-color:transparent;box-shadow:0 4px 12px #5c82a64d}.mobile-action-btn.primary:active{box-shadow:0 2px 6px #5c82a633}.mobile-action-btn.primary:disabled{opacity:.6;cursor:not-allowed}.mobile-action-btn span{font-size:.95rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.view-page{min-height:100vh;background:linear-gradient(to bottom,rgba(92,130,166,.05),transparent),#f9f6f0;padding:4rem 2rem}.view-page:after{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;opacity:.4;background-image:url('data:image/svg+xml,%3Csvg width="200" height="200" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="noise"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="0.65" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="200" height="200" filter="url(%23noise)"/%3E%3C/svg%3E');mix-blend-mode:multiply}.view-header{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto 4rem;flex-wrap:wrap;gap:2rem;background:#fff;padding:2rem;border-radius:2px;box-shadow:#2c251c26;transform:rotate(-1deg);border:1px solid rgba(44,37,28,.05);min-width:0}.view-header h1{font-family:Playfair Display,serif;font-size:3rem;color:#2c251c;word-break:break-word;overflow-wrap:anywhere;min-width:0}.view-header h1 .recipient-name{font-family:Homemade Apple,cursive;color:#5c82a6;padding-left:.5rem;word-break:break-word;overflow-wrap:anywhere}.view-header .doodle-count{font-family:Inter,sans-serif;font-size:1rem;color:#5a4a3a;margin-top:.5rem;font-weight:500;letter-spacing:1px;text-transform:uppercase}.doodles-grid{position:relative;z-index:10;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:3rem}.doodle-card{position:relative;background:#fff;padding:1rem;box-shadow:#2c251c26;border-radius:2px;border:1px solid rgba(44,37,28,.05);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;display:flex;flex-direction:column;cursor:pointer}.doodle-card:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%) rotate(2deg);width:80px;height:25px;background:#d4c9bcb3;box-shadow:0 1px 3px #0000001a;z-index:12}.doodle-card:hover{transform:scale(1.05) translateZ(0)!important;box-shadow:0 20px 40px #00000026;z-index:20}.doodle-image-container{width:100%;aspect-ratio:4/3;background:#000;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.1);flex-shrink:0}.doodle-image-container .doodle-image{width:100%;height:100%;object-fit:contain;background:#fff}.doodle-message{padding:.75rem .25rem 0;text-align:center;flex-shrink:0}.doodle-message p{font-family:Homemade Apple,cursive;font-size:1.1rem;color:#2c251c;line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.doodle-meta{display:flex;justify-content:space-between;padding:.5rem .25rem 0;font-family:Inter,sans-serif;font-size:.75rem;color:#5a4a3a;opacity:.6;flex-shrink:0;margin-top:auto}.doodle-meta .meta-views{display:flex;align-items:center;gap:.25rem}.empty-state{position:relative;z-index:10;text-align:center;background:#fff;padding:4rem;border-radius:2px;box-shadow:#2c251c26;max-width:600px;margin:0 auto;transform:rotate(2deg)}.empty-state h2{font-family:Playfair Display,serif;color:#2c251c;font-size:2.5rem;margin-bottom:1rem;word-break:break-word;overflow-wrap:anywhere}.empty-state h2 .recipient-name{font-family:Homemade Apple,cursive;color:#5c82a6;padding-left:.5rem;word-break:break-word;overflow-wrap:anywhere}.empty-state p{font-family:Lora,serif;color:#5a4a3a;margin-bottom:2rem}.load-more-trigger{text-align:center;padding:2rem;z-index:10;position:relative;font-family:Homemade Apple,cursive;color:#5c82a6;font-size:1.5rem}@media (max-width: 768px){.view-page{padding:2rem 1rem}.view-header{flex-direction:column;text-align:center}}.search-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f9f6f0;padding:2rem}.search-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;opacity:.03;z-index:0;background-image:url('data:image/svg+xml,%3Csvg width="100" height="100" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="noise"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="1" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100" height="100" filter="url(%23noise)"/%3E%3C/svg%3E')}.search-content{position:relative;z-index:10;max-width:600px;width:100%;text-align:center}.search-content h1{font-family:Homemade Apple,cursive;font-size:clamp(2.5rem,6vw,4rem);color:#2c251c;margin-bottom:1rem;transform:rotate(-2deg)}.search-content p{font-family:Lora,serif;color:#5a4a3a;font-size:1.2rem;margin-bottom:3rem}.search-form-container{position:relative;width:100%;margin:0 auto}.search-form{position:relative;display:flex;align-items:center;background:#fff;box-shadow:#2c251c26;border-radius:255px 15px 225px/15px 225px 15px 255px;border:2px solid #2C251C;padding:.5rem 1rem;transition:transform .3s ease,box-shadow .3s ease}.search-form:focus-within{transform:translateY(-2px) scale(1.02);box-shadow:12px 12px #2c251c26}.search-form .search-icon-wrapper{color:#5c82a6;margin-right:1rem}.search-form .search-input{flex:1;border:none;outline:none;font-family:Inter,sans-serif;font-size:1.5rem;color:#2c251c;background:transparent;padding:1rem 0}.search-form .search-input::placeholder{color:#2c251c66;font-style:italic}.search-form .btn-submit{background:#f0c05a;border:2px solid #2C251C;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#2c251c;transition:all .2s ease}.search-form .btn-submit:hover{background:#5c82a6;color:#fff;transform:scale(1.1) rotate(15deg)}.search-form .btn-submit:active{transform:scale(.95)}@media (max-width: 768px){.search-page{padding:1rem}.search-form{padding:.5rem}.search-form .search-input{font-size:1.25rem}}.history-page{min-height:100vh;padding:4rem 2rem;background-color:#f9f6f0}.history-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;background-image:linear-gradient(#D4C9BC 1px,transparent 1px);background-size:100% 2.5rem;opacity:.4}.history-header{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;max-width:800px;margin:0 auto 3rem}.history-header h1{font-family:Homemade Apple,cursive;font-size:clamp(2rem,5vw,3.5rem);color:#2c251c;margin:0;transform:rotate(-1deg)}.history-list{position:relative;z-index:10;max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.history-item{background:#fff;border:1px solid rgba(44,37,28,.1);padding:1.5rem 2rem;border-radius:15px 225px 15px 255px/255px 15px 225px;box-shadow:#2c251c14;display:flex;justify-content:space-between;align-items:center;transition:transform .2s ease,box-shadow .2s ease}.history-item:hover{transform:translateY(-2px) scale(1.01);box-shadow:#2c251c26;border-color:#5c82a6}.history-info h3{font-family:Homemade Apple,cursive;font-size:1.5rem;color:#2c251c;margin:0 0 .25rem;word-break:break-word;overflow-wrap:anywhere}.history-info .history-date{font-family:Inter,sans-serif;font-size:.9rem;color:#5a4a3a;margin:0 0 .75rem}.history-info .history-message{font-family:Lora,serif;font-size:1.1rem;color:#2c251c;font-style:italic;background:#f0c05a1a;padding:.5rem 1rem;border-left:3px solid #F0C05A;margin:0;display:inline-block}.history-note{position:relative;z-index:10;max-width:800px;margin:3rem auto 0;text-align:center;font-family:Inter,sans-serif;font-size:.9rem;color:#5a4a3a;padding:1.5rem;border:1px dashed rgba(212,201,188,.5);border-radius:4px}@media (max-width: 768px){.history-page{padding:2rem 1rem}.history-item{padding:1rem;flex-direction:column;align-items:flex-start;gap:1rem}.history-info .history-message{display:block;margin-top:.5rem}.btn{width:100%;justify-content:center}}.notfound-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f9f6f0;padding:2rem;text-align:center}.notfound-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;opacity:.03;z-index:0;background-image:url('data:image/svg+xml,%3Csvg width="100" height="100" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="noise"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="1" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="100" height="100" filter="url(%23noise)"/%3E%3C/svg%3E')}.notfound-content{position:relative;z-index:10;max-width:600px;background:#fff;padding:3rem 2rem;border:1px solid rgba(44,37,28,.1);box-shadow:#2c251c26;transform:rotate(1deg);border-radius:2px}.notfound-content:before{content:"";position:absolute;top:-15px;left:50%;transform:translate(-50%) rotate(-2deg);width:100px;height:30px;background:#d4c9bcb3;box-shadow:0 1px 3px #0000001a}.notfound-content .notfound-code{font-family:Homemade Apple,cursive;font-size:8rem;color:#d96c6c;margin:0;line-height:1;text-shadow:4px 4px 0px rgba(0,0,0,.05)}.notfound-content h2{font-family:Playfair Display,serif;font-size:2rem;color:#2c251c;margin:1rem 0}.notfound-content p{font-family:Lora,serif;color:#5a4a3a;font-size:1.2rem;margin-bottom:2rem}.notfound-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;border-bottom:1px dashed rgba(212,201,188,.5);padding-bottom:2rem}.notfound-suggestions h3{font-family:Inter,sans-serif;font-size:1rem;text-transform:uppercase;letter-spacing:1px;color:#5a4a3a;margin-bottom:1rem}.notfound-suggestions ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}.notfound-suggestions ul li a{color:#5c82a6;text-decoration:none;font-family:Inter,sans-serif;font-weight:500;position:relative}.notfound-suggestions ul li a:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transition:transform .2s ease}.notfound-suggestions ul li a:hover:after{transform:scaleX(1)}@media (max-width: 768px){.notfound-page{padding:1rem}.notfound-content{padding:2rem 1rem}.notfound-content .notfound-code{font-size:6rem}.notfound-content h2{font-size:1.5rem}.notfound-content p{font-size:1rem}.notfound-actions{flex-direction:column;gap:1rem}.notfound-actions .btn{width:100%;justify-content:center}}.doodle-detail-page{min-height:100vh;background:linear-gradient(to bottom,rgba(92,130,166,.05),transparent),#f9f6f0;padding:2rem}.doodle-detail-page:after{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;opacity:.4;background-image:url('data:image/svg+xml,%3Csvg width="200" height="200" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg"%3E%3Cfilter id="noise"%3E%3CfeTurbulence type="fractalNoise" baseFrequency="0.65" numOctaves="3" stitchTiles="stitch"/%3E%3C/filter%3E%3Crect width="200" height="200" filter="url(%23noise)"/%3E%3C/svg%3E');mix-blend-mode:multiply}.detail-back{position:relative;z-index:10;max-width:960px;margin:0 auto 2rem}.back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;font-family:Inter,sans-serif;font-size:.9rem;color:#5c82a6;cursor:pointer;padding:.5rem 0;transition:color .2s}.back-btn:hover{color:#4a6b8c}.detail-layout{position:relative;z-index:10;max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.detail-image-frame{position:relative;background:#fff;padding:1.5rem;box-shadow:#2c251c26,0 15px 35px #0000001a;border-radius:2px;border:1px solid rgba(44,37,28,.05)}.tape-piece{position:absolute;top:-12px;left:50%;transform:translate(-50%) rotate(2deg);width:100px;height:28px;background:#d4c9bcb3;box-shadow:0 1px 3px #0000001a;z-index:12}.detail-image-container{width:100%;aspect-ratio:4/3;background:#f5f5f5;overflow:hidden;border:1px solid rgba(0,0,0,.08);position:relative}.detail-image-container.loaded .image-placeholder{display:none}.detail-image{width:100%;height:100%;object-fit:contain;background:#fff;transition:opacity .3s}.image-placeholder{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;font-family:Homemade Apple,cursive;color:#5a4a3a;font-size:1.2rem}.detail-info{display:flex;flex-direction:column;gap:2rem}.info-recipient .info-label{display:flex;align-items:center;gap:.4rem;font-family:Inter,sans-serif;font-size:.8rem;text-transform:uppercase;letter-spacing:1.5px;color:#5a4a3a;margin-bottom:.5rem}.info-recipient .recipient-link{font-family:Playfair Display,serif;font-size:2.5rem;color:#5c82a6;text-decoration:none;word-break:break-word;transition:color .2s}.info-recipient .recipient-link:hover{color:#4a6b8c}.info-message{background:#fff;padding:1.5rem;border-radius:2px;box-shadow:0 2px 8px #2c251c14;border-left:3px solid #F0C05A;transform:rotate(.5deg)}.info-message p{font-family:Homemade Apple,cursive;font-size:1.3rem;color:#2c251c;line-height:1.6;margin:0;word-break:break-word}.info-details{display:flex;flex-direction:column;gap:.75rem}.info-details .info-item{display:flex;align-items:center;gap:.5rem;font-family:Inter,sans-serif;font-size:.85rem;color:#5a4a3a}.info-actions{display:flex;gap:1rem;flex-wrap:wrap}.info-actions .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:4px;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;border:none}.info-actions .btn-primary{background:#5c82a6;color:#fff}.info-actions .btn-primary:hover{background:#4a6b8c;transform:translateY(-1px)}.info-actions .btn-secondary{background:transparent;color:#5c82a6;border:1px solid #D4C9BC}.info-actions .btn-secondary:hover{background:#5c82a60d;transform:translateY(-1px)}.info-actions .btn-share{background:#f0c05a;color:#2c251c;border:1px solid rgba(44,37,28,.1)}.info-actions .btn-share:hover{background:#eeb743;transform:translateY(-1px)}.info-actions .btn-share.copied{background:#2e7d32;color:#fff;border-color:#2e7d32}.detail-loading{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem}.detail-loading .loading-spinner{width:40px;height:40px;border:3px solid #D4C9BC;border-top-color:#5c82a6;border-radius:50%;animation:spin .8s linear infinite}.detail-loading p{font-family:Homemade Apple,cursive;color:#5c82a6;font-size:1.2rem}@keyframes spin{to{transform:rotate(360deg)}}.detail-error{position:relative;z-index:10;text-align:center;background:#fff;padding:4rem;border-radius:2px;box-shadow:#2c251c26;max-width:500px;margin:10vh auto}.detail-error h2{font-family:Playfair Display,serif;color:#2c251c;font-size:2rem;margin-bottom:1rem}.detail-error p{font-family:Lora,serif;color:#5a4a3a;margin-bottom:2rem}.detail-error .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#5c82a6;color:#fff;border-radius:4px;font-family:Inter,sans-serif;font-size:.9rem;border:none;cursor:pointer;text-decoration:none}.detail-error .btn:hover{background:#4a6b8c}@media (max-width: 768px){.doodle-detail-page{padding:1.5rem 1rem}.detail-layout{grid-template-columns:1fr;gap:2rem}.detail-image-frame{transform:rotate(0)!important}.info-recipient .recipient-link{font-size:2rem}.info-message p{font-size:1.1rem}.info-actions{flex-direction:column}.info-actions .btn{justify-content:center}}.privacy-terms-page{min-height:100vh;background:linear-gradient(to bottom,rgba(92,130,166,.05),transparent),#f9f6f0;padding:3rem 1.5rem}.privacy-terms-page .container{max-width:800px;margin:0 auto}.privacy-terms-page .back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;font-family:Inter,sans-serif;font-size:.9rem;color:#5c82a6;cursor:pointer;padding:.5rem 0;margin-bottom:2rem;transition:color .2s}.privacy-terms-page .back-btn:hover{color:#4a6b8c}.legal-card{background:#fff;padding:3rem;border-radius:2px;box-shadow:#2c251c26,0 15px 35px #0000000d;border:1px solid rgba(44,37,28,.05);position:relative}.legal-card:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%) rotate(-1deg);width:120px;height:25px;background:#d4c9bc99;box-shadow:0 1px 3px #00000014;z-index:2}.legal-header{text-align:center;margin-bottom:3rem;border-bottom:1px solid rgba(212,201,188,.4);padding-bottom:2rem}.legal-header .icon-badge{width:70px;height:70px;border-radius:50%;background:#5c82a61a;color:#5c82a6;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.legal-header .icon-badge.terms-badge{background:#f0c05a1a;color:#f0c05a}.legal-header h1{font-family:Playfair Display,serif;font-size:2.5rem;color:#2c251c;margin:0 0 .5rem}.legal-header .last-updated{font-family:Inter,sans-serif;font-size:.85rem;color:#5a4a3a;margin:0}.legal-content{font-family:Lora,serif;color:#2c251c;line-height:1.8;font-size:1.05rem}.legal-content h2{font-family:Playfair Display,serif;font-size:1.6rem;color:#2c251c;margin:2.5rem 0 1rem}.legal-content p{margin:0 0 1.5rem}.legal-content ul{margin:0 0 1.5rem;padding-left:1.5rem}.legal-content ul li{margin-bottom:.5rem}.legal-content .important-notice{background:#d96c6c14;border-left:4px solid #D96C6C;padding:1.5rem;border-radius:4px;margin-bottom:2.5rem;transform:rotate(.3deg)}.legal-content .important-notice h3{margin:0 0 .75rem;font-family:Inter,sans-serif;color:#c53333;font-size:1.1rem;font-weight:700;letter-spacing:.5px}.legal-content .important-notice p{margin:0;font-size:.95rem;color:#b12e2e}.legal-content .important-notice.warning-notice{background:#f0c05a14;border-left-color:#f0c05a}.legal-content .important-notice.warning-notice h3{color:#d19413}.legal-content .important-notice.warning-notice p{color:#ba8411}@media (max-width: 768px){.privacy-terms-page{padding:2rem 1rem}.legal-card{padding:1.5rem}.legal-header h1{font-size:2rem}}.donate-page{min-height:100vh;background:linear-gradient(to bottom,rgba(92,130,166,.05),transparent),#f9f6f0;padding:3rem 1.5rem}.donate-page .container{max-width:650px;margin:0 auto}.donate-page .back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;font-family:Inter,sans-serif;font-size:.9rem;color:#5c82a6;cursor:pointer;padding:.5rem 0;margin-bottom:2rem;transition:color .2s}.donate-page .back-btn:hover{color:#4a6b8c}.donate-layout{position:relative;z-index:10}.donate-card{background:#fff;padding:3rem;border-radius:2px;box-shadow:#2c251c26,0 15px 35px #0000000d;border:1px solid rgba(44,37,28,.05);text-align:center;position:relative}.donate-card:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%) rotate(1deg);width:120px;height:25px;background:#d4c9bc99;box-shadow:0 1px 3px #00000014;z-index:2}.card-header .heart-wrapper{margin-bottom:1.5rem;display:inline-flex;align-items:center;justify-content:center}.card-header .heart-icon{filter:drop-shadow(0 4px 6px rgba(217,108,108,.2))}.card-header .subtitle{font-family:Lora,serif;font-size:1.15rem;color:#5a4a3a;line-height:1.6;margin:0}.donation-platforms{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:3rem}.platform-card{display:flex;align-items:center;padding:1.5rem;background:#faf8f5;border:1px solid #D4C9BC;border-radius:8px;text-decoration:none;color:#2c251c;text-align:left;transition:all .3s cubic-bezier(.165,.84,.44,1);cursor:pointer}.platform-card .platform-icon{width:54px;height:54px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-right:1.25rem;flex-shrink:0}.platform-card .platform-details{flex-grow:1}.platform-card .platform-details h3{font-family:Inter,sans-serif;font-size:1.15rem;font-weight:600;margin:0 0 .25rem}.platform-card .platform-details p{font-family:Lora,serif;font-size:.9rem;color:#5a4a3a;margin:0;line-height:1.4}.platform-card .link-arrow{color:#5a4a3a;opacity:.5;transition:transform .2s,opacity .2s}.platform-card.kofi-card .platform-icon{background:#ff5f5f1a;color:#ff5f5f}.platform-card.kofi-card:hover{border-color:#ff5f5f;background:#ff5f5f05;box-shadow:0 8px 24px #ff5f5f14}.platform-card.kofi-card:hover .link-arrow{color:#ff5f5f;opacity:1;transform:translate(3px)}.platform-card.tako-card .platform-icon{background:#5c82a61a;color:#5c82a6}.platform-card.tako-card:hover{border-color:#5c82a6;background:#5c82a605;box-shadow:0 8px 24px #5c82a614}.platform-card.tako-card:hover .link-arrow{color:#5c82a6;opacity:1;transform:translate(3px)}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.animate-pulse{animation:pulse 2.5s infinite ease-in-out}@media (max-width: 768px){.donate-page{padding:2rem 1rem}.donate-card{padding:2rem 1.5rem}.card-header h1{font-size:1.8rem}.platform-card{padding:1.25rem}.platform-card .platform-icon{width:44px;height:44px;margin-right:1rem}.platform-card .platform-details h3{font-size:1.05rem}}.contact-page{min-height:100vh;background:linear-gradient(to bottom,rgba(92,130,166,.05),transparent),#f9f6f0;padding:3rem 1.5rem}.contact-page .container{max-width:650px;margin:0 auto}.contact-page .back-btn{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;font-family:Inter,sans-serif;font-size:.9rem;color:#5c82a6;cursor:pointer;padding:.5rem 0;margin-bottom:2rem;transition:color .2s}.contact-page .back-btn:hover{color:#4a6b8c}.contact-layout{position:relative;z-index:10}.contact-card{background:#fff;padding:3rem;border-radius:2px;box-shadow:#2c251c26,0 15px 35px #0000000d;border:1px solid rgba(44,37,28,.05);text-align:center;position:relative}.contact-card:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%) rotate(-1deg);width:120px;height:25px;background:#d4c9bc99;box-shadow:0 1px 3px #00000014;z-index:2}.card-header{margin-bottom:3rem}.card-header .user-wrapper{margin-bottom:1.5rem;display:inline-flex;align-items:center;justify-content:center;color:#5c82a6}.card-header h1{font-family:Playfair Display,serif;font-size:2.4rem;color:#2c251c;margin:0 0 1rem}.card-header .subtitle{font-family:Lora,serif;font-size:1.15rem;color:#5a4a3a;line-height:1.6;margin:0 0 1rem}.card-header .subtitle.made-with-love{font-size:1rem;color:#2c251c;font-style:italic;display:flex;align-items:center;justify-content:center;gap:4px}.card-header .subtitle.made-with-love .inline-heart{margin:0}.contact-links{margin-bottom:3rem}.contact-links h2{font-family:Homemade Apple,cursive;font-size:1.5rem;color:#2c251c;margin-bottom:1.5rem}.links-grid{display:flex;flex-direction:column;gap:1.5rem}.link-card{display:flex;align-items:center;padding:1.5rem;background:#faf8f5;border:1px solid #D4C9BC;border-radius:8px;text-decoration:none;color:#2c251c;text-align:left;transition:all .3s cubic-bezier(.165,.84,.44,1);cursor:pointer}.link-card .link-icon{width:54px;height:54px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-right:1.25rem;flex-shrink:0}.link-card .link-details{flex-grow:1}.link-card .link-details h3{font-family:Inter,sans-serif;font-size:1.15rem;font-weight:600;margin:0 0 .25rem}.link-card .link-details p{font-family:Lora,serif;font-size:.9rem;color:#5a4a3a;margin:0;line-height:1.4}.link-card .link-arrow{color:#5a4a3a;opacity:.5;transition:transform .2s,opacity .2s}.link-card.github-card .link-icon{background:#3333331a;color:#333}.link-card.github-card:hover{border-color:#333;background:#33333305;box-shadow:0 8px 24px #33333314}.link-card.github-card:hover .link-arrow{color:#333;opacity:1;transform:translate(3px)}.link-card.email-card .link-icon{background:#d96c6c1a;color:#d96c6c}.link-card.email-card:hover{border-color:#d96c6c;background:#d96c6c05;box-shadow:0 8px 24px #d96c6c14}.link-card.email-card:hover .link-arrow{color:#d96c6c;opacity:1;transform:translate(3px)}.link-card.linkedin-card .link-icon{background:#0a66c21a;color:#0a66c2}.link-card.linkedin-card:hover{border-color:#0a66c2;background:#0a66c205;box-shadow:0 8px 24px #0a66c214}.link-card.linkedin-card:hover .link-arrow{color:#0a66c2;opacity:1;transform:translate(3px)}.thank-you-footer{border-top:1px solid rgba(212,201,188,.4);padding-top:2rem}.thank-you-footer p{font-family:Homemade Apple,cursive;font-size:1.2rem;color:#5c82a6;margin:0}@media (max-width: 768px){.contact-page{padding:2rem 1rem}.contact-card{padding:2rem 1.5rem}.card-header h1{font-size:1.8rem}.link-card{padding:1.25rem}.link-card .link-icon{width:44px;height:44px;margin-right:1rem}.link-card .link-details h3{font-size:1.05rem}}:root{--paper-bg: #F9F6F0;--ink-dark: #2C251C;--ink-light: #5A4A3A;--accent-blue: #5C82A6;--accent-yellow: #F0C05A;--accent-red: #D96C6C;--border-brown: #D4C9BC;--font-header: Playfair Display, serif;--font-accent: Homemade Apple, cursive;--font-body: Lora, serif;--font-sans: Inter, sans-serif;--shadow-soft: 0 4px 12px rgba(44, 37, 28, .08);--shadow-hard: 0 8px 24px rgba(44, 37, 28, .15);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px}.easter-egg-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#2c251c;opacity:0;transition:opacity 2s ease-in-out;padding:2rem;overflow:hidden;position:relative}.easter-egg-page.show{opacity:1}.paper-container{position:relative;z-index:10;max-width:600px;width:100%}.paper{background-color:#fdfbf7;padding:4rem 3rem;position:relative;box-shadow:0 20px 40px #00000080;transform:rotate(-1.5deg);border:1px solid rgba(44,37,28,.1);border-radius:15px 225px 15px 255px/255px 15px 225px}.paper-texture{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(#d4c9bc 1px,transparent 1px);background-size:100% 2.5rem;opacity:.3;pointer-events:none}.paper-content{position:relative;z-index:2}.date-stamp{font-family:Courier New,Courier,monospace;color:#5c82a6;font-size:1rem;opacity:.8;position:absolute;top:-2rem;right:-1rem;transform:rotate(5deg);border:1px dashed rgba(92,130,166,.5);padding:.25rem .5rem;border-radius:4px}.message-title{font-family:Playfair Display,serif;font-size:3.5rem;color:#2c251c;text-align:center;margin-bottom:2rem;line-height:1}.message-body{margin-bottom:2rem}.message-body .message-line{font-family:Homemade Apple,cursive;font-size:1.3rem;color:#2c251ce6;line-height:2;margin:0 0 1rem;text-align:center}.message-quote{background:#f0c05a26;padding:2rem;margin:2rem 0;position:relative;border-left:3px solid #f0c05a}.message-quote .quote-icon{position:absolute;top:1rem;left:1rem;color:#f0c05a;opacity:.5}.message-quote .quote-text{font-family:Playfair Display,serif;font-style:italic;font-size:1.4rem;text-align:center;color:#2c251c;margin:0;line-height:1.6}.message-footer{margin-top:3rem;text-align:center}.message-footer .footer-line{font-family:Homemade Apple,cursive;font-size:1.2rem;color:#2c251ce6;line-height:2}.signature{margin-top:4rem;display:flex;flex-direction:column;align-items:center}.signature .signature-line{width:100px;height:1px;background:#d4c9bc;margin-bottom:1rem}.signature .signature-text{font-family:Courier New,Courier,monospace;font-size:.9rem;text-transform:uppercase;letter-spacing:2px;color:#887a6b}.doodle-decoration{position:absolute;color:#5c82a6;opacity:.5;pointer-events:none}.doodle-decoration.top-left{top:-2rem;left:-2rem;transform:rotate(-15deg)}.doodle-decoration.bottom-right{bottom:-1rem;right:-2rem;transform:rotate(20deg);color:#f0c05a}.particles{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1}.particle{position:absolute;bottom:-50px;width:4px;height:4px;background-color:#f0c05a80;border-radius:50%;animation:float-up linear infinite}.particle:nth-child(2n){background-color:#5c82a680;width:6px;height:6px}@keyframes float-up{0%{transform:translateY(0) rotate(0);opacity:0}20%{opacity:1}80%{opacity:.8}to{transform:translateY(-100vh) rotate(360deg);opacity:0}}@media (max-width: 768px){.easter-egg-page{padding:1rem}.paper{padding:3rem 1.5rem}.message-title{font-size:2.5rem}.message-body .message-line{font-size:1.1rem}.message-quote{padding:1.5rem 1rem}.message-quote .quote-text{font-size:1.2rem}}
