/* v4.15.0 Consolidated Lunchadoo presentation layer.
   Replaces the active brand-v4.11, mobile-v4.11.2, and ui-icons-v4.14 CSS layers. */
:root{--lunchadoo-navy:#073b67;--lunchadoo-teal:#31bfc1;--lunchadoo-mint:#dff7ef;--lunchadoo-coral:#f45b76;--lunchadoo-yellow:#ffbf2f;--lunchadoo-blue:#5e9bea;--lunchadoo-cream:#fffaf0;--ink:var(--lunchadoo-navy);--pink:var(--lunchadoo-coral);--blue:#2b95e8;--green:#35b978;--yellow:var(--lunchadoo-yellow);--purple:#8e63d8;--shadow:0 12px 30px rgba(7,59,103,.12)}
html{min-height:100%;background:radial-gradient(circle at 14% 12%,rgba(49,191,193,.10),transparent 30%),radial-gradient(circle at 86% 18%,rgba(255,191,47,.10),transparent 28%),linear-gradient(180deg,#e9f9ff 0,#f7fcff 30%,#fffdf8 72%,#eef9e9 100%);background-attachment:fixed}
body{min-height:100vh;background:transparent!important;color:var(--lunchadoo-navy);overflow-x:hidden}#app{min-height:100vh}.app-shell{max-width:1440px;padding-top:14px;background:transparent!important;position:relative}

/* Shared header shell. lunchadoo-home-v4.12 owns the header layout/content. */
.app-bar,.lunchadoo-home-bar{background:linear-gradient(105deg,rgba(255,255,255,.58),rgba(255,255,255,.42))!important;border:1px solid rgba(255,255,255,.66)!important;box-shadow:0 8px 24px rgba(7,59,103,.075),inset 0 1px 0 rgba(255,255,255,.68)!important;border-radius:28px!important;-webkit-backdrop-filter:blur(12px) saturate(212%);backdrop-filter:blur(12px) saturate(212%)}
.app-bar{min-height:86px!important;padding:8px 16px!important}.app-bar-title{display:flex!important;align-items:center!important;gap:12px!important;min-width:0;flex:1}.lunchadoo-brand-lockup{display:flex;align-items:center;gap:4px;min-width:0}.lunchadoo-header-logo{width:215px;height:auto;display:block;flex:0 0 auto}.lunchadoo-header-mascot{width:80px;height:66px;object-fit:contain;margin-left:-5px;transform:translateY(2px)}
.app-bar-controls button,.child-switch{background:#f4faff!important;border:1px solid #e0eef5!important;color:var(--lunchadoo-navy)!important;box-shadow:none!important}.app-bar-controls button:hover,.child-switch:hover{background:#eaf8fb!important}.packing-tool.active,.top-tool.active{background:#dff7ef!important;border-color:#a9e5d2!important}

/* Planner */
.week-nav{border:1px solid rgba(7,59,103,.08);box-shadow:0 8px 22px rgba(7,59,103,.1);padding:9px 14px;margin-top:14px}.week-nav small{color:#39729c}.week-nav strong{color:var(--lunchadoo-navy);font-size:18px}.round-btn{background:#2d97e8;box-shadow:0 5px 13px rgba(45,151,232,.28)}
.planner-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}.day-card{border-color:#fff;border-radius:27px;box-shadow:0 11px 25px rgba(7,59,103,.11)}.day-card header{padding:15px 8px}.day-card:nth-child(1) header{background:#ffe1e9}.day-card:nth-child(2) header{background:#def4ff}.day-card:nth-child(3) header{background:#e3f8ea}.day-card:nth-child(4) header{background:#fff2c8}.day-card:nth-child(5) header{background:#eee6ff}.day-card h3{color:var(--lunchadoo-navy)}
.packed-lunch-glance,.school-glance,.day-snack{border-radius:20px!important}.packed-lunch-glance{background:var(--lunchadoo-cream)!important;border-color:#f1e3b9!important}.school-glance{background:#eef9ff!important;border-color:#ceeafb!important}.school-glance.closed{background:#fff2f2!important;border-color:#ffd0d5!important}.day-snack{background:#fbf9ff!important}.day-card-actions{display:grid;gap:6px;padding:0 11px 11px}.day-card-actions .edit-button{margin:0!important}.edit-button{border-radius:16px!important;box-shadow:none!important}.clear-day-button{border:1.5px solid #f1cbd3;background:#fff7f8;color:#a64054;border-radius:13px;padding:7px 9px;font-size:13px;font-weight:850}.clear-day-button:hover:not(:disabled){background:#ffedf1;border-color:#e8aebb}.clear-day-button:disabled{opacity:.38;cursor:default}

/* One canonical quick-action rule set. */
.quick-actions.lunchadoo-bottom-actions{width:min(1080px,calc(100% - 24px));margin:18px auto 8px;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px!important;align-items:stretch!important;min-width:0}
.quick-actions.lunchadoo-bottom-actions button{min-height:86px!important;border:1.5px solid #d8e8ef!important;border-radius:18px!important;background:linear-gradient(180deg,#fff 0%,#f5fbfd 100%)!important;color:#0b4775!important;box-shadow:0 4px 10px rgba(7,59,103,.07)!important;font-size:14px!important;font-weight:900!important;line-height:1.08!important;padding:10px!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease!important}
.quick-actions.lunchadoo-bottom-actions button.lui-decorated{display:inline-flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;text-align:center!important;white-space:normal!important}.quick-actions.lunchadoo-bottom-actions button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 15px rgba(7,59,103,.11)!important;border-color:#b9dce9!important}
.quick-actions.lunchadoo-bottom-actions button .lui-icon{width:27px;height:27px;color:#0b4775}.quick-actions.lunchadoo-bottom-actions button span.lui-label{font-size:14px!important;margin:0!important;font-weight:900!important;max-width:112px;letter-spacing:0;line-height:1.08!important}
.quick-actions.lunchadoo-bottom-actions button:nth-child(1){background:linear-gradient(180deg,#fff9df,#fff5c9)!important;border-color:#f1cf58!important}.quick-actions.lunchadoo-bottom-actions button:nth-child(2){background:linear-gradient(180deg,#f2fbff,#eaf7fd)!important;border-color:#cfe4ed!important}.quick-actions.lunchadoo-bottom-actions button:nth-child(3){background:linear-gradient(180deg,#f1fbff,#e8f7fb)!important;border-color:#cde4ec!important}.quick-actions.lunchadoo-bottom-actions button:nth-child(4){background:linear-gradient(180deg,#fff5f7,#ffedf1)!important;border-color:#f3d3dc!important}.quick-actions.lunchadoo-bottom-actions button:disabled{opacity:.43!important;filter:saturate(.5);box-shadow:none!important;transform:none!important}

/* General cards/settings */
.panel,.parent-header,.sync-panel{border:1px solid rgba(7,59,103,.07);box-shadow:0 10px 24px rgba(7,59,103,.09)!important}.panel{border-radius:24px}.btn.primary{background:var(--lunchadoo-coral)!important}.school-lunch-toggle.on{background:#daf6e9!important;color:#237753!important}.attendance-day.selected{background:#e0f7ee!important;border-color:#93ddc0!important;color:#176b4b!important}.modal{border-radius:28px;border:1px solid rgba(7,59,103,.08)}.plan-type.selected{border-color:var(--lunchadoo-coral)!important;background:#fff3f5!important}.plan-type.schooltype.selected{border-color:#5aaee9!important;background:#eff9ff!important}.food-tile.selected{border-color:var(--lunchadoo-coral)!important}.food-tile i{background:var(--lunchadoo-coral)!important}

/* Branded SVG icon system */
.lui-icon{width:1.45em;height:1.45em;display:inline-block;vertical-align:-.24em;flex:0 0 auto;color:#0b4775;overflow:visible}.lui-icon .fill-sky{fill:#bfe8fb}.lui-icon .fill-teal{fill:#77d8c0}.lui-icon .fill-coral{fill:#ff7d79}.lui-icon .fill-yellow{fill:#ffd45d}.lui-icon .fill-lilac{fill:#d8c6ff}.lui-icon .no-stroke{stroke:none}.lui-icon .accent{stroke:#ff7d79}.lui-decorated{display:inline-flex!important;align-items:center;justify-content:center;gap:7px}.lui-label{line-height:1.05}.home-floating-menu .lui-icon{width:24px;height:24px}.home-menu-list>button>span.lui-decorated{width:40px;height:40px;border-radius:14px;background:linear-gradient(145deg,#fff,#effaff);border:1px solid #d6eaf3;box-shadow:0 3px 8px rgba(7,59,103,.08)}.home-menu-list>button>span .lui-icon{width:25px;height:25px}.home-pack-icon.lui-decorated{background:linear-gradient(145deg,#f0fffa,#e9f8ff);border:1px solid #cdece2}.home-pack-icon .lui-icon{width:35px;height:35px}.packing-tool .lui-icon,.week-home .lui-icon{width:23px;height:23px}.shopping-hero>span.lui-decorated{background:linear-gradient(145deg,#fff8dc,#e9f9f2)}.shopping-hero>span .lui-icon{width:42px;height:42px}.shopping-empty>span .lui-icon{width:38px;height:38px}.shopping-status>span.lui-decorated{background:#fff}.shopping-list-title>b{display:flex;align-items:center;gap:7px}.shopping-list-title .lui-inline{width:21px;height:21px}
.home-header-child{box-shadow:0 3px 9px rgba(7,59,103,.06);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease}.home-header-child:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(7,59,103,.1)}.home-header-child.selected{background:linear-gradient(145deg,#f2fff9,#ecf9ff);border-color:#80d0b5;box-shadow:0 4px 12px rgba(55,166,128,.14)}.home-header-child span{border:1px solid rgba(7,59,103,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.home-individual-child-head[role="button"]{cursor:pointer}.home-individual-child-head[role="button"]:focus-visible{outline:3px solid rgba(45,151,232,.35);outline-offset:3px}

@media(max-width:1100px){.quick-actions.lunchadoo-bottom-actions{grid-template-columns:repeat(3,1fr)}.lunchadoo-header-logo{width:190px}.lunchadoo-header-mascot{width:68px;height:58px}}
@media(max-width:760px){
 .app-shell{padding:8px}.app-bar,.lunchadoo-home-bar{border-radius:22px!important;background:linear-gradient(120deg,rgba(255,255,255,.62),rgba(255,255,255,.45))!important;-webkit-backdrop-filter:blur(10px) saturate(180%);backdrop-filter:blur(10px) saturate(110%)}
 .planner-grid{grid-template-columns:repeat(5,235px)!important}
 .quick-actions.lunchadoo-bottom-actions{width:100%;margin:14px 0 6px;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:2px 0 6px!important;overflow:visible!important;scroll-snap-type:none!important}
 .quick-actions.lunchadoo-bottom-actions button{width:auto!important;min-width:0!important;min-height:76px!important;padding:8px 7px!important;border-radius:16px!important;font-size:11px!important;scroll-snap-align:none!important}.quick-actions.lunchadoo-bottom-actions button:nth-child(n+5){min-height:60px!important}.quick-actions.lunchadoo-bottom-actions button .lui-icon{width:24px;height:24px}.quick-actions.lunchadoo-bottom-actions button span.lui-label{font-size:11px!important;margin:0!important}
 .home-menu-list>button>span.lui-decorated{width:37px;height:37px}.home-pack-icon .lui-icon{width:30px;height:30px}
}
@media(max-width:390px){.quick-actions.lunchadoo-bottom-actions{gap:8px!important}.quick-actions.lunchadoo-bottom-actions button{min-height:72px!important}.quick-actions.lunchadoo-bottom-actions button:nth-child(n+5){min-height:56px!important}.quick-actions.lunchadoo-bottom-actions button span.lui-label{font-size:11px!important}}
