@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=Inter:wght@300;400;500;600&display=swap);body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color:#c0392b;--secondary-color:#1a1a2e;--background-color:#fdf6f0;--text-color:#1a1a2e;--accent-color:#f7cac9;--border-color:#e8d5d0;--shadow-color:#00000014;--gold-color:#c9a84c;--text-muted:#6b5b6e;--card-bg:#fff}[data-theme=dark]{--primary-color:#e05c6a;--secondary-color:#f5efe6;--background-color:#13111a;--text-color:#f5efe6;--accent-color:#3d2b3d;--border-color:#2e2a3d;--shadow-color:#0006;--gold-color:#d4a853;--text-muted:#9b8fa0;--card-bg:#1e1b2e}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:hidden;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fdf6f0;background-color:var(--background-color);color:#1a1a2e;color:var(--text-color);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;transition:color .2s ease}.App{background:#0000}.App,.content-wrapper{min-height:100vh;position:relative}.content-wrapper{display:flex;flex-direction:column;z-index:1}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:20px;width:100%}.main-header{font-size:2.5rem;font-weight:700;margin:2rem 0}.main-header,.timeline-header{color:#1a1a2e;color:var(--text-color);font-family:Playfair Display,serif;text-align:center}.timeline-header{font-size:2rem;font-weight:600;margin:3rem 0 2rem}.footer{border-top:1px solid #e8d5d0;border-top:1px solid var(--border-color);color:#6b5b6e;color:var(--text-muted);font-size:.85rem;letter-spacing:.05em;margin-top:auto;padding:2rem;text-align:center}.section-text{margin:60px 0;padding:0 20px;text-align:center}.section-text h2{color:#1a1a2e;color:var(--text-color);font-family:Playfair Display,serif;font-size:1.8rem;font-weight:600;margin:0;opacity:.85}@media (max-width:768px){.main-header{font-size:2rem}.timeline-header{font-size:1.5rem}.section-text{margin:40px 0}.section-text h2{font-size:1.4rem}}@media (max-width:480px){.main-header{font-size:1.7rem}.timeline-header{font-size:1.3rem}.section-text h2{font-size:1.2rem}}.gallery-container{margin:0 auto;max-width:1200px;padding:24px 20px 32px;width:100%}.gallery-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto}.gallery-item{background:var(--accent-color);border-radius:14px;box-shadow:0 4px 20px var(--shadow-color);overflow:hidden;position:relative}.gallery-item--1{grid-column:1/3}.gallery-item--2{grid-column:3/4}.gallery-item--3{grid-column:1/2}.gallery-item--4{grid-column:2/3}.gallery-item--5{grid-column:3/4}.gallery-image-wrapper{overflow:hidden;padding-bottom:72%;position:relative;width:100%}.gallery-item--2 .gallery-image-wrapper{padding-bottom:155%}.gallery-item--3 .gallery-image-wrapper,.gallery-item--4 .gallery-image-wrapper,.gallery-item--5 .gallery-image-wrapper{padding-bottom:80%}.gallery-img{display:block;height:100%;inset:0;object-fit:cover;position:absolute;transition:transform .55s ease,filter .4s ease;width:100%}.gallery-overlay{align-items:flex-end;background:linear-gradient(0deg,#0000008c 0,#0000 55%);display:flex;inset:0;opacity:0;padding:1.2rem 1.4rem;position:absolute;transition:opacity .35s ease}.gallery-caption{color:#fff;font-family:Playfair Display,serif;font-size:1rem;font-style:italic;letter-spacing:.04em;transform:translateY(6px);transition:transform .35s ease}.gallery-item:hover .gallery-img{filter:saturate(1.08);transform:scale(1.05)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-item:hover .gallery-caption{transform:translateY(0)}@media (max-width:768px){.gallery-grid{gap:10px;grid-template-columns:1fr 1fr;grid-template-rows:none}.gallery-item--1{grid-column:1/3}.gallery-item--2{grid-column:1/2}.gallery-item--3{grid-column:2/3}.gallery-item--4{grid-column:1/2}.gallery-item--5{grid-column:2/3}.gallery-item--2 .gallery-image-wrapper{padding-bottom:80%}}@media (max-width:480px){.gallery-container{padding:16px 12px}.gallery-grid{gap:8px}}.timeline{margin:0 auto;max-width:1100px;padding:60px 20px 80px;position:relative}.timeline-spine{pointer-events:none;top:0;width:24px}.timeline-spine,.timeline-spine-line{height:100%;left:50%;position:absolute;transform:translateX(-50%)}.timeline-spine-line{background:linear-gradient(to bottom,#0000 0,var(--gold-color) 8%,var(--gold-color) 92%,#0000 100%);opacity:.5;width:2px}.timeline-sprocket{background:var(--gold-color);border:2px solid var(--background-color);border-radius:50%;height:10px;left:50%;opacity:.6;position:absolute;transform:translate(-50%,-50%);width:10px}.timeline-item{align-items:flex-start;display:flex;justify-content:center;margin-bottom:64px;position:relative;width:100%}.timeline-item.left{justify-content:flex-start;padding-right:calc(50% + 40px)}.timeline-item.right{justify-content:flex-end;padding-left:calc(50% + 40px)}.timeline-card{background:var(--card-bg);border-radius:4px;box-shadow:0 8px 32px var(--shadow-color),0 2px 8px #0000000f;cursor:default;max-width:420px;transform-origin:center bottom;width:100%}.timeline-polaroid-frame{background:var(--card-bg);border-radius:4px 4px 0 0;overflow:hidden;padding:10px 10px 0;width:100%}.timeline-img{aspect-ratio:4/3;border-radius:2px;display:block;object-fit:cover;width:100%}.timeline-card-body{padding:16px 18px 20px}.timeline-date{color:var(--gold-color);display:block;font-family:Inter,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.18em;margin-bottom:6px;text-transform:uppercase}.timeline-title{color:var(--text-color);font-family:Playfair Display,serif;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0 0 8px}.timeline-desc{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.9rem;line-height:1.6;margin:0}@media (max-width:768px){.timeline-spine{left:24px}.timeline-item.left,.timeline-item.right{justify-content:flex-start;padding-left:54px;padding-right:0}.timeline-card{max-width:100%;transform:none!important}}@media (max-width:480px){.timeline{padding:40px 12px 60px}.timeline-item{margin-bottom:44px}.timeline-item.left,.timeline-item.right{padding-left:48px}.timeline-polaroid-frame{padding:8px 8px 0}}.love-letter{background:var(--background-color);background-image:radial-gradient(var(--accent-color) 1px,#0000 1px);background-size:28px 28px;justify-content:center;min-height:calc(100vh - 72px);padding:40px 20px;transition:background-color .3s ease}.envelope-wrap,.love-letter{align-items:center;display:flex}.envelope-wrap{flex-direction:column;gap:24px}.envelope{background:none;border:none;cursor:pointer;padding:0}.envelope-body{align-items:center;background:var(--card-bg);border:1.5px solid var(--border-color);border-radius:6px;box-shadow:0 12px 40px var(--shadow-color);display:flex;height:180px;justify-content:center;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:260px}.envelope:hover .envelope-body{box-shadow:0 20px 50px var(--shadow-color);transform:translateY(-6px) scale(1.03)}.envelope-flap{border-left:130px solid #0000;border-right:130px solid #0000;border-top:90px solid var(--accent-color);height:0;left:0;position:absolute;top:0;transition:border-top-color .3s ease;width:0}.envelope:hover .envelope-flap{border-top-color:var(--primary-color);opacity:.6}.envelope-body:before{border-left:130px solid var(--border-color);border-right:0 solid #0000;left:0}.envelope-body:after,.envelope-body:before{border-bottom:80px solid #0000;bottom:0;content:"";height:0;position:absolute;width:0}.envelope-body:after{border-left:0 solid #0000;border-right:130px solid var(--border-color);right:0}.envelope-seal{color:var(--primary-color);font-size:2rem;line-height:1;position:relative;transition:transform .3s ease;z-index:1}.envelope:hover .envelope-seal{transform:scale(1.15)}.envelope-hint{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.letter-wrap{max-width:560px;width:100%}.letter-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 16px 48px var(--shadow-color);overflow:hidden}.letter-header{border-bottom:1px solid var(--border-color);padding:24px 32px 16px}.letter-eyebrow{color:var(--gold-color);font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.letter-body{align-items:center;display:flex;min-height:160px;padding:36px 32px 28px}.letter-text{color:var(--text-color);font-family:Playfair Display,serif;font-size:1.45rem;font-style:italic;line-height:1.75;margin:0}.letter-cursor{animation:blink 1s step-end infinite;color:var(--primary-color);display:inline-block;margin-left:1px}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.letter-footer{border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;padding:20px 32px 28px}.letter-next{background:none;border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;font-weight:500;padding:10px 20px;transition:color .25s ease,border-color .25s ease,background .25s ease}.letter-next:hover{background:var(--accent-color);border-color:var(--text-color);color:var(--text-color)}@media (max-width:480px){.envelope-body{height:152px;width:220px}.envelope-flap{border-left-width:110px;border-right-width:110px;border-top-width:76px}.envelope-body:before{border-left-width:110px}.envelope-body:after{border-right-width:110px}.letter-card{border-radius:6px}.letter-body{padding:28px 20px 20px}.letter-text{font-size:1.2rem}.letter-footer,.letter-header{padding-left:20px;padding-right:20px}}.theme-toggle{align-items:center;background:none;border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;font-size:1rem;justify-content:center;padding:6px 10px;transition:all .25s ease}.theme-toggle:hover{background:var(--accent-color);border-color:var(--text-color);color:var(--text-color)}.navbar{align-items:center;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#fdf6f0d9;border-bottom:1px solid var(--border-color);display:flex;height:72px;justify-content:space-between;left:0;padding:0 2.5rem;position:fixed;right:0;top:0;transition:border-color .2s ease;z-index:1000}[data-theme=dark] .navbar{background:#13111ad9}.navbar-progress{background:var(--gold-color);border-radius:0 2px 2px 0;bottom:0;height:2px;left:0;position:absolute;transition:width .1s linear}.logo,.navbar-brand{align-items:center;display:flex}.logo{color:var(--primary-color);text-decoration:none;transition:transform .3s ease,color .3s ease}.logo:hover{color:var(--gold-color);transform:scale(1.08)}.navbar-links{align-items:center;display:flex;gap:2.5rem}.nav-link{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;letter-spacing:.06em;position:relative;text-decoration:none;text-transform:uppercase;transition:color .3s ease}.nav-link:after{background-color:var(--gold-color);bottom:-4px;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link:hover{color:var(--text-color)}.nav-link:hover:after{width:100%}.hamburger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:4px;z-index:1001}.hamburger span{background-color:var(--text-color);display:block;height:1.5px;transition:all .3s ease;width:24px}@media (max-width:768px){.navbar{padding:0 1.5rem}.hamburger{display:flex}.navbar-links{align-items:flex-start;background:var(--background-color);border-left:1px solid var(--border-color);box-shadow:-4px 0 24px var(--shadow-color);flex-direction:column;gap:2rem;height:calc(100vh - 72px);padding:2.5rem 2rem;position:fixed;right:-100%;top:72px;transition:right .35s cubic-bezier(.4,0,.2,1);width:260px}.navbar-links.active{right:0}.hamburger.open span:first-child{transform:rotate(45deg) translate(7px,7px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}}@media (max-width:480px){.navbar-links{width:90%}}.hero-section{flex-direction:column;min-height:100vh;overflow:hidden}.hero-content,.hero-section{align-items:center;display:flex;justify-content:center;position:relative;width:100%}.hero-content{gap:5rem;max-width:1100px;padding:6rem 2rem 2rem;z-index:1}.hero-left{flex:1 1;max-width:480px}.hero-eyebrow{color:var(--gold-color);display:block;font-family:Inter,sans-serif;font-size:.8rem;font-weight:500;letter-spacing:.22em;margin-bottom:1.2rem;text-transform:uppercase}.hero-title{color:var(--text-color);font-family:Playfair Display,serif;font-size:clamp(4.5rem,10vw,8rem);font-weight:700;letter-spacing:-.02em;line-height:.92;margin:0 0 .8rem}.hero-title-underline{background:var(--gold-color);height:2px;margin:1.2rem 0 2rem;width:72px}.hero-quote{color:var(--text-muted);font-family:Playfair Display,serif;font-size:1.05rem;font-style:italic;line-height:1.9}.hero-right{align-items:center;display:flex;flex:0 0 auto;flex-direction:column}.hero-counter-label{color:var(--gold-color);font-family:Inter,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.25em;margin-bottom:1.2rem;text-transform:uppercase}.timer-container{border:1px solid var(--border-color);border-radius:6px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;width:320px}.timer-box{background:var(--card-bg);padding:2rem 1.2rem;position:relative;text-align:center;transition:background .25s ease}.timer-box:first-child{border-right:1px solid var(--border-color)}.timer-box:first-child,.timer-box:nth-child(2){border-bottom:1px solid var(--border-color)}.timer-box:nth-child(3){border-right:1px solid var(--border-color)}.timer-box:hover{background:var(--accent-color)}.timer-number{color:var(--primary-color);display:block;font-family:Playfair Display,serif;font-size:clamp(2rem,5vw,3rem);font-weight:700;letter-spacing:-.02em;line-height:1;margin-bottom:.5rem}.timer-label{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.68rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase}.hero-scroll-hint{bottom:2.5rem;left:50%;position:absolute;transform:translateX(-50%);z-index:1}.scroll-arrow{animation:bounce 2.2s ease-in-out infinite;color:var(--text-muted);display:block;font-size:1.2rem}@keyframes bounce{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(9px)}}@media (max-width:900px){.hero-content{flex-direction:column;gap:3rem;text-align:center}.hero-left{max-width:100%}.hero-title-underline{margin:1rem auto 1.5rem}.timer-container{width:300px}}@media (max-width:480px){.hero-content{padding-top:5rem}.timer-container{width:260px}.timer-box{padding:1.4rem .8rem}.hero-quote{font-size:.95rem}}.animated-background{background-color:var(--background-color);height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.mesh-blob{animation:blobDrift 20s ease-in-out infinite;border-radius:50%;filter:blur(90px);position:absolute}.blob1{animation-delay:0s;animation-duration:20s;background:var(--accent-color);height:650px;left:-120px;opacity:.45;top:-200px;width:650px}.blob2{animation-delay:-7s;animation-duration:24s;background:var(--primary-color);height:500px;opacity:.1;right:-150px;top:15%;width:500px}.blob3{animation-delay:-13s;animation-duration:28s;background:var(--gold-color);bottom:-80px;height:420px;left:28%;opacity:.12;width:420px}@keyframes blobDrift{0%,to{transform:translate(0) scale(1)}33%{transform:translate(28px,-38px) scale(1.04)}66%{transform:translate(-18px,22px) scale(.97)}}.personal-touches{margin:0 auto;max-width:1000px;padding:60px 20px 80px}.pt-tabs{border-bottom:1px solid var(--border-color);display:flex;gap:0;justify-content:center;margin-bottom:48px}.pt-tab{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;letter-spacing:.04em;padding:.8rem 2rem;position:relative;transition:color .25s ease}.pt-tab:hover{color:var(--text-color)}.pt-tab.active{color:var(--primary-color)}.pt-tab-indicator{background:var(--primary-color);border-radius:2px 2px 0 0;bottom:-1px;height:2px;left:0;position:absolute;right:0}.pt-panel-wrap{min-height:400px;position:relative}.pt-panel{left:0;opacity:0;pointer-events:none;position:absolute;top:0;transition:opacity .3s ease;width:100%}.pt-panel--active{opacity:1;pointer-events:auto;position:relative}.pt-songs-grid{display:flex;flex-direction:column;gap:20px}.pt-song-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-color);padding:20px;transition:transform .25s ease,box-shadow .25s ease}.pt-spotify-embed{border:none;border-radius:8px;display:block;height:200px;width:100%}.pt-song-card:hover{box-shadow:0 8px 24px var(--shadow-color);transform:translateY(-3px)}.pt-song-meta{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:12px}.pt-song-title{color:var(--text-color);font-family:Playfair Display,serif;font-size:1rem;font-weight:600}.pt-song-artist{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.pt-shows-grid{display:flex;flex-direction:column;gap:20px}.pt-show-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px var(--shadow-color);display:flex;gap:20px;padding:24px;transition:transform .25s ease}.pt-show-card:hover{transform:translateY(-3px)}.pt-show-poster{align-items:center;background:var(--accent-color);border:1px solid var(--border-color);border-radius:10px;display:flex;flex-shrink:0;height:64px;justify-content:center;width:64px}.pt-show-initial{color:var(--primary-color);font-size:1.8rem}.pt-show-initial,.pt-show-title{font-family:Playfair Display,serif;font-weight:700}.pt-show-title{color:var(--text-color);font-size:1.2rem;margin:0 0 4px}.pt-show-genre{background:#c9a84c1f;border-radius:20px;color:var(--gold-color);display:inline-block;font-family:Inter,sans-serif;font-size:.7rem;font-weight:600;letter-spacing:.1em;margin-bottom:8px;padding:2px 8px;text-transform:uppercase}.pt-show-desc{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.9rem;font-style:italic;margin:0}.pt-note{align-items:center;display:flex;justify-content:center;padding:20px 0}.pt-note-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px var(--shadow-color);max-width:640px;padding:40px 44px;position:relative;text-align:center}.pt-note-icon{color:var(--primary-color);display:block;font-size:1.8rem;margin-bottom:20px;opacity:.7}.pt-note-text{color:var(--text-color);font-family:Inter,sans-serif;font-size:1.1rem;font-weight:400;line-height:1.9;margin:0}@media (max-width:600px){.pt-tab{font-size:.82rem;padding:.7rem 1.2rem}.pt-spotify-embed{height:80px}.pt-song-card{padding:14px 16px}.pt-show-card{flex-direction:column;text-align:center}.pt-note-card{padding:28px 24px}.pt-note-text{font-size:.95rem}}.anniversary-widget{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 6px 24px var(--shadow-color);margin:40px auto 32px;max-width:1100px;padding:36px 24px 32px}.anniversary-title{color:var(--text-color);font-family:Playfair Display,serif;font-size:1.8rem;font-weight:700;margin-bottom:8px;text-align:center}.anniversary-subtitle{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.85rem;letter-spacing:.1em;margin-bottom:28px;text-align:center;text-transform:uppercase}.anniversary-list{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.anniversary-card{align-items:center;background:var(--background-color);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 2px 8px var(--shadow-color);display:flex;gap:14px;min-width:200px;padding:14px 20px}.anniversary-number{color:var(--primary-color);font-family:Playfair Display,serif;font-size:2rem;font-weight:700;line-height:1}.anniversary-suffix{color:var(--gold-color);font-size:.9rem;vertical-align:super}.anniversary-details{display:flex;flex-direction:column}.anniversary-weekday{color:var(--text-color);font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;margin-bottom:2px}.anniversary-date{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.82rem}@media (max-width:768px){.anniversary-widget{margin:32px 12px 24px;padding:24px 14px 20px}.anniversary-title{font-size:1.6rem}.anniversary-card{min-width:180px;padding:12px 14px}}@media (max-width:480px){.anniversary-list{gap:12px}.anniversary-title{font-size:1.4rem}.anniversary-card{width:100%}}.journal{margin:0 auto;max-width:720px;padding:80px 20px}.journal-hero{margin-bottom:56px;text-align:center}.journal-eyebrow{color:var(--gold-color);display:block;font-family:Inter,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.22em;margin-bottom:12px;text-transform:uppercase}.journal-title{color:var(--text-color);font-family:Playfair Display,serif;font-size:clamp(3rem,8vw,5rem);font-weight:700;line-height:1;margin:0}.journal-underline{background:var(--gold-color);height:2px;margin:16px auto 20px;width:56px}.journal-subtitle{color:var(--text-muted);font-family:Playfair Display,serif;font-size:1rem;font-style:italic}.journal-body{display:flex;flex-direction:column;gap:40px}.journal-write{min-height:130px}.journal-gate{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 4px 16px var(--shadow-color);padding:28px}.journal-gate-label{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.85rem;margin-bottom:14px}.journal-gate-row{display:flex;gap:10px}.journal-gate-input{background:var(--background-color);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color);flex:1 1;font-family:Inter,sans-serif;font-size:.9rem;outline:none;padding:10px 14px;transition:border-color .2s ease}.journal-gate-input:focus{border-color:var(--primary-color)}.journal-gate-btn{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;font-weight:500;padding:10px 20px;transition:opacity .2s ease}.journal-gate-btn:hover{opacity:.88}.journal-error{color:var(--primary-color);font-family:Inter,sans-serif;font-size:.8rem;margin-top:10px}.journal-form{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 4px 16px var(--shadow-color);padding:24px}.journal-author-row{align-items:center;display:flex;gap:12px;margin-bottom:16px}.journal-author-label{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.journal-author-btns{display:flex;gap:8px}.journal-author-btn{background:none;border:1px solid var(--border-color);border-radius:20px;color:var(--text-muted);cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;padding:5px 14px;transition:all .2s ease}.journal-author-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.journal-textarea{background:var(--background-color);border:1px solid var(--border-color);border-radius:8px;color:var(--text-color);font-family:Inter,sans-serif;font-size:.95rem;line-height:1.6;outline:none;padding:12px 14px;resize:vertical;transition:border-color .2s ease;width:100%}.journal-textarea:focus{border-color:var(--primary-color)}.journal-form-footer{align-items:center;display:flex;justify-content:space-between;margin-top:12px}.journal-char-hint{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.75rem}.journal-submit{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;font-weight:500;padding:9px 20px;transition:opacity .2s ease}.journal-submit:disabled{cursor:default;opacity:.45}.journal-submit:not(:disabled):hover{opacity:.88}.journal-feed{display:flex;flex-direction:column;gap:16px}.journal-state{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.9rem;padding:40px 0;text-align:center}.journal-entry{background:var(--card-bg);border-left:1px solid var(--border-color);border:1px solid var(--border-color);border-left-width:3px;border-radius:10px;box-shadow:0 2px 8px var(--shadow-color);padding:20px 22px}.journal-entry--olek{border-left-color:var(--primary-color)}.journal-entry--faustyna{border-left-color:var(--gold-color)}.journal-entry-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:10px}.journal-entry-author{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.journal-entry--olek .journal-entry-author{color:var(--primary-color)}.journal-entry--faustyna .journal-entry-author{color:var(--gold-color)}.journal-entry-date{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.75rem}.journal-entry-content{color:var(--text-color);font-family:Inter,sans-serif;font-size:.95rem;line-height:1.7;margin:0;white-space:pre-wrap}@media (max-width:480px){.journal{padding-top:60px}.journal-form,.journal-gate{padding:18px}.journal-gate-row{flex-direction:column}.journal-gate-btn{width:100%}}.bucket{margin:0 auto;max-width:680px;padding:80px 20px}.bucket-hero{margin-bottom:56px;text-align:center}.bucket-eyebrow{color:var(--gold-color);display:block;font-family:Inter,sans-serif;font-size:.78rem;font-weight:500;letter-spacing:.22em;margin-bottom:12px;text-transform:uppercase}.bucket-title{color:var(--text-color);font-family:Playfair Display,serif;font-size:clamp(3rem,8vw,5rem);font-weight:700;line-height:1;margin:0}.bucket-underline{background:var(--gold-color);height:2px;margin:16px auto 20px;width:56px}.bucket-subtitle{color:var(--text-muted);font-family:Playfair Display,serif;font-size:1rem;font-style:italic}.bucket-body{display:flex;flex-direction:column;gap:36px}.bucket-write{min-height:80px}.bucket-gate{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 4px 16px var(--shadow-color);padding:24px}.bucket-gate-label{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.85rem;margin-bottom:14px}.bucket-gate-row{display:flex;gap:10px}.bucket-gate-input{background:var(--background-color);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color);flex:1 1;font-family:Inter,sans-serif;font-size:.9rem;outline:none;padding:10px 14px;transition:border-color .2s ease}.bucket-gate-input:focus{border-color:var(--primary-color)}.bucket-gate-btn{background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:.85rem;font-weight:500;padding:10px 20px;transition:opacity .2s ease}.bucket-gate-btn:hover{opacity:.88}.bucket-error{color:var(--primary-color);font-family:Inter,sans-serif;font-size:.8rem;margin-top:10px}.bucket-add-form{display:flex;gap:10px}.bucket-add-input{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px var(--shadow-color);color:var(--text-color);flex:1 1;font-family:Inter,sans-serif;font-size:.95rem;outline:none;padding:11px 16px;transition:border-color .2s ease}.bucket-add-input:focus{border-color:var(--primary-color)}.bucket-add-btn{background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;padding:11px 20px;transition:opacity .2s ease;white-space:nowrap}.bucket-add-btn:disabled{cursor:default;opacity:.45}.bucket-add-btn:not(:disabled):hover{opacity:.88}.bucket-list{display:flex;flex-direction:column;gap:4px}.bucket-state{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.9rem;padding:40px 0;text-align:center}.bucket-item{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 4px var(--shadow-color);display:flex;gap:14px;padding:14px 18px;transition:box-shadow .2s ease}.bucket-item:hover{box-shadow:0 4px 12px var(--shadow-color)}.bucket-check{background:none;border:none;cursor:pointer;flex-shrink:0;padding:0}.bucket-check--locked{cursor:default;opacity:.4}.bucket-check-box{align-items:center;border:2px solid var(--border-color);border-radius:5px;color:#fff;display:flex;font-size:.75rem;height:22px;justify-content:center;transition:all .2s ease;width:22px}.bucket-check:not(.bucket-check--locked):hover .bucket-check-box{background:var(--accent-color);border-color:var(--primary-color)}.bucket-check--ticked .bucket-check-box{background:var(--primary-color);border-color:var(--primary-color)}.bucket-item-title{color:var(--text-color);flex:1 1;font-family:Inter,sans-serif;font-size:.95rem;line-height:1.4}.bucket-item-title--done{color:var(--text-muted);text-decoration:line-through}.bucket-item-date{color:var(--text-muted);font-family:Inter,sans-serif;font-size:.72rem;white-space:nowrap}.bucket-done-section{display:flex;flex-direction:column;gap:4px;margin-top:20px}.bucket-done-divider{align-items:center;color:var(--text-muted);display:flex;font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;gap:12px;letter-spacing:.12em;margin-bottom:8px;text-transform:uppercase}.bucket-done-divider:after,.bucket-done-divider:before{background:var(--border-color);content:"";flex:1 1;height:1px}.bucket-item--done{opacity:.7}@media (max-width:480px){.bucket{padding-top:60px}.bucket-add-form,.bucket-gate-row{flex-direction:column}.bucket-gate-btn{width:100%}}
/*# sourceMappingURL=main.8c08dbd8.css.map*/