*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fffaf7;color:#2c2530;padding-bottom:84px}a{color:#704461;text-decoration:none}h1,h2,h3{margin-top:0}h1{font-size:clamp(1.7rem,5vw,2.4rem)}h2{font-size:1.2rem}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:12px max(16px,calc((100vw - 1050px)/2));background:rgba(255,250,247,.95);border-bottom:1px solid #eadfe5;backdrop-filter:blur(14px)}.brand{display:flex;gap:9px;align-items:center;font-weight:800;color:#2c2530}.logo{width:34px;height:34px;border-radius:11px;background:#7b506f;color:white;display:grid;place-items:center}.userchip{font-size:.8rem;background:#f0e4eb;padding:7px 10px;border-radius:99px}.container{max-width:1050px;margin:auto;padding:22px 16px}.hero{background:linear-gradient(135deg,#f3e4ec,#f7ede7);border-radius:25px;padding:24px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;color:#7b506f}.card{background:#fff;border:1px solid #eadfe5;border-radius:18px;padding:18px;box-shadow:0 4px 18px rgba(60,40,55,.04)}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.stack{display:grid;gap:12px}.sectionhead,.pagehead,.row-between{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pagehead{margin-bottom:18px}.muted{color:#786d76}.small{font-size:.85rem}.item{padding:12px 0;border-bottom:1px solid #eee5e9}.item:last-child{border-bottom:0}.button,button{appearance:none;border:1px solid #dacbd3;background:white;color:#493743;border-radius:11px;padding:9px 12px;font:inherit;font-weight:700;cursor:pointer}.primary{background:#7b506f!important;color:white!important;border-color:#7b506f!important}.danger{color:#9d3434!important}.wide{width:100%}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}.actions form{margin:0}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.quickcard{background:white;border:1px solid #eadfe5;border-radius:18px;display:grid;place-items:center;gap:5px;padding:18px;color:#2c2530;font-size:1.5rem}.quickcard span{font-size:.82rem;font-weight:700}.dangercard{border-left:5px solid #c75959;margin-top:16px}.badge,.status{display:inline-block;padding:5px 8px;border-radius:99px;background:#eee5ea;font-size:.72rem;font-weight:800}.badge.care,.dot.care{background:#f5d8d8}.badge.family,.dot.family{background:#dcead8}.status.confirmed{background:#d7ead8}.status.open{background:#f7e5b9}.status.pending{background:#e2e1f7}.status.rejected,.status.cancelled{background:#eee;color:#777}.stat{display:grid;gap:7px}.stat span{color:#786d76}.stat strong{font-size:2rem}.facts>div{display:grid;gap:5px;padding:14px 0;border-bottom:1px solid #eee5e9}.facts>div:last-child{border:0}.facts span{font-size:.8rem;color:#786d76}.notice{padding:10px;border-radius:10px;background:#fff2c9}.faded{opacity:.55}.auth{max-width:440px;margin:8vh auto}.formcard{max-width:680px}form p{display:grid;gap:6px}input,select,textarea{width:100%;border:1px solid #d7c9d1;border-radius:10px;padding:11px 12px;background:white;font:inherit}textarea{resize:vertical}.helptext,ul.errorlist{font-size:.8rem;color:#766a72}.errorlist{color:#9d3434!important}.flash{padding:11px 14px;border-radius:11px;margin-bottom:12px;background:#e2f1e3}.flash.error{background:#f5d8d8}.calendar-nav{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:12px}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:8px;margin-bottom:22px}.weekday{text-align:center;font-size:.7rem;color:#756a72;font-weight:800;padding:7px}.day{min-height:58px;padding:6px;border-radius:9px;background:#fffaf7}.day.empty{background:transparent}.daynum{display:block;font-size:.8rem}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:2px}.event h3{margin:7px 0}.offer{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#f8f2f5;border-radius:10px;padding:9px;margin-top:8px}.smallbtn{padding:6px 8px;font-size:.8rem}.bottomnav{position:fixed;z-index:30;bottom:0;left:0;right:0;background:rgba(255,255,255,.96);border-top:1px solid #e2d6dd;display:flex;justify-content:center;padding-bottom:env(safe-area-inset-bottom)}.bottomnav a{width:min(20%,140px);display:grid;place-items:center;gap:2px;color:#574852;font-size:1.1rem;padding:9px 4px}.bottomnav span{font-size:.66rem;font-weight:700}@media(max-width:700px){.grid.two{grid-template-columns:1fr}.quick{grid-template-columns:repeat(2,1fr)}.hero,.pagehead{flex-direction:column}.calendar{gap:1px}.day{min-height:45px;padding:4px}.container{padding:16px 12px}.card{padding:15px}.userchip{max-width:38vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
/* Feature update: calendar, kindergarten, clothing and dashboard photos */
.leonie-today{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,1.2fr);gap:18px;align-items:stretch;margin-bottom:16px;background:linear-gradient(135deg,#fff,#f7ede7)}
.today-copy{padding:8px 4px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.today-copy h1{margin-bottom:8px}.compact-hero{padding:18px 22px}.compact-hero h2{margin-bottom:4px}.photo-slider{position:relative;min-height:250px;border-radius:18px;overflow:hidden;background:#f1e8ed}.photo-slider .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .55s ease}.photo-slider .slide.active{opacity:1}.photo-placeholder{min-height:250px;display:grid;place-items:center;align-content:center;gap:8px;font-size:2rem;color:#887982}.photo-placeholder span{font-size:.9rem}.slide-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;z-index:2}.slide-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55)}.slide-dot.active{background:white;transform:scale(1.2)}
.top-actions{margin-top:0}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0 0 12px;font-size:.75rem;color:#6e626a}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend .dot{margin:0}.badge.care_needed,.dot.care_needed,.badge.care,.dot.care{background:#f5d8d8}.badge.family_time,.dot.family_time,.badge.family,.dot.family{background:#dcead8}.badge.general,.dot.general{background:#dbe8f7}.badge.kindergarten,.dot.kindergarten{background:#f8e2b8}.badge.doctor,.dot.doctor{background:#e3dcf7}.dot.unavailable{background:#c75959}.availability-card{margin:0 0 20px}.availability-list{display:grid;gap:8px}.availability-list>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #eee5e9}.availability-list>div:last-child{border-bottom:0}
.multi-calendar{max-width:620px;margin:auto}.multi-weekdays,.multi-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.multi-weekdays span{text-align:center;font-size:.72rem;font-weight:800;color:#756a72;padding:4px}.multi-day{aspect-ratio:1;border-radius:12px;padding:0;background:#fffaf7}.multi-day.empty{border-color:transparent;background:transparent;cursor:default}.multi-day.selected{background:#c75959!important;color:white!important;border-color:#c75959!important}.multi-day.disabled{opacity:.25;cursor:not-allowed}.selected-example{display:inline-block;width:12px;height:12px;border-radius:4px;background:#c75959;vertical-align:-1px;margin-right:3px}
.chip-list{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.need-chip{padding:7px 10px;border-radius:99px;background:#f6e6eb;font-size:.85rem;font-weight:700}
.schedule-table{display:grid}.schedule-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #eee5e9}.schedule-row:last-child{border:0}.schedule-row span{font-size:.75rem;color:#786d76}.schedule-row b{font-size:1rem;color:#2c2530}.schedule-edit{display:grid;gap:12px;margin-bottom:16px}.schedule-edit-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;align-items:end;padding:12px;border:1px solid #eee5e9;border-radius:12px}.schedule-edit-row label{font-size:.8rem;font-weight:700}.schedule-edit-row input{margin-top:5px}.stock-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stock-item{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #eee5e9;border-radius:12px}.stock-light{width:14px;height:14px;border-radius:50%;flex:0 0 14px}.stock-item.sufficient .stock-light{background:#4aa765}.stock-item.low .stock-light{background:#e0ae35}.stock-item.empty .stock-light{background:#c75959}.stock-edit-card{display:grid;gap:12px}.stock-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stock-option{cursor:pointer}.stock-option input{position:absolute;opacity:0;width:1px;height:1px}.stock-option span{display:block;text-align:center;padding:10px 8px;border:1px solid #ded1d8;border-radius:10px;font-size:.82rem;font-weight:700}.stock-option input:checked+span{box-shadow:inset 0 0 0 2px #7b506f;background:#f8f1f5}
.photo-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.photo-admin-card{display:grid;gap:10px}.photo-admin-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.more-grid{margin:0 0 16px}.more-grid .quickcard{min-height:108px}
@media(max-width:700px){.leonie-today{grid-template-columns:1fr}.photo-slider,.photo-placeholder{min-height:230px}.stock-grid{grid-template-columns:1fr}.stock-options{grid-template-columns:1fr}.schedule-edit-row{grid-template-columns:1fr 1fr}.schedule-edit-row>strong{grid-column:1/-1}.photo-admin-grid{grid-template-columns:1fr}.top-actions{width:100%}.top-actions .button{flex:1;text-align:center}.availability-list>div{flex-direction:column;gap:3px}.bottomnav a{font-size:1rem}}
