@import "https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;500;600;700;800&display=swap";
:root{--bg-base:#faf8f5;--bg-surface:#f2ece0;--bg-card:#fff;--bg-card-hover:#fdf9f4;--border-subtle:#65432114;--border-glass:#65432124;--accent-primary:#7c5035;--accent-secondary:#b8845a;--accent-tertiary:#c4a882;--accent-glow:#7c50351a;--accent-gradient:linear-gradient(135deg,#7c5035 0%,#b8845a 50%,#d4a574 100%);--accent-btn:linear-gradient(135deg,#6b3f22 0%,#9c6640 100%);--text-primary:#2c1810;--text-secondary:#6b4c35;--text-muted:#a08866;--green-soft:#65a35a26;--green-text:#4a9140;--blue-soft:#5082b426;--blue-text:#4a7fb5;--pink-soft:#c8786e26;--pink-text:#c07060;--yellow-soft:#d2a03226;--yellow-text:#b8860b;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--shadow-glow:0 0 30px #7c503514;--shadow-card:0 2px 16px #65432114,0 1px 4px #6543210d;--font-body:"Nunito",-apple-system,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-body);min-height:100vh;line-height:1.6}.glass-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:background .25s,border-color .25s,transform .2s}.glass-card:hover{background:var(--bg-card-hover);border-color:#7c503538}.btn-primary{background:var(--accent-btn);color:#fff;border-radius:var(--radius-md);font-size:1rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 28px;text-decoration:none;transition:opacity .2s,transform .15s,box-shadow .2s;display:inline-flex;box-shadow:0 4px 16px #7c503547}.btn-primary:hover{opacity:.92;transform:translateY(-2px);box-shadow:0 8px 24px #7c50355c}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-secondary{color:var(--accent-primary);border:1.5px solid var(--accent-primary);border-radius:var(--radius-md);font-size:.95rem;font-weight:600;font-family:var(--font-body);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px 24px;text-decoration:none;transition:background .2s,transform .15s;display:inline-flex}.btn-secondary:hover{background:#7c503514;transform:translateY(-1px)}.chip-group{flex-wrap:wrap;gap:10px;display:flex}.chip{border:1.5px solid var(--border-glass);color:var(--text-secondary);font-size:.88rem;font-weight:500;font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:50px;padding:8px 18px;transition:all .2s}.chip:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.chip.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#7c50351a}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;font-size:.75rem;font-weight:700}.gradient-text{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.diary-textarea{border:1.5px solid var(--border-glass);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-size:1.05rem;font-family:var(--font-body);resize:none;background:#fdf9f4;outline:none;min-height:200px;padding:20px;line-height:1.9;transition:border-color .2s,box-shadow .2s}.diary-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #7c50351a}.diary-textarea::placeholder{color:var(--text-muted)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2.5px solid #7c503533;border-top-color:var(--accent-primary);border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.7s linear infinite spin}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:.5s forwards fadeInUp}.fade-in-up-delayed{animation:.5s .15s both fadeInUp}.fade-in-up-delayed-2{animation:.5s .3s both fadeInUp}@keyframes pulseGlow{0%,to{box-shadow:0 2px 16px #65432114,0 1px 4px #6543210d}50%{box-shadow:0 4px 28px #7c50352e,0 2px 8px #6543211a}}.pulse-glow{animation:3s ease-in-out infinite pulseGlow}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#7c503540;border-radius:10px}.container{max-width:860px;margin:0 auto;padding:0 20px}@media (max-width:600px){.container{padding:0 16px}}
