@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;1,300;1,400&family=Syne:wght@400;500;600&display=swap";.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,#e8f0e8,#f7f5f0 60%,#e0ece0)}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 70% 20%,rgba(125,158,126,.15) 0%,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(197,133,90,.08) 0%,transparent 50%)}.login-card{position:relative;background:var(--warm-white);border-radius:24px;padding:48px 40px;width:100%;max-width:400px;box-shadow:var(--shadow-lg);border:1px solid var(--border);text-align:center}.login-logo{margin-bottom:16px}.login-title{font-size:2.5rem;color:var(--sage-deep);letter-spacing:.05em;margin-bottom:6px}.login-subtitle{color:var(--text-muted);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:40px}.login-form{display:flex;flex-direction:column;gap:20px;text-align:left}.field-group{display:flex;flex-direction:column;gap:6px}.field-group label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.field-group input{padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--cream);color:var(--text);font-size:1rem;transition:border-color .2s,box-shadow .2s;outline:none}.field-group input:focus{border-color:var(--sage);box-shadow:0 0 0 3px #7d9e7e26}.login-error{color:#c0392b;font-size:.85rem;text-align:center}.btn-primary{padding:14px;background:var(--sage);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.95rem;letter-spacing:.05em;cursor:pointer;transition:background .2s,transform .1s;margin-top:8px}.btn-primary:active{transform:scale(.98)}.layout{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;max-width:680px;margin:0 auto}.header{position:sticky;top:0;z-index:100;background:#f7f5f0eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:14px 20px;padding-top:calc(14px + env(safe-area-inset-top));padding-left:calc(20px + env(safe-area-inset-left));padding-right:calc(20px + env(safe-area-inset-right));display:flex;align-items:center;justify-content:space-between}.header-logo{display:flex;align-items:center;gap:10px}.header-title{font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:300;color:var(--sage-deep);letter-spacing:.05em}.btn-logout{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:20px;padding:6px 14px;cursor:pointer;transition:all .2s}.btn-logout:hover{color:var(--sage-deep);border-color:var(--sage)}.main-content{flex:1;padding:24px 20px 100px;padding-left:calc(20px + env(safe-area-inset-left));padding-right:calc(20px + env(safe-area-inset-right));overflow-y:auto}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:680px;background:#f7f5f0f2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:10px 0;padding-bottom:calc(10px + env(safe-area-inset-bottom));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);z-index:100}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;padding:6px 20px;border-radius:12px;transition:all .2s}.nav-item:hover{color:var(--sage)}.nav-item.active{color:var(--sage-deep)}.nav-item.active svg{stroke:var(--sage-deep)}.journal-page{padding-bottom:20px}.page-header{margin-bottom:28px;display:flex;align-items:center;justify-content:space-between}.btn-cancel{font-size:.85rem;color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:20px;padding:6px 14px;cursor:pointer;transition:all .2s}.btn-cancel:hover{color:var(--sage-deep);border-color:var(--sage)}.journal-form{display:flex;flex-direction:column;gap:24px}.section{display:flex;flex-direction:column;gap:10px}.section-label{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);display:flex;justify-content:space-between;align-items:center}.input-date{padding:12px 16px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--warm-white);color:var(--text);font-size:.95rem;font-family:Syne,sans-serif;outline:none;transition:border-color .2s,box-shadow .2s}.input-date:focus{border-color:var(--sage);box-shadow:0 0 0 3px #7d9e7e1f}.emotion-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.emotion-btn{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--warm-white);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;text-align:left}.emotion-btn:hover{border-color:var(--sage-light);background:var(--sage-pale)}.emotion-btn.selected{font-weight:500}.emotion-emoji{font-size:1.3rem}.emotion-label{font-size:.85rem;color:var(--text)}.input-custom-emotion{padding:12px 16px;border:1.5px solid var(--sage);border-radius:var(--radius-sm);background:var(--warm-white);color:var(--text);font-size:.95rem;font-family:Syne,sans-serif;outline:none;box-shadow:0 0 0 3px #7d9e7e1f}.intensite-value{font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:400}.slider{-webkit-appearance:none;width:100%;height:4px;border-radius:2px;background:var(--border);outline:none;cursor:pointer}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--slider-color, var(--sage));cursor:pointer;box-shadow:0 2px 8px #00000026;transition:transform .1s}.slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.slider-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted)}.textarea{padding:12px 16px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--warm-white);color:var(--text);font-size:.95rem;line-height:1.6;resize:vertical;outline:none;transition:border-color .2s,box-shadow .2s;font-family:Syne,sans-serif}.textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px #7d9e7e1f}.textarea::placeholder{color:var(--text-muted)}.form-error{color:#c0392b;font-size:.85rem;text-align:center}.form-success{color:var(--sage-deep);font-size:.9rem;text-align:center}.btn-full{width:100%;margin-top:8px;padding:16px;font-size:1rem}.historique-page{padding-bottom:20px}.filtres-card{background:var(--warm-white);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.filtres-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-group{display:flex;flex-direction:column;gap:5px}.field-group label{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.field-group input{padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--cream);color:var(--text);font-size:.9rem;outline:none;font-family:Syne,sans-serif}.field-group input:focus{border-color:var(--sage)}.btn-export{padding:12px;background:var(--sage-pale);color:var(--sage-deep);border:1px solid var(--sage-light);border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;transition:all .2s;letter-spacing:.04em;font-family:Syne,sans-serif}.btn-export:hover{background:var(--sage-light)}.btn-export:disabled{opacity:.5;cursor:not-allowed}.export-panel{background:var(--warm-white);border:1px solid var(--sage-light);border-radius:var(--radius);padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:14px}.export-info{font-size:.85rem;color:var(--text-muted)}.entries-list{display:flex;flex-direction:column;gap:10px}.entry-card{display:flex;align-items:flex-start;gap:10px;background:var(--warm-white);border:1px solid var(--border);border-radius:var(--radius);padding:14px;transition:all .2s}.entry-card.excluded{opacity:.4}.entry-checkbox{margin-top:4px;accent-color:var(--sage);width:18px;height:18px;flex-shrink:0}.entry-inner{flex:1;min-width:0}.entry-header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer}.entry-date{font-size:.8rem;color:var(--text-muted);margin-bottom:4px}.entry-emotion{font-size:1rem;color:var(--text);font-weight:500}.entry-right{display:flex;align-items:center;gap:8px}.entry-intensite{display:flex;align-items:baseline;gap:1px;color:var(--sage-deep)}.entry-intensite span{font-family:Cormorant Garamond,serif;font-size:1.5rem}.entry-intensite small{font-size:.7rem;color:var(--text-muted)}.entry-detail{margin-top:14px;display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid var(--border)}.detail-row{display:flex;flex-direction:column;gap:3px}.detail-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.detail-value{font-size:.9rem;color:var(--text);line-height:1.5}.entry-actions{display:flex;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.btn-edit{flex:1;padding:9px;background:var(--sage-pale);color:var(--sage-deep);border:1px solid var(--sage-light);border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .2s;font-family:Syne,sans-serif}.btn-edit:hover{background:var(--sage-light)}.btn-delete{flex:1;padding:9px;background:#fdf0ee;color:#c0392b;border:1px solid #f0c8c0;border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .2s;font-family:Syne,sans-serif}.btn-delete:hover{background:#fad8d4}.delete-confirm{flex:1;display:flex;align-items:center;gap:8px;background:#fdf0ee;border:1px solid #f0c8c0;border-radius:var(--radius-sm);padding:6px 10px}.delete-confirm span{font-size:.85rem;color:#c0392b;flex:1}.btn-delete-confirm{padding:4px 12px;background:#c0392b;color:#fff;border:none;border-radius:6px;font-size:.8rem;cursor:pointer;font-family:Syne,sans-serif}.btn-delete-cancel{padding:4px 12px;background:var(--cream);color:var(--text-muted);border:1px solid var(--border);border-radius:6px;font-size:.8rem;cursor:pointer;font-family:Syne,sans-serif}.btn-primary{padding:14px;background:var(--sage);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.95rem;letter-spacing:.05em;cursor:pointer;transition:background .2s,transform .1s;font-family:Syne,sans-serif}.btn-primary:hover{background:var(--sage-deep)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.tendances-page{padding-bottom:20px}.page-header{margin-bottom:24px}.page-header h1{font-size:2rem;color:var(--sage-deep)}.period-tabs{display:flex;gap:8px;margin-bottom:24px}.period-tab{flex:1;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--warm-white);color:var(--text-muted);font-size:.85rem;cursor:pointer;transition:all .2s}.period-tab:hover{border-color:var(--sage-light);color:var(--sage-deep)}.period-tab.active{background:var(--sage);color:#fff;border-color:var(--sage)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.stat-card{background:var(--warm-white);border:1px solid var(--border);border-radius:var(--radius);padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.stat-value{font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:300;color:var(--sage-deep);line-height:1}.stat-label{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.chart-card{background:var(--warm-white);border:1px solid var(--border);border-radius:var(--radius);padding:20px 16px;margin-bottom:16px}.chart-title{font-size:1rem;color:var(--sage-deep);margin-bottom:16px;font-family:Cormorant Garamond,serif;font-weight:400}.loading-text,.empty-text{text-align:center;color:var(--text-muted);padding:40px 0;font-size:.9rem}:root{--sage: #7d9e7e;--sage-light: #a8c5a0;--sage-pale: #e8f0e8;--sage-deep: #4a6b4b;--cream: #f7f5f0;--warm-white: #fafaf7;--text: #2c3a2c;--text-muted: #7a8c7a;--border: #d4e0d4;--accent: #c5855a;--shadow: 0 4px 24px rgba(74,107,75,.1);--shadow-lg: 0 12px 48px rgba(74,107,75,.16);--radius: 16px;--radius-sm: 8px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:Syne,sans-serif;background:var(--cream);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:Cormorant Garamond,serif;font-weight:300}input,textarea,select,button{font-family:Syne,sans-serif}a{text-decoration:none;color:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--sage-light);border-radius:3px}
