:root{--cream: #fff8e7;--paper: #fdf1d7;--choco: #6b4a2f;--choco-deep: #4a3728;--leaf: #6fbf63;--leaf-deep: #4e9a44;--peach: #ff9f68;--sun: #ffd166;--sky: #8ecdf5;--berry: #e05d5d;--ink: #3a2b1d;--font-display: "Fredoka", "Comic Sans MS", cursive;--font-body: "Nunito", "Trebuchet MS", sans-serif;--shadow-panel: 0 6px 0 rgba(107, 74, 47, .28), 0 18px 44px rgba(58, 42, 26, .22);--shadow-lift: 0 4px 0 rgba(107, 74, 47, .28);--stitch: rgba(107, 74, 47, .28);--radius: 22px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:linear-gradient(#8ecdf5,#cfe9f7 55%,#ffd9b8) fixed;min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:var(--sun);color:var(--choco-deep)}a{color:var(--leaf-deep);font-weight:700;text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:#4e9a4473}a:hover{text-decoration-color:var(--leaf-deep)}.wrap{width:min(760px,calc(100% - 2rem));margin:0 auto}.site-main{padding:1.6rem 0 3rem}.panel{background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.7),transparent 42%),var(--cream);border:3px solid var(--choco);border-radius:var(--radius);box-shadow:var(--shadow-panel);position:relative}.panel:after{content:"";position:absolute;inset:7px;border:2px dashed var(--stitch);border-radius:calc(var(--radius) - 9px);pointer-events:none}.site-header{position:sticky;top:0;z-index:10;padding:.9rem 0}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;padding:.6rem 1.1rem;animation:drop-in .6s cubic-bezier(.22,1.4,.36,1) both}.site-title{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--choco-deep);text-decoration:none}.site-title:hover{text-decoration:none}.site-title .globe{font-size:1.35rem;display:inline-block;animation:float 3s ease-in-out infinite}.back-link{font-family:var(--font-display);font-size:.85rem;font-weight:600;color:var(--choco-deep);text-decoration:none;background:var(--paper);border:2.5px solid var(--choco);border-radius:999px;padding:.32rem .85rem;box-shadow:0 3px #6b4a2f4d;transition:transform .12s ease,box-shadow .12s ease;white-space:nowrap}.back-link:hover{transform:translateY(-2px);box-shadow:0 5px #6b4a2f4d;text-decoration:none}.back-link:active{transform:translateY(1px);box-shadow:0 1px #6b4a2f4d}.hero{padding:1.5rem 1.6rem 1.4rem;margin-bottom:1.4rem;text-align:center;animation:drop-in .6s .05s cubic-bezier(.22,1.4,.36,1) both}.hero h1{font-family:var(--font-display);font-size:clamp(1.6rem,5vw,2.2rem);font-weight:700;color:var(--choco-deep);line-height:1.2}.hero p{margin-top:.4rem;font-weight:600;opacity:.8;font-size:.95rem}.post-list{list-style:none;display:flex;flex-direction:column;gap:1rem}.post-card{display:block;padding:1.15rem 1.35rem 1.2rem;text-decoration:none;color:inherit;transition:transform .14s ease,box-shadow .14s ease;animation:drop-in .55s cubic-bezier(.22,1.4,.36,1) both}.post-list li:nth-child(2) .post-card{animation-delay:.06s}.post-list li:nth-child(3) .post-card{animation-delay:.12s}.post-list li:nth-child(4) .post-card{animation-delay:.18s}.post-list li:nth-child(n+5) .post-card{animation-delay:.24s}.post-card:hover{transform:translateY(-3px) rotate(-.4deg);box-shadow:0 9px #6b4a2f47,0 22px 48px #3a2a1a3d;text-decoration:none}.post-card:active{transform:translateY(1px)}.post-card h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--choco-deep);line-height:1.25}.post-card time,.post-meta time{font-family:var(--font-display);font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--leaf-deep)}.post-card p{margin-top:.35rem;font-size:.92rem;font-weight:600;line-height:1.55;opacity:.85}.tag-row{list-style:none;display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.6rem}.tag{font-size:.7rem;font-weight:800;padding:.16rem .6rem;border-radius:999px;background:var(--sun);border:2px solid var(--choco);color:var(--choco-deep)}.empty-note{padding:1.6rem;text-align:center;font-weight:700;opacity:.8}.post-panel{padding:clamp(1.3rem,4vw,2.2rem);animation:drop-in .55s cubic-bezier(.22,1.4,.36,1) both}.post-header{text-align:center;padding-bottom:1.2rem;margin-bottom:1.4rem;border-bottom:2px dashed rgba(107,74,47,.3)}.post-header h1{font-family:var(--font-display);font-size:clamp(1.55rem,5vw,2.3rem);font-weight:700;color:var(--choco-deep);line-height:1.2;margin:.35rem 0 .5rem}.post-meta{display:flex;justify-content:center;align-items:baseline;gap:.7rem;flex-wrap:wrap}.post-updated{font-size:.74rem;font-weight:800;opacity:.6}.post-header .tag-row{justify-content:center}.post-hero-img{width:100%;height:auto;border:3px solid var(--choco);border-radius:16px;box-shadow:var(--shadow-lift);margin-top:1rem}.prose{max-width:68ch;margin:0 auto;font-size:1.02rem;line-height:1.75}.prose>*+*{margin-top:1em}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font-display);font-weight:700;color:var(--choco-deep);line-height:1.3;margin-top:1.8em}.prose h2{font-size:1.45rem;padding-bottom:.25rem;border-bottom:2px dashed rgba(107,74,47,.25)}.prose h3{font-size:1.18rem}.prose h4{font-size:1.02rem}.prose strong{color:var(--choco-deep)}.prose ul,.prose ol{padding-left:1.4rem}.prose li+li{margin-top:.35em}.prose ul li::marker{color:var(--leaf-deep)}.prose blockquote{background:var(--paper);border:2.5px solid rgba(107,74,47,.55);border-left:6px solid var(--peach);border-radius:14px;padding:.8rem 1.1rem;font-weight:600}.prose blockquote>*+*{margin-top:.6em}.prose img{max-width:100%;height:auto;border:3px solid var(--choco);border-radius:16px;box-shadow:var(--shadow-lift)}.prose hr{border:none;border-top:2px dashed rgba(107,74,47,.35);margin:2rem auto;width:60%}.prose table{display:block;overflow-x:auto;border-collapse:collapse;font-size:.92rem}.prose th,.prose td{border:2px solid rgba(107,74,47,.4);padding:.4rem .7rem;text-align:left}.prose th{font-family:var(--font-display);background:var(--paper);color:var(--choco-deep)}.prose code{font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em}.prose :not(pre)>code{background:var(--paper);border:1.5px solid rgba(107,74,47,.4);border-radius:7px;padding:.1em .4em;color:var(--choco-deep)}.prose pre{border:2.5px solid var(--choco);border-radius:14px;box-shadow:var(--shadow-lift);padding:1rem 1.15rem;overflow-x:auto;line-height:1.6;font-size:.88rem}.prose pre code{font-size:1em;background:none;border:none;padding:0}.post-footer{max-width:68ch;margin:2.2rem auto 0;padding-top:1.1rem;border-top:2px dashed rgba(107,74,47,.3);display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;font-size:.9rem;font-weight:700}.lost-panel{padding:2.4rem 1.8rem;text-align:center;animation:drop-in .55s cubic-bezier(.22,1.4,.36,1) both}.lost-emoji{font-size:3rem;display:block;animation:float 2.6s ease-in-out infinite}.lost-panel h1{font-family:var(--font-display);font-size:1.7rem;font-weight:700;color:var(--choco-deep);margin:.6rem 0 .3rem}.lost-panel p{font-weight:600;opacity:.85;margin-bottom:1.2rem}.button-primary{display:inline-block;font-family:var(--font-display);font-size:.95rem;font-weight:600;padding:.55rem 1.15rem;border-radius:999px;border:3px solid var(--choco);cursor:pointer;text-decoration:none;background:var(--leaf);color:#fff;box-shadow:0 4px 0 var(--leaf-deep);transition:transform .12s ease,box-shadow .12s ease}.button-primary:hover{transform:translateY(-2px);box-shadow:0 6px 0 var(--leaf-deep);text-decoration:none}.button-primary:active{transform:translateY(2px);box-shadow:0 1px 0 var(--leaf-deep)}.site-footer{padding:0 0 2.2rem}.site-footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap;font-family:var(--font-display);font-size:.82rem;font-weight:600;color:var(--choco-deep);background:var(--cream);border:2.5px solid var(--choco);border-radius:999px;padding:.55rem 1.2rem;box-shadow:0 3px #6b4a2f40}.site-footer a{color:var(--leaf-deep);text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-links{display:flex;gap:.9rem}@keyframes drop-in{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:560px){.site-header .wrap{justify-content:center;text-align:center}.site-footer .wrap{justify-content:center;border-radius:22px}.post-footer{justify-content:center}}
