:root{--background-base:#f4f1ea;--background-surface:#fdfbf7;--background-surface-hover:#e0ddd4;--glass-bg:#fdfbf7;--glass-border:#1c1a17;--glass-shadow:6px 6px 0px rgba(0,0,0,.1);--text-primary:#1c1a17;--text-secondary:#4a4a4a;--text-tertiary:#6b6b70;--accent-primary:#e63946;--accent-secondary:#00509d;--accent-glow:rgba(230,57,70,.2);--success:#10b981;--danger:#ef4444;--radius-sm:6px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--transition-fast:0.15s ease-in-out;--transition-normal:0.3s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.5s cubic-bezier(0.4,0,0.2,1)}*{box-sizing:border-box;padding:0;margin:0}body{background-color:var(--background-base);color:var(--text-primary);font-family:Pangolin,cursive;--font-pangolin:"Pangolin";--font-jersey-10:"Jersey 10";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;min-height:100vh;overflow-x:hidden;background-image:radial-gradient(circle at 15% 50%,rgba(109,40,217,.08),transparent 25%),radial-gradient(circle at 85% 30%,rgba(79,70,229,.08),transparent 25%),url(/paper_1.png);background-repeat:no-repeat,no-repeat,repeat;background-size:auto,auto,50%;background-attachment:fixed}a{color:inherit;text-decoration:none}button{background:none;border:none;font-family:inherit;cursor:pointer}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background-base)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,#a78bfa,#818cf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.font-pixel,h1,h2{font-family:var(--font-jersey-10),monospace;font-weight:400;letter-spacing:2px}.font-rebel,h3,h4{font-family:var(--font-pangolin),cursive}.sketch-box{background:#fdfbf7;border:3px solid #1c1a17;border-radius:255px 15px 225px 15px/15px 225px 15px 255px;box-shadow:6px 6px 0 rgba(0,0,0,.1);transition:all .2s ease-in-out;color:#1c1a17}.sketch-box:hover{transform:translateY(-3px) rotate(-1deg) scale(1.02);box-shadow:8px 8px 0 rgba(0,0,0,.15)}.sketch-box-green{background:#2ca02c;border:3px solid #1c1a17;border-radius:255px 15px 225px 15px/15px 225px 15px 255px;box-shadow:4px 6px 0 #1c1a17;transition:all .2s ease-in-out;color:#fff}.sketch-box-green h3,.sketch-box-green h4,.sketch-box-green p{color:#fff}.sketch-box-green:hover{transform:translateY(-3px) rotate(-1deg) scale(1.03);box-shadow:6px 8px 0 #1c1a17}.sketch-box-blue{background:#007bff;border:3px solid #1c1a17;border-radius:255px 15px 225px 15px/15px 225px 15px 255px;box-shadow:4px 6px 0 #1c1a17;transition:all .2s ease-in-out;color:#fff}.sketch-box-blue .blue-pen-text,.sketch-box-blue h3,.sketch-box-blue h4,.sketch-box-blue p{color:#fff}.sketch-box-blue:hover{transform:translateY(-3px) rotate(-1deg) scale(1.03);box-shadow:6px 8px 0 #1c1a17}.sharpie-btn{display:inline-block;background:#f4f1ea;border:4px solid #1c1a17;border-radius:10px 255px 15px 225px/255px 15px 225px 15px;padding:1rem 2.5rem;font-family:var(--font-pangolin),cursive;font-size:1.8rem;font-weight:700;color:#1c1a17;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);box-shadow:4px 4px 0 #1c1a17;text-decoration:none;transform:rotate(-1deg)}.sharpie-btn:hover{background:#00509d;color:#fdfbf7;transform:rotate(1deg) scale(1.05);box-shadow:6px 6px 0 #1c1a17}.sharpie-btn:active{transform:rotate(0deg) scale(.95);box-shadow:2px 2px 0 #1c1a17}.highlighter-yellow{background:linear-gradient(104deg,rgba(255,250,118,0) .9%,#fffa76 2.4%,rgba(255,250,118,.5) 5.8%,rgba(255,250,118,.9) 93%,rgba(255,250,118,.7) 96%,rgba(255,250,118,0) 98%),linear-gradient(183deg,rgba(255,250,118,0),rgba(255,250,118,.3) 7.9%,rgba(255,250,118,0) 15%);padding:0 .2em}.red-scribble-text{color:#e63946}.blue-pen-text{color:#00509d}.squiggly-line{width:100%;height:20px;background-image:url("data:image/svg+xml,%3Csvg width='100' height='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 10 Q 12.5 0, 25 10 T 50 10 T 75 10 T 100 10' fill='none' stroke='%23333333' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:repeat-x;opacity:.4;margin:2rem 0}@keyframes float{0%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(1deg)}to{transform:translateY(0) rotate(0deg)}}.animate-float{animation:float 4s ease-in-out infinite;transform-origin:center center}.fade-in-section{opacity:0;transform:translateY(10vh);visibility:hidden;transition:opacity .8s ease-out,transform .8s ease-out;will-change:opacity,visibility}.fade-in-section.is-visible{opacity:1;transform:none;visibility:visible}.react-datepicker-wrapper{width:100%}.react-datepicker{background-color:var(--background-base)!important;border:none!important;font-family:inherit!important;color:var(--text-primary)!important;font-size:.95rem!important}.react-datepicker__header{background-color:transparent!important;border-bottom:2px dashed var(--text-primary)!important;padding-top:8px!important}.react-datepicker-time__header,.react-datepicker-year-header,.react-datepicker__current-month{color:var(--text-primary)!important;font-family:var(--font-rebel),sans-serif!important;font-size:1.1rem!important}.react-datepicker__day-name{color:var(--text-secondary)!important;font-family:var(--font-rebel),sans-serif!important;font-weight:700}.react-datepicker__day{color:var(--text-primary)!important;border-radius:4px 8px 6px 10px/10px 6px 8px 4px!important;transition:all .1s ease}.react-datepicker__day:hover{background-color:var(--text-primary)!important;color:var(--background-base)!important;transform:scale(1.1) rotate(-2deg)}.react-datepicker__day--keyboard-selected,.react-datepicker__day--selected{background-color:#228b22!important;color:#fff!important;border:2px solid var(--text-primary)!important;border-radius:4px 8px 6px 10px/10px 6px 8px 4px!important;box-shadow:2px 2px 0 var(--text-primary)}.react-datepicker__navigation-icon:before{border-color:var(--text-primary)!important;border-width:3px 3px 0 0!important}.react-datepicker__day--outside-month{color:var(--text-tertiary)!important;opacity:.5}