*{margin:0;padding:0;box-sizing:border-box}body{font-family:Comfortaa,Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#ffe5f1,#e0f6ff,#f0fff0);min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{max-width:900px;margin:0 auto;padding:15px;min-height:100vh;width:100%;box-sizing:border-box;overflow-x:hidden}@media(max-width:768px){.app{padding:10px;max-width:100%}}.header{margin-bottom:30px;padding:20px 0}.header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;flex-wrap:wrap}.header-top>div:first-child{flex:1;text-align:center;min-width:0}.header h1{font-size:2em;margin:0;background:linear-gradient(135deg,#ffb6c1,plum,#b0e0e6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:Comfortaa,sans-serif;word-wrap:break-word}.subtitle{font-size:1em;color:#ffb6c1;margin-top:8px;word-wrap:break-word}@media(max-width:768px){.header{margin-bottom:20px;padding:15px 0}.header h1{font-size:1.5em}.subtitle{font-size:.9em}.header-top{gap:10px}}.stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:25px}@media(max-width:768px){.stats-container{grid-template-columns:repeat(2,1fr);gap:10px}}.stat-card{background:linear-gradient(135deg,#fff,#fff0f5);border-radius:20px;padding:25px;text-align:center;box-shadow:0 4px 12px #ffb6c133;transition:transform .2s,box-shadow .2s;border:2px solid rgba(255,182,193,.3)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #ffb6c14d}.stat-card.good{border-top:4px solid #BDFCC9;background:linear-gradient(135deg,#f0fff0,#e0ffe0);border-color:#bdfcc980}.stat-card.bad{border-top:4px solid #FFCCCB;background:linear-gradient(135deg,#fff0f5,#ffe5e5);border-color:#ffcccb80}.stat-card.info{border-top:4px solid #B0E0E6;background:linear-gradient(135deg,#e0f6ff,#f0f8ff);border-color:#b0e0e680}.stat-icon{font-size:3em;margin-bottom:10px}.stat-number{font-size:2.5em;font-weight:700;color:#ffb6c1;margin:10px 0}.stat-label{font-size:1em;color:plum;font-weight:500;margin-bottom:5px}.stat-subtitle{font-size:.85em;color:#b0e0e6}.actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;gap:15px;flex-wrap:wrap}.action-buttons{display:flex;gap:10px;flex-wrap:wrap}.view-toggle{display:flex;gap:8px;background:linear-gradient(135deg,#fff,#fff0f5);padding:5px;border-radius:12px;box-shadow:0 2px 8px #ffb6c133;border:2px solid rgba(255,182,193,.3);flex-wrap:wrap}@media(max-width:768px){.actions{flex-direction:column;align-items:stretch;gap:10px}.view-toggle{width:100%;justify-content:center;gap:4px}.view-btn{flex:1;min-width:0;padding:6px 8px;font-size:.75em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-buttons{width:100%;flex-direction:column;gap:8px}}.view-btn{padding:10px 20px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-weight:600;color:plum;transition:all .2s;font-family:Comfortaa,sans-serif}.view-btn:hover{background:#ffb6c11a;color:#ffb6c1}.view-btn.active{background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;box-shadow:0 2px 8px #ffb6c166}.btn-primary{background:linear-gradient(135deg,#ffb6c1,plum,#b0e0e6);color:#fff;border:none;padding:12px 24px;font-size:.95em;border-radius:20px;cursor:pointer;font-weight:600;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #ffb6c166;font-family:Comfortaa,sans-serif}.btn-primary:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 16px #ffb6c180}@media(max-width:768px){.btn-primary{width:100%;padding:14px 20px;font-size:.9em}}.event-form{background:linear-gradient(135deg,#fff,#fff0f5);border-radius:20px;padding:25px;margin-bottom:25px;box-shadow:0 4px 12px #ffb6c133;border:2px solid rgba(255,182,193,.3)}@media(max-width:768px){.event-form{padding:20px}}.event-form h2{margin-top:0;color:#ffb6c1;font-family:Comfortaa,sans-serif}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:10px;font-weight:600;color:plum;font-family:Comfortaa,sans-serif}.form-hint{margin-top:8px;font-size:.9em;color:#b0e0e6;font-style:italic;padding:8px;background:#b0e0e61a;border-radius:8px;border-left:3px solid #B0E0E6}.wetness-level-selector{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}.wetness-level-btn{display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 16px;border:2px solid rgba(255,182,193,.4);border-radius:12px;background:#fffc;cursor:pointer;transition:all .2s;min-width:60px}.wetness-level-btn:hover{border-color:#ffb6c1;background:#fff0f5cc;transform:scale(1.05)}.wetness-level-btn.selected{border-color:#b0e0e6;background:linear-gradient(135deg,#e0f6ff,#f0f8ff);box-shadow:0 2px 8px #b0e0e666}.water-drop{font-size:1.8em;display:block;transition:all .2s}.wetness-level-btn.selected .water-drop{transform:scale(1.1)}.wetness-label{font-size:.85em;font-weight:600;color:plum;font-family:Comfortaa,sans-serif}.wetness-level-btn.selected .wetness-label{color:#b0e0e6;font-weight:700}@media(max-width:768px){.wetness-level-selector{gap:6px}.wetness-level-btn{padding:10px 12px;min-width:50px}.water-drop{font-size:1.5em}.wetness-label{font-size:.75em}}.radio-group{display:flex;gap:15px;flex-wrap:wrap}.radio-option{flex:1;min-width:200px;padding:15px;border:2px solid rgba(255,182,193,.4);border-radius:12px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:10px;background:#fffc}.radio-option:hover{border-color:#ffb6c1;background:#fff0f5cc;transform:scale(1.02)}.radio-option.good{border-color:#bdfcc980;background:linear-gradient(135deg,#f0fff0,#e0ffe0)}.radio-option.good:hover{border-color:#bdfcc9;background:linear-gradient(135deg,#e0ffe0,#d0ffd0)}.radio-option.good input:checked+span{color:#90ee90;font-weight:700}.radio-option.bad{border-color:#ffcccb80;background:linear-gradient(135deg,#fff0f5,#ffe5e5)}.radio-option.bad:hover{border-color:#ffcccb;background:linear-gradient(135deg,#ffe5e5,#ffd5d5)}.radio-option.bad input:checked+span{color:#f99;font-weight:700}.radio-option input[type=radio]{margin:0;cursor:pointer;accent-color:#FFB6C1}.checkbox-option{display:flex;align-items:center;gap:10px;padding:12px;border:2px solid rgba(189,252,201,.5);border-radius:12px;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,#f0fff0,#e0ffe0)}.checkbox-option:hover{border-color:#bdfcc9;background:linear-gradient(135deg,#e0ffe0,#d0ffd0);transform:scale(1.02)}.checkbox-option input[type=checkbox]{cursor:pointer;accent-color:#90EE90;width:20px;height:20px}select{width:100%;padding:12px;border:2px solid rgba(255,182,193,.4);border-radius:8px;font-family:inherit;font-size:1em;background:#fff;color:plum;cursor:pointer;transition:border-color .2s}select:focus{outline:none;border-color:#ffb6c1;box-shadow:0 0 0 3px #ffb6c11a}textarea{width:100%;padding:12px;border:2px solid rgba(255,182,193,.4);border-radius:8px;font-family:inherit;font-size:1em;resize:vertical;transition:border-color .2s;background:#fff;color:plum}textarea:focus{outline:none;border-color:#ffb6c1;box-shadow:0 0 0 3px #ffb6c11a}.btn-submit{background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;border:none;padding:12px 30px;font-size:1em;border-radius:20px;cursor:pointer;font-weight:600;transition:transform .2s;box-shadow:0 4px 12px #ffb6c14d;font-family:Comfortaa,sans-serif}.btn-submit:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 16px #ffb6c166}.events-section{margin-top:40px}.events-section h2{color:#ffb6c1;margin-bottom:20px;font-family:Comfortaa,sans-serif}.loading{text-align:center;padding:40px;color:plum}.empty-state{text-align:center;padding:60px 20px;background:linear-gradient(135deg,#fff,#fff0f5);border-radius:20px;box-shadow:0 4px 12px #ffb6c133;border:2px solid rgba(255,182,193,.3)}.empty-icon{font-size:4em;margin-bottom:20px}.empty-state p{color:plum;font-size:1.1em}.events-list{display:flex;flex-direction:column;gap:15px}.event-card{background:linear-gradient(135deg,#fff,#fff0f5);border-radius:15px;padding:20px;box-shadow:0 2px 8px #ffb6c133;transition:transform .2s,box-shadow .2s;border-left:4px solid;border:2px solid rgba(255,182,193,.2)}.event-card:hover{transform:translate(5px) scale(1.02);box-shadow:0 4px 12px #ffb6c14d}.event-card.diaper{border-left-color:#bdfcc9;background:linear-gradient(135deg,#f0fff0,#e0ffe0)}.event-card.accident{border-left-color:#ffcccb;background:linear-gradient(135deg,#fff0f5,#ffe5e5)}.event-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.event-icon{font-size:1.5em}.event-type{flex:1;font-weight:600;color:#ffb6c1;font-size:1.1em;font-family:Comfortaa,sans-serif}.delete-btn{background:#ffcccb4d;color:#f99;border:none;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:1.5em;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s}.delete-btn:hover{background:#ffcccb80;transform:scale(1.1)}.event-time{color:plum;font-size:.9em;margin-bottom:10px}.event-notes{color:#b0e0e6;font-style:italic;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,182,193,.3)}.woke-up-wet-badge{display:inline-block;background:linear-gradient(135deg,#ffe5b4,#ffdab9);color:#ff8c69;padding:4px 10px;border-radius:12px;font-size:.85em;font-weight:600;margin-left:8px;border:1px solid rgba(255,140,105,.3)}.accident-reason{color:#f99;font-size:.9em;font-style:italic;margin-top:5px}.diaper-wetness-info{margin-top:8px;padding:6px 12px;background:linear-gradient(135deg,#e0f6ff,#f0f8ff);border-radius:8px;border-left:3px solid #B0E0E6;color:#b0e0e6;font-size:.9em;font-weight:600}.diaper-type-info{color:#90ee90;font-size:.9em;font-weight:600;margin-top:5px}@media(max-width:768px){.header h1{font-size:2em}.stats-container{grid-template-columns:1fr}.radio-group{flex-direction:column}.radio-option{min-width:100%}}.calendar-view{background:linear-gradient(135deg,#fff,#fff0f5);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 4px 12px #ffb6c133;border:2px solid rgba(255,182,193,.3);width:100%;box-sizing:border-box;overflow-x:hidden}@media(max-width:768px){.calendar-view{padding:15px;margin-bottom:20px;border-radius:15px}}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.calendar-header h2{margin:0;color:#ffb6c1;font-size:1.8em;font-family:Comfortaa,sans-serif}.calendar-nav-btn{background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2em;display:flex;align-items:center;justify-content:center;transition:transform .2s;box-shadow:0 2px 8px #ffb6c14d}.calendar-nav-btn:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 12px #ffb6c166}.calendar-nav-btn:disabled{opacity:.5;cursor:not-allowed}.streak-banner{background:linear-gradient(135deg,#ffe5b4,#ffdab9);border:2px solid #FFCC99;border-radius:15px;padding:20px;margin-bottom:20px;display:flex;align-items:center;gap:15px;animation:pulse 2s ease-in-out infinite;box-shadow:0 4px 12px #ffcc994d}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.streak-icon{font-size:2.5em}.streak-text{flex:1}.streak-text strong{display:block;font-size:1.3em;color:#ff8c69;margin-bottom:5px;font-family:Comfortaa,sans-serif}.streak-subtitle{display:block;color:#f96;font-size:1em}.calendar-stats{display:flex;gap:20px;margin-bottom:20px;padding:15px;background:linear-gradient(135deg,#f0f8ff,#e0f6ff);border-radius:12px;border:2px solid rgba(176,224,230,.3)}.calendar-stat{display:flex;flex-direction:column;align-items:center}.calendar-stat-number{font-size:2em;font-weight:700;color:#b0e0e6}.calendar-stat-label{font-size:.9em;color:plum;margin-top:5px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:20px;width:100%;box-sizing:border-box}@media(max-width:768px){.calendar-grid{gap:4px;margin-bottom:15px}}.calendar-day-header{text-align:center;font-weight:600;color:plum;padding:10px;font-size:.9em;font-family:Comfortaa,sans-serif}.calendar-day{aspect-ratio:1;border:2px solid rgba(255,182,193,.3);border-radius:12px;padding:8px;cursor:pointer;transition:all .2s;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff,#fff0f5);min-width:0;box-sizing:border-box}@media(max-width:768px){.calendar-day{padding:4px;border-radius:8px;border-width:1.5px}}.calendar-day:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #ffb6c14d;z-index:1}.calendar-day.empty{border:none;cursor:default;background:transparent}.calendar-day.empty:hover{transform:none;box-shadow:none}.calendar-day.good{background:linear-gradient(135deg,#f0fff0,#e0ffe0);border-color:#bdfcc9}.calendar-day.bad{background:linear-gradient(135deg,#fff0f5,#ffe5e5);border-color:#ffcccb}.calendar-day.today{border-color:#ffb6c1;border-width:3px;box-shadow:0 0 0 2px #ffb6c14d}.calendar-day-number{font-weight:600;font-size:1.1em;color:#ffb6c1;font-family:Comfortaa,sans-serif}.calendar-day.good .calendar-day-number{color:#90ee90}.calendar-day.bad .calendar-day-number{color:#f99}.calendar-day-icon{font-size:1.2em;margin-top:4px}.calendar-day.woke-up-wet{position:relative}.calendar-day.woke-up-wet:after{content:"🌙";position:absolute;top:4px;right:4px;font-size:.9em}.calendar-affirmation{position:absolute;top:-40px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;padding:8px 12px;border-radius:8px;font-size:.85em;white-space:nowrap;z-index:10;box-shadow:0 4px 12px #ffb6c166;font-family:Comfortaa,sans-serif}.calendar-affirmation:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #DDA0DD}.calendar-legend{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding-top:20px;border-top:2px solid rgba(255,182,193,.3)}.legend-item{display:flex;align-items:center;gap:8px;font-size:.9em;color:plum}.legend-color{width:20px;height:20px;border-radius:6px;border:2px solid}.legend-color.good{background:linear-gradient(135deg,#f0fff0,#e0ffe0);border-color:#bdfcc9}.legend-color.bad{background:linear-gradient(135deg,#fff0f5,#ffe5e5);border-color:#ffcccb}.legend-color.today{background:#fff;border-color:#ffb6c1;border-width:3px}.calendar-day-details{margin-top:30px;padding:25px;background:linear-gradient(135deg,#ffe5b4,#ffdab9);border-radius:15px;border:2px solid #FFCC99;box-shadow:0 4px 12px #ffcc994d}.calendar-day-details h3{margin:0 0 20px;color:#ff8c69;font-size:1.3em;font-family:Comfortaa,sans-serif}.day-affirmation-message{display:flex;align-items:center;gap:15px;padding:20px;background:#fff;border-radius:12px;margin-bottom:15px;box-shadow:0 2px 8px #ffb6c133;border:2px solid rgba(255,182,193,.3)}.affirmation-icon{font-size:2.5em}.affirmation-text{flex:1;font-size:1.3em;font-weight:600;color:#ff8c69;font-family:Comfortaa,sans-serif}.close-details{background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:600;transition:background .2s;box-shadow:0 2px 8px #ffb6c14d;font-family:Comfortaa,sans-serif}.close-details:hover{transform:scale(1.05);box-shadow:0 4px 12px #ffb6c166}@media(max-width:768px){.calendar-header{margin-bottom:15px}.calendar-header h2{font-size:1.2em}.calendar-nav-btn{width:32px;height:32px;font-size:1em}.calendar-grid{gap:3px;margin-bottom:15px}.calendar-day-header{padding:6px 2px;font-size:.75em}.calendar-day{padding:3px;border-radius:6px;border-width:1.5px}.calendar-day-number{font-size:.85em}.calendar-day-icon{font-size:.9em}.calendar-legend{flex-direction:column;gap:10px;align-items:flex-start;font-size:.85em}.streak-banner{flex-direction:column;text-align:center;padding:15px}.streak-icon{font-size:2em}.streak-text strong{font-size:1.1em}.streak-subtitle{font-size:.9em}.calendar-stats{padding:10px;gap:10px}.calendar-stat-number{font-size:1.5em}.calendar-stat-label{font-size:.8em}.calendar-day-details{padding:15px}.calendar-day-details h3{font-size:1.1em}}.badges-container{background:linear-gradient(135deg,#fff,#fff0f5);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 4px 12px #ffb6c133;border:2px solid rgba(255,182,193,.3)}.badges-container h2{color:#ffb6c1;margin-bottom:20px;font-family:Comfortaa,sans-serif;text-align:center}.badges-progress{text-align:center;color:plum;margin-bottom:25px;font-size:1.1em;font-weight:600}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px}.badge-card{background:linear-gradient(135deg,#f0f8ff,#e0f6ff);border-radius:15px;padding:20px;text-align:center;position:relative;transition:all .3s;border:2px solid rgba(176,224,230,.3);min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center}.badge-card.earned{background:linear-gradient(135deg,#f0fff0,#e0ffe0);border-color:#bdfcc9;box-shadow:0 4px 12px #bdfcc94d;animation:bounce .5s ease}.badge-card.locked{opacity:.6;background:linear-gradient(135deg,#f5f5f5,#e5e5e5);border-color:#c8c8c84d}.badge-card:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 6px 16px #ffb6c166}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.badge-emoji{font-size:3em;margin-bottom:10px}.badge-name{font-weight:600;color:#ffb6c1;margin-bottom:5px;font-family:Comfortaa,sans-serif;font-size:1.1em}.badge-card.earned .badge-name{color:#90ee90}.badge-description{font-size:.85em;color:plum;margin-top:5px}.badge-card.earned .badge-description{color:#70c070}.badge-locked{position:absolute;top:10px;right:10px;font-size:1.5em;opacity:.5}.badge-check{position:absolute;top:10px;right:10px;background:#90ee90;color:#fff;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2em;box-shadow:0 2px 8px #90ee9066}@media(max-width:768px){.badges-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:15px}.badge-card{min-height:150px;padding:15px}.badge-emoji{font-size:2.5em}}.badge-manual-label{position:absolute;top:10px;left:10px;background:#d9468ce6;color:#fff;padding:4px 8px;border-radius:12px;font-size:.75em;font-weight:700}.badge-card.manual-badge{border:2px dashed #FFB6D9}.settings-container{background:linear-gradient(135deg,#fff,#fff0f5);border-radius:20px;padding:30px;margin-bottom:30px;box-shadow:0 4px 12px #ffb6c133;border:2px solid rgba(255,182,193,.3)}.settings-container h2{color:#ffb6c1;margin-bottom:25px;font-family:Comfortaa,sans-serif;text-align:center}.settings-group{margin-bottom:25px}.settings-label{display:block;color:plum;font-weight:600;margin-bottom:10px;font-family:Comfortaa,sans-serif}.settings-input{width:100%;padding:12px;border:2px solid rgba(255,182,193,.4);border-radius:8px;font-family:Comfortaa,sans-serif;font-size:1em;background:#fff;color:plum;transition:border-color .2s}.settings-input:focus{outline:none;border-color:#ffb6c1;box-shadow:0 0 0 3px #ffb6c11a}.settings-hint{color:#b0e0e6;font-size:.85em;margin-top:5px;font-style:italic}.settings-toggle{display:flex;align-items:center;gap:15px;cursor:pointer;padding:15px;background:linear-gradient(135deg,#f0f8ff,#e0f6ff);border-radius:12px;border:2px solid rgba(176,224,230,.3);transition:all .2s}.settings-toggle:hover{background:linear-gradient(135deg,#e0f6ff,#d0eeff);border-color:#b0e0e6}.settings-toggle input[type=checkbox]{width:50px;height:26px;appearance:none;background:#ffb6c14d;border-radius:13px;position:relative;cursor:pointer;transition:background .3s}.settings-toggle input[type=checkbox]:checked{background:linear-gradient(135deg,#ffb6c1,plum)}.settings-toggle input[type=checkbox]:before{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;top:2px;left:2px;transition:transform .3s;box-shadow:0 2px 4px #0003}.settings-toggle input[type=checkbox]:checked:before{transform:translate(24px)}.toggle-label{color:plum;font-weight:600;font-family:Comfortaa,sans-serif;font-size:1.1em}.share-settings-btn{width:100%;padding:15px;background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:1.1em;transition:all .2s;font-family:Comfortaa,sans-serif;box-shadow:0 4px 12px #ffb6c14d}.share-settings-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ffb6c166}.auth-button{display:flex;align-items:center;justify-content:center;gap:12px;background:#fff;border:2px solid #E0E0E0;border-radius:8px;padding:12px 24px;font-size:1em;font-weight:500;color:#5a5a5a;cursor:pointer;transition:all .2s;font-family:Comfortaa,sans-serif;box-shadow:0 2px 4px #0000001a}.auth-button:hover{background:#f5f5f5;border-color:#4285f4;box-shadow:0 4px 8px #4285f433;transform:translateY(-1px)}.auth-button:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.google-icon{width:20px;height:20px}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ffe5f1,#ffd6e8,#ffc7df);padding:20px;font-family:Comfortaa,sans-serif}.login-card{background:#fff;border-radius:20px;padding:40px;max-width:500px;width:100%;box-shadow:0 8px 24px #d9468c33;border:2px solid #FFB6D9}.login-header{text-align:center;margin-bottom:30px}.login-header h1{font-size:2.5em;color:#d9468c;margin:0 0 10px}.login-subtitle{font-size:1.2em;color:#8b4a6b;margin:0}.login-content{display:flex;flex-direction:column;align-items:center;gap:20px}.login-description{text-align:center;color:#8b4a6b;line-height:1.6;margin:0}.login-hint{font-size:.9em;color:#8b4a6b;text-align:center;margin:0;font-style:italic}.login-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid rgba(255,182,217,.3)}.login-tab{background:none;border:none;padding:12px 20px;cursor:pointer;font-family:Comfortaa,sans-serif;font-size:1em;color:#8b4a6b;border-bottom:3px solid transparent;transition:all .2s;flex:1}.login-tab.active{color:#d9468c;border-bottom-color:#d9468c;font-weight:700}.login-tab:hover{color:#d9468c;background:#ffb6c11a}.username-auth-form{width:100%;display:flex;flex-direction:column;gap:15px}.username-auth-form .form-group{display:flex;flex-direction:column;gap:5px}.username-auth-form label{font-weight:600;color:#d9468c;font-size:.95em}.username-auth-form input{padding:12px;border:2px solid #FFB6D9;border-radius:8px;font-family:Comfortaa,sans-serif;font-size:1em;color:#5a5a5a;transition:border-color .2s}.username-auth-form input:focus{outline:none;border-color:#d9468c}.form-hint{font-size:.85em;color:#8b4a6b;font-style:italic}.auth-error{background:#ffe5e5;border:2px solid #FF9999;border-radius:8px;padding:12px;color:#d9468c;font-size:.9em;text-align:center}.auth-submit-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-family:Comfortaa,sans-serif;font-size:1em;font-weight:700;cursor:pointer;transition:all .2s;margin-top:10px}.auth-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #d9468c66}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.login-switch{text-align:center;color:#8b4a6b;font-size:.9em;margin:15px 0 0}.link-button{background:none;border:none;color:#d9468c;cursor:pointer;text-decoration:underline;font-family:Comfortaa,sans-serif;font-size:1em;padding:0}.link-button:hover{color:#c7367a}@media(max-width:768px){.login-card{padding:30px 20px}.login-header h1{font-size:2em}.login-subtitle{font-size:1em}.login-tabs{margin-bottom:15px}.login-tab{padding:10px 15px;font-size:.9em}}.user-menu{position:relative}.user-menu-button{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:transform .2s}.user-menu-button:hover{transform:scale(1.05)}.user-menu-button:active{transform:scale(.95)}.user-menu-avatar{width:40px;height:40px;border-radius:50%;border:2px solid rgba(255,182,193,.5);object-fit:cover}.user-menu-icon{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#ffb6c1,plum);display:flex;align-items:center;justify-content:center;font-size:1.5em;border:2px solid rgba(255,182,193,.5)}.user-menu-dropdown{position:absolute;top:calc(100% + 10px);right:0;background:linear-gradient(135deg,#fff,#fff0f5);border-radius:12px;box-shadow:0 4px 16px #00000026;border:2px solid rgba(255,182,193,.3);min-width:220px;z-index:1000;overflow:hidden}.user-menu-header{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#ffb6c11a,#dda0dd1a)}.user-menu-dropdown-avatar{width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,182,193,.5);object-fit:cover}.user-menu-info{flex:1;min-width:0}.user-menu-name{font-weight:600;color:#ffb6c1;font-size:.95em;font-family:Comfortaa,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.user-menu-email{font-size:.8em;color:plum;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-divider{height:1px;background:#ffb6c133;margin:4px 0}.user-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;cursor:pointer;font-family:Comfortaa,sans-serif;font-size:.95em;color:#8b4a6b;transition:background .2s;text-align:left}.user-menu-item:hover{background:#ffb6c11a}.user-menu-item-icon{font-size:1.2em;width:24px;text-align:center}.caregiver-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.caregiver-modal{background:linear-gradient(135deg,#ffe5f1,#ffd6e8);border-radius:20px;padding:30px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.caregiver-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.caregiver-modal-header h2{margin:0;color:#d9468c;font-size:1.8em}.close-modal{background:none;border:none;font-size:2em;cursor:pointer;color:#d9468c;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.close-modal:hover{background:#d9468c1a}.caregiver-modal-content{color:#5a5a5a}.caregiver-description{margin-bottom:20px;line-height:1.6;font-size:1.1em}.caregiver-generate-section{display:flex;flex-direction:column;gap:15px}.caregiver-name-input{width:100%;padding:12px;border:2px solid #FFB6D9;border-radius:10px;font-size:1em;font-family:Comfortaa,sans-serif}.generate-caregiver-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:15px 30px;border-radius:12px;font-size:1.1em;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s;font-family:Comfortaa,sans-serif}.generate-caregiver-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #d9468c4d}.generate-caregiver-btn:disabled{opacity:.6;cursor:not-allowed}.caregiver-link-container{background:#fff;border-radius:15px;padding:20px;margin-top:20px;border:2px solid #FFB6D9}.caregiver-link-info{margin-bottom:15px;color:#d9468c;font-size:1.1em}.caregiver-url-container{display:flex;gap:10px;margin-bottom:15px}.caregiver-url-input{flex:1;padding:12px;border:2px solid #FFB6D9;border-radius:10px;font-size:.9em;font-family:monospace}.copy-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:700;transition:transform .2s;white-space:nowrap;font-family:Comfortaa,sans-serif}.copy-btn:hover:not(:disabled){transform:translateY(-2px)}.copy-btn.copied{background:linear-gradient(135deg,#4caf50,#45a049)}.copy-btn:disabled{opacity:.6;cursor:not-allowed}.caregiver-actions{display:flex;gap:10px;flex-wrap:wrap}.caregiver-action-btn{flex:1;min-width:120px;background:linear-gradient(135deg,#ffb6d9,#ff9ec7);color:#d9468c;border:none;padding:12px 20px;border-radius:10px;cursor:pointer;font-weight:700;text-decoration:none;display:inline-block;text-align:center;transition:transform .2s;font-family:Comfortaa,sans-serif}.caregiver-action-btn:hover{transform:translateY(-2px)}.caregiver-action-btn.revoke{background:linear-gradient(135deg,#f99,#f77);color:#fff}@media(max-width:600px){.caregiver-modal{padding:20px}.caregiver-url-container{flex-direction:column}.copy-btn{width:100%}.caregiver-actions{flex-direction:column}.caregiver-action-btn{width:100%}}.share-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.share-modal{background:#fff;border-radius:20px;padding:30px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003;border:2px solid #FFB6D9;font-family:Comfortaa,sans-serif}.share-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.share-modal-header h2{margin:0;color:#d9468c;font-size:1.8em}.close-modal{background:none;border:none;font-size:1.5em;cursor:pointer;color:#8b4a6b;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.close-modal:hover{background:#ffb6c133}.share-modal-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid rgba(255,182,217,.3)}.share-tab{background:none;border:none;padding:12px 20px;cursor:pointer;font-family:Comfortaa,sans-serif;font-size:1em;color:#8b4a6b;border-bottom:3px solid transparent;transition:all .2s}.share-tab.active{color:#d9468c;border-bottom-color:#d9468c;font-weight:700}.share-tab:hover{color:#d9468c;background:#ffb6c11a}.share-modal-content{margin-bottom:20px}.share-modal-section{margin-bottom:25px}.share-modal-section h3{color:#d9468c;margin:0 0 10px;font-size:1.2em}.share-modal-section p{color:#8b4a6b;margin:0 0 15px;line-height:1.6}.share-description{color:#8b4a6b;margin:0 0 20px;line-height:1.6}.share-url-container{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap}.share-url-input{flex:1;min-width:200px;padding:12px;border:2px solid #FFB6D9;border-radius:8px;font-family:Comfortaa,sans-serif;font-size:.9em;color:#5a5a5a}.share-url-input:focus{outline:none;border-color:#d9468c}.copy-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-family:Comfortaa,sans-serif;font-size:.9em;font-weight:700;cursor:pointer;transition:transform .2s;white-space:nowrap}.copy-btn:hover{transform:translateY(-2px)}.copy-btn:active{transform:translateY(0)}.copy-btn.copied{background:linear-gradient(135deg,#34a853,#2e8b47)}.share-actions{display:flex;gap:10px;flex-wrap:wrap}.share-action-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-family:Comfortaa,sans-serif;font-size:.9em;font-weight:700;cursor:pointer;transition:all .2s;flex:1;min-width:150px}.share-action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #d9468c4d}.share-action-btn:active{transform:translateY(0)}.share-action-btn:disabled{opacity:.6;cursor:not-allowed}.share-action-btn.revoke{background:linear-gradient(135deg,#ff6b6b,#ee5a5a)}.share-action-btn.revoke:hover{box-shadow:0 4px 8px #ff6b6b4d}.generate-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-family:Comfortaa,sans-serif;font-size:1em;font-weight:700;cursor:pointer;transition:all .2s;width:100%}.generate-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #d9468c66}.generate-btn:active{transform:translateY(0)}.generate-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.share-modal{padding:20px;margin:10px}.share-url-container{flex-direction:column}.share-url-input{min-width:100%}.copy-btn{width:100%}.share-actions{flex-direction:column}.share-action-btn{width:100%;min-width:100%}.generate-btn{width:100%}}.shared-calendar-container{min-height:100vh;background:linear-gradient(135deg,#ffe5f1,#ffd6e8,#ffc7df);padding:20px;font-family:Comfortaa,sans-serif}.shared-header{text-align:center;margin-bottom:30px;color:#d9468c}.shared-header h1{font-size:2.5em;margin:0 0 10px;color:#d9468c}.shared-subtitle{font-size:1.2em;color:#8b4a6b;margin:0}.view-toggle{display:flex;gap:10px;margin-bottom:30px;justify-content:center;flex-wrap:wrap}.view-btn{background:#fff;border:2px solid #FFB6D9;padding:12px 20px;border-radius:12px;cursor:pointer;font-size:1em;font-family:Comfortaa,sans-serif;color:#8b4a6b;transition:all .2s}.view-btn:hover{background:#fff0f5;transform:translateY(-2px)}.view-btn.active{background:linear-gradient(135deg,#ffb6c1,plum);color:#fff;border-color:#d9468c}@media(max-width:768px){.shared-header h1{font-size:2em}.shared-subtitle{font-size:1em}.view-btn{padding:10px 16px;font-size:.9em}}.custom-badge-creator{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9}.create-badge-btn{width:100%;background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:15px;border-radius:12px;font-size:1.1em;font-weight:700;cursor:pointer;transition:transform .2s;font-family:Comfortaa,sans-serif}.create-badge-btn:hover{transform:translateY(-2px)}.badge-creator-form h3{color:#d9468c;margin-top:0;margin-bottom:20px}.badge-creator-form .form-group{margin-bottom:15px}.badge-creator-form label{display:block;margin-bottom:5px;color:#5a5a5a;font-weight:700}.badge-creator-form input,.badge-creator-form select{width:100%;padding:10px;border:2px solid #FFB6D9;border-radius:8px;font-size:1em;font-family:Comfortaa,sans-serif}.form-actions{display:flex;gap:10px;margin-top:20px}.cancel-btn,.submit-btn{flex:1;padding:12px;border:none;border-radius:8px;font-size:1em;font-weight:700;cursor:pointer;font-family:Comfortaa,sans-serif}.form-hint{margin-top:5px;font-size:.85em;color:#8b4a6b;font-style:italic}.manual-badge-manager{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9;margin-bottom:30px}.manual-badge-manager h3{color:#d9468c;margin-top:0;margin-bottom:10px}.manual-badge-hint{color:#8b4a6b;font-size:.9em;margin-bottom:20px;line-height:1.5}.manual-badges-list{display:flex;flex-direction:column;gap:15px}.manual-badge-item{background:#ffe5f1;border-radius:12px;padding:15px;border:2px solid #FFB6D9;display:flex;justify-content:space-between;align-items:center;gap:15px}.manual-badge-item.earned{background:#e8f5e9;border-color:#4caf50}.manual-badge-info{display:flex;align-items:center;gap:15px;flex:1}.manual-badge-emoji{font-size:2.5em}.manual-badge-details{flex:1}.manual-badge-name{font-weight:700;color:#d9468c;font-size:1.1em;margin-bottom:5px}.manual-badge-item.earned .manual-badge-name{color:#4caf50}.manual-badge-description{color:#5a5a5a;margin-bottom:5px}.manual-badge-earned-date{color:#8b4a6b;font-size:.85em;font-style:italic}.manual-badge-actions{flex-shrink:0}.award-badge-btn,.revoke-badge-btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-weight:700;font-family:Comfortaa,sans-serif;transition:transform .2s;white-space:nowrap}.award-badge-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff}.award-badge-btn:hover:not(:disabled){transform:translateY(-2px)}.revoke-badge-btn{background:#f99;color:#fff}.revoke-badge-btn:hover:not(:disabled){transform:translateY(-2px)}.award-badge-btn:disabled,.revoke-badge-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:600px){.manual-badge-item{flex-direction:column;align-items:stretch}.manual-badge-actions,.award-badge-btn,.revoke-badge-btn{width:100%}}.caregiver-notes{margin-top:10px}.existing-notes{margin-bottom:10px}.caregiver-note-item{background:#fff9e6;border:2px solid #FFD700;border-radius:10px;padding:12px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.note-content{flex:1;color:#5a5a5a;line-height:1.5}.delete-note-btn{background:#f99;color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:1.2em;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s}.delete-note-btn:hover{background:#f77}.add-note-btn{background:linear-gradient(135deg,#ffb6d9,#ff9ec7);color:#d9468c;border:none;padding:8px 15px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.9em;transition:transform .2s;font-family:Comfortaa,sans-serif}.add-note-btn:hover{transform:translateY(-2px)}.note-form{display:flex;flex-direction:column;gap:10px}.note-textarea{width:100%;padding:10px;border:2px solid #FFB6D9;border-radius:8px;font-size:1em;font-family:Comfortaa,sans-serif;resize:vertical}.note-form-actions{display:flex;gap:10px}.cancel-note-btn,.save-note-btn{flex:1;padding:8px;border:none;border-radius:8px;cursor:pointer;font-weight:700;font-family:Comfortaa,sans-serif}.cancel-note-btn{background:#e0e0e0;color:#5a5a5a}.save-note-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff}.save-note-btn:disabled{opacity:.6;cursor:not-allowed}.goals-list{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9}.goals-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.goals-header h3{color:#d9468c;margin:0}.create-goal-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:10px 20px;border-radius:10px;cursor:pointer;font-weight:700;font-family:Comfortaa,sans-serif;transition:transform .2s}.create-goal-btn:hover{transform:translateY(-2px)}.goal-form-container{background:#ffe5f1;border-radius:12px;padding:20px;margin-bottom:20px}.goal-form .form-group{margin-bottom:15px}.goal-form label{display:block;margin-bottom:5px;color:#5a5a5a;font-weight:700}.goal-form input,.goal-form select{width:100%;padding:10px;border:2px solid #FFB6D9;border-radius:8px;font-size:1em;font-family:Comfortaa,sans-serif}.goals-container{display:flex;flex-direction:column;gap:15px}.no-goals{text-align:center;color:#8b4a6b;padding:20px}.goal-card{background:#ffe5f1;border-radius:12px;padding:15px;border:2px solid #FFB6D9}.goal-card.completed{background:#e8f5e9;border-color:#4caf50}.goal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.goal-info h4{margin:0;color:#d9468c;font-size:1.1em}.goal-deadline{margin:5px 0 0;color:#8b4a6b;font-size:.9em}.goal-actions{display:flex;gap:5px}.complete-goal-btn,.delete-goal-btn{background:#fff;border:2px solid #FFB6D9;border-radius:50%;width:30px;height:30px;cursor:pointer;font-size:1.2em;display:flex;align-items:center;justify-content:center;transition:all .2s}.complete-goal-btn{color:#4caf50;border-color:#4caf50}.complete-goal-btn:hover{background:#4caf50;color:#fff}.delete-goal-btn{color:#f99;border-color:#f99}.delete-goal-btn:hover{background:#f99;color:#fff}.goal-progress{display:flex;align-items:center;gap:10px}.progress-bar{flex:1;height:20px;background:#e0e0e0;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#d9468c,#c7367a);transition:width .3s}.progress-text{color:#8b4a6b;font-weight:700;min-width:50px;text-align:right}.goal-completed{color:#4caf50;font-weight:700;text-align:center;padding:10px;background:#fff;border-radius:8px}@media(max-width:600px){.goals-header{flex-direction:column;gap:10px;align-items:stretch}.create-goal-btn{width:100%}}.diaper-check-log{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9}.check-log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.check-log-header h3{color:#d9468c;margin:0}.log-check-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:10px 20px;border-radius:10px;cursor:pointer;font-weight:700;font-family:Comfortaa,sans-serif;transition:transform .2s}.log-check-btn:hover{transform:translateY(-2px)}.check-form-container{background:#ffe5f1;border-radius:12px;padding:20px;margin-bottom:20px}.check-form .form-group{margin-bottom:15px}.check-form label{display:block;margin-bottom:5px;color:#5a5a5a;font-weight:700}.check-form input,.check-form textarea{width:100%;padding:10px;border:2px solid #FFB6D9;border-radius:8px;font-size:1em;font-family:Comfortaa,sans-serif}.check-form textarea{resize:vertical}.form-actions{display:flex;gap:10px;margin-top:15px}.cancel-btn,.submit-btn{flex:1;padding:10px;border:none;border-radius:8px;cursor:pointer;font-weight:700;font-family:Comfortaa,sans-serif}.cancel-btn{background:#e0e0e0;color:#5a5a5a}.submit-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.checks-list{display:flex;flex-direction:column;gap:10px}.no-checks{text-align:center;color:#8b4a6b;padding:20px}.check-item{background:#ffe5f1;border-radius:10px;padding:15px;border:2px solid #FFB6D9}.check-time{font-weight:700;color:#d9468c;margin-bottom:5px}.check-notes{color:#5a5a5a;margin-top:5px;line-height:1.5}@media(max-width:600px){.check-log-header{flex-direction:column;gap:10px;align-items:stretch}.log-check-btn{width:100%}}.event-detail-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.event-detail-modal{background:#fff;border-radius:20px;padding:30px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003;border:2px solid #FFB6D9;font-family:Comfortaa,sans-serif}.event-detail-header{display:flex;align-items:center;gap:15px;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid rgba(255,182,217,.3)}.event-detail-icon{font-size:3em}.event-detail-title{flex:1}.event-detail-title h2{margin:0 0 5px;color:#d9468c;font-size:1.8em}.event-detail-time{color:#8b4a6b;font-size:.9em}.event-detail-close{background:none;border:none;font-size:2em;cursor:pointer;color:#8b4a6b;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.event-detail-close:hover{background:#ffb6c133}.event-detail-content{display:flex;flex-direction:column;gap:20px}.event-detail-section{padding:15px;background:linear-gradient(135deg,#fff0f5,#fff);border-radius:12px;border:2px solid rgba(255,182,193,.3)}.event-detail-label{font-weight:600;color:#d9468c;margin-bottom:8px;font-size:1em}.event-detail-value{color:#5a5a5a;font-size:1em;line-height:1.6}.event-notes{font-style:italic;padding:10px;background:#ffffffb3;border-radius:8px;border-left:3px solid #FFB6C1}.wetness-display{display:flex;flex-direction:column;gap:10px}.wetness-level-indicator{display:flex;gap:5px;align-items:center}.water-drop{font-size:1.5em;opacity:.3;transition:opacity .2s}.water-drop.active{opacity:1}.wetness-label-text{color:#8b4a6b;font-size:.95em}.caregiver-notes-section{background:linear-gradient(135deg,#e0f6ff,#f0f8ff);border-color:#b0e0e680}@media(max-width:768px){.event-detail-modal{padding:20px;margin:10px}.event-detail-header{flex-direction:column;align-items:flex-start}.event-detail-icon{font-size:2.5em}.event-detail-title h2{font-size:1.5em}}.caregiver-view-container{min-height:100vh;background:linear-gradient(135deg,#ffe5f1,#ffd6e8,#ffc7df);padding:20px;font-family:Comfortaa,sans-serif}.caregiver-header{text-align:center;margin-bottom:30px;color:#d9468c}.caregiver-header h1{font-size:2.5em;margin:0 0 10px;color:#d9468c}.caregiver-subtitle{font-size:1.2em;color:#8b4a6b;margin:0}.caregiver-link-prompt{background:linear-gradient(135deg,#fff9e6,#ffe5b4);border-radius:15px;padding:20px;margin-bottom:20px;border:2px solid #FFD700;text-align:center}.link-prompt-content p{margin:10px 0;color:#8b6914;font-weight:700}.link-prompt-hint{font-size:.9em;font-weight:400;color:#8b4a6b;margin-bottom:15px}.link-prompt-actions{margin-top:15px}.link-account-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-size:1em;font-weight:700;cursor:pointer;transition:transform .2s;font-family:Comfortaa,sans-serif}.link-account-btn:hover:not(:disabled){transform:translateY(-2px)}.link-account-btn:disabled{opacity:.6;cursor:not-allowed}.auto-link-prompt{margin-top:20px;padding-top:20px;border-top:2px solid #FFD700}.auto-link-prompt p{margin-bottom:15px;color:#8b4a6b}.caregiver-linked-notice{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:15px;padding:15px;margin-bottom:20px;text-align:center;border:2px solid #4CAF50;color:#2e7d32;font-weight:700}.caregiver-note{background:#fff;border-radius:15px;padding:15px;margin-bottom:20px;text-align:center;border:2px solid #FFB6D9;color:#5a5a5a}.caregiver-view-toggle{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap;justify-content:center}.caregiver-view-btn{background:#fff;border:2px solid #FFB6D9;padding:12px 20px;border-radius:12px;cursor:pointer;font-size:1em;font-weight:700;color:#d9468c;transition:all .2s;font-family:Comfortaa,sans-serif}.caregiver-view-btn:hover{background:#ffe5f1;transform:translateY(-2px)}.caregiver-view-btn.active{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border-color:#d9468c}.caregiver-dashboard{display:flex;flex-direction:column;gap:30px}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.dashboard-stat{background:#fff;border-radius:15px;padding:20px;text-align:center;border:2px solid #FFB6D9}.dashboard-stat .stat-number{font-size:2.5em;font-weight:700;color:#d9468c;margin-bottom:5px}.dashboard-stat .stat-label{color:#8b4a6b;font-size:.9em}.dashboard-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.dashboard-section{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9}.dashboard-section h3{color:#d9468c;margin-top:0;margin-bottom:15px}.recent-events{display:flex;flex-direction:column;gap:10px}.recent-event{display:flex;align-items:center;gap:10px;padding:10px;background:#ffe5f1;border-radius:10px}.recent-event .event-icon{font-size:1.5em}.recent-event .event-text{flex:1;color:#5a5a5a}.recent-event .event-time{color:#8b4a6b;font-size:.9em}.caregiver-badges-section{display:flex;flex-direction:column;gap:30px}.loading-message,.error-message{text-align:center;padding:50px 20px;color:#5a5a5a}.error-icon{font-size:4em;margin-bottom:20px}.caregiver-day-events{background:#fff;border-radius:15px;padding:20px;margin-top:20px;border:2px solid #FFB6D9}.caregiver-day-events h3{color:#d9468c;margin-top:0;margin-bottom:15px}.close-day-events{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-family:Comfortaa,sans-serif;margin-bottom:15px}.close-day-events:hover{transform:translateY(-2px)}.day-events-list{display:flex;flex-direction:column;gap:10px}.caregiver-events-list{background:#fff;border-radius:15px;padding:20px;margin-top:20px;border:2px solid #FFB6D9}.caregiver-events-list h3{color:#d9468c;margin-top:0;margin-bottom:15px}.events-list-container{display:flex;flex-direction:column;gap:12px;max-height:600px;overflow-y:auto}.caregiver-event-item{background:linear-gradient(135deg,#fff0f5,#fff);border-radius:12px;padding:15px;border:2px solid rgba(255,182,193,.3);cursor:pointer;transition:all .2s}.caregiver-event-item:hover{background:linear-gradient(135deg,#ffe5f1,#fff0f5);border-color:#ffb6c1;transform:translateY(-2px);box-shadow:0 4px 8px #ffb6c133}.event-item-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.event-item-icon{font-size:1.5em}.event-item-type{flex:1;font-weight:600;color:#d9468c;font-size:1.1em}.event-item-time{color:#8b4a6b;font-size:.9em}.event-item-details{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;margin-left:35px}.wetness-indicator,.diaper-type-indicator,.woke-up-indicator{color:#5a5a5a;font-size:.9em}.event-item-notes{margin-top:8px;margin-left:35px;color:#8b4a6b;font-size:.9em;font-style:italic;padding:8px;background:#ffffffb3;border-radius:6px;border-left:3px solid #FFB6C1}@media(max-width:768px){.caregiver-header h1{font-size:1.8em}.caregiver-view-toggle{flex-direction:column}.caregiver-view-btn{width:100%}.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-sections{grid-template-columns:1fr}.event-item-header{flex-wrap:wrap}.event-item-time{width:100%;margin-top:4px}.event-item-details,.event-item-notes{margin-left:0}}.caregiver-dashboard-container{min-height:100vh;background:linear-gradient(135deg,#ffe5f1,#ffd6e8,#ffc7df);padding:20px;font-family:Comfortaa,sans-serif}.caregiver-dashboard-header{text-align:center;margin-bottom:30px;color:#d9468c}.caregiver-dashboard-header h1{font-size:2.5em;margin:0 0 10px;color:#d9468c}.caregiver-dashboard-subtitle{font-size:1.2em;color:#8b4a6b;margin:0}.error-message p{color:#8b4a6b;margin:10px 0 20px}.retry-btn{background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-size:1em;font-weight:700;cursor:pointer;transition:transform .2s;font-family:Comfortaa,sans-serif}.retry-btn:hover{transform:translateY(-2px)}.no-littles-message{text-align:center;padding:60px 20px;background:#fff;border-radius:15px;margin:20px auto;max-width:600px;border:2px solid #FFB6D9}.no-littles-icon{font-size:4em;margin-bottom:20px}.no-littles-message h2{color:#d9468c;margin:10px 0}.no-littles-message p{color:#8b4a6b;margin:10px 0;line-height:1.6}.hint-text{font-size:.9em;color:#8b4a6b;font-style:italic;margin-top:20px}.littles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;max-width:1200px;margin:0 auto}.little-card{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9;transition:transform .2s,box-shadow .2s}.little-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #d9468c33}.little-card-header{display:flex;align-items:center;gap:15px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid rgba(255,182,217,.3)}.little-avatar{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#ffb6c1,plum);display:flex;align-items:center;justify-content:center;font-size:1.8em;font-weight:700;color:#d9468c;border:2px solid #FFB6D9}.little-info{flex:1;min-width:0}.little-name{font-size:1.3em;color:#d9468c;margin:0 0 5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.little-email{font-size:.9em;color:#8b4a6b;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.little-card-details{margin-bottom:20px}.little-detail-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(255,182,217,.2)}.little-detail-item:last-child{border-bottom:none}.detail-label{font-size:.9em;color:#8b4a6b;font-weight:500}.detail-value{font-size:.9em;color:#d9468c;font-weight:700}.view-little-btn{width:100%;background:linear-gradient(135deg,#d9468c,#c7367a);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-size:1em;font-weight:700;cursor:pointer;transition:transform .2s;font-family:Comfortaa,sans-serif}.view-little-btn:hover{transform:translateY(-2px)}@media(max-width:768px){.littles-grid{grid-template-columns:1fr}.caregiver-dashboard-header h1{font-size:2em}.caregiver-dashboard-subtitle{font-size:1em}}.admin-panel-container{min-height:100vh;background:linear-gradient(135deg,#ffe5f1,#ffd6e8,#ffc7df);padding:20px;font-family:Comfortaa,sans-serif}.admin-header{text-align:center;margin-bottom:30px;color:#d9468c}.admin-header h1{font-size:2.5em;margin:0 0 10px;color:#d9468c}.admin-subtitle{font-size:1.2em;color:#8b4a6b;margin:0}.loading-message,.error-message{text-align:center;padding:40px 20px;background:#fff;border-radius:15px;margin:20px auto;max-width:500px;border:2px solid #FFB6D9}.error-icon{font-size:3em;margin-bottom:10px}.error-message h2{color:#d9468c;margin:10px 0}.error-message p{color:#8b4a6b;margin:10px 0}.error-hint{font-size:.9em;color:#8b4a6b;font-style:italic;margin-top:10px}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px;max-width:1200px;margin-left:auto;margin-right:auto}.stat-card{background:#fff;border-radius:15px;padding:20px;text-align:center;border:2px solid #FFB6D9}.stat-number{font-size:2.5em;font-weight:700;color:#d9468c;margin-bottom:10px}.stat-label{font-size:1em;color:#8b4a6b}.users-table-container{background:#fff;border-radius:15px;padding:20px;border:2px solid #FFB6D9;overflow-x:auto;max-width:1400px;margin:0 auto}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:linear-gradient(135deg,#ffb6d933,#dda0dd33)}.users-table th{padding:15px;text-align:left;font-weight:700;color:#d9468c;border-bottom:2px solid #FFB6D9}.users-table td{padding:12px 15px;border-bottom:1px solid rgba(255,182,217,.3);color:#5a5a5a}.users-table tbody tr:hover{background:#ffb6d91a}.user-id{font-weight:700;color:#d9468c}.user-name{font-weight:600;color:#8b4a6b}.user-email{color:#8b4a6b;font-size:.9em}.user-username{font-family:monospace;font-size:.9em;color:#5a5a5a}.user-auth-provider{text-align:center;font-size:1.2em}.user-ip{font-family:monospace;font-size:.9em;color:#5a5a5a}.user-stat{text-align:center;font-weight:600;color:#d9468c}.user-date{font-size:.9em;color:#8b4a6b}@media(max-width:768px){.admin-stats{grid-template-columns:1fr}.users-table-container{padding:10px}.users-table{font-size:.85em}.users-table th,.users-table td{padding:8px}}
