@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-font-weight:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-600:oklch(54.6% .245 262.881);--color-gray-600:oklch(44.6% .03 256.802);--spacing:.25rem;--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--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:var(--default-font-feature-settings,normal);font-variation-settings:var(--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:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-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{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}: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:currentColor}@supports (color:color-mix(in lab,red,red)){::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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-blue-600{color:var(--color-blue-600)}.text-gray-600{color:var(--color-gray-600)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--moss-950:#101d15;--moss-900:#1a2f22;--moss-800:#2b4a34;--moss-600:#3f6b48;--moss-400:#6b9b6f;--sage-200:#d7e4d0;--cream:#f4efe3;--bark-800:#3a2c22;--bark-600:#5c4632;--bark-400:#8a6b4c;--gold:#c9a24b;--gold-light:#efd08a;--font-display:"Fraunces", "Iowan Old Style", Georgia, serif;--font-body:"Nunito", "Trebuchet MS", system-ui, sans-serif}*{box-sizing:border-box}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:var(--moss-950);color:var(--cream);min-height:100vh;margin:0;font-weight:500}.atmosphere{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.atmosphere>*{transition:opacity 6s linear;position:absolute}.sky{z-index:1;inset:0}.sky-night{background:linear-gradient(#070f1c,#0d1b2b 26%,#132a29 58%,#101d15)}.sky-day{background:linear-gradient(#6fa8c4,#93c1cd 32%,#c2d6c0,#d8ddb6)}.sky-golden{background:linear-gradient(#4b3f66,#9b5c55 30%,#d9834f 58%,#f2bb79 82%,#f7d9a0)}.star-field{z-index:2;inset:0}.star{animation:twinkle var(--twinkle) ease-in-out var(--delay) infinite;background:#f8f4e6;border-radius:999px;position:absolute;box-shadow:0 0 6px #f8f4e6bf}@keyframes twinkle{0%,to{opacity:.16;transform:scale(.75)}50%{opacity:var(--peak);transform:scale(1.2)}}.meteor{opacity:0;background:linear-gradient(90deg,#f8f4e600,#f8f4e6f2);border-radius:999px;width:160px;height:2px;position:absolute}.meteor-a{animation:19s ease-in 6s infinite meteor-fall;top:9%;left:-12%}.meteor-b{animation:27s ease-in 15s infinite meteor-fall;top:24%;left:12%}@keyframes meteor-fall{0%{opacity:0;transform:translate(0)rotate(21deg)}1.5%{opacity:1}8%{opacity:0;transform:translate(62vw,24vh)rotate(21deg)}to{opacity:0;transform:translate(62vw,24vh)rotate(21deg)}}.aurora-field{z-index:3;mix-blend-mode:screen;height:80%;transition:opacity 3.4s ease-out;inset:-6% -16% auto}.aurora-curtain{transform-origin:50% 0;width:120%;height:100%;position:absolute;top:0;left:-10%;-webkit-mask-image:linear-gradient(#0000 0%,#000 18%,#000000b3 62%,#0000 97%);mask-image:linear-gradient(#0000,#000 18%,#000000b3 62%,#0000 97%)}.aurora-curtain-a{filter:blur(16px);opacity:.85;background:repeating-linear-gradient(98deg,#60f0aa00 0 1.6%,#60f0aa6b 2.6%,#a6ffd880 3.2%,#60f0aa29 4.3%,#60f0aa00 6.4%);animation:26s ease-in-out infinite alternate aurora-sway-a}.aurora-curtain-b{filter:blur(22px);opacity:.7;background:repeating-linear-gradient(86deg,#48cedc00 0 2.4%,#48cedc57 3.6%,#bafff652 4.2%,#48cedc00 7.4%);animation:34s ease-in-out infinite alternate aurora-sway-b}.aurora-curtain-c{filter:blur(26px);opacity:.55;background:repeating-linear-gradient(110deg,#9478ec00 0 3.2%,#ab82f04d 4.6%,#e28cdc38 5.5%,#9478ec00 9%);height:56%;animation:41s ease-in-out infinite alternate aurora-sway-c}.aurora-haze{filter:blur(30px);background:radial-gradient(70% 62% at 30% 100%,#50e0a64d,#0000 72%),radial-gradient(58% 55% at 76% 94%,#60c4ec38,#0000 74%);animation:18s ease-in-out infinite aurora-breathe;position:absolute;inset:20% -6% 0}@keyframes aurora-sway-a{0%{transform:translate(-3%,1%)skew(-7deg)scaleY(.94)}to{transform:translate(4%,-2%)skew(6deg)scaleY(1.1)}}@keyframes aurora-sway-b{0%{transform:translate(3%,-1%)skew(9deg)scaleY(1.08)}to{transform:translate(-4%,2%)skew(-5deg)scaleY(.9)}}@keyframes aurora-sway-c{0%{transform:translate(-2%)skew(4deg)scaleY(1)}to{transform:translate(5%,-3%)skew(-8deg)scaleY(1.16)}}@keyframes aurora-breathe{0%,to{opacity:.5}50%{opacity:1}}.aurora-canopy{z-index:7;mix-blend-mode:screen;background:linear-gradient(#0000 36%,#56d6a033 64%,#409cc41f 84%,#0000);transition:opacity 3.4s ease-out;inset:0}.aurora-curtain,.aurora-haze{animation-play-state:paused}.aurora-field.is-on .aurora-curtain,.aurora-field.is-on .aurora-haze{will-change:transform;animation-play-state:running}@media(max-width:640px){.aurora-curtain-c{display:none}.aurora-curtain-b{filter:blur(16px)}}.celestial{z-index:3;transition:opacity 6s linear,left 62s linear,top 62s linear;transform:translate(-50%,-50%)}.sun-disc,.moon-disc{border-radius:999px;display:block}.sun-disc{background:radial-gradient(circle at 40% 36%,#fffaea,#ffdf9d 42%,#f0a94f 78%,#e08d3c);width:78px;height:78px;box-shadow:0 0 70px 26px #ffce8066,0 0 180px 80px #ffbe6833}.moon-disc{background:radial-gradient(circle at 36% 30%,#f9f6e8,#dcd8c0 58%,#b4bba6);width:58px;height:58px;box-shadow:0 0 52px 18px #cee0e838,inset -11px -7px 0 -3px #0a141a4d}.sun-rays{z-index:3;background:repeating-conic-gradient(from 0deg at var(--ray-x,50%) var(--ray-y,25%),#ffd89838 0deg 3.5deg,#ffd89800 3.5deg 13deg);-webkit-mask-image:radial-gradient(56% 52% at var(--ray-x,50%) var(--ray-y,25%),#000 0%,transparent 80%);mask-image:radial-gradient(56% 52% at var(--ray-x,50%) var(--ray-y,25%),#000 0%,transparent 80%);transition:opacity 6s linear,background 62s linear;animation:26s ease-in-out infinite ray-breathe;inset:-35%}@keyframes ray-breathe{0%,to{scale:1}50%{scale:1.05}}.cloud-band{z-index:4;inset:0}.cloud{opacity:var(--cloud-opacity);filter:blur(14px);animation:cloud-drift var(--drift) linear var(--delay) infinite;background:radial-gradient(58% 100% at 32% 62%,#ffffffb8,#fff0 72%),radial-gradient(46% 92% at 64% 42%,#ffffff9e,#fff0 74%),radial-gradient(38% 80% at 84% 66%,#ffffff80,#fff0 76%);border-radius:999px;position:absolute;left:-45vw}@keyframes cloud-drift{0%{translate:0}to{translate:190vw}}.bird-sky{z-index:5;transition:opacity 9s linear;inset:0}.flock{width:190px;height:110px;scale:var(--scale) var(--scale);animation:flock-right var(--cross) linear var(--cross-delay) infinite;position:absolute;left:0}.flock.leftward{scale:calc(var(--scale) * -1) var(--scale);animation-name:flock-left}@keyframes flock-right{0%{translate:-25vw}to{translate:125vw}}@keyframes flock-left{0%{translate:125vw}to{translate:-25vw}}.bird{width:30px;height:15px;scale:var(--bird-scale);animation:bird-bob var(--bob) ease-in-out var(--flap-delay) infinite;position:absolute}@keyframes bird-bob{0%,to{translate:0}50%{translate:0 -12px}}.bird-wings{width:100%;height:100%;overflow:visible}.wing{fill:#141f18c7;transform-box:fill-box;animation:flap var(--flap) ease-in-out var(--flap-delay) infinite}.wing-left{--fd:1;transform-origin:100%}.wing-right{--fd:-1;transform-origin:0}@keyframes flap{0%,to{transform:rotate(calc(var(--fd) * -20deg))}50%{transform:rotate(calc(var(--fd) * 36deg))}}.forest{z-index:6;filter:brightness(var(--forest-bright,1)) saturate(var(--forest-sat,1));background-image:url(/forest-silhouette.svg);background-position:bottom;background-repeat:no-repeat;background-size:cover;transition:filter 6s linear;inset:0}.canopy-tint{z-index:7;mix-blend-mode:soft-light;inset:0}.firefly-field{z-index:8;transition:opacity 9s linear;inset:0}.firefly{animation:firefly-drift var(--drift) ease-in-out var(--delay) infinite;position:absolute}@keyframes firefly-drift{0%,to{translate:0}33%{translate:var(--ax) var(--ay)}66%{translate:var(--bx) var(--by)}}.firefly-glow{width:100%;height:100%;animation:firefly-pulse var(--pulse) ease-in-out var(--delay) infinite;background:radial-gradient(circle,#fff8cc,#f0cd6a 40%,#c9a24b00 72%);border-radius:999px;display:block;box-shadow:0 0 14px 5px #efd08a59}@keyframes firefly-pulse{0%,to{opacity:.04;transform:scale(.65)}18%{opacity:.8}46%{opacity:1;transform:scale(1.3)}72%{opacity:.22}}.reader-scrim{z-index:9;background:radial-gradient(124% 80% at 50% 20%,#070f0ae0,#070f0a9e 44%,#070f0a1f 74%,#070f0a00),linear-gradient(90deg,#070f0a00,#070f0a80 24%,#070f0a8c 76%,#070f0a00);inset:0}.grain{z-index:-1;pointer-events:none;opacity:.045;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}code{font-family:Menlo,Monaco,Consolas,Courier New,monospace}.library{max-width:1100px;margin:0 auto;padding:3.5rem 1.5rem 5rem;position:relative}.library-header{text-align:center;margin-bottom:3rem}.eyebrow{text-transform:uppercase;letter-spacing:.32em;color:var(--gold);font-size:.72rem;font-weight:800;font-family:var(--font-body);margin:0 0 .75rem}.library-header h1{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" 60,"WONK" 1;letter-spacing:-.02em;background:linear-gradient(176deg,var(--cream) 18%,var(--gold-light) 88%);color:#0000;text-wrap:balance;-webkit-background-clip:text;background-clip:text;margin:0 0 1rem;font-size:clamp(2.3rem,6.5vw,4rem);font-weight:700;line-height:1.02}.subtitle{color:var(--sage-200);max-width:34rem;font-size:1.02rem;line-height:1.65;font-family:var(--font-body);text-wrap:pretty;margin:0 auto}.progress{font-family:var(--font-body);color:var(--sage-200);flex-wrap:wrap;justify-content:center;align-items:center;gap:.9rem;margin-top:2rem;display:flex}.progress-count{letter-spacing:.04em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#101d158c;border:1px solid #d7e4d029;border-radius:999px;align-items:baseline;gap:.4rem;padding:.5rem 1rem;font-size:.9rem;font-weight:700;display:inline-flex}.progress-count strong{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"WONK" 1;color:var(--gold-light);font-size:1.15rem}.shuffle-btn{background:linear-gradient(170deg,var(--bark-600),var(--bark-800));color:var(--cream);font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;border:1px solid #c9a24b73;border-radius:999px;align-items:center;gap:.5rem;padding:.55rem 1.25rem;font-size:.88rem;font-weight:700;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex;box-shadow:0 6px 16px #0000004d}.shuffle-btn:hover{background:linear-gradient(170deg,var(--bark-400),var(--bark-600));transform:translateY(-2px);box-shadow:0 10px 22px #00000061}.shuffle-btn:active{transform:translateY(0)}.shuffle-btn svg{width:1rem;height:1rem}:where(.shuffle-btn,.present-lid):focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}.box-grid{flex-wrap:wrap;justify-content:center;gap:1.1rem;display:flex}.present-cell{aspect-ratio:3/4;flex:150px;max-width:11rem;position:relative}.skeleton-cell{background:#2b4a3459;border-radius:16px;position:relative;overflow:hidden}.skeleton-cell:after{content:"";background:linear-gradient(110deg,#0000 20%,#6b9b6f4d,#0000 80%);animation:1.6s ease-in-out infinite skeleton-sweep;position:absolute;inset:0}@keyframes skeleton-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.loading-note{text-align:center;color:var(--sage-200);letter-spacing:.04em;opacity:.8;margin:1.25rem 0 0;font-size:.88rem}.present-lid{cursor:pointer;width:100%;height:100%;animation:.5s cubic-bezier(.2,.9,.3,1) backwards box-arrive;animation-delay:var(--stagger,0s);background:radial-gradient(125% 120% at 50% 46%,#0c1811,#060d08 72%);border:none;border-radius:16px;padding:0;transition:transform .22s cubic-bezier(.2,.8,.3,1),box-shadow .22s;position:relative;overflow:hidden;box-shadow:0 12px 24px #00000061,inset 0 0 0 1px #c9a24b4d,inset 0 1px #f4efe31f}.lid-face{height:50%;position:absolute;left:0;right:0;overflow:hidden}.lid-face-top{top:0}.lid-face-bottom{bottom:0}.lid-art{background:radial-gradient(120% 90% at 22% 8%,#efd08a2e,transparent 60%),linear-gradient(155deg,var(--moss-600),var(--moss-900) 78%);border-radius:16px;width:100%;height:200%;position:absolute;left:0;box-shadow:inset 0 1px #f4efe31f}.lid-face-top .lid-art{top:0}.lid-face-bottom .lid-art{bottom:0}.lid-knot{aspect-ratio:1;background:linear-gradient(140deg,#fff4d2,var(--gold) 52%,var(--bark-600));border-radius:7px;width:24%;transition:transform .28s cubic-bezier(.2,.8,.3,1),box-shadow .28s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 3px 9px #0006,inset 0 0 0 1px #fff6db80}@keyframes box-arrive{0%{opacity:0;transform:translateY(14px)scale(.94)}to{opacity:1;transform:none}}.present-lid:hover{transform:translateY(-5px)rotate(-.6deg)scale(1.025);box-shadow:0 20px 34px #00000073,inset 0 0 0 1px #c9a24b8c,inset 0 1px #f4efe333}.present-lid:active{transform:translateY(-1px)scale(.99)}.present-lid:hover .lid-knot{transform:translate(-50%,-50%)rotate(52deg)scale(1.09);box-shadow:0 3px 12px #00000073,inset 0 0 0 1px #fff6dbe6,0 0 18px #efd08a8c}.crackle-field{pointer-events:none;border-radius:16px;position:absolute;inset:0}.crackle-field:before{content:"";opacity:0;background:radial-gradient(circle,#fff4d66b,#c9a24b29 38%,#0000 70%);border-radius:50%;transition:opacity .34s;position:absolute;inset:-12%}.present-lid:hover .crackle-field:before{opacity:1}.crackle{left:var(--cx);top:var(--cy);width:var(--cs);height:var(--cs);margin-left:calc(var(--cs) / -2);margin-top:calc(var(--cs) / -2);opacity:0;clip-path:polygon(50% 0%,59% 41%,100% 50%,59% 59%,50% 100%,41% 59%,0% 50%,41% 41%);background:radial-gradient(closest-side,#fffbef,#fff4d6eb 34%,#c9a24b00);position:absolute}.present-lid:hover .crackle{animation:crackle-pop var(--cdur) ease-in-out var(--cd) infinite}@keyframes crackle-pop{0%{opacity:0;transform:translateY(7px)scale(.15)rotate(0)}28%{opacity:1;transform:translate(0)scale(1)rotate(32deg)}62%{opacity:.6;transform:translateY(-9px)scale(.68)rotate(60deg)}to{opacity:0;transform:translateY(-20px)scale(.1)rotate(92deg)}}.crackle:first-child{--cx:17%;--cy:24%;--cs:15px;--cd:0s;--cdur:1.25s}.crackle:nth-child(2){--cx:74%;--cy:17%;--cs:11px;--cd:.15s;--cdur:1.5s}.crackle:nth-child(3){--cx:42%;--cy:12%;--cs:9px;--cd:.42s;--cdur:1.35s}.crackle:nth-child(4){--cx:86%;--cy:39%;--cs:13px;--cd:.26s;--cdur:1.6s}.crackle:nth-child(5){--cx:9%;--cy:52%;--cs:10px;--cd:.56s;--cdur:1.3s}.crackle:nth-child(6){--cx:58%;--cy:34%;--cs:17px;--cd:.69s;--cdur:1.45s}.crackle:nth-child(7){--cx:28%;--cy:68%;--cs:12px;--cd:.33s;--cdur:1.55s}.crackle:nth-child(8){--cx:79%;--cy:71%;--cs:9px;--cd:.81s;--cdur:1.28s}.crackle:nth-child(9){--cx:50%;--cy:84%;--cs:14px;--cd:.47s;--cdur:1.42s}.crackle:nth-child(10){--cx:15%;--cy:87%;--cs:10px;--cd:.92s;--cdur:1.62s}.crackle:nth-child(11){--cx:66%;--cy:56%;--cs:11px;--cd:.1s;--cdur:1.38s}.crackle:nth-child(12){--cx:35%;--cy:45%;--cs:8px;--cd:.63s;--cdur:1.5s}.ribbon-v,.ribbon-h{position:absolute}.ribbon-v{width:13%;top:0;bottom:0;left:50%;transform:translate(-50%)}.ribbon-h{height:13%;top:50%;left:0;right:0;transform:translateY(-50%)}.ribbon-v:before,.ribbon-v:after,.ribbon-h:before,.ribbon-h:after{content:"";background:linear-gradient(180deg,var(--gold-light),var(--gold) 45%,var(--bark-400));position:absolute;box-shadow:0 0 12px #c9a24b40}.ribbon-v:before{height:51%;top:0;left:0;right:0}.ribbon-v:after{background:linear-gradient(0deg,var(--gold-light),var(--gold) 45%,var(--bark-400));height:51%;bottom:0;left:0;right:0}.ribbon-h:before{background:linear-gradient(90deg,var(--gold-light),var(--gold) 45%,var(--bark-400));width:51%;top:0;bottom:0;left:0}.ribbon-h:after{background:linear-gradient(270deg,var(--gold-light),var(--gold) 45%,var(--bark-400));width:51%;top:0;bottom:0;right:0}.present-lid:after{content:"";pointer-events:none;background:linear-gradient(72deg,#0000 42%,#f4efe366,#0000 58%);transition:transform .55s;position:absolute;inset:-40%;transform:translate(-120%)}.present-lid:hover:after{transform:translate(120%)}.box-number{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"WONK" 1;color:var(--cream);background:#101d159e;border:1px solid #c9a24b59;border-radius:10px;padding:.22rem .5rem .3rem;font-size:1.35rem;font-weight:800;line-height:1;position:absolute;bottom:9px;right:10px}.video-embed{background:#0b1510;border-radius:16px;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:0 12px 26px #00000073,inset 0 0 0 1px #c9a24b4d}.video-embed iframe{border:0;width:100%;height:100%;display:block}.video-embed.horizontal{aspect-ratio:16/9}.hidden-gift{text-align:center;margin-top:4.5rem;padding-top:3rem;position:relative}.hidden-gift:before{content:"";background:linear-gradient(90deg,#0000,#c9a24b8c,#0000);height:1px;position:absolute;top:0;left:12%;right:12%}.hidden-gift.locked .lock-icon{width:1.9rem;height:1.9rem;color:var(--gold);opacity:.7;margin:0 auto .85rem;display:block}.hidden-gift.unlocked h2{font-family:var(--font-display);font-variation-settings:"SOFT" 60,"WONK" 1;letter-spacing:-.01em;color:var(--gold-light);margin:.25rem 0 .9rem;font-size:clamp(1.7rem,4vw,2.3rem);font-weight:700}.final-lid{cursor:pointer;background:radial-gradient(125% 120% at 50% 46%,#14100a,#070604 72%);border:none;border-radius:18px;width:220px;height:280px;margin:1.75rem auto 0;position:relative;overflow:hidden;box-shadow:0 18px 38px #00000080,inset 0 0 0 2px #f4efe359}.final-lid:before{content:"";z-index:1;pointer-events:none;border-radius:18px;animation:3.4s ease-in-out infinite final-pulse;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #fff6db99,inset 0 0 26px #c9a24b73}.final-lid .lid-art{border-radius:18px}@keyframes final-pulse{0%,to{opacity:0}50%{opacity:1}}.final-lid .ribbon-v:before,.final-lid .ribbon-v:after,.final-lid .ribbon-h:before,.final-lid .ribbon-h:after{background:linear-gradient(180deg,var(--cream),var(--sage-200) 50%,var(--moss-400))}.final-lid .lid-art{background:radial-gradient(120% 90% at 25% 10%,#fff4d680,transparent 58%),linear-gradient(155deg,var(--gold),var(--bark-600) 82%)}.final-lid .lid-knot{background:linear-gradient(140deg,#fff,var(--sage-200) 55%,var(--moss-400))}.hidden-gift .video-embed{width:220px;height:380px;margin:1.75rem auto 0}.hidden-gift .video-embed.horizontal{width:320px;height:180px}.visit-counter{text-align:center;margin-top:4.5rem;padding-top:2.75rem;position:relative}.visit-counter:before{content:"";background:linear-gradient(90deg,#0000,#6b9b6f80,#c9a24b99,#6b9b6f80,#0000);height:1px;position:absolute;top:0;left:12%;right:12%}.shamrock-row{justify-content:center;align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.shamrock{width:1.05rem;height:1.05rem;color:var(--moss-400);opacity:.6;display:block}.shamrock.lead{color:#7cba80;opacity:1;width:1.85rem;height:1.85rem}.visit-count{font-family:var(--font-display);font-optical-sizing:auto;font-variation-settings:"SOFT" 60,"WONK" 1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:linear-gradient(176deg,var(--cream) 14%,var(--gold-light) 92%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:.2rem 0 .5rem;font-size:clamp(2.3rem,7vw,3.5rem);font-weight:800;line-height:1.05;display:block}.visit-count.is-pending{color:#d7e4d047;background:0 0;-webkit-background-clip:border-box;background-clip:border-box}.visit-label{color:var(--sage-200);letter-spacing:.16em;text-transform:uppercase;opacity:.85;margin:0;font-size:.86rem;font-weight:700}.visit-blessing{max-width:30rem;color:var(--sage-200);opacity:.8;text-wrap:pretty;margin:1.25rem auto 0;font-size:.98rem;font-style:italic;line-height:1.6}@media(max-width:480px){.box-grid{gap:.85rem}.present-cell{flex-basis:124px}.library{padding:2.5rem 1.1rem 4rem}}@media(prefers-reduced-motion:reduce){.present-lid,.skeleton-cell:after,.final-lid:before,.star,.meteor,.cloud,.flock,.bird,.wing,.firefly,.firefly-glow,.sun-rays,.aurora-curtain,.aurora-haze{animation:none}.present-lid:after{display:none}.present-lid:hover .crackle{animation:none}.present-lid:hover{transform:translateY(-2px)}.present-lid:hover .lid-knot{transform:translate(-50%,-50%)rotate(45deg)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
