@import"https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;700&family=Outfit:wght@400;500;700&display=swap";:root{--bg-app: #fffbf0;--bg-card: #ffffff;--text-primary: #4a4a4a;--text-secondary: #808080;--text-muted: #a0a0a0;--accent-yellow: #ffcc00;--accent-orange: #ff9f43;--accent-pink: #ff9ff3;--accent-blue: #54a0ff;--border-color: #f0f0f0;--shadow-card: 0 4px 20px rgba(0, 0, 0, .05);--font-sans: "M PLUS Rounded 1c", sans-serif;--font-heading: "Outfit", sans-serif;--radius-card: 24px;--radius-icon: 16px}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);background-color:#fffbf0;background-image:radial-gradient(#e6e6e6 2px,transparent 2px);background-size:24px 24px;color:var(--text-primary);line-height:1.6;min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.4;color:var(--text-primary)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}.container{max-width:600px;margin:0 auto;padding:0 20px}.card{background:var(--bg-card);border-radius:16px;box-shadow:2px 4px 12px #0000000a;padding:20px;position:relative;transition:transform .2s,box-shadow .2s;border:1px solid rgba(0,0,0,.02)}.card:hover{transform:translateY(-2px) rotate(.5deg);box-shadow:4px 8px 20px #00000014}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:50px;font-weight:700;transition:all .2s ease;gap:8px;font-size:1rem}.btn-primary{background:var(--text-primary);color:#fff;box-shadow:0 4px 10px #0000001a}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 15px #00000026}.btn-secondary{background:#fff;color:var(--text-primary);border:2px solid #f0f0f0}.btn-ghost{color:var(--text-secondary);padding:8px;border-radius:50%;transition:background .2s}.btn-ghost:hover{background:#0000000d}.input-field{background:#fff;border:2px solid #f0f0f0;border-radius:16px;padding:16px;color:var(--text-primary);width:100%;font-size:1rem;font-family:inherit;transition:border-color .2s}.input-field:focus{outline:none;border-color:var(--accent-yellow)}.itinerary-layout{display:flex;flex-direction:column;min-height:100vh;padding-top:20px;padding-bottom:100px}.timeline-container{position:relative;padding-left:20px}.timeline-line{position:absolute;left:9px;top:40px;bottom:0;width:0;border-left:3px dashed #e0e0e0;z-index:0}.day-header{display:flex;align-items:center;margin-bottom:24px;margin-top:40px}.icon-box{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;box-shadow:0 2px 5px #0000000d}.icon-box.yellow{background:#fff3cd;color:#d4a017}.icon-box.blue{background:#e7f5ff;color:#228be6}.icon-box.pink{background:#ffe3e3;color:#e03131}.icon-box.green{background:#ebfbee;color:#2f9e44}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease-out forwards}.magazine-cover{text-align:center;padding:80px 20px;background:#fff;margin-bottom:40px;position:relative;overflow:hidden;border-bottom:1px solid #eee;margin-left:-20px;margin-right:-20px;width:calc(100% + 40px)}.magazine-cover:before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:linear-gradient(90deg,var(--accent-pink),var(--accent-yellow),var(--accent-blue))}.magazine-title{font-family:var(--font-heading);font-size:3.5rem;line-height:1.1;margin-bottom:24px;letter-spacing:-.02em;color:var(--text-primary)}.magazine-meta{font-family:var(--font-sans);color:var(--text-secondary);font-size:1rem;letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:16px}.magazine-meta span{position:relative}.magazine-layout .timeline-line{display:none}.magazine-layout .timeline-container{padding-left:0}.magazine-layout .day-header{justify-content:center;margin-top:80px;margin-bottom:40px;flex-direction:column;gap:8px}.magazine-layout .day-header span{font-size:1.5rem;border-bottom:2px solid var(--accent-yellow);padding-bottom:4px}.magazine-highlight{background:#fff;padding:24px;margin:60px 0;box-shadow:0 20px 40px #00000014;transform:rotate(-1deg);border:8px solid white;text-align:center;position:relative}.magazine-highlight:before{content:"";position:absolute;top:-20px;left:50%;transform:translate(-50%);width:120px;height:30px;background:#ffe66d66;z-index:1}.magazine-highlight img{width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:24px;filter:contrast(1.05) saturate(1.1)}.magazine-highlight p{font-family:var(--font-sans);font-size:1.2rem;line-height:1.8;color:var(--text-primary);font-weight:500}.magazine-card{display:flex;gap:24px;padding:24px 0;border-bottom:1px dashed #e0e0e0;align-items:baseline}.magazine-card .time{font-family:var(--font-heading);font-weight:700;color:var(--accent-blue);width:60px;text-align:right;font-size:1.1rem}.magazine-card .content{flex:1}.magazine-card .content h3{font-size:1.2rem;margin-bottom:8px}.magazine-card .content p{font-size:1rem;color:var(--text-secondary);line-height:1.6}.album-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:32px;padding:20px 0}.polaroid-card{background:#fff;padding:12px 12px 40px;box-shadow:0 4px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;position:relative;text-align:center;border:1px solid #f0f0f0}.polaroid-card:hover{transform:scale(1.05) rotate(0)!important;box-shadow:0 10px 25px #00000026;z-index:10}.polaroid-img{width:100%;aspect-ratio:1/1;background:#f8f9fa;margin-bottom:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#ccc}.polaroid-img img{width:100%;height:100%;object-fit:cover}.polaroid-caption{font-family:"M PLUS Rounded 1c",sans-serif;font-weight:700;color:var(--text-primary);font-size:1.1rem;line-height:1.4}.polaroid-meta{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.add-album-btn{border:2px dashed #ccc;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#aaa;aspect-ratio:3/4}.add-album-btn:hover{border-color:var(--accent-yellow);color:var(--accent-yellow);background:#fffdf5}
