 :root{--safe-top:env(safe-area-inset-top);--safe-bottom:env(safe-area-inset-bottom);--bg:#07111f;--panel:rgba(15,26,45,.74);--panel-strong:rgba(11,20,36,.92);--text:#eef7ff;--muted:#94a7bd;--line:rgba(255,255,255,.11);--accent:#49d9ff;--accent2:#44d7a8;--success:#44d7a8;--danger:#fb7185;--warning:#fbbf24;--shadow:0 24px 80px rgba(0,0,0,.34)}[data-theme="light"]{--bg:#eef6fb;--panel:rgba(255,255,255,.78);--panel-strong:rgba(255,255,255,.96);--text:#0d1726;--muted:#5b6b7d;--line:rgba(15,23,42,.12);--shadow:0 24px 60px rgba(15,23,42,.12)}[data-accent="violet"]{--accent:#a78bfa;--accent2:#49d9ff}[data-accent="sunset"]{--accent:#fb923c;--accent2:#fbbf24}[data-accent="forest"]{--accent:#44d7a8;--accent2:#a3e635}[data-accent="rose"]{--accent:#fb7185;--accent2:#f0abfc}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent),transparent 70%),transparent 34rem),radial-gradient(circle at top right,color-mix(in srgb,var(--accent2),transparent 74%),transparent 28rem),linear-gradient(135deg,var(--bg),#101827);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-frame{display:grid;grid-template-columns:290px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:24px;border-right:1px solid var(--line);background:rgba(3,8,18,.44);backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;font-weight:1000;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#03131a;box-shadow:0 0 30px color-mix(in srgb,var(--accent),transparent 55%)}.brand-mark.large{width:72px;height:72px;border-radius:26px;font-size:2rem}.brand strong{display:block;font-size:1.06rem}.brand em{display:block;color:var(--muted);font-style:normal;font-size:.78rem}.nav{display:grid;gap:8px}.nav a{min-height:44px;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;color:var(--muted);font-weight:850}.nav a:hover,.nav a.active{background:rgba(255,255,255,.07);color:var(--text)}.nav a.active{outline:1px solid color-mix(in srgb,var(--accent),transparent 62%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.message-card{margin-top:auto;border:1px solid var(--line);border-radius:22px;padding:16px;background:rgba(255,255,255,.06)}.message-card span,.eyebrow{display:block;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:950}.message-card p{color:var(--muted);margin:.45rem 0 0}.main{min-width:0;padding:28px 28px 40px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.topbar h1{margin:.2rem 0 0;font-size:clamp(1.7rem,4vw,3.1rem);line-height:1}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.btn,.icon-btn,.chip-btn{min-height:42px;border:1px solid var(--line);border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.06);color:var(--text);font-weight:900}.btn.primary{color:#03131a;background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent}.btn.ghost{background:rgba(255,255,255,.04)}.btn.success{background:rgba(68,215,168,.16);color:var(--success);border-color:rgba(68,215,168,.3)}.btn.danger,.icon-btn.danger{color:var(--danger);border-color:rgba(251,113,133,.28);background:rgba(251,113,133,.1)}.btn.full{width:100%}.icon-btn{width:42px;padding:0;display:grid;place-items:center;font-size:1.2rem}.score-card{min-width:86px;display:grid;place-items:center;padding:8px 12px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--line)}.score-card span{font-weight:1000;color:var(--accent);font-size:1.25rem}.score-card small{color:var(--muted);font-weight:850}.flash{border:1px solid var(--line);border-radius:16px;padding:12px 14px;margin-bottom:14px;background:rgba(255,255,255,.07);font-weight:800}.flash.success{border-color:rgba(68,215,168,.34);color:var(--success)}.flash.error{border-color:rgba(251,113,133,.34);color:var(--danger)}.flash.info{border-color:rgba(73,217,255,.34);color:var(--accent)}.hero-card,.panel,.metric-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:30px;backdrop-filter:blur(20px)}.hero-card{display:flex;align-items:stretch;justify-content:space-between;gap:18px;padding:clamp(20px,3.4vw,34px);margin-bottom:18px;overflow:hidden}.hero-card h2{font-size:clamp(2rem,5vw,4.6rem);line-height:.92;margin:.25rem 0}.hero-card p,.muted{color:var(--muted)}.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:12px;align-items:stretch}.hero-stats span,.reward-summary>div{display:grid;place-items:center;text-align:center;min-height:118px;border-radius:24px;background:rgba(255,255,255,.07);border:1px solid var(--line);padding:14px}.hero-stats b,.reward-summary b{font-size:2rem;color:var(--accent)}.grid{display:grid;gap:18px}.dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(320px,.85fr)}.four-cards{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.panel{padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.panel h2,.panel h3{margin:.25rem 0}.panel p{line-height:1.5}.metric-card{min-height:130px;padding:20px;display:grid;align-content:center}.metric-card b{font-size:2.3rem;color:var(--accent)}.metric-card span{color:var(--muted);font-weight:850}.item-stack,.activity-list,.list-stack,.profile-stack,.connection-list,.screensaver-stack{display:grid;gap:10px}.item-card{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.055)}.item-card.compact .item-notes,.item-card.compact .mini-meta,.item-card.compact .item-actions .icon-btn{display:none}.item-card.is-done{opacity:.68}.item-main{display:flex;align-items:flex-start;gap:12px;min-width:0}.item-copy{min-width:0}.item-badge{width:52px;height:52px;flex:0 0 auto;display:grid;place-items:center;border-radius:18px;background:color-mix(in srgb,var(--member-color),transparent 80%);border:1px solid color-mix(in srgb,var(--member-color),transparent 55%);position:relative}.item-badge b{position:absolute;right:-5px;bottom:-5px;background:var(--panel-strong);border:1px solid var(--line);border-radius:999px;font-size:.9rem;width:24px;height:24px;display:grid;place-items:center}.item-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.item-title-row h3{margin:0;overflow-wrap:anywhere}.small{font-size:.9rem}.item-notes{color:var(--muted);margin:8px 0 0}.mini-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.mini-meta span{font-size:.74rem;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 8px}.item-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.pill,.points-chip{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:900;color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 88%);border:1px solid color-mix(in srgb,var(--accent),transparent 72%);white-space:nowrap}.pill-done{color:var(--success);background:rgba(68,215,168,.12);border-color:rgba(68,215,168,.24)}.points-chip{color:var(--muted);background:rgba(255,255,255,.05)}.empty{color:var(--muted);padding:16px;border:1px dashed var(--line);border-radius:18px;margin:0}.small-empty{display:inline-block}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:12px 0 14px}.day-pill{min-height:82px;display:grid;place-items:center;gap:2px;padding:10px 8px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.055);color:var(--muted)}.day-pill strong{color:var(--text);font-size:1.5rem}.day-pill em{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:.72rem;background:rgba(255,255,255,.08)}.day-pill.active{color:#03131a;background:linear-gradient(135deg,var(--accent),var(--accent2));font-weight:900}.day-pill.active strong{color:#03131a}.segmented{display:flex;gap:6px;flex-wrap:wrap;padding:5px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.04)}.segmented a{padding:8px 12px;border-radius:999px;color:var(--muted);font-weight:900}.segmented a.active{color:#03131a;background:linear-gradient(135deg,var(--accent),var(--accent2))}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.month-cell{min-height:118px;border:1px solid var(--line);border-radius:18px;padding:10px;background:rgba(255,255,255,.045);display:grid;align-content:start;gap:4px}.month-cell.active{outline:2px solid var(--accent)}.month-cell strong{font-size:1.2rem}.month-cell span{color:var(--muted);font-size:.75rem}.month-cell em{font-style:normal;font-size:.75rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-focus{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.05);margin-bottom:14px}.date-group{margin-bottom:22px}.date-group>h3{color:var(--accent);margin-bottom:12px}.filters,.member-filters,.quick-time-row,.suggestion-wrap{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.filter,.member-filter{min-height:40px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:var(--muted);border-radius:999px;padding:8px 12px}.filter.active,.member-filter.active{color:#03131a;background:linear-gradient(135deg,var(--accent),var(--accent2));font-weight:900}.meal-grid,.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.grocery-panel{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.suggestion-wrap{justify-content:flex-end}.badge-card{opacity:.72}.badge-card.earned{opacity:1;border-color:color-mix(in srgb,var(--accent),transparent 55%)}.badge-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.08);margin-bottom:12px}.reward-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.bar{height:10px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden;margin:16px 0 8px}.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2))}.streak-tile{min-width:164px;border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:24px;padding:20px;text-align:center}.streak-tile span{display:block;font-size:3rem;color:var(--accent);font-weight:950}.activity-row,.list-row{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.05)}.activity-row div,.list-row div{flex:1;min-width:0}.activity-row p,.list-row p{margin:3px 0 0;color:var(--muted)}.activity-row b{color:var(--success)}.list-row.checked{opacity:.65}.list-row.checked strong{text-decoration:line-through}.check-form{margin:0}.check-btn{width:30px;height:30px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.08);color:var(--success);font-weight:950}.profile-pill{display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--member-color),transparent 55%);background:color-mix(in srgb,var(--member-color),transparent 86%);border-radius:999px;padding:10px 12px;font-weight:900}.provider-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0}.provider-card{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055);padding:14px;display:grid;gap:6px}.provider-card span{color:var(--muted);font-size:.85rem}.display-board{position:relative;min-height:75vh;border:1px solid var(--line);border-radius:36px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));box-shadow:var(--shadow);padding:22px;overflow:hidden}.display-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.display-top h2{font-size:clamp(3rem,10vw,7rem);line-height:.85;margin:.2rem 0}.display-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.sleep-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;text-align:center;background:rgba(0,0,0,.72);backdrop-filter:blur(12px)}.sleep-overlay h2{font-size:clamp(3rem,8vw,7rem);margin:0}.photo-card{min-height:108px;border-radius:24px;border:1px solid color-mix(in srgb,var(--photo-color),transparent 55%);background:linear-gradient(135deg,color-mix(in srgb,var(--photo-color),transparent 72%),rgba(255,255,255,.04));padding:18px;display:grid;align-content:end}.photo-card b{font-size:1.1rem}.photo-card span{color:var(--muted)}.mini-form{margin-top:14px}.more-links{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.more-links a{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,255,255,.05);font-weight:900}.settings-form,.auth-form{display:grid;gap:14px}.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}label{display:grid;gap:7px;color:var(--muted);font-weight:800;font-size:.9rem}input,select,textarea{width:100%;color:var(--text);background:rgba(255,255,255,.075);border:1px solid var(--line);border-radius:16px;padding:13px;outline:none;min-height:46px}input[type="color"]{padding:6px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent),transparent 88%)}.profile-editor{display:grid;gap:8px}.profile-edit-row{display:grid;grid-template-columns:70px 1fr 90px;gap:8px}.toggle-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.toggle-row label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,255,255,.04)}.toggle-row input{width:auto;min-height:auto}.logout-form{margin-top:18px}.modal{width:min(820px,calc(100vw - 24px));border:0;border-radius:30px;padding:0;background:transparent;color:var(--text)}.small-modal{width:min(520px,calc(100vw - 24px))}.modal::backdrop{background:rgba(0,0,0,.62);backdrop-filter:blur(8px)}.modal-card{padding:20px;background:var(--panel-strong);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);display:grid;gap:14px;max-height:88vh;overflow:auto}.modal-head,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-actions{justify-content:flex-end}.type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.type-grid label{color:var(--text)}.type-grid input{display:none}.type-grid span{display:grid;place-items:center;text-align:center;gap:4px;min-height:86px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.06);padding:10px}.type-grid small{color:var(--muted);font-size:.72rem;font-weight:700}.type-grid input:checked+span{border-color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 86%)}.auth-body{min-height:100vh;display:grid;place-items:center;padding:calc(18px + var(--safe-top)) 18px calc(18px + var(--safe-bottom))}.auth-shell{width:min(1120px,100%);display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:center}.auth-hero,.auth-card{border:1px solid var(--line);background:var(--panel);border-radius:34px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.auth-hero{padding:clamp(26px,5vw,58px);min-height:520px;display:flex;flex-direction:column;justify-content:center}.auth-hero h1{font-size:clamp(2.4rem,5vw,5.2rem);line-height:.9;margin-bottom:18px}.auth-hero p{color:var(--muted);font-size:1.08rem}.hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.hero-grid span{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--line)}.auth-card{padding:24px}.tabbar{display:flex;gap:8px;padding:6px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:18px;margin-bottom:16px}.tab{flex:1;border:0;border-radius:14px;padding:12px;color:var(--muted);background:transparent;font-weight:900}.tab.active{color:#03131a;background:linear-gradient(135deg,var(--accent),var(--accent2))}.tab-panel{display:none}.tab-panel.active{display:grid}.bottom-nav{display:none}@media (max-width:1180px){.app-frame{grid-template-columns:1fr}.sidebar{display:none}.main{padding:calc(18px + var(--safe-top)) 18px calc(102px + var(--safe-bottom))}.bottom-nav{position:fixed;left:12px;right:12px;bottom:calc(10px + var(--safe-bottom));z-index:30;display:grid;grid-template-columns:repeat(6,1fr);align-items:center;gap:6px;padding:8px;border:1px solid var(--line);border-radius:26px;background:var(--panel-strong);box-shadow:var(--shadow);backdrop-filter:blur(20px)}.bottom-nav a,.bottom-nav button{min-height:54px;display:grid;place-items:center;gap:2px;border:0;border-radius:18px;color:var(--muted);background:transparent;padding:4px}.bottom-nav b{font-size:1.2rem}.bottom-nav span{font-size:.68rem}.bottom-nav .active{color:var(--accent);background:rgba(255,255,255,.06)}.bottom-nav button{color:#03131a;font-weight:950;background:linear-gradient(135deg,var(--accent),var(--accent2))}.dashboard-grid,.auth-shell{grid-template-columns:1fr}.auth-hero{min-height:auto}.four-cards,.meal-grid,.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.display-grid{grid-template-columns:1fr}}@media (max-width:760px){.main{padding-left:12px;padding-right:12px}.topbar{align-items:flex-start}.top-actions{justify-content:flex-end}.add-button{display:none}.hero-card{display:grid}.hero-stats,.reward-summary,.form-grid.two,.form-grid.three,.form-grid.four,.toggle-row{grid-template-columns:1fr}.item-card{display:grid}.item-actions{justify-content:space-between}.week-strip{overflow:auto;grid-template-columns:repeat(7,82px);padding-bottom:4px}.month-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.month-cell{min-height:104px}.type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-grid,.badge-grid,.four-cards{grid-template-columns:1fr}.grocery-panel{display:grid}.auth-hero h1{font-size:2.6rem}.hero-grid{grid-template-columns:1fr}.profile-edit-row{grid-template-columns:54px 1fr 72px}.more-links{display:grid}.provider-grid{grid-template-columns:1fr}.display-top{display:grid}.bottom-nav{left:8px;right:8px}.bottom-nav span{display:none}}@media (display-mode:standalone){body:before{content:"";position:fixed;inset:0;pointer-events:none;border:1px solid rgba(255,255,255,.06);z-index:999}}

/* HomeSyncHub branded production pass v4 */
.brand-premium{align-items:flex-start}.brand-mark-img{width:50px;height:50px;border-radius:18px;filter:drop-shadow(0 0 18px color-mix(in srgb,var(--accent),transparent 55%));flex:0 0 auto}.sidebar-logo-panel{border:1px solid rgba(73,217,255,.22);border-radius:20px;padding:6px;background:linear-gradient(135deg,rgba(73,217,255,.09),rgba(240,77,255,.06));box-shadow:0 0 34px rgba(73,217,255,.08);overflow:hidden}.sidebar-logo-panel img{width:100%;display:block;border-radius:16px}.top-title{display:flex;align-items:center;gap:12px;min-width:0}.top-logo-mark{width:48px;height:48px;border-radius:16px;filter:drop-shadow(0 0 16px color-mix(in srgb,var(--accent),transparent 55%));flex:0 0 auto}.brand-showcase{border:1px solid rgba(73,217,255,.28);border-radius:28px;padding:6px;margin-bottom:18px;background:linear-gradient(135deg,rgba(73,217,255,.08),rgba(240,77,255,.07));box-shadow:0 20px 70px rgba(0,0,0,.3),0 0 44px rgba(73,217,255,.10);overflow:hidden}.brand-showcase img{width:100%;display:block;border-radius:22px;object-fit:cover}.dashboard-brand img{max-height:290px;object-position:center}.app-footer-brand{margin:30px 0 4px;border:1px solid rgba(73,217,255,.22);border-radius:26px;padding:6px;background:linear-gradient(135deg,rgba(255,77,248,.08),rgba(73,217,255,.08),rgba(204,255,31,.04));box-shadow:0 18px 60px rgba(0,0,0,.28);overflow:hidden}.app-footer-brand img{width:100%;display:block;border-radius:20px;object-fit:cover;max-height:190px}.auth-brand-banner{border:1px solid rgba(73,217,255,.26);border-radius:24px;padding:5px;margin-bottom:18px;background:rgba(255,255,255,.04);box-shadow:0 0 36px rgba(73,217,255,.12);overflow:hidden}.auth-brand-banner img{width:100%;display:block;border-radius:18px}.auth-text-logo{width:min(520px,100%);display:block;margin:0 0 18px;filter:drop-shadow(0 0 18px rgba(73,217,255,.16))}.display-brand-strip{margin-bottom:18px;border:1px solid rgba(73,217,255,.22);border-radius:24px;padding:6px;background:rgba(255,255,255,.04);overflow:hidden}.display-brand-strip img{width:100%;display:block;border-radius:18px}.auth-card{position:relative}.auth-card:before{content:"HomeSyncHub";display:block;margin:0 0 14px;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-size:.74rem;font-weight:950}.auth-form button.full{min-height:48px}.nav a{touch-action:manipulation}.bottom-nav{touch-action:manipulation}.topbar{position:sticky;top:0;z-index:20;padding:10px 0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg),transparent 5%),color-mix(in srgb,var(--bg),transparent 38%));backdrop-filter:blur(18px)}@media (max-width:1180px){.topbar{top:calc(0px + var(--safe-top));padding-top:10px}.top-logo-mark{width:42px;height:42px}.app-footer-brand{margin-bottom:calc(90px + var(--safe-bottom))}}@media (max-width:760px){.brand-showcase{border-radius:22px;padding:4px}.brand-showcase img{border-radius:18px;max-height:185px}.top-title{align-items:flex-start}.topbar h1{font-size:1.45rem}.top-logo-mark{width:40px;height:40px}.auth-hero{padding:18px}.auth-hero h1{font-size:2.2rem}.auth-brand-banner{border-radius:18px;padding:4px}.auth-brand-banner img{border-radius:14px}.auth-text-logo{margin-bottom:12px}.app-footer-brand{border-radius:20px;padding:4px}.app-footer-brand img{border-radius:16px;max-height:130px}.display-brand-strip{display:none}.top-actions .score-card{min-width:70px}.install-btn{display:none}}@media (max-width:430px){.top-logo-mark{display:none}.topbar{gap:8px}.top-actions{gap:6px}.score-card{padding:6px 8px}.dashboard-brand img{max-height:148px}}


/* v4.1 Responsive Branding Patch
   Keeps every HomeSyncHub logo visible, proportional, and inside its neon frame
   across desktop, tablet, mobile, PWA standalone mode, and browser zoom. */
:root{
  --brand-frame-pad:clamp(4px,.6vw,8px);
  --brand-frame-radius:clamp(16px,2.2vw,30px);
  --brand-inner-radius:calc(var(--brand-frame-radius) - 6px);
}
img,svg{max-inline-size:100%;height:auto}.brand-showcase,.app-footer-brand,.auth-brand-banner,.display-brand-strip,.sidebar-logo-panel{inline-size:100%;min-inline-size:0;display:grid;place-items:center;padding:var(--brand-frame-pad);overflow:visible}.brand-showcase picture{display:block;inline-size:100%;min-inline-size:0}.brand-showcase img,.app-footer-brand img,.auth-brand-banner img,.display-brand-strip img,.sidebar-logo-panel img,.responsive-brand-img,.responsive-text-logo{display:block;inline-size:100%;block-size:auto!important;max-inline-size:100%;max-block-size:none!important;object-fit:contain!important;object-position:center center;border-radius:var(--brand-inner-radius);transform:none!important}.brand-showcase,.app-footer-brand,.auth-brand-banner,.display-brand-strip{border-radius:var(--brand-frame-radius)}.dashboard-brand img,.app-footer-brand img{aspect-ratio:auto}.sidebar-logo-panel{flex:0 0 auto}.sidebar-logo-panel img{inline-size:min(100%,240px);margin-inline:auto}.auth-text-logo{inline-size:min(520px,100%);block-size:auto!important;max-block-size:none!important;object-fit:contain!important}.brand-mark-img,.top-logo-mark{inline-size:clamp(38px,4.2vw,54px);block-size:auto!important;aspect-ratio:1/1;object-fit:contain!important;flex:0 0 auto}.top-title{min-inline-size:0}.top-title>div{min-inline-size:0}.topbar h1,.top-title .eyebrow{overflow-wrap:anywhere}.app-footer-brand{margin-block-start:clamp(22px,3vw,34px)}
@media (max-width:1180px){.app-footer-brand{margin-bottom:calc(92px + var(--safe-bottom))}.brand-mark-img,.top-logo-mark{inline-size:clamp(36px,5vw,46px)}}
@media (max-width:760px){.brand-showcase,.app-footer-brand,.auth-brand-banner,.display-brand-strip{padding:clamp(3px,.9vw,5px);border-radius:clamp(16px,4vw,22px)}.brand-showcase img,.app-footer-brand img,.auth-brand-banner img,.display-brand-strip img{border-radius:clamp(12px,3vw,18px);max-block-size:none!important}.dashboard-brand img,.app-footer-brand img{max-height:none!important}.display-brand-strip{display:grid!important;margin-bottom:14px}.auth-text-logo{inline-size:100%;margin-bottom:12px}.top-logo-mark{display:block!important;inline-size:clamp(34px,9vw,42px)}.topbar{align-items:flex-start;flex-wrap:wrap}.top-actions{flex:1 1 100%;justify-content:space-between}.top-actions .score-card{min-width:70px}.install-btn{display:none!important}}
@media (max-width:430px){.top-logo-mark{display:block!important;inline-size:clamp(30px,10vw,38px)}.brand-mark-img{inline-size:clamp(36px,12vw,46px)}.dashboard-brand img{max-height:none!important}.brand-showcase{margin-inline:calc(-1 * min(8px,2vw));}.topbar{gap:8px}.score-card{padding:6px 8px}.add-button{padding-inline:10px}}
@media (orientation:landscape) and (max-height:520px){.brand-showcase,.app-footer-brand,.display-brand-strip{max-inline-size:100%;}.brand-showcase img,.app-footer-brand img,.display-brand-strip img{max-block-size:42vh!important;inline-size:auto;max-inline-size:100%;}.dashboard-brand img{max-block-size:48vh!important}}
@media (min-resolution:1.5dppx){.brand-showcase img,.app-footer-brand img,.auth-brand-banner img{image-rendering:auto}}

/* v5.0 Role Access + High-Visibility Light/Dark Theme Patch */
:root{color-scheme:dark;--focus-ring:0 0 0 4px color-mix(in srgb,var(--accent),transparent 78%);--readable-panel:rgba(9,18,33,.94);--readable-input:rgba(255,255,255,.10)}
[data-theme="light"]{color-scheme:light;--bg:#f5f8fc;--panel:rgba(255,255,255,.94);--panel-strong:#ffffff;--text:#0a1524;--muted:#3f4e5f;--line:rgba(10,21,36,.18);--readable-panel:#ffffff;--readable-input:#ffffff;--shadow:0 18px 52px rgba(15,23,42,.12)}
@media (prefers-color-scheme:light){html[data-theme="auto"]{color-scheme:light;--bg:#f5f8fc;--panel:rgba(255,255,255,.94);--panel-strong:#ffffff;--text:#0a1524;--muted:#3f4e5f;--line:rgba(10,21,36,.18);--readable-panel:#ffffff;--readable-input:#ffffff;--shadow:0 18px 52px rgba(15,23,42,.12)}}
@media (prefers-color-scheme:dark){html[data-theme="auto"]{color-scheme:dark}}
body{background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent),transparent 74%),transparent 34rem),radial-gradient(circle at top right,color-mix(in srgb,var(--accent2),transparent 76%),transparent 28rem),linear-gradient(135deg,var(--bg),color-mix(in srgb,var(--bg),#111827 26%));text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.panel,.hero-card,.metric-card,.auth-card,.auth-hero,.modal-card{background:var(--panel);color:var(--text)}.muted,.item-notes,.month-cell span,.message-card p,.small,.list-row p,.activity-row p{color:var(--muted)!important}.panel h2,.panel h3,.item-title-row h3,.list-row strong,.activity-row strong,.provider-card b,.badge-card h3{color:var(--text)}input,select,textarea{background:var(--readable-input);color:var(--text);border-color:var(--line)}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted),transparent 18%)}label{color:var(--text)}label small{color:var(--muted);font-weight:750}.btn,.icon-btn,.chip-btn,.filter,.member-filter{color:var(--text);background:color-mix(in srgb,var(--panel-strong),transparent 24%)}.btn.primary,.segmented a.active,.filter.active,.member-filter.active,.day-pill.active,.tab.active{color:#06111d;text-shadow:none}.role-chip{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent),transparent 58%);background:color-mix(in srgb,var(--accent),transparent 86%);color:var(--text);font-weight:950;white-space:nowrap}.access-note{padding:12px 14px;border:1px solid color-mix(in srgb,var(--warning),transparent 48%);border-radius:16px;background:color-mix(in srgb,var(--warning),transparent 86%);color:var(--text);font-weight:850}.role-matrix{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel-strong),transparent 20%)}.role-matrix strong{color:var(--accent)}.role-matrix span{color:var(--text);font-weight:900}.role-matrix small{color:var(--muted);line-height:1.45}.soft-rule{border:0;border-top:1px solid var(--line);margin:18px 0}.role-table{display:grid;gap:8px;overflow:auto}.role-row{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(150px,.7fr) minmax(180px,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel-strong),transparent 22%)}.role-row span{min-width:0}.role-row strong,.role-row small{display:block}.role-row small{color:var(--muted);overflow-wrap:anywhere}.role-head{font-weight:950;color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 90%)}.role-permission-list{display:grid;gap:10px}.role-permission-list article{padding:12px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel-strong),transparent 20%)}.role-permission-list strong{color:var(--accent)}.role-permission-list p{margin:.35rem 0 0;color:var(--muted)}.check-btn.readonly{display:grid;place-items:center}.locked-add{min-height:54px;display:grid;place-items:center;gap:2px;border-radius:18px;color:var(--muted)}
[data-theme="light"] .sidebar{background:rgba(255,255,255,.78)}[data-theme="light"] .topbar{background:linear-gradient(180deg,rgba(245,248,252,.96),rgba(245,248,252,.74))}[data-theme="light"] .brand-showcase,[data-theme="light"] .app-footer-brand,[data-theme="light"] .sidebar-logo-panel,[data-theme="light"] .auth-brand-banner{background:linear-gradient(135deg,rgba(73,217,255,.16),rgba(240,77,255,.12),rgba(68,215,168,.10));box-shadow:0 18px 46px rgba(15,23,42,.14)}
:focus-visible{outline:none;box-shadow:var(--focus-ring)!important}button:disabled,select:disabled,input:disabled,textarea:disabled{opacity:.72;cursor:not-allowed}.flash{background:var(--panel-strong);color:var(--text)}
@media (max-width:760px){.role-chip{min-height:38px;padding:8px 11px;font-size:.86rem}.role-row{grid-template-columns:1fr}.role-row .btn{width:100%}.auth-shell{gap:16px}.panel,.hero-card,.auth-card,.auth-hero{border-radius:24px}.top-actions{align-items:center}.bottom-nav a.locked-add span{display:none}}

/* HomeSyncHub Meal Planner Blueprint v5.1 */
.nav-submenu{display:grid;gap:4px;margin:-4px 0 4px 28px;padding-left:12px;border-left:1px solid var(--line)}
.nav-submenu a{min-height:36px!important;padding:8px 10px!important;border-radius:12px!important;font-size:.86rem;color:var(--muted)!important;background:transparent!important;outline:0!important;box-shadow:none!important}
.nav-submenu a.active,.nav-submenu a:hover{color:var(--text)!important;background:color-mix(in srgb,var(--accent),transparent 88%)!important}
.btn.violet{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff;border-color:transparent;box-shadow:0 10px 28px rgba(124,58,237,.25)}
.meal-blueprint-shell{display:grid;gap:16px}
.meal-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:8px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--panel-strong),transparent 18%);box-shadow:var(--shadow)}
.meal-tabs a{min-height:40px;display:flex;align-items:center;padding:9px 13px;border-radius:16px;color:var(--muted);font-weight:950;border:1px solid transparent}
.meal-tabs a.active,.meal-tabs a:hover{color:var(--text);background:color-mix(in srgb,var(--accent),transparent 86%);border-color:color-mix(in srgb,var(--accent),transparent 64%)}
.weekly-meal-planner,.meal-library-panel{border:1px solid var(--line);border-radius:30px;background:var(--panel);box-shadow:var(--shadow);padding:18px;backdrop-filter:blur(20px)}
.meal-blueprint-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.meal-title-block{display:flex;align-items:center;gap:14px;min-width:0}
.meal-page-icon{width:58px;height:58px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;font-size:1.55rem;background:linear-gradient(135deg,color-mix(in srgb,#7c3aed,transparent 12%),color-mix(in srgb,var(--accent),transparent 8%));box-shadow:0 14px 34px color-mix(in srgb,var(--accent),transparent 72%)}
.meal-title-block h2{font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.05;margin:0;color:var(--text)}
.meal-title-block p{margin:.35rem 0 0;color:var(--muted);font-weight:750}
.meal-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.meal-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel-strong),transparent 16%)}
.weekly-meal-table{width:100%;min-width:1050px;border-collapse:separate;border-spacing:0;color:var(--text)}
.weekly-meal-table th,.weekly-meal-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 14px;vertical-align:middle;background:rgba(255,255,255,.018)}
.weekly-meal-table th:last-child,.weekly-meal-table td:last-child{border-right:0}
.weekly-meal-table tbody tr:last-child th,.weekly-meal-table tbody tr:last-child td{border-bottom:0}
.weekly-meal-table thead th{position:sticky;top:0;z-index:3;background:color-mix(in srgb,var(--panel-strong),transparent 4%);font-size:.98rem;text-align:center;color:var(--text);font-weight:950}
.weekly-meal-table tbody th{position:relative;width:128px;font-size:1.02rem;text-align:left;background:color-mix(in srgb,var(--panel-strong),transparent 10%);font-weight:950;color:var(--text)}
.weekly-meal-table tbody th:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--day-color);border-radius:0 999px 999px 0;box-shadow:0 0 18px color-mix(in srgb,var(--day-color),transparent 42%)}
.weekly-meal-table tbody th span{display:block;padding-left:16px}
.meal-choice{display:grid;grid-template-columns:minmax(120px,1fr) 134px;align-items:center;gap:10px;min-height:86px}
.meal-select-wrap{position:relative;min-width:0}
.meal-select-wrap select{appearance:none;-webkit-appearance:none;width:100%;border:0;background:transparent;color:var(--text);font-weight:950;line-height:1.18;padding:10px 28px 10px 0;min-height:44px;border-radius:0;overflow:hidden;text-overflow:ellipsis;white-space:normal}
.meal-select-wrap select:disabled{opacity:1;color:var(--text)}
.meal-select-wrap span{position:absolute;right:2px;top:50%;transform:translateY(-50%);color:var(--text);font-weight:950;pointer-events:none}
.meal-choice img{width:134px;height:74px;object-fit:cover;border-radius:18px;border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 30px rgba(0,0,0,.26);background:#0b1220}
.menu-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin:12px 0 22px}
.slot-heading{margin:18px 0 8px;color:var(--accent)}
.menu-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--panel-strong),transparent 20%)}
.menu-card img{width:120px;height:82px;object-fit:cover;border-radius:16px;border:1px solid rgba(255,255,255,.14)}
.menu-card h3{margin:.35rem 0 .15rem;color:var(--text);font-size:1rem}
.menu-card p{margin:0;color:var(--muted);font-weight:800;font-size:.86rem}
.menu-card small{display:block;margin-top:6px;color:var(--muted);line-height:1.35}
.menu-card-copy{min-width:0}
.menu-card-actions{grid-column:1 / -1;display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap}
.grocery-blueprint-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.grocery-blueprint-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel-strong),transparent 20%)}
.grocery-blueprint-item strong{color:var(--text)}
.grocery-blueprint-item p{margin:.25rem 0 0;color:var(--muted);font-size:.86rem}
.toggle-inline{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:16px;padding:12px;background:color-mix(in srgb,var(--panel-strong),transparent 20%);color:var(--text)}
.toggle-inline input{width:auto;min-height:auto}
@media (max-width:1180px){.meal-tabs{overflow:auto;flex-wrap:nowrap}.meal-tabs a{white-space:nowrap}.weekly-meal-table{min-width:980px}.meal-blueprint-head{align-items:flex-start}.meal-choice{grid-template-columns:minmax(110px,1fr) 120px}.meal-choice img{width:120px;height:70px}}
@media (max-width:760px){.weekly-meal-planner,.meal-library-panel{padding:12px;border-radius:24px}.meal-blueprint-head{display:grid}.meal-head-actions{justify-content:stretch}.meal-head-actions .btn{width:100%;justify-content:center}.meal-title-block{align-items:flex-start}.meal-page-icon{width:52px;height:52px}.weekly-meal-table{min-width:860px}.weekly-meal-table th,.weekly-meal-table td{padding:10px}.weekly-meal-table tbody th{width:112px}.meal-choice{grid-template-columns:108px 104px}.meal-choice img{width:104px;height:66px;border-radius:14px}.menu-card{grid-template-columns:104px minmax(0,1fr)}.menu-card img{width:104px;height:76px}.grocery-blueprint-item{display:grid}.meal-tabs{border-radius:18px}}
[data-theme="light"] .weekly-meal-table thead th,[data-theme="light"] .weekly-meal-table tbody th{background:rgba(255,255,255,.86)}
[data-theme="light"] .meal-choice img,[data-theme="light"] .menu-card img{box-shadow:0 12px 24px rgba(15,23,42,.14)}


/* v5.2 Full menu image picker: every meal option shows its picture. */
.meal-choice.meal-picker{position:relative;display:block;min-width:222px;min-height:92px;overflow:visible;z-index:1}
.weekly-meal-table td{overflow:visible}
.weekly-meal-table tbody tr{position:relative}
.meal-picker-trigger{width:100%;min-height:86px;display:grid;grid-template-columns:104px minmax(0,1fr) 18px;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--accent),transparent 76%);border-radius:20px;padding:8px;background:color-mix(in srgb,var(--panel-strong),transparent 26%);color:var(--text);text-align:left;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.meal-picker-trigger:disabled{cursor:default;opacity:1}
.meal-picker-trigger img{width:104px;height:66px;object-fit:cover;border-radius:15px;border:1px solid rgba(255,255,255,.18);box-shadow:0 10px 22px rgba(0,0,0,.22);background:#0b1220}
.meal-picker-copy{min-width:0;display:grid;gap:4px}.meal-picker-copy strong{font-size:.9rem;line-height:1.12;overflow-wrap:anywhere;color:var(--text)}.meal-picker-copy small{font-size:.72rem;color:var(--muted);font-weight:850}.meal-picker-trigger b{font-size:1.05rem;color:var(--accent)}
.meal-picker.is-open{z-index:50}.meal-picker.is-open .meal-picker-trigger{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 82%)}
.meal-option-list{position:absolute;left:0;right:auto;top:calc(100% + 8px);width:min(390px,88vw);max-height:365px;overflow:auto;padding:8px;border:1px solid color-mix(in srgb,var(--accent),transparent 62%);border-radius:22px;background:color-mix(in srgb,var(--panel-strong),#020612 18%);box-shadow:0 28px 80px rgba(0,0,0,.5);display:none;z-index:80;backdrop-filter:blur(20px)}
.meal-picker.is-open .meal-option-list{display:grid;gap:7px}.meal-option{width:100%;display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:10px;border:1px solid transparent;border-radius:17px;padding:7px;background:transparent;color:var(--text);text-align:left}.meal-option:hover,.meal-option.active{background:color-mix(in srgb,var(--accent),transparent 86%);border-color:color-mix(in srgb,var(--accent),transparent 62%)}.meal-option img{width:92px;height:58px;object-fit:cover;border-radius:13px;border:1px solid rgba(255,255,255,.16)}.meal-option span{display:grid;gap:3px}.meal-option strong{font-size:.88rem;line-height:1.12}.meal-option small{font-size:.72rem;color:var(--muted);font-weight:800}.menu-library-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.menu-card img{object-fit:cover}.field-help{display:block;color:var(--muted);font-size:.78rem;margin-top:6px;font-weight:750}
[data-theme="light"] .meal-picker-trigger{background:rgba(255,255,255,.86);box-shadow:0 10px 22px rgba(15,23,42,.08)}[data-theme="light"] .meal-option-list{background:rgba(255,255,255,.98);box-shadow:0 24px 70px rgba(15,23,42,.18)}
@media (max-width:1180px){.meal-choice.meal-picker{min-width:204px}.meal-picker-trigger{grid-template-columns:92px minmax(0,1fr) 18px}.meal-picker-trigger img{width:92px;height:60px}.meal-option-list{width:min(350px,88vw)}}
@media (max-width:760px){.weekly-meal-table{min-width:980px}.meal-choice.meal-picker{min-width:206px}.meal-picker-trigger{min-height:78px;grid-template-columns:86px minmax(0,1fr) 16px;padding:7px;border-radius:17px}.meal-picker-trigger img{width:86px;height:56px;border-radius:13px}.meal-picker-copy strong{font-size:.82rem}.meal-option-list{width:min(320px,86vw);max-height:320px}.meal-option{grid-template-columns:82px minmax(0,1fr)}.meal-option img{width:82px;height:54px}.meal-option strong{font-size:.82rem}}

/* v6.0 Multi-workspace clarity + visibility upgrades */
:root{--text-strong:#ffffff;--readable-line:rgba(255,255,255,.22)}
[data-theme="light"]{--text-strong:#07111f;--readable-line:rgba(15,23,42,.18)}
body,.panel,.modal-card,.item-card,.list-row,.menu-card,.weekly-meal-table,.role-table{font-size:clamp(15px,1.02vw,17px)}
h1,h2,h3,strong,b,.role-chip,.btn,.nav a,.workspace-switcher label,.weekly-meal-table th,.weekly-meal-table td{letter-spacing:-.01em;text-rendering:optimizeLegibility}
p,.muted,.access-note,small,.item-notes,.mini-meta span{line-height:1.48}
.panel,.item-card,.list-row,.menu-card,.weekly-meal-planner,.meal-library-panel,.role-row,.workspace-code-card{border-color:var(--readable-line)}
[data-theme="dark"] .panel,[data-theme="dark"] .item-card,[data-theme="dark"] .list-row,[data-theme="dark"] .menu-card{background:color-mix(in srgb,var(--panel),#07111f 15%)}
[data-theme="light"] .muted,[data-theme="light"] small,[data-theme="light"] .access-note{color:#445369}
[data-theme="light"] .panel,[data-theme="light"] .item-card,[data-theme="light"] .list-row,[data-theme="light"] .menu-card{background:rgba(255,255,255,.92)}
.workspace-switcher{margin:10px 0 14px;padding:12px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--panel-strong),transparent 22%);display:grid;gap:8px}
.workspace-switcher label{display:grid;gap:6px;color:var(--text);font-weight:900;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}
.workspace-switcher select{width:100%;min-height:42px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:850;padding:8px 10px}
.workspace-switcher small{color:var(--muted);font-weight:800;overflow-wrap:anywhere}
.workspace-code-card{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:16px 0;padding:16px;border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent),transparent 82%),color-mix(in srgb,var(--panel-strong),transparent 12%));box-shadow:var(--shadow)}
.workspace-code-card div{display:grid;gap:4px;min-width:0}.workspace-code-card span{color:var(--muted);font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.workspace-code-card strong{font-size:1.25rem;color:var(--text);overflow-wrap:anywhere}.workspace-code-card small{color:var(--text);font-weight:900;overflow-wrap:anywhere}
.role-table{display:grid;gap:8px;margin-top:14px}.role-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(130px,.8fr) minmax(120px,.7fr) minmax(160px,.8fr);gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel-strong),transparent 24%)}
.role-head{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:950;background:transparent}.role-row strong{display:block;color:var(--text);overflow-wrap:anywhere}.role-row small{display:block;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.role-row code{padding:6px 8px;border-radius:10px;background:color-mix(in srgb,var(--accent),transparent 86%);border:1px solid color-mix(in srgb,var(--accent),transparent 66%);color:var(--text);font-weight:950;letter-spacing:.08em}
.role-row select{width:100%;min-height:42px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:850;padding:8px}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.inline-create{margin:12px 0 16px;grid-template-columns:minmax(220px,1fr) auto;align-items:end}.admin-user-card{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel-strong),transparent 22%)}
.pill{color:var(--text);font-weight:900}.btn.success{background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff}.btn.danger{background:linear-gradient(135deg,#be123c,#ef4444);color:#fff}.btn.violet{background:linear-gradient(135deg,#6d28d9,#a855f7);color:#fff}
[data-theme="light"] .workspace-switcher select,[data-theme="light"] .role-row select{background:#fff;color:#07111f}
@media (max-width:1000px){.role-row{grid-template-columns:1fr 1fr}.role-head{display:none}.inline-create{grid-template-columns:1fr}.workspace-code-card{align-items:stretch;display:grid}.workspace-code-card .btn{width:100%;justify-content:center}}
@media (max-width:640px){body,.panel,.modal-card,.item-card,.list-row,.menu-card{font-size:15px}.role-row{grid-template-columns:1fr}.row-actions .btn{width:100%;justify-content:center}.workspace-code-card strong{font-size:1.05rem}.workspace-switcher{margin-inline:0}}

/* v6.1 Active Family Hub profile-style switcher */
.sidebar-family-hub-mini{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent),transparent 90%),color-mix(in srgb,var(--panel-strong),transparent 14%));
  box-shadow:0 12px 32px rgba(0,0,0,.18);
}
.sidebar-family-hub-mini span,
.active-family-hub-card .family-hub-copy span,
.active-family-hub-panel .family-hub-copy span{
  color:var(--accent);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.68rem;
  font-weight:1000;
}
.sidebar-family-hub-mini strong{color:var(--text);font-size:.92rem;line-height:1.15;overflow-wrap:anywhere}
.sidebar-family-hub-mini small{color:var(--muted);font-weight:850;line-height:1.25;overflow-wrap:anywhere}
.active-family-hub-card{
  min-height:58px;
  display:grid;
  grid-template-columns:auto minmax(170px,1fr) minmax(160px,230px) auto;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border:1px solid color-mix(in srgb,var(--accent),transparent 72%);
  border-radius:22px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--panel-strong),transparent 10%),color-mix(in srgb,var(--accent),transparent 91%));
  box-shadow:0 14px 46px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
  color:var(--text);
  max-width:min(760px,100%);
}
.family-avatar{
  width:44px;
  height:44px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#04111c;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  border:2px solid rgba(255,255,255,.34);
  box-shadow:0 0 22px color-mix(in srgb,var(--accent),transparent 55%);
  font-weight:1000;
  letter-spacing:.02em;
}
.family-avatar.large{width:56px;height:56px;font-size:1.05rem}
.family-hub-copy{display:grid;gap:2px;min-width:0}
.family-hub-copy strong{color:var(--text);font-size:.92rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.family-hub-copy small{color:var(--muted);font-size:.76rem;font-weight:850;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.active-family-hub-card select,
.family-hub-switch-form select{
  width:100%;
  min-height:38px;
  border-radius:14px;
  border:1px solid var(--line);
  background:color-mix(in srgb,var(--panel),transparent 3%);
  color:var(--text);
  padding:7px 10px;
  font-weight:850;
}
.hub-switch-btn{
  min-height:38px;
  border:0;
  border-radius:14px;
  padding:8px 12px;
  color:#04111c;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  font-weight:1000;
  white-space:nowrap;
}
.hub-switch-btn:disabled,
.family-hub-switch-form .btn:disabled{
  opacity:.55;
  cursor:not-allowed;
  filter:saturate(.65);
}
.active-family-hub-panel{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) minmax(230px,320px) auto;
  align-items:center;
}
.family-hub-switch-form{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.top-actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}
.top-actions .score-card{flex:0 0 auto}
[data-theme="light"] .active-family-hub-card,
[data-theme="light"] .sidebar-family-hub-mini,
[data-theme="light"] .active-family-hub-panel{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(229,246,255,.9));box-shadow:0 16px 42px rgba(15,23,42,.10)}
[data-theme="light"] .active-family-hub-card select,
[data-theme="light"] .family-hub-switch-form select{background:#fff;color:#07111f}
@media (max-width:1280px){
  .active-family-hub-card{grid-template-columns:auto minmax(160px,1fr) auto;max-width:100%}
  .active-family-hub-card select{grid-column:2 / span 1}
  .active-family-hub-card .hub-switch-btn{grid-column:3}
  .active-family-hub-panel{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .active-family-hub-panel .family-hub-switch-form,.active-family-hub-panel form:last-child{grid-column:1 / -1;width:100%}
  .family-hub-switch-form select{flex:1 1 auto}
}
@media (max-width:760px){
  .active-family-hub-card{grid-template-columns:auto minmax(0,1fr);width:100%;border-radius:20px;padding:9px}
  .active-family-hub-card select{grid-column:1 / -1;min-height:42px}
  .active-family-hub-card .hub-switch-btn{grid-column:1 / -1;width:100%;min-height:42px}
  .family-hub-copy small{white-space:normal;overflow:visible;text-overflow:clip}
  .top-actions{width:100%;justify-content:stretch}
  .top-actions .score-card{min-width:90px}
  .active-family-hub-panel{grid-template-columns:1fr;gap:12px;text-align:left}
  .family-avatar.large{width:50px;height:50px}
  .family-hub-switch-form{display:grid;width:100%}
  .family-hub-switch-form .btn{width:100%}
}
@media (max-width:430px){
  .family-avatar{width:40px;height:40px;font-size:.84rem}
  .active-family-hub-card .family-hub-copy strong{font-size:.88rem}
  .active-family-hub-card .family-hub-copy span{font-size:.62rem}
}

/* v6.2 Family Hub registration + profile-style active hub card */
.topbar{align-items:flex-start}.top-title{padding-top:8px}.active-family-hub-profile-card{
  width:min(820px,100%);
  min-width:min(620px,100%);
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:20px;
  padding:18px 20px;
  border:1px solid color-mix(in srgb,var(--accent),transparent 72%);
  border-radius:28px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--panel-strong),transparent 6%),color-mix(in srgb,var(--accent),transparent 93%));
  box-shadow:0 18px 52px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05);
  color:var(--text);
}
.family-profile-avatar{
  width:clamp(64px,7vw,96px);
  height:clamp(64px,7vw,96px);
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#06111d;
  background:radial-gradient(circle at 30% 25%,#fff 0 8%,transparent 9%),linear-gradient(135deg,var(--accent),var(--accent2));
  border:3px solid rgba(255,255,255,.36);
  box-shadow:0 0 36px color-mix(in srgb,var(--accent),transparent 54%);
  font-weight:1000;
  font-size:clamp(1.1rem,2.2vw,1.75rem);
  letter-spacing:.02em;
}
.family-profile-avatar-xl{width:clamp(96px,10vw,150px);height:clamp(96px,10vw,150px);font-size:clamp(1.6rem,3.2vw,2.4rem)}
.family-profile-info{display:grid;gap:10px;min-width:0}.family-profile-name{font-size:clamp(1.15rem,2.3vw,1.9rem);font-weight:1000;line-height:1.05;color:var(--text);overflow-wrap:anywhere}.family-profile-row{display:grid;grid-template-columns:32px minmax(105px,.45fr) minmax(0,1fr);align-items:center;gap:12px;min-height:46px;padding-top:10px;border-top:1px solid var(--line)}.family-profile-row:first-of-type{border-top:0;padding-top:0}.family-profile-row .row-icon{opacity:.85;font-size:1.2rem}.family-profile-row .row-label{color:var(--muted);font-weight:900;font-size:clamp(.95rem,1.5vw,1.15rem)}.family-profile-row strong{justify-self:start;color:var(--text);font-size:clamp(.95rem,1.55vw,1.15rem);font-weight:950;overflow-wrap:anywhere}.hub-status{display:inline-flex!important;align-items:center;gap:9px;border:1px solid color-mix(in srgb,var(--success),transparent 56%);background:color-mix(in srgb,var(--success),transparent 88%);color:var(--success)!important;border-radius:999px;padding:7px 12px}.hub-status i{width:10px;height:10px;border-radius:50%;background:var(--success);box-shadow:0 0 15px var(--success);display:inline-block}.family-profile-switch{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:6px}.family-profile-switch select{width:100%;min-height:42px;border-radius:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--panel),transparent 3%);color:var(--text);padding:8px 10px;font-weight:900}.workspace-code-card.active-family-hub-profile-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px}.workspace-profile-card{width:100%;min-width:0;box-shadow:none}.family-hub-setup-panel .settings-form{padding:12px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--panel-strong),transparent 26%)}.family-hub-choice-group{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 6px}.family-hub-choice{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel-strong),transparent 28%);cursor:pointer}.family-hub-choice input{margin-top:4px;accent-color:var(--accent)}.family-hub-choice span{display:grid;gap:3px}.family-hub-choice b{color:var(--text)}.family-hub-choice small{color:var(--muted);line-height:1.35}.family-hub-choice:has(input:checked){border-color:color-mix(in srgb,var(--accent),transparent 38%);background:color-mix(in srgb,var(--accent),transparent 88%)}.family-hub-register-panel{display:grid;gap:8px}.sidebar .sidebar-family-hub-mini{display:none!important}[data-theme="light"] .active-family-hub-profile-card,[data-theme="light"] .family-hub-setup-panel .settings-form{background:linear-gradient(135deg,rgba(255,255,255,.99),rgba(229,246,255,.92));box-shadow:0 16px 42px rgba(15,23,42,.10)}[data-theme="light"] .family-profile-switch select{background:#fff;color:#07111f}@media (max-width:1380px){.active-family-hub-profile-card{min-width:min(520px,100%);width:min(700px,100%);padding:15px 16px;gap:14px}.family-profile-row{grid-template-columns:28px minmax(96px,.48fr) minmax(0,1fr);gap:9px;min-height:40px}.family-profile-switch{grid-template-columns:1fr auto}}@media (max-width:1060px){.topbar{display:grid}.top-actions{width:100%;justify-content:stretch}.active-family-hub-profile-card{width:100%;min-width:0}.score-card,.add-button{flex:1 1 auto}.workspace-code-card.active-family-hub-profile-panel{grid-template-columns:1fr}.workspace-code-card.active-family-hub-profile-panel .btn{width:100%;justify-content:center}}@media (max-width:720px){.active-family-hub-profile-card{grid-template-columns:1fr;text-align:left;border-radius:24px}.family-profile-avatar{width:74px;height:74px}.family-profile-row{grid-template-columns:28px 1fr;align-items:start}.family-profile-row strong{grid-column:2}.family-profile-switch{grid-template-columns:1fr}.family-profile-switch .hub-switch-btn{width:100%;min-height:44px}.family-hub-choice-group{grid-template-columns:1fr}.top-actions .score-card,.top-actions .add-button{width:100%}.family-profile-avatar-xl{width:86px;height:86px;font-size:1.5rem}}@media (max-width:430px){.active-family-hub-profile-card{padding:13px}.family-profile-name{font-size:1.1rem}.family-profile-row .row-label,.family-profile-row strong{font-size:.92rem}.family-profile-row{gap:8px}.family-profile-avatar{width:64px;height:64px}}

/* v6.3 profile, background, logout, and notification upgrades */
.sidebar-logo-panel{display:none!important}.active-family-hub-profile-card{position:relative;overflow:hidden}.active-family-hub-profile-card.has-bg{background:linear-gradient(135deg,rgba(8,17,32,.88),rgba(10,24,42,.78));}.active-family-hub-profile-card.has-bg::before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(4,10,20,.88),rgba(4,10,20,.45)),var(--profile-bg);background-size:cover;background-position:center;opacity:.8;filter:saturate(1.05);}.active-family-hub-profile-card.has-bg>*{position:relative;z-index:1}.profile-avatar-img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}.family-profile-avatar{overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.12),0 12px 36px rgba(0,0,0,.25)}.family-profile-actions{display:grid!important;grid-template-columns:minmax(180px,1fr) auto;gap:8px;align-items:center}.hub-switch-form{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:8px;align-items:center;min-width:0}.hub-switch-form select{min-width:0}.profile-logout-form{margin:0}.hub-logout-btn{min-height:42px;border:1px solid rgba(251,113,133,.38);border-radius:999px;background:rgba(251,113,133,.12);color:#fecdd3;font-weight:1000;padding:9px 14px}.hub-logout-btn:hover{background:rgba(251,113,133,.2)}.notification-wrap{position:relative}.notification-bell{width:46px;height:46px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.07);color:var(--text);display:grid;place-items:center;position:relative;font-size:1.05rem;box-shadow:0 12px 30px rgba(0,0,0,.16)}.notification-bell b{position:absolute;top:-6px;right:-5px;min-width:21px;height:21px;border-radius:999px;background:linear-gradient(135deg,var(--danger),var(--warning));color:#111827;display:grid;place-items:center;font-size:.72rem;border:2px solid var(--panel-strong)}.notification-panel{position:absolute;right:0;top:54px;width:min(360px,calc(100vw - 32px));z-index:80;border:1px solid var(--line);border-radius:24px;background:var(--panel-strong);box-shadow:var(--shadow);padding:12px;backdrop-filter:blur(20px)}.notification-panel.is-open{display:block}.notification-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 10px}.notification-head small{color:var(--muted);font-weight:800}.notification-list{display:grid;gap:8px;max-height:380px;overflow:auto}.notification-item{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055)}.notification-item span{width:36px;height:36px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent),transparent 84%)}.notification-item strong{display:block;overflow-wrap:anywhere}.notification-item small{display:block;color:var(--muted);margin-top:2px}.profile-settings-panel{display:grid;gap:14px}.profile-media-form{gap:12px}.profile-media-preview{padding:12px!important;display:flex!important;align-items:center!important;gap:12px!important;min-height:92px!important}.profile-media-preview .family-profile-avatar{width:68px;height:68px;flex:0 0 68px}.admin-name-edit{display:grid;gap:6px;font-weight:900}.admin-user-card .admin-name-edit input{width:100%}.brand-showcase.personalized-dashboard-bg{position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(5,11,22,.82),rgba(5,11,22,.35)),var(--profile-bg);background-size:cover;background-position:center}.brand-showcase.personalized-dashboard-bg .responsive-brand-img{filter:drop-shadow(0 15px 40px rgba(0,0,0,.45));opacity:.94}.auth-hero .auth-text-logo{display:none!important}.field-help{display:block;color:var(--muted);font-size:.78rem;margin-top:5px;line-height:1.35}@media (max-width:720px){.family-profile-actions,.hub-switch-form{grid-template-columns:1fr}.hub-logout-btn,.hub-switch-btn{width:100%}.notification-panel{right:auto;left:50%;transform:translateX(-50%)}.active-family-hub-profile-card{width:100%}.profile-media-preview{align-items:flex-start!important}.notification-wrap{width:auto}}@media (max-width:430px){.notification-panel{width:calc(100vw - 20px)}.top-actions{gap:8px}.notification-bell{width:44px;height:44px}.profile-media-preview .family-profile-avatar{width:58px;height:58px;flex-basis:58px}}

/* v6.4 normalized branding, schedule welcome frame, theme toggle, and security UI */
.standard-brand-frame,
.brand-showcase.dashboard-brand,
.app-footer-brand {
  width: min(100%, 1400px);
  margin-inline: auto;
  min-height: 92px;
  max-height: 190px;
  aspect-ratio: 1400 / 170;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--accent), transparent 68%);
  border-radius: clamp(18px, 2.2vw, 28px);
  padding: clamp(5px, .9vw, 10px);
  background: linear-gradient(135deg, rgba(4, 10, 20, .92), rgba(7, 17, 31, .72));
  box-shadow: 0 20px 62px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.06);
}
.standard-brand-frame picture,
.standard-brand-frame img,
.brand-showcase.dashboard-brand picture,
.brand-showcase.dashboard-brand img,
.app-footer-brand picture,
.app-footer-brand img {
  width: 100%;
  height: 100%;
  display: block;
}
.standard-brand-frame img,
.brand-showcase.dashboard-brand img,
.app-footer-brand img {
  object-fit: contain;
  object-position: center;
  border-radius: clamp(12px, 1.6vw, 22px);
}
.app-footer-brand { margin-block-start: clamp(24px, 4vw, 42px); }
.active-family-hub-profile-card.has-bg::before,
.brand-showcase.personalized-dashboard-bg::before { display: none !important; }
.active-family-hub-profile-card.has-bg,
.brand-showcase.personalized-dashboard-bg { background-image: none !important; }
.theme-toggle-form { margin: 0; }
.theme-toggle-btn {
  min-height: 46px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel-strong), transparent 14%);
  color: var(--text);
  font-weight: 1000;
  padding: 9px 14px;
  box-shadow: 0 12px 30px rgba(0,0,0,.14);
}
.theme-toggle-btn:hover { border-color: color-mix(in srgb, var(--accent), transparent 48%); }
.family-schedule-hero {
  display: grid;
  place-items: center;
  padding: clamp(14px, 3vw, 26px);
  overflow: hidden;
}
.auth-photo-frame {
  width: min(100%, 470px);
  max-height: min(82vh, 760px);
  overflow: hidden;
  display: grid;
  place-items: center;
  border-radius: clamp(24px, 4vw, 42px);
  border: 1px solid color-mix(in srgb, var(--accent), transparent 58%);
  background: linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.04));
  box-shadow: 0 28px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08);
}
.auth-photo-frame img {
  width: 100%;
  height: 100%;
  max-height: min(82vh, 760px);
  object-fit: contain;
  display: block;
}
.security-grid { margin-top: 18px; }
.security-panel .settings-form { margin-top: 12px; }
.totp-setup-box {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--accent), transparent 62%);
  border-radius: 18px;
  background: color-mix(in srgb, var(--accent), transparent 88%);
  margin: 12px 0;
}
.totp-setup-box code {
  display: block;
  padding: 10px;
  border-radius: 12px;
  overflow-wrap: anywhere;
  color: var(--text);
  background: color-mix(in srgb, var(--panel-strong), transparent 8%);
  border: 1px solid var(--line);
  font-weight: 1000;
  letter-spacing: .06em;
}
.totp-setup-box small { color: var(--muted); overflow-wrap: anywhere; }
.notification-bell[data-due="true"], .notification-bell:has(b) {
  animation: bellPulse 1.6s ease-in-out infinite;
  border-color: color-mix(in srgb, var(--warning), transparent 34%);
}
@keyframes bellPulse {
  0%, 100% { transform: translateY(0); box-shadow: 0 12px 30px rgba(0,0,0,.16); }
  45% { transform: translateY(-1px); box-shadow: 0 0 0 4px color-mix(in srgb, var(--warning), transparent 84%), 0 14px 36px rgba(0,0,0,.22); }
}
[data-theme="light"] .standard-brand-frame,
[data-theme="light"] .brand-showcase.dashboard-brand,
[data-theme="light"] .app-footer-brand,
[data-theme="light"] .auth-photo-frame {
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(229,246,255,.82));
  box-shadow: 0 20px 50px rgba(15,23,42,.12);
}
[data-theme="light"] .theme-toggle-btn { background: #fff; color: #0d1726; }
@media (max-width: 760px) {
  .standard-brand-frame,
  .brand-showcase.dashboard-brand,
  .app-footer-brand {
    min-height: 72px;
    max-height: 150px;
    border-radius: 18px;
  }
  .auth-shell { grid-template-columns: 1fr; }
  .auth-photo-frame { width: min(100%, 390px); max-height: 68vh; }
  .auth-photo-frame img { max-height: 68vh; }
  .theme-toggle-form, .theme-toggle-btn { width: 100%; }
}
@media (max-width: 430px) {
  .standard-brand-frame,
  .brand-showcase.dashboard-brand,
  .app-footer-brand {
    min-height: 58px;
    max-height: 118px;
  }
}


/* v6.5 login frame integration, privacy controls, and normalized brand containment */
.auth-body {
  position: relative;
  isolation: isolate;
  background:
    linear-gradient(135deg, rgba(2,6,23,.82), rgba(7,17,31,.78)),
    url('../brand/high-tech-auth-bg.svg') center / cover fixed,
    radial-gradient(circle at 18% 12%, rgba(73,217,255,.28), transparent 34rem),
    radial-gradient(circle at 82% 18%, rgba(240,77,255,.22), transparent 28rem),
    #020617;
}
.auth-body::before {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:linear-gradient(transparent 0 96%, rgba(73,217,255,.08) 97% 100%), linear-gradient(90deg, transparent 0 96%, rgba(73,217,255,.08) 97% 100%);
  background-size:42px 42px;
  mask-image:radial-gradient(circle at center, black, transparent 78%);
}
.auth-shell { width:min(1220px,100%); gap:clamp(16px,3vw,34px); }
.auth-photo-frame {
  width:min(100%, 540px);
  max-height:min(86vh, 820px);
  background:rgba(3,8,20,.62);
  box-shadow:0 32px 120px rgba(0,0,0,.48), 0 0 0 1px rgba(73,217,255,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.auth-photo-frame img {
  max-height:min(86vh, 820px);
  border-radius:clamp(22px, 3vw, 38px);
}
.auth-theme-toggle { width:100%; margin-bottom:12px; }
.standard-brand-frame,
.brand-showcase.dashboard-brand,
.app-footer-brand {
  aspect-ratio:1400 / 170;
  min-height:clamp(72px, 10vw, 118px);
  max-height:170px;
  overflow:hidden;
}
.standard-brand-frame img,
.brand-showcase.dashboard-brand img,
.app-footer-brand img {
  object-fit:contain !important;
  background:#06111d;
}
.privacy-screen-shield {
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  place-items:center;
  text-align:center;
  padding:24px;
  background:rgba(2,6,23,.96);
  color:#eef7ff;
  backdrop-filter:blur(16px);
}
.privacy-screen-shield.is-active { display:grid; }
.privacy-screen-shield strong { display:block; font-size:clamp(1.4rem,4vw,2.4rem); margin-bottom:8px; }
.privacy-screen-shield span { color:#94a7bd; font-weight:800; }
@media print {
  body > * { display:none !important; }
  body::before { content:"Printing is disabled for HomeSyncHub privacy."; display:grid; place-items:center; min-height:100vh; color:#0f172a; font:700 22px system-ui; }
}
@media (max-width:760px){
  .auth-photo-frame{width:min(100%, 430px);max-height:72vh;}
  .auth-photo-frame img{max-height:72vh;}
  .standard-brand-frame,.brand-showcase.dashboard-brand,.app-footer-brand{max-height:132px;}
}
@media (max-width:430px){
  .auth-photo-frame{max-height:66vh;}
  .auth-photo-frame img{max-height:66vh;}
  .standard-brand-frame,.brand-showcase.dashboard-brand,.app-footer-brand{max-height:104px;}
}

/* v6.6 capture-deterrent, terms agreement, and normalized 1400x170 brand assets */
html, body {
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
input, textarea, select, label, .auth-form, .settings-form {
  -webkit-user-select: text;
  user-select: text;
}
.standard-brand-frame,
.brand-showcase.dashboard-brand,
.app-footer-brand {
  aspect-ratio: 1400 / 170 !important;
  min-height: clamp(64px, 9vw, 112px) !important;
  max-height: 170px !important;
  overflow: hidden !important;
}
.standard-brand-frame img,
.brand-showcase.dashboard-brand img,
.app-footer-brand img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  image-rendering: auto;
}
.terms-box {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: color-mix(in srgb, var(--panel-strong), transparent 18%);
  padding: 10px 12px;
  color: var(--text);
}
.terms-box summary {
  cursor: pointer;
  font-weight: 1000;
  color: var(--accent);
}
.terms-box div {
  display: grid;
  gap: 8px;
  padding-top: 10px;
  color: var(--muted);
  line-height: 1.45;
}
.terms-box strong { color: var(--text); }
.terms-accept {
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid color-mix(in srgb, var(--accent), transparent 66%);
  background: color-mix(in srgb, var(--accent), transparent 90%);
  color: var(--text);
  font-weight: 900;
}
.terms-accept input { margin-top: 4px; accent-color: var(--accent); }
.admin-user-card {
  gap: 10px;
}
.privacy-blur main,
.privacy-blur .app-shell,
.privacy-blur .auth-shell {
  filter: blur(12px) saturate(.6);
}
@media print {
  html, body { background:#020617 !important; }
  body * { visibility: hidden !important; }
  body::after {
    content: "Printing and capture are restricted for HomeSyncHub privacy.";
    visibility: visible !important;
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
    color: #eef7ff;
    background: #020617;
    font: 900 24px system-ui, -apple-system, Segoe UI, sans-serif;
    text-align: center;
  }
}


/* v6.7 2FA barcode, responsive view switcher, and wider brand frames */
.standard-brand-frame,
.brand-showcase.dashboard-brand,
.app-footer-brand {
  width: min(100%, 1800px);
  max-height: 230px;
  padding: clamp(6px, .75vw, 12px);
}
.brand-showcase.dashboard-brand { margin-block-end: clamp(18px, 3vw, 32px); }
.view-toggle-form { margin: 0; }
.view-toggle-btn {
  min-height: 46px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: color-mix(in srgb, var(--panel-strong), transparent 10%);
  color: var(--text);
  font-weight: 1000;
  padding: 9px 14px;
  box-shadow: 0 12px 30px rgba(0,0,0,.14);
  white-space: nowrap;
}
.view-toggle-btn:hover { border-color: color-mix(in srgb, var(--accent), transparent 45%); }
.totp-qr-setup {
  grid-template-columns: 150px 1fr;
  align-items: center;
  gap: 16px;
}
.totp-qr-card {
  width: 150px;
  height: 150px;
  border-radius: 18px;
  background: #fff;
  padding: 10px;
  display: grid;
  place-items: center;
  box-shadow: 0 16px 40px rgba(0,0,0,.22);
}
.totp-qr-card img { width: 100%; height: 100%; object-fit: contain; display: block; border-radius: 10px; }
html[data-view="desktop"] .app-frame {
  grid-template-columns: 280px minmax(0, 1fr);
  max-width: 1900px;
}
html[data-view="desktop"] .sidebar { display: flex; }
html[data-view="desktop"] .bottom-nav { display: none; }
html[data-view="desktop"] .main { min-width: 0; }
html[data-view="mobile"] body { background-attachment: fixed; }
html[data-view="mobile"] .app-frame {
  grid-template-columns: 1fr;
  max-width: 560px;
  margin-inline: auto;
}
html[data-view="mobile"] .sidebar { display: none; }
html[data-view="mobile"] .bottom-nav { display: grid; }
html[data-view="mobile"] .topbar { align-items: stretch; }
html[data-view="mobile"] .top-actions,
html[data-view="mobile"] .dashboard-grid,
html[data-view="mobile"] .stats-grid,
html[data-view="mobile"] .form-grid,
html[data-view="mobile"] .family-profile-actions,
html[data-view="mobile"] .hub-switch-form { grid-template-columns: 1fr; }
html[data-view="mobile"] .active-family-hub-profile-card { width: 100%; }
html[data-view="mobile"] .standard-brand-frame,
html[data-view="mobile"] .brand-showcase.dashboard-brand,
html[data-view="mobile"] .app-footer-brand {
  min-height: 64px;
  max-height: 120px;
  border-radius: 18px;
}
html[data-view="mobile"] .auth-shell { grid-template-columns: 1fr; }
html[data-view="mobile"] .auth-photo-frame { width: min(100%, 420px); max-height: 62vh; }
@media (max-width: 720px) {
  .totp-qr-setup { grid-template-columns: 1fr; text-align: center; }
  .totp-qr-card { margin-inline: auto; }
  .view-toggle-btn,.theme-toggle-btn{width:100%;}
}

/* v6.8 profile blueprint, permanent workspace delete UI, and full-fit brand frames */
.standard-brand-frame,
.brand-showcase.dashboard-brand,
.app-footer-brand {
  width: min(100%, 1800px) !important;
  height: auto !important;
  aspect-ratio: 1400 / 170 !important;
  min-height: clamp(66px, 8.8vw, 128px) !important;
  max-height: 230px !important;
  overflow: hidden !important;
  align-items: center !important;
  justify-items: center !important;
}
.standard-brand-frame picture,
.brand-showcase.dashboard-brand picture,
.app-footer-brand picture {
  width: 100% !important;
  height: 100% !important;
  display: grid !important;
  place-items: center !important;
}
.standard-brand-frame img,
.brand-showcase.dashboard-brand img,
.app-footer-brand img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: clamp(10px, 1.3vw, 20px);
}
.hard-delete-btn { margin-left: 6px; background: linear-gradient(135deg, #7f1d1d, #dc2626) !important; }
.hsh-profile-card {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: clamp(92px, 12vw, 170px) minmax(0, 1fr);
  gap: clamp(18px, 3vw, 42px);
  align-items: center;
  width: min(100%, 1500px);
  padding: clamp(18px, 3.2vw, 44px);
  border: 2px solid color-mix(in srgb, var(--accent), transparent 52%);
  border-radius: clamp(24px, 3vw, 44px);
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--panel-strong), transparent 2%), color-mix(in srgb, var(--panel), transparent 8%)),
    repeating-linear-gradient(135deg, rgba(255,255,255,.035) 0 1px, transparent 1px 18px);
  box-shadow: 0 26px 90px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.07), 0 0 0 1px color-mix(in srgb, var(--accent2), transparent 72%);
  overflow: hidden;
}
.hsh-profile-card::before {
  content:"";
  position:absolute;
  inset:-2px;
  pointer-events:none;
  border-radius: inherit;
  background: linear-gradient(120deg, color-mix(in srgb, #ff4dff, transparent 42%), transparent 21%, transparent 72%, color-mix(in srgb, var(--accent2), transparent 36%));
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
  -webkit-mask-composite: xor;
  padding: 2px;
  opacity: .72;
}
.hsh-top-profile {
  width: min(100%, 1020px);
  min-width: min(660px, 100%);
  padding: clamp(14px, 1.8vw, 24px);
  grid-template-columns: clamp(72px, 8vw, 118px) minmax(0, 1fr);
  gap: clamp(14px, 2vw, 28px);
  border-radius: 28px;
}
.hsh-profile-orb {
  position: relative;
  width: clamp(78px, 9vw, 128px);
  height: clamp(78px, 9vw, 128px);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: radial-gradient(circle at 28% 22%, #fff 0 8%, transparent 9%), linear-gradient(135deg, #37e6ff, #60a5fa 56%, #4ade80);
  color: #06111d;
  font-size: clamp(1.6rem, 3vw, 3rem);
  font-weight: 1000;
  letter-spacing: .02em;
  border: 6px solid color-mix(in srgb, #d946ef, transparent 22%);
  box-shadow: 0 0 40px color-mix(in srgb, var(--accent), transparent 42%), 0 18px 48px rgba(0,0,0,.32);
  overflow: visible;
}
.hsh-profile-orb img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.hsh-profile-orb span {
  position:absolute;
  right: 6px;
  bottom: 8px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--accent2);
  border: 4px solid var(--panel-strong);
  box-shadow: 0 0 18px var(--accent2);
}
.hsh-profile-orb small {
  position: absolute;
  left: 50%;
  bottom: -46px;
  transform: translateX(-50%);
  white-space: nowrap;
  border: 1px solid color-mix(in srgb, var(--accent2), transparent 42%);
  color: var(--accent2);
  background: color-mix(in srgb, var(--accent2), transparent 88%);
  border-radius: 999px;
  padding: 8px 12px;
  font-size: .78rem;
  font-weight: 1000;
}
.hsh-profile-orb-xl { width: clamp(118px, 15vw, 190px); height: clamp(118px, 15vw, 190px); }
.hsh-profile-main { min-width: 0; display: grid; gap: clamp(14px, 2vw, 26px); }
.hsh-profile-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: clamp(10px, 1.6vw, 18px);
  border-bottom: 1px solid var(--line);
}
.hsh-profile-heading h2 {
  margin: 0;
  font-size: clamp(1.8rem, 4vw, 4rem);
  line-height: .95;
  letter-spacing: -.04em;
  color: var(--text);
}
.hsh-profile-heading p { margin: 8px 0 0; color: var(--muted); font-weight: 900; }
.hsh-profile-heading b {
  align-self: flex-start;
  border: 1px solid color-mix(in srgb, var(--accent), transparent 54%);
  background: linear-gradient(135deg, var(--accent), #a5b4fc);
  color: #06111d;
  border-radius: 999px;
  padding: 12px 18px;
  font-size: .82rem;
  font-weight: 1000;
  white-space: nowrap;
}
.hsh-profile-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.6vw, 18px);
}
.hsh-info-card {
  min-height: 136px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 26px;
  background: linear-gradient(135deg, rgba(255,255,255,.075), color-mix(in srgb, var(--accent), transparent 92%));
  display: grid;
  align-content: center;
  gap: 8px;
}
.hsh-info-card i {
  width: 42px;
  height: 42px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  font-style: normal;
  background: color-mix(in srgb, var(--accent), transparent 82%);
  border: 1px solid color-mix(in srgb, var(--accent), transparent 62%);
}
.hsh-info-card span { color: var(--muted); font-weight: 1000; text-transform: uppercase; letter-spacing: .08em; font-size: .82rem; }
.hsh-info-card strong { color: var(--text); font-size: clamp(1rem, 1.4vw, 1.25rem); overflow-wrap: anywhere; }
.hsh-active-status {
  justify-self: start;
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  border-radius: 999px;
  padding: 8px 14px;
  color: var(--success) !important;
  background: color-mix(in srgb, var(--success), transparent 88%);
  border: 1px solid color-mix(in srgb, var(--success), transparent 54%);
}
.hsh-active-status em { width: 10px; height: 10px; border-radius: 50%; background: var(--success); box-shadow: 0 0 16px var(--success); }
.hsh-profile-action-row { display: grid; grid-template-columns: minmax(240px, 1fr) auto auto; gap: 14px; align-items: center; }
.hsh-switch-form { display: grid; grid-template-columns: minmax(180px, 1fr) auto; gap: 12px; }
.hsh-switch-form select {
  min-height: 56px;
  width: 100%;
  border-radius: 18px;
  border: 1px solid color-mix(in srgb, var(--accent), transparent 70%);
  background: color-mix(in srgb, var(--panel-strong), transparent 4%);
  color: var(--text);
  padding: 0 18px;
  font-weight: 1000;
}
.hsh-switch-btn, .hsh-logout-btn, .hsh-profile-link {
  min-height: 56px;
  border-radius: 999px;
  border: 1px solid transparent;
  padding: 14px 22px;
  font-weight: 1000;
  display: inline-grid;
  place-items: center;
  white-space: nowrap;
}
.hsh-switch-btn { color: #06111d; background: linear-gradient(135deg, var(--accent), var(--accent2)); }
.hsh-switch-btn:disabled { opacity: .55; cursor: not-allowed; }
.hsh-profile-link { color: var(--accent); background: color-mix(in srgb, var(--accent), transparent 90%); border-color: color-mix(in srgb, var(--accent), transparent 62%); }
.hsh-logout-btn { color: #ffd6de; background: rgba(251,113,133,.12); border-color: rgba(251,113,133,.36); }
.hsh-profile-page-wrap { display: grid; gap: 22px; }
.hsh-profile-title { text-align: center; margin: 4px auto 8px; }
.hsh-profile-title h2 { margin: 0; font-size: clamp(2rem, 6vw, 4.2rem); line-height: 1; color: var(--accent); }
.hsh-profile-page-card { margin-inline: auto; }
[data-theme="light"] .hsh-profile-card { background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(231,246,255,.94)); box-shadow: 0 22px 72px rgba(15,23,42,.14); }
[data-theme="light"] .hsh-switch-form select { background: #fff; color: #07111f; }
@media (max-width: 1280px) {
  .hsh-top-profile { min-width: 0; width: 100%; }
  .hsh-profile-info-grid { grid-template-columns: 1fr; }
  .hsh-info-card { min-height: 104px; }
}
@media (max-width: 960px) {
  .hsh-profile-card { grid-template-columns: 1fr; text-align: left; }
  .hsh-profile-orb { margin-inline: auto; }
  .hsh-profile-heading { display: grid; }
  .hsh-profile-action-row, .hsh-switch-form { grid-template-columns: 1fr; }
  .hsh-switch-btn, .hsh-logout-btn, .hsh-profile-link { width: 100%; }
}
@media (max-width: 760px) {
  .standard-brand-frame,
  .brand-showcase.dashboard-brand,
  .app-footer-brand { min-height: 64px !important; max-height: 132px !important; padding: 5px !important; }
  .hsh-profile-card { padding: 18px; border-radius: 24px; }
  .hsh-profile-heading h2 { font-size: 1.9rem; }
  .hsh-profile-heading b { width: 100%; justify-content: center; }
  .hsh-info-card { min-height: auto; }
}
@media (max-width: 430px) {
  .standard-brand-frame,
  .brand-showcase.dashboard-brand,
  .app-footer-brand { min-height: 54px !important; max-height: 104px !important; }
  .hsh-profile-orb { width: 86px; height: 86px; font-size: 1.5rem; border-width: 4px; }
  .hsh-profile-orb small { display: none; }
}

/* v6.8 dashboard navigation cleanup, compact profile dropdown, screensaver frame, and full-width branding */
:root{--brand-frame-pad:0px;}
.standard-brand-frame,
.brand-showcase.dashboard-brand,
.app-footer-brand,
.screensaver-frame{
  width:100%!important;
  max-width:none!important;
  min-height:clamp(72px,8vw,170px)!important;
  max-height:none!important;
  aspect-ratio:1400/170!important;
  padding:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.standard-brand-frame picture,
.standard-brand-frame img,
.brand-showcase.dashboard-brand picture,
.brand-showcase.dashboard-brand img,
.app-footer-brand picture,
.app-footer-brand img,
.screensaver-frame img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:inherit!important;
}
.brand-showcase.dashboard-brand::before,
.app-footer-brand::before{display:none!important;content:none!important;}
.top-actions{align-items:center;}
.top-profile-wrap{position:relative;z-index:90;}
.profile-top-btn{
  min-height:44px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:var(--text);
  display:flex;
  align-items:center;
  gap:9px;
  padding:5px 12px 5px 6px;
  cursor:pointer;
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}
.profile-top-btn:hover{border-color:color-mix(in srgb,var(--accent),transparent 45%);background:rgba(255,255,255,.10)}
.profile-top-avatar{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#06111d;font-weight:1000;overflow:hidden;box-shadow:0 0 0 2px rgba(255,255,255,.14)}
.profile-top-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.profile-top-copy{display:grid;line-height:1.05;text-align:left;white-space:nowrap}.profile-top-copy b{font-size:.86rem}.profile-top-copy small{color:var(--muted);font-size:.68rem;font-weight:900}
.profile-dropdown-panel{
  position:absolute;
  right:0;
  top:54px;
  width:min(360px,calc(100vw - 24px));
  border:1px solid color-mix(in srgb,var(--accent),transparent 55%);
  border-radius:22px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--panel-strong),#000 8%),color-mix(in srgb,var(--panel),#000 2%));
  box-shadow:var(--shadow);
  padding:12px;
  backdrop-filter:blur(22px);
}
.profile-dropdown-panel.is-open{display:block;}
.profile-dropdown-card{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055)}
.compact-profile-avatar{width:62px!important;height:62px!important;flex:0 0 62px!important;font-size:1.15rem!important}
.profile-dropdown-info{display:grid;gap:4px;min-width:0}.profile-dropdown-info strong{font-size:1.02rem;overflow-wrap:anywhere}.profile-dropdown-info small{color:var(--muted);font-weight:850;overflow-wrap:anywhere}.hub-status.mini{font-size:.78rem;padding:5px 9px;justify-self:start}.hub-status.mini i{width:8px;height:8px}
.profile-dropdown-switch{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}.profile-dropdown-switch select{min-width:0;width:100%;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:900;padding:9px 10px}.profile-dropdown-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.btn.compact,.hub-logout-btn.compact{min-height:40px;display:grid;place-items:center;text-align:center}.profile-dropdown-actions form{margin:0}.profile-dropdown-actions button{width:100%}
.page-display .top-title{display:none!important}.page-display .topbar{justify-content:flex-end;padding-block:10px}.page-display .main{padding-top:12px}.screensaver-display{display:grid;gap:18px}.screensaver-live-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.screensaver-live-row h2{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:0}.screensaver-frame{border-color:color-mix(in srgb,var(--accent),transparent 48%);box-shadow:0 24px 80px rgba(0,0,0,.28)}
.meal-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:thin}.meal-tabs a:first-child{order:-2}.lists-dashboard-panel{margin-top:14px}.lists-dashboard-panel .panel-head{align-items:flex-start}
.sidebar .nav>a[href="index.php?page=lists"]{display:none!important}.sidebar .nav>a[href="index.php?page=display"]{color:var(--muted)}
.hsh-top-profile{display:none!important;}
@media (max-width:900px){.profile-dropdown-panel{right:auto;left:50%;transform:translateX(-50%)}.profile-top-copy small{display:none}.profile-dropdown-switch{grid-template-columns:1fr}.profile-dropdown-actions{grid-template-columns:1fr}.screensaver-live-row{display:grid}.page-display .topbar{justify-content:stretch}.standard-brand-frame,.brand-showcase.dashboard-brand,.app-footer-brand,.screensaver-frame{min-height:clamp(56px,13vw,120px)!important}}
@media (max-width:560px){.profile-top-copy b{display:none}.profile-top-btn{padding:5px}.profile-dropdown-panel{width:calc(100vw - 16px)}.compact-profile-avatar{width:54px!important;height:54px!important;flex-basis:54px!important}.screensaver-live-row{padding:12px;border-radius:18px}.meal-tabs a{white-space:nowrap}}

/* v6.8.1 Profile tab correction: clear top-right Profile menu beside Mobile/Desktop */
.sidebar .nav > a[href="index.php?page=profile"]{display:none!important;}
.top-actions .top-profile-wrap{order:4;position:relative;z-index:120;}
.top-actions .view-toggle-form{order:3;}
.top-actions .profile-tab-btn{
  min-width:112px!important;
  min-height:42px!important;
  padding:9px 15px!important;
  justify-content:center!important;
  gap:7px!important;
  background:linear-gradient(135deg,rgba(73,217,255,.18),rgba(68,215,168,.12))!important;
  border:1px solid color-mix(in srgb,var(--accent),transparent 48%)!important;
  color:var(--text)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
}
.top-actions .profile-tab-btn:hover,
.top-actions .profile-tab-btn[aria-expanded="true"]{
  border-color:color-mix(in srgb,var(--accent),transparent 20%)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent),transparent 74%),color-mix(in srgb,var(--accent2),transparent 78%))!important;
}
.profile-tab-label{display:inline!important;font-size:.9rem!important;font-weight:1000!important;letter-spacing:.01em!important;line-height:1!important;color:var(--text)!important;white-space:nowrap!important;opacity:1!important;visibility:visible!important;}
.profile-tab-arrow{display:inline-block!important;font-size:.84rem!important;color:var(--accent)!important;line-height:1!important;transform:translateY(1px);}
.profile-top-btn[aria-expanded="true"] .profile-tab-arrow{transform:rotate(180deg);}
.profile-dropdown-panel.compact-profile-menu{width:min(320px,calc(100vw - 20px))!important;padding:12px!important;}
.compact-profile-menu .profile-dropdown-card{padding:9px!important;border-radius:16px!important;}
.compact-profile-menu .compact-profile-avatar{width:54px!important;height:54px!important;flex-basis:54px!important;font-size:1rem!important;}
.compact-profile-menu .profile-dropdown-switch{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;}
.profile-dropdown-menu{display:grid;gap:8px;margin-top:10px;}
.profile-menu-item{display:flex;align-items:center;justify-content:space-between;min-height:40px;width:100%;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.055);color:var(--text);font-weight:950;padding:9px 11px;text-align:left;}
.profile-menu-item:hover{border-color:color-mix(in srgb,var(--accent),transparent 46%);background:rgba(255,255,255,.09);}
.profile-menu-form{margin:0;}
.profile-menu-form .profile-menu-item{font:inherit;cursor:pointer;}
.profile-menu-item.danger{color:#fecdd3;border-color:rgba(251,113,133,.32);background:rgba(251,113,133,.10);}
.profile-menu-item.danger:hover{background:rgba(251,113,133,.18);}
@media (max-width:900px){
  .top-actions .top-profile-wrap{order:4;}
  .profile-dropdown-panel.compact-profile-menu{right:auto!important;left:50%!important;transform:translateX(-50%)!important;}
  .compact-profile-menu .profile-dropdown-switch{grid-template-columns:1fr!important;}
}
@media (max-width:560px){
  .top-actions .profile-tab-btn{min-width:96px!important;padding:9px 12px!important;}
  .profile-tab-label{display:inline!important;font-size:.86rem!important;}
  .profile-tab-arrow{display:inline-block!important;}
}


/* v7.0 dashboard rebuild based on HomeSyncHub reference layout */
:root{--ref-bg:#07111f;--ref-panel:rgba(12,24,42,.78);--ref-panel-strong:rgba(7,17,31,.92);--ref-line:rgba(119,214,255,.22);--ref-cyan:#39eaff;--ref-teal:#48dec8;--ref-magenta:#df4eff;--ref-yellow:#ffd166;--ref-red:#ff5977;--ref-glow:0 18px 60px rgba(0,0,0,.34),0 0 36px rgba(57,234,255,.08)}
body{background:radial-gradient(circle at 12% 0%,rgba(0,238,255,.14),transparent 28rem),radial-gradient(circle at 92% 18%,rgba(203,65,255,.12),transparent 32rem),linear-gradient(135deg,#050b17,#081425 52%,#050a14)!important;color:#f4f8ff!important}.app-frame{grid-template-columns:236px minmax(0,1fr)!important;min-height:100vh}.sidebar.dashboard-ref-sidebar{position:sticky!important;top:0;height:100vh!important;padding:24px 18px!important;background:linear-gradient(180deg,rgba(4,12,24,.98),rgba(4,14,27,.94))!important;border-right:1px solid rgba(100,210,255,.22)!important;box-shadow:inset -1px 0 0 rgba(255,255,255,.02);overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;scrollbar-color:rgba(115,218,255,.55) rgba(255,255,255,.05)}.sidebar.dashboard-ref-sidebar::-webkit-scrollbar{width:8px}.sidebar.dashboard-ref-sidebar::-webkit-scrollbar-thumb{border-radius:99px;background:linear-gradient(180deg,var(--ref-cyan),rgba(223,78,255,.65))}.sidebar-ref-brand{padding:4px 4px 18px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:6px}.sidebar-ref-brand .brand-mark-img{width:50px!important;height:50px!important;border-radius:14px!important}.sidebar-ref-brand strong{font-size:1.05rem!important;color:#fff}.sidebar-ref-brand em{font-size:.76rem!important;color:#aec1d8}.sidebar-ref-nav{gap:8px!important;padding-bottom:28px}.sidebar-ref-nav a{min-height:44px!important;border-radius:12px!important;padding:10px 12px!important;font-weight:850!important;color:#c8d5e7!important;background:transparent!important;display:flex!important;align-items:center!important;gap:11px!important}.sidebar-ref-nav a span{width:23px;display:inline-grid;place-items:center;font-size:1.02rem}.sidebar-ref-nav a:hover,.sidebar-ref-nav a.active{color:#fff!important;background:linear-gradient(135deg,rgba(54,234,255,.18),rgba(52,113,255,.08))!important;outline:1px solid rgba(57,234,255,.72)!important;box-shadow:0 0 24px rgba(57,234,255,.14),inset 0 0 0 1px rgba(255,255,255,.04)!important}.nav-more-label{margin:18px 8px 6px;color:#788ba4;text-transform:uppercase;font-size:.68rem;font-weight:1000;letter-spacing:.13em;border-top:1px solid rgba(255,255,255,.10);padding-top:14px}.nav-count{margin-left:auto;min-width:22px;height:22px;border-radius:999px;background:#ff4d62;color:white;display:grid;place-items:center;font-size:.72rem}.message-card{display:none!important}.main{padding:0 18px 28px!important;min-width:0;background:linear-gradient(180deg,rgba(5,13,25,.28),rgba(5,13,25,0))}.topbar{position:sticky!important;top:0;z-index:70;min-height:74px;margin:0 -18px 14px!important;padding:12px 18px!important;border-bottom:1px solid rgba(130,210,255,.15);background:linear-gradient(180deg,rgba(4,12,24,.96),rgba(4,12,24,.84))!important;backdrop-filter:blur(20px);align-items:center!important}.top-title-ref{display:flex!important;align-items:center!important;gap:14px!important;padding:0!important}.sidebar-toggle-ref{width:42px;height:42px;border:1px solid rgba(117,216,255,.28);border-radius:12px;background:rgba(255,255,255,.04);color:#d8ecff;font-weight:1000;font-size:1.16rem}.top-title-ref h1{font-size:1.36rem!important;line-height:1.05!important;margin:0!important}.top-title-ref .eyebrow{display:none}.top-actions{gap:10px!important;justify-content:flex-end!important}.notification-wrap{order:1}.theme-toggle-form{order:2}.score-card{order:3!important}.add-button{order:4!important}.view-toggle-form{order:5!important}.top-actions .top-profile-wrap{order:6!important}.notification-bell,.theme-toggle-btn,.view-toggle-btn,.profile-tab-btn,.score-card{min-height:42px!important;border-radius:14px!important;border:1px solid rgba(138,216,255,.22)!important;background:rgba(255,255,255,.055)!important;box-shadow:0 10px 30px rgba(0,0,0,.18)!important}.notification-bell{width:42px!important;height:42px!important}.theme-toggle-btn,.view-toggle-btn{padding:9px 14px!important;color:#f4f8ff!important}.score-card{min-width:70px!important;padding:7px 12px!important}.score-card span{font-size:1rem!important;color:var(--ref-cyan)!important}.score-card small{font-size:.68rem!important;color:#c0cde0!important}.add-button{min-height:42px!important;border-radius:16px!important;padding:9px 18px!important;background:linear-gradient(135deg,#42e4ff,#4ee2b3)!important;color:#02111a!important;border:0!important}.profile-tab-btn{min-width:auto!important;padding:5px 12px 5px 6px!important;background:rgba(255,255,255,.055)!important;gap:8px!important}.profile-tab-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#42e4ff,#4de2b5);color:#04111c;font-weight:1000;overflow:hidden}.profile-tab-avatar img{width:100%;height:100%;object-fit:cover}.profile-tab-label{font-size:.9rem!important}.dashboard-ref{display:grid;gap:18px}.dashboard-ref-banner{height:clamp(132px,13vw,218px)!important;min-height:132px!important;aspect-ratio:auto!important;margin:0!important;border:1px solid rgba(57,234,255,.35)!important;border-radius:22px!important;background:radial-gradient(circle at 50% 8%,rgba(223,78,255,.24),transparent 28%),linear-gradient(90deg,rgba(5,12,23,.98),rgba(7,18,32,.84),rgba(5,12,23,.98))!important;box-shadow:var(--ref-glow)!important;display:grid!important;place-items:center!important;padding:0!important}.dashboard-ref-banner picture{height:100%!important;width:100%!important;display:grid!important;place-items:center!important}.dashboard-ref-banner img{width:min(650px,58%)!important;height:100%!important;object-fit:contain!important;object-position:center!important;border-radius:0!important;filter:drop-shadow(0 0 24px rgba(57,234,255,.18))}.dashboard-topline-ref{display:grid;grid-template-columns:minmax(330px,1.58fr) repeat(5,minmax(118px,.55fr));gap:14px;align-items:stretch}.today-weather-card-ref,.summary-chip-ref,.dashboard-panel-ref,.metric-card-ref,.quick-actions-ref>a,.quick-actions-ref>button{border:1px solid rgba(148,192,229,.15);background:linear-gradient(145deg,rgba(15,28,48,.88),rgba(8,18,34,.84));box-shadow:var(--ref-glow);border-radius:16px}.today-weather-card-ref{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 20px}.today-icon-ref{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(57,234,255,.18),rgba(65,118,255,.12));border:1px solid rgba(57,234,255,.32);font-size:1.7rem}.today-copy-ref h2{margin:.1rem 0 .25rem;font-size:1.38rem;color:#fff}.today-copy-ref p{margin:0;color:#aebbd0;font-size:.86rem}.weather-visual-ref{display:grid;justify-items:center;gap:1px}.weather-visual-ref span{font-size:2.7rem;line-height:1}.weather-visual-ref strong{font-size:1.7rem;color:#fff}.weather-visual-ref small{color:#c6d3e5;font-weight:800}.summary-chip-ref{min-height:96px;padding:16px 14px;display:grid;align-content:center;gap:4px;color:#eaf4ff}.summary-chip-ref span{font-size:1.7rem;filter:drop-shadow(0 0 12px rgba(57,234,255,.22))}.summary-chip-ref b{font-size:1.55rem;color:#fff}.summary-chip-ref small{font-size:.78rem;color:#c2d1e5;font-weight:800}.summary-chip-ref.purple span{color:#b779ff}.summary-chip-ref.blue span{color:#49b8ff}.summary-chip-ref.green span{color:#20dda3}.summary-chip-ref.cyan span{color:#24e5ff}.summary-chip-ref.pink span{color:#ff5d86}.dashboard-main-grid-ref{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,1fr);gap:18px}.dashboard-panel-ref{padding:18px!important;border-radius:18px!important}.panel-head-ref{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.panel-head-ref>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.panel-head-ref span{grid-row:1 / span 2;width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:rgba(57,234,255,.1);border:1px solid rgba(57,234,255,.22)}.panel-head-ref strong{font-size:1rem;text-transform:uppercase;letter-spacing:.04em;color:#fff}.panel-head-ref small{grid-column:2;color:#93a6bf;font-size:.8rem}.mini-action-ref,.inline-link-ref{min-height:32px;border-radius:999px;border:1px solid rgba(138,216,255,.22);background:rgba(255,255,255,.05);color:#aeefff;font-weight:900;padding:7px 10px;font-size:.78rem}.schedule-list-ref,.activity-feed-ref{display:grid;gap:8px}.schedule-row-ref{display:grid;grid-template-columns:84px 12px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:52px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06)}.schedule-row-ref time{color:#8fd9ff;font-weight:950}.schedule-dot-ref{width:9px;height:9px;border-radius:50%;background:var(--member-color);box-shadow:0 0 14px var(--member-color)}.schedule-row-ref strong,.activity-row-ref strong{display:block;color:#fff}.schedule-row-ref small,.activity-row-ref small{display:block;color:#94a6bf}.schedule-row-ref em{font-style:normal}.inline-link-ref{margin-top:10px;background:transparent;border:0;color:#20dfff;padding-inline:0}.member-orbit-ref{display:flex;align-items:center;justify-content:space-around;gap:18px;min-height:230px;flex-wrap:wrap}.member-bubble-ref{text-align:center;display:grid;justify-items:center;gap:7px;min-width:96px}.member-photo-ref{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;font-size:1.85rem;background:linear-gradient(135deg,color-mix(in srgb,var(--member-color),white 10%),color-mix(in srgb,var(--member-color),#07111f 20%));border:3px solid var(--member-color);box-shadow:0 0 24px color-mix(in srgb,var(--member-color),transparent 45%)}.member-bubble-ref strong{color:#fff}.member-bubble-ref small{color:#b7c7dc}.member-add-ref{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;gap:4px;color:#eaf4ff;background:radial-gradient(circle,rgba(255,255,255,.10),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08)}.member-add-ref b{font-size:2.4rem;font-weight:300}.member-add-ref span{font-size:.78rem;font-weight:900}.metric-row-ref{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.metric-card-ref{min-height:82px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr 1fr;align-items:center;gap:2px 14px;padding:14px 18px;color:#fff}.metric-card-ref span{grid-row:1 / span 2;width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:rgba(57,234,255,.10);border:1px solid rgba(57,234,255,.18);font-size:1.45rem}.metric-card-ref b{font-size:1.7rem;color:#fff;line-height:1}.metric-card-ref small{color:#c0cee1;font-weight:850}.dashboard-lower-grid-ref{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,1fr);gap:18px}.activity-row-ref{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.activity-row-ref span{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;background:rgba(57,234,255,.09)}.quick-actions-ref{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quick-actions-ref>a,.quick-actions-ref>button{min-height:92px;padding:14px;text-align:center;color:#fff;display:grid;place-items:center;gap:5px;background:rgba(255,255,255,.04);font:inherit}.quick-actions-ref span{font-size:1.65rem;color:#45e2ff}.quick-actions-ref strong{font-size:.9rem}.quick-actions-ref small{color:#95a7bd}.dashboard-empty-ref{background:rgba(255,255,255,.025)!important;border-style:dashed!important;color:#8fa4bd!important}.app-footer-brand{height:clamp(110px,8.5vw,170px)!important;min-height:110px!important;aspect-ratio:auto!important;border:1px solid rgba(57,234,255,.35)!important;border-radius:18px!important;background:linear-gradient(90deg,rgba(5,12,23,.95),rgba(6,18,32,.82),rgba(5,12,23,.95))!important;box-shadow:var(--ref-glow)!important;display:grid!important;place-items:center!important;margin-top:22px!important}.app-footer-brand picture{height:100%!important;width:100%!important;display:grid!important;place-items:center!important}.app-footer-brand img{width:min(640px,48%)!important;height:100%!important;object-fit:contain!important;object-position:center!important;border-radius:0!important}.profile-dropdown-panel.compact-profile-menu{top:52px!important;background:linear-gradient(145deg,rgba(11,24,42,.98),rgba(7,18,32,.98))!important;border-color:rgba(57,234,255,.25)!important;border-radius:16px!important}.profile-menu-item{border-radius:10px!important}.bottom-nav{z-index:75}.flash{border-radius:14px!important}.brand-showcase.personalized-dashboard-bg{background-image:none!important}
@media (max-width:1380px){.dashboard-topline-ref{grid-template-columns:minmax(300px,1.3fr) repeat(3,minmax(110px,.6fr));}.summary-chip-ref:nth-last-child(-n+2){display:none}.quick-actions-ref{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-ref-banner img{width:min(610px,62%)!important}.app-footer-brand img{width:min(620px,55%)!important}}
@media (max-width:1120px){.app-frame{grid-template-columns:84px minmax(0,1fr)!important}.sidebar.dashboard-ref-sidebar{padding:18px 10px!important}.sidebar-ref-brand span,.sidebar-ref-nav a:not(.active){font-size:0}.sidebar-ref-nav a{justify-content:center!important}.sidebar-ref-nav a span{font-size:1.15rem}.nav-more-label{font-size:0;height:1px;padding:0;margin:10px 10px;border-top:1px solid rgba(255,255,255,.12)}.dashboard-main-grid-ref,.dashboard-lower-grid-ref{grid-template-columns:1fr}.member-orbit-ref{min-height:auto;justify-content:flex-start}.metric-row-ref{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-topline-ref{grid-template-columns:1fr repeat(2,minmax(120px,1fr))}.summary-chip-ref:nth-last-child(-n+2){display:grid}}
@media (max-width:780px){.app-frame{grid-template-columns:1fr!important}.sidebar.dashboard-ref-sidebar{position:fixed!important;left:0;top:0;width:min(320px,82vw);z-index:90;transform:translateX(-105%);transition:.25s ease}.sidebar-open .sidebar.dashboard-ref-sidebar{transform:translateX(0)}.main{padding:0 12px 92px!important}.topbar{margin-inline:-12px!important;padding-inline:12px!important;align-items:flex-start!important;gap:10px!important}.top-title-ref h1{font-size:1.12rem!important}.top-actions{width:100%;justify-content:flex-start!important}.dashboard-topline-ref{grid-template-columns:1fr 1fr}.today-weather-card-ref{grid-column:1 / -1}.dashboard-ref-banner{height:clamp(88px,26vw,150px)!important;min-height:88px!important}.dashboard-ref-banner img{width:86%!important}.metric-row-ref,.quick-actions-ref{grid-template-columns:1fr 1fr}.schedule-row-ref{grid-template-columns:70px 10px 1fr}.schedule-row-ref em{display:none}.app-footer-brand{height:clamp(82px,23vw,132px)!important;min-height:82px!important}.app-footer-brand img{width:88%!important}.profile-dropdown-panel.compact-profile-menu{right:0!important;left:auto!important;transform:none!important}}
@media (max-width:520px){.dashboard-topline-ref,.metric-row-ref,.quick-actions-ref{grid-template-columns:1fr}.today-weather-card-ref{grid-template-columns:1fr;text-align:left}.weather-visual-ref{justify-items:start}.member-orbit-ref{justify-content:center}.activity-row-ref{grid-template-columns:32px 1fr}.activity-row-ref small{grid-column:2}.view-toggle-btn,.theme-toggle-btn{padding-inline:10px!important}.profile-tab-label{display:inline!important}.dashboard-panel-ref{padding:14px!important}.panel-head-ref{display:grid}.app-footer-brand img{width:94%!important}}

/* Calendar reference rebuild v7.1 */
.calendar-redesign{--cal-line:rgba(139,167,199,.18);--cal-card:linear-gradient(145deg,rgba(20,32,53,.88),rgba(9,20,37,.92));--cal-hour:64px;display:grid;gap:18px}.calendar-hero-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px;border:1px solid var(--cal-line);border-radius:24px;background:linear-gradient(135deg,rgba(11,23,43,.92),rgba(14,24,42,.76));box-shadow:0 18px 60px rgba(0,0,0,.22)}.calendar-hero-row h2{margin:.25rem 0;font-size:clamp(1.55rem,2.4vw,2.45rem)}.calendar-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.cal-circle-btn,.cal-mini-btn,.cal-add-btn{min-height:38px;border:1px solid var(--cal-line);border-radius:999px;background:rgba(255,255,255,.055);color:var(--text);font-weight:950;padding:8px 13px}.cal-circle-btn{width:40px;padding:0;display:grid;place-items:center;font-size:1.3rem}.cal-add-btn,.calendar-tabs a.active{color:#06101a;background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent}.calendar-tabs{display:flex;gap:4px;padding:5px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--cal-line)}.calendar-tabs a{min-height:34px;display:grid;place-items:center;padding:7px 14px;border-radius:999px;color:var(--muted);font-weight:950}.calendar-board,.calendar-side-card,.mini-month-card{border:1px solid var(--cal-line);border-radius:22px;background:var(--cal-card);box-shadow:0 18px 60px rgba(0,0,0,.20);backdrop-filter:blur(18px)}.calendar-day-layout,.calendar-week-layout,.calendar-agenda-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.calendar-day-board,.calendar-week-board,.calendar-month-board,.agenda-board{padding:18px;overflow:hidden}.calendar-time-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding-left:76px}.calendar-time-title span{color:var(--muted);font-weight:900}.calendar-time-title strong{color:var(--text)}.day-timeline-wrap,.week-grid-wrap{display:grid;grid-template-columns:78px minmax(0,1fr);gap:0}.time-rail,.week-time-axis{position:relative;color:var(--muted);font-weight:850;font-size:.78rem}.time-rail span,.week-time-axis span{position:absolute;right:12px;transform:translateY(-.55em);white-space:nowrap}.day-timeline,.week-days-grid{position:relative;border:1px solid var(--cal-line);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));overflow:hidden}.time-line,.week-time-line{position:absolute;left:0;right:0;height:1px;background:rgba(255,255,255,.08)}.cal-event-block{position:absolute;left:12px;right:12px;border-radius:12px;padding:10px 12px;background:linear-gradient(135deg,color-mix(in srgb,var(--event-color),transparent 58%),color-mix(in srgb,var(--event-color),#050b14 64%));border:1px solid color-mix(in srgb,var(--event-color),transparent 35%);box-shadow:0 0 24px color-mix(in srgb,var(--event-color),transparent 78%);overflow:hidden}.cal-event-block strong{display:block;color:#fff}.cal-event-block small,.cal-event-block em{display:block;color:#d6e6f6;font-style:normal;font-size:.78rem}.cal-empty-state{position:absolute;inset:18px;display:grid;place-items:center;border:1px dashed var(--cal-line);border-radius:14px;color:var(--muted)}.cal-empty-state.static{position:static;min-height:120px}.calendar-side-rail{display:grid;gap:14px}.calendar-side-card,.mini-month-card{padding:16px}.weather-chip-cal{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center}.weather-chip-cal span{font-size:2.6rem;grid-row:1 / span 2}.weather-chip-cal strong{font-size:1.7rem;color:#fff}.weather-chip-cal small{color:var(--muted);font-weight:800}.agenda-mini-row{display:grid;gap:3px;padding:10px 0 10px 12px;border-left:3px solid var(--event-color);border-bottom:1px solid rgba(255,255,255,.07)}.agenda-mini-row strong{color:#fff}.agenda-mini-row small{color:var(--muted)}.cal-quick-add{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cal-quick-add button{min-height:62px;border:1px solid var(--cal-line);border-radius:14px;background:rgba(255,255,255,.045);color:var(--text);font-weight:900}.cal-quick-add button span{display:block;font-size:.78rem;color:var(--muted);margin-top:4px}.week-header-grid{display:grid;grid-template-columns:78px repeat(7,minmax(105px,1fr));gap:0;margin-bottom:8px}.week-day-head{display:grid;place-items:center;gap:2px;padding:12px 8px;border:1px solid var(--cal-line);border-left:0;background:rgba(255,255,255,.04);color:var(--muted)}.week-day-head:first-of-type{border-left:1px solid var(--cal-line);border-radius:14px 0 0 14px}.week-day-head:last-child{border-radius:0 14px 14px 0}.week-day-head strong{font-size:1.2rem;color:var(--text)}.week-day-head.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#06101a}.week-day-head.active strong{color:#06101a}.week-days-grid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));overflow:visible}.week-day-column{position:relative;border-right:1px solid rgba(255,255,255,.08);min-width:0}.week-day-column:last-child{border-right:0}.week-day-column.active{background:rgba(73,217,255,.035)}.week-event-chip{position:absolute;left:6px;right:6px;border-radius:9px;padding:6px 8px;background:linear-gradient(135deg,color-mix(in srgb,var(--event-color),transparent 42%),color-mix(in srgb,var(--event-color),#08121f 65%));border:1px solid color-mix(in srgb,var(--event-color),transparent 32%);color:#fff;overflow:hidden;font-size:.72rem}.week-event-chip strong,.week-event-chip span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-event-chip strong{color:#dff8ff;font-size:.66rem}.mini-month-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.mini-month-head a{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.06);border:1px solid var(--cal-line)}.mini-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.mini-month-grid b,.mini-month-grid a{min-height:24px;display:grid;place-items:center;border-radius:999px;font-size:.72rem}.mini-month-grid b{color:var(--muted)}.mini-month-grid a{color:var(--text)}.mini-month-grid a.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#06101a;font-weight:1000}.mini-month-grid a.muted-date{opacity:.35}.calendar-filter-list{display:grid;gap:10px;margin-top:10px}.calendar-filter-list label{display:flex;align-items:center;gap:8px;color:var(--text);font-weight:850}.calendar-filter-list input{accent-color:var(--event-color,var(--accent))}.calendar-filter-list.stacked{margin-top:14px}.cal-select{width:100%;min-height:42px;border-radius:12px;border:1px solid var(--cal-line);background:rgba(255,255,255,.06);color:var(--text);padding:0 12px}.month-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.month-title-row h3{font-size:1.7rem;margin:0}.month-weekdays,.calendar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.month-weekdays span{color:var(--muted);text-transform:uppercase;font-size:.74rem;letter-spacing:.08em;font-weight:950;padding:0 8px 4px}.calendar-month-cell{min-height:132px;border:1px solid var(--cal-line);border-radius:14px;background:rgba(255,255,255,.045);padding:10px;display:grid;align-content:start;gap:5px;transition:.15s ease}.calendar-month-cell:hover{border-color:rgba(73,217,255,.45);transform:translateY(-1px)}.calendar-month-cell.active{outline:2px solid var(--accent);box-shadow:0 0 24px rgba(73,217,255,.12)}.calendar-month-cell.outside{opacity:.48}.calendar-month-cell strong{font-size:1.25rem}.calendar-month-cell small{color:var(--muted)}.calendar-month-cell em{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-size:.72rem;color:#fff;border-left:3px solid var(--event-color);background:color-mix(in srgb,var(--event-color),transparent 84%);border-radius:7px;padding:4px 6px}.calendar-month-cell b{font-size:.72rem;color:var(--accent);font-weight:950}.agenda-board{display:grid;gap:14px}.agenda-date-block{display:grid;gap:10px}.agenda-date-block>h3{color:var(--accent);margin:0}.agenda-list-redesign{display:grid;gap:8px}.agenda-event-row{display:grid;grid-template-columns:84px 4px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.045)}.agenda-event-row time{font-weight:950;color:#dff8ff}.agenda-event-row>span{width:4px;height:42px;border-radius:999px;background:var(--event-color);box-shadow:0 0 16px var(--event-color)}.agenda-event-row strong{color:#fff}.agenda-event-row small{display:block;color:var(--muted);margin-top:2px}.agenda-event-row em{font-style:normal;font-size:1.1rem}.calendar-agenda-layout .calendar-side-rail{position:sticky;top:90px}
[data-theme="light"] .calendar-hero-row,[data-theme="light"] .calendar-board,[data-theme="light"] .calendar-side-card,[data-theme="light"] .mini-month-card{background:rgba(255,255,255,.84)}[data-theme="light"] .cal-event-block strong,[data-theme="light"] .week-event-chip,[data-theme="light"] .agenda-event-row strong,[data-theme="light"] .calendar-month-cell em{color:#07111f}[data-theme="light"] .day-timeline,[data-theme="light"] .week-days-grid{background:rgba(255,255,255,.58)}
@media (max-width:1280px){.calendar-day-layout,.calendar-week-layout,.calendar-agenda-layout{grid-template-columns:1fr}.calendar-side-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.week-side-rail,.agenda-side-rail{grid-template-columns:minmax(260px,.7fr) 1fr}.calendar-week-board{overflow-x:auto}.week-header-grid,.week-grid-wrap{min-width:900px}.calendar-month-cell{min-height:112px}.calendar-month-grid{min-width:880px}.calendar-month-board{overflow-x:auto}}
@media (max-width:760px){.calendar-redesign{gap:12px}.calendar-hero-row{padding:16px;border-radius:18px}.calendar-toolbar{justify-content:flex-start;width:100%}.calendar-tabs{order:3;width:100%;justify-content:space-between}.calendar-tabs a{flex:1;padding-inline:8px}.calendar-day-layout,.calendar-week-layout,.calendar-agenda-layout{gap:12px}.calendar-side-rail,.week-side-rail,.agenda-side-rail{grid-template-columns:1fr}.calendar-day-board,.calendar-week-board,.calendar-month-board,.agenda-board{padding:12px;border-radius:18px;overflow-x:auto}.day-timeline-wrap{min-width:620px}.calendar-time-title{padding-left:0}.calendar-month-grid,.month-weekdays{min-width:760px}.agenda-event-row{grid-template-columns:72px 4px 1fr}.agenda-event-row em{display:none}.cal-add-btn{width:100%}.cal-circle-btn,.cal-mini-btn{min-height:36px}.week-header-grid,.week-grid-wrap{min-width:820px}}


/* v7.2 Add New / Create family item rearranged modal */
.add-item-modal{width:min(1120px,calc(100vw - 24px));}
.add-new-modal{gap:18px;padding:0;max-height:min(92vh,960px);background:linear-gradient(145deg,rgba(8,18,34,.98),rgba(13,24,42,.96));border:1px solid rgba(73,217,255,.24);box-shadow:0 30px 110px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.025) inset;}
.add-new-modal .add-new-head{position:sticky;top:0;z-index:5;padding:22px 24px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(9,18,34,.98),rgba(9,18,34,.92));backdrop-filter:blur(18px);}
.add-new-head h2{font-size:clamp(1.65rem,3vw,2.25rem);margin:.25rem 0 .25rem;line-height:1.05;}
.add-new-modal>.add-type-grid,.add-new-modal>.add-new-sections,.add-new-modal>.add-sharing-section,.add-new-modal>.add-new-actions{margin-left:24px;margin-right:24px;}
.add-type-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.add-type-card span{min-height:112px;align-content:center;gap:7px;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;}
.add-type-card span i{font-style:normal;width:44px;height:44px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.07);font-size:1.25rem;}
.add-type-card b{font-size:1.05rem;}
.add-type-card input:checked+span{border-color:var(--accent);background:linear-gradient(145deg,color-mix(in srgb,var(--accent),transparent 82%),rgba(255,255,255,.055));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 72%) inset,0 0 30px color-mix(in srgb,var(--accent),transparent 78%);transform:translateY(-1px);}
.add-new-sections{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;align-items:start;}
.add-section{border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));padding:18px;}
.add-section-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px;}
.add-section-title>span{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:16px;background:color-mix(in srgb,var(--accent),transparent 84%);border:1px solid color-mix(in srgb,var(--accent),transparent 64%);box-shadow:0 0 24px color-mix(in srgb,var(--accent),transparent 82%);}
.add-section-title h3{margin:0;font-size:1.05rem;line-height:1.1;}
.add-section-title p{margin:.25rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.35;}
.add-field{display:grid;gap:8px;color:var(--text);font-weight:950;}
.add-field input,.add-field select,.add-field textarea{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.08);color:var(--text);padding:12px 14px;outline:none;font-weight:850;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;}
.add-field textarea{min-height:118px;resize:vertical;line-height:1.45;}
.add-field input:focus,.add-field select:focus,.add-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 78%);background:rgba(255,255,255,.105);}
.add-field input::placeholder,.add-field textarea::placeholder{color:color-mix(in srgb,var(--muted),transparent 14%);}
.add-field-wide{grid-column:1/-1;}
.add-row{gap:12px;margin-top:12px;}
.add-quick-row{margin:12px 0 2px;}
.add-sharing-section{margin-top:0;}
.add-new-actions{position:sticky;bottom:0;z-index:5;margin-top:0;padding:16px 0 20px;border-top:1px solid var(--line);background:linear-gradient(0deg,rgba(9,18,34,.98),rgba(9,18,34,.86));backdrop-filter:blur(18px);}
.add-new-actions .btn{min-width:150px;}
.add-new-actions .btn.primary{min-width:190px;}
.add-new-modal [data-show-for][hidden]{display:none!important;}
[data-theme="light"] .add-new-modal{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(240,248,255,.96));}
[data-theme="light"] .add-new-modal .add-new-head,[data-theme="light"] .add-new-actions{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,250,255,.92));}
[data-theme="light"] .add-field input,[data-theme="light"] .add-field select,[data-theme="light"] .add-field textarea{background:rgba(15,23,42,.055);border-color:rgba(15,23,42,.13);}
@media (max-width:900px){.add-item-modal{width:min(760px,calc(100vw - 18px));}.add-new-sections{grid-template-columns:1fr}.add-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.add-new-modal>.add-type-grid,.add-new-modal>.add-new-sections,.add-new-modal>.add-sharing-section,.add-new-modal>.add-new-actions{margin-left:16px;margin-right:16px}.add-new-modal .add-new-head{padding:18px 16px}.add-new-actions{flex-direction:column-reverse;align-items:stretch}.add-new-actions .btn{width:100%;}}
@media (max-width:560px){.add-type-grid{grid-template-columns:1fr}.add-type-card span{min-height:86px;grid-template-columns:auto 1fr;place-items:center start;text-align:left}.add-type-card span small{grid-column:2}.add-type-card span i{grid-row:1/3}.add-section{padding:14px;border-radius:22px}.add-new-head{align-items:flex-start}.add-new-head .icon-btn{flex:0 0 auto}.add-new-modal .form-grid.two,.add-new-modal .form-grid.three,.add-new-modal .form-grid.four{grid-template-columns:1fr}.add-field input,.add-field select,.add-field textarea{min-height:46px}.add-new-modal{max-height:94vh;border-radius:24px;}}

/* v7.3 Todo List separate tab */
.todo-list-dashboard{display:grid;gap:18px;--todo-cyan:#49d9ff;--todo-green:#44d7a8;--todo-yellow:#fbbf24;--todo-orange:#fb923c;--todo-purple:#a855f7;--todo-blue:#38bdf8;}
.todo-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:24px!important;background:linear-gradient(145deg,rgba(8,18,34,.94),rgba(13,24,42,.88))!important;border-color:rgba(73,217,255,.24)!important;}
.todo-hero h2{margin:.25rem 0;font-size:clamp(1.75rem,3vw,3rem);line-height:1.05;color:#fff;}
.todo-hero p{max-width:780px;}
.todo-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(118px,1fr));gap:12px;min-width:min(430px,100%);}
.todo-summary-grid article{min-height:96px;border-radius:20px;border:1px solid rgba(73,217,255,.24);background:linear-gradient(145deg,rgba(73,217,255,.12),rgba(68,215,168,.06));display:grid;place-items:center;text-align:center;padding:12px;}
.todo-summary-grid b{font-size:2rem;color:var(--todo-cyan);line-height:1;}
.todo-summary-grid span{color:var(--muted);font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.05em;}
.todo-filter-panel{padding:16px!important;border-radius:24px!important;display:grid;gap:14px;background:rgba(8,18,34,.82)!important;}
.todo-search-form{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(255,255,255,.045);}
.todo-search-form>span{width:32px;height:32px;display:grid;place-items:center;color:var(--muted);}
.todo-search-form input{min-height:42px;border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important;color:var(--text);font-weight:850;}
.todo-filter-tabs{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.todo-filter-tabs a{min-height:40px;display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.055);color:var(--muted);font-weight:950;transition:.16s ease;}
.todo-filter-tabs a b{min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:var(--text);font-size:.78rem;}
.todo-filter-tabs a:hover,.todo-filter-tabs a.active{border-color:rgba(73,217,255,.65);color:#06111f;background:linear-gradient(135deg,var(--todo-cyan),var(--todo-green));box-shadow:0 0 24px rgba(73,217,255,.16);}
.todo-filter-tabs a:hover b,.todo-filter-tabs a.active b{background:rgba(6,17,31,.14);color:#06111f;}
.todo-layout-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px;align-items:start;}
.todo-item-stack{display:grid;gap:12px;}
.todo-item-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px;border:1px solid rgba(255,255,255,.11);border-radius:24px;background:linear-gradient(145deg,rgba(15,28,48,.84),rgba(8,18,34,.82));box-shadow:0 22px 70px rgba(0,0,0,.25);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;}
.todo-item-card:hover{border-color:rgba(73,217,255,.55);transform:translateY(-1px);box-shadow:0 24px 80px rgba(0,0,0,.32),0 0 25px rgba(73,217,255,.10);}
.todo-item-card.is-completed{border-color:rgba(68,215,168,.35);opacity:.72;}
.todo-type-icon{width:58px;height:58px;border-radius:19px;display:grid;place-items:center;font-size:1.35rem;border:1px solid rgba(73,217,255,.28);background:rgba(73,217,255,.10);box-shadow:0 0 22px rgba(73,217,255,.08);}
.todo-item-card.accent-orange .todo-type-icon{border-color:rgba(251,146,60,.42);background:rgba(251,146,60,.12);}
.todo-item-card.accent-blue .todo-type-icon{border-color:rgba(56,189,248,.42);background:rgba(56,189,248,.12);}
.todo-item-card.accent-purple .todo-type-icon{border-color:rgba(168,85,247,.42);background:rgba(168,85,247,.12);}
.todo-item-card.is-completed .todo-type-icon{border-color:rgba(68,215,168,.46);background:rgba(68,215,168,.14);color:var(--success);}
.todo-item-copy{min-width:0;display:grid;gap:6px;}
.todo-tags{display:flex;gap:6px;flex-wrap:wrap;}
.todo-tags span{font-size:.72rem;font-weight:1000;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:5px 8px;color:var(--muted);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);}
.todo-tags span.done{color:var(--success);background:rgba(68,215,168,.12);border-color:rgba(68,215,168,.22);}
.todo-item-copy h3{margin:0;color:#fff;font-size:1.12rem;overflow-wrap:anywhere;}
.todo-item-copy p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.35;}
.todo-note{padding-top:4px;color:color-mix(in srgb,var(--muted),white 8%)!important;}
.todo-reward-block{display:flex;gap:8px;align-items:stretch;}
.todo-reward-block>div{min-width:78px;border:1px solid rgba(73,217,255,.22);border-radius:16px;padding:9px 10px;text-align:center;background:rgba(73,217,255,.08);}
.todo-reward-block>div:nth-child(2){border-color:rgba(251,191,36,.28);background:rgba(251,191,36,.08);}
.todo-reward-block b{font-size:1.15rem;color:var(--todo-cyan);display:block;line-height:1;}
.todo-reward-block>div:nth-child(2) b{color:var(--todo-yellow);}
.todo-reward-block span{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:950;}
.todo-actions{display:flex;align-items:center;justify-content:flex-end;min-width:124px;}
.todo-done-btn{min-width:104px;border-radius:17px!important;}
.todo-released-chip{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:999px;border:1px solid rgba(68,215,168,.28);background:rgba(68,215,168,.12);color:var(--success);font-weight:950;padding:9px 12px;white-space:nowrap;}
.todo-released-chip.readonly{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.055);color:var(--muted);}
.todo-side-panel{display:grid;gap:14px;position:sticky;top:92px;}
.todo-rule-card,.todo-completion-card{padding:18px!important;border-radius:24px!important;background:linear-gradient(145deg,rgba(15,28,48,.84),rgba(8,18,34,.82))!important;}
.todo-side-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;}
.todo-side-title>span{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:rgba(73,217,255,.10);border:1px solid rgba(73,217,255,.25);}
.todo-side-title h3{margin:0;color:#fff;font-size:1rem;}
.todo-side-title p{margin:.2rem 0 0;color:var(--muted);font-size:.78rem;font-weight:850;}
.todo-rule-card ol{display:grid;gap:9px;margin:0;padding-left:20px;color:var(--muted);font-weight:850;line-height:1.45;}
.todo-rule-card li{padding:9px 10px;border-radius:14px;background:rgba(255,255,255,.045);}
.todo-completion-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 14px;}
.todo-completion-grid>div{min-height:90px;display:grid;place-items:center;text-align:center;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);}
.todo-completion-grid b{font-size:1.8rem;color:var(--todo-green);line-height:1;}
.todo-completion-grid span{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;font-weight:950;}
.todo-empty-state{display:grid;gap:10px;place-items:start;padding:24px!important;}
.todo-empty-state h3{margin:0;color:#fff;}
[data-theme="light"] .todo-hero,[data-theme="light"] .todo-filter-panel,[data-theme="light"] .todo-item-card,[data-theme="light"] .todo-rule-card,[data-theme="light"] .todo-completion-card{background:rgba(255,255,255,.82)!important;}
[data-theme="light"] .todo-item-copy h3,[data-theme="light"] .todo-hero h2,[data-theme="light"] .todo-side-title h3{color:#07111f;}
@media (max-width:1180px){.todo-hero{align-items:stretch;flex-direction:column}.todo-summary-grid{min-width:0}.todo-layout-grid{grid-template-columns:1fr}.todo-side-panel{position:static;grid-template-columns:1fr 1fr}}
@media (max-width:820px){.todo-item-card{grid-template-columns:auto minmax(0,1fr);align-items:start}.todo-reward-block,.todo-actions{grid-column:1/-1;justify-content:flex-start}.todo-reward-block{width:100%}.todo-reward-block>div{flex:1}.todo-actions .btn,.todo-actions form{width:100%}.todo-actions .btn{min-width:0;width:100%}.todo-side-panel{grid-template-columns:1fr}.todo-search-form{grid-template-columns:auto 1fr}.todo-search-form .btn{grid-column:1/-1}.todo-summary-grid{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:560px){.todo-hero{padding:18px!important;border-radius:22px!important}.todo-summary-grid{grid-template-columns:1fr}.todo-filter-tabs a{flex:1;justify-content:center}.todo-type-icon{width:50px;height:50px}.todo-item-card{padding:13px;border-radius:20px}.todo-item-copy h3{font-size:1rem}.todo-reward-block{flex-direction:column}.todo-reward-block>div{display:flex;align-items:center;justify-content:space-between;text-align:left}.todo-reward-block span{font-size:.72rem}}

/* v7.4 Theme accuracy + dashboard banner normalization
   Fixes the newer reference dashboard components so Light mode is truly light,
   Dark mode remains high-contrast, and the dashboard banner becomes wider/shorter. */
:root{
  color-scheme: dark;
}
[data-theme="light"]{
  color-scheme: light;
  --bg:#eef6fb;
  --panel:rgba(255,255,255,.86);
  --panel-strong:rgba(255,255,255,.96);
  --text:#0b1728;
  --muted:#52657b;
  --line:rgba(15,23,42,.14);
  --ref-bg:#eef6fb;
  --ref-panel:rgba(255,255,255,.86);
  --ref-panel-strong:rgba(255,255,255,.96);
  --ref-line:rgba(14,116,144,.22);
  --ref-glow:0 18px 48px rgba(15,23,42,.12),0 0 28px rgba(14,165,233,.08);
}
[data-theme="dark"]{
  color-scheme: dark;
}
[data-theme="light"] body{
  color:var(--text);
  background:
    radial-gradient(circle at top left,rgba(73,217,255,.22),transparent 30rem),
    radial-gradient(circle at top right,rgba(68,215,168,.18),transparent 28rem),
    linear-gradient(135deg,#eef6fb,#dcecf7 62%,#eef6fb);
}
[data-theme="light"] .sidebar,
[data-theme="light"] .dashboard-ref-sidebar{
  background:rgba(255,255,255,.82)!important;
  border-right-color:rgba(15,23,42,.12)!important;
  box-shadow:14px 0 40px rgba(15,23,42,.08)!important;
}
[data-theme="light"] .sidebar-ref-nav a,
[data-theme="light"] .nav a{
  color:#334155!important;
}
[data-theme="light"] .sidebar-ref-nav a:hover,
[data-theme="light"] .sidebar-ref-nav a.active,
[data-theme="light"] .nav a:hover,
[data-theme="light"] .nav a.active{
  color:#07111f!important;
  background:rgba(14,165,233,.10)!important;
}
[data-theme="light"] .topbar,
[data-theme="light"] .topbar-ref,
[data-theme="light"] .top-title-ref,
[data-theme="light"] .top-actions .btn,
[data-theme="light"] .icon-btn,
[data-theme="light"] .chip-btn,
[data-theme="light"] .theme-toggle-btn,
[data-theme="light"] .view-toggle-btn,
[data-theme="light"] .profile-tab-btn,
[data-theme="light"] .score-card,
[data-theme="light"] .notification-bell{
  background:rgba(255,255,255,.78)!important;
  border-color:rgba(15,23,42,.14)!important;
  color:#0b1728!important;
}
[data-theme="light"] .topbar h1,
[data-theme="light"] .top-title-ref h1,
[data-theme="light"] .brand strong,
[data-theme="light"] .sidebar-ref-brand strong{
  color:#07111f!important;
}
[data-theme="light"] .brand em,
[data-theme="light"] .sidebar-ref-brand em,
[data-theme="light"] .muted,
[data-theme="light"] .top-title-ref .eyebrow{
  color:#52657b!important;
}
[data-theme="light"] .dashboard-ref-banner,
[data-theme="light"] .app-footer-brand,
[data-theme="light"] .standard-brand-frame{
  background:linear-gradient(90deg,rgba(255,255,255,.94),rgba(232,246,255,.88),rgba(255,255,255,.94))!important;
  border-color:rgba(14,165,233,.28)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.78)!important;
}
[data-theme="light"] .today-weather-card-ref,
[data-theme="light"] .summary-chip-ref,
[data-theme="light"] .dashboard-panel-ref,
[data-theme="light"] .metric-card-ref,
[data-theme="light"] .quick-actions-ref>a,
[data-theme="light"] .quick-actions-ref>button,
[data-theme="light"] .schedule-row-ref,
[data-theme="light"] .activity-row-ref,
[data-theme="light"] .profile-dropdown-panel,
[data-theme="light"] .profile-dropdown-card,
[data-theme="light"] .profile-menu-item,
[data-theme="light"] .profile-dropdown-switch select,
[data-theme="light"] .panel,
[data-theme="light"] .metric-card,
[data-theme="light"] .item-card,
[data-theme="light"] .list-row,
[data-theme="light"] .todo-hero,
[data-theme="light"] .todo-filter-panel,
[data-theme="light"] .todo-item-card,
[data-theme="light"] .todo-rule-card,
[data-theme="light"] .todo-completion-card{
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,248,255,.86))!important;
  border-color:rgba(15,23,42,.13)!important;
  color:#0b1728!important;
  box-shadow:0 18px 44px rgba(15,23,42,.08)!important;
}
[data-theme="light"] .today-copy-ref h2,
[data-theme="light"] .weather-visual-ref strong,
[data-theme="light"] .summary-chip-ref b,
[data-theme="light"] .panel-head-ref strong,
[data-theme="light"] .schedule-row-ref strong,
[data-theme="light"] .activity-row-ref strong,
[data-theme="light"] .member-bubble-ref strong,
[data-theme="light"] .metric-card-ref b,
[data-theme="light"] .quick-actions-ref strong,
[data-theme="light"] .profile-dropdown-info strong,
[data-theme="light"] .item-title-row h3,
[data-theme="light"] .todo-item-copy h3,
[data-theme="light"] .todo-side-title h3,
[data-theme="light"] .todo-hero h2{
  color:#07111f!important;
}
[data-theme="light"] .today-copy-ref p,
[data-theme="light"] .weather-visual-ref small,
[data-theme="light"] .summary-chip-ref small,
[data-theme="light"] .panel-head-ref small,
[data-theme="light"] .schedule-row-ref small,
[data-theme="light"] .activity-row-ref small,
[data-theme="light"] .member-bubble-ref small,
[data-theme="light"] .metric-card-ref small,
[data-theme="light"] .quick-actions-ref small,
[data-theme="light"] .profile-dropdown-info small,
[data-theme="light"] .small,
[data-theme="light"] .item-notes{
  color:#52657b!important;
}
[data-theme="light"] input,
[data-theme="light"] select,
[data-theme="light"] textarea,
[data-theme="light"] .add-field input,
[data-theme="light"] .add-field select,
[data-theme="light"] .add-field textarea{
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(15,23,42,.16)!important;
  color:#0b1728!important;
}
[data-theme="light"] input::placeholder,
[data-theme="light"] textarea::placeholder{color:#64748b!important;}
[data-theme="light"] .btn.primary,
[data-theme="light"] .add-button,
[data-theme="light"] .hub-switch-btn{
  color:#04111c!important;
  background:linear-gradient(135deg,#36dff6,#45dfb6)!important;
  border-color:transparent!important;
}
[data-theme="light"] .profile-menu-item.danger{
  color:#9f1239!important;
  background:rgba(244,63,94,.08)!important;
  border-color:rgba(244,63,94,.22)!important;
}

/* Dashboard brand/header banner: shorter, wider visual, no cropping. */
.page-dashboard .dashboard-ref-banner,
.dashboard-ref .dashboard-ref-banner{
  height:clamp(86px,7.2vw,132px)!important;
  min-height:86px!important;
  max-height:132px!important;
  aspect-ratio:auto!important;
  border-radius:18px!important;
}
.page-dashboard .dashboard-ref-banner img,
.dashboard-ref .dashboard-ref-banner img{
  width:min(980px,74%)!important;
  max-width:980px!important;
  height:calc(100% - 8px)!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.page-dashboard .dashboard-ref-banner picture,
.dashboard-ref .dashboard-ref-banner picture{
  width:100%!important;
  height:100%!important;
}
@media (min-width:1500px){
  .page-dashboard .dashboard-ref-banner img,
  .dashboard-ref .dashboard-ref-banner img{width:min(1040px,64%)!important;}
}
@media (max-width:760px){
  .page-dashboard .dashboard-ref-banner,
  .dashboard-ref .dashboard-ref-banner{height:clamp(66px,17vw,96px)!important;min-height:66px!important;}
  .page-dashboard .dashboard-ref-banner img,
  .dashboard-ref .dashboard-ref-banner img{width:94%!important;height:calc(100% - 6px)!important;}
}

/* v7.5 Joshleen AI light dashboard rebuild */
:root{
  --ai-bg:#f6f9fd;
  --ai-card:#ffffff;
  --ai-card-soft:#f3f7fc;
  --ai-text:#101827;
  --ai-muted:#667085;
  --ai-line:#e4eaf2;
  --ai-sidebar:#061221;
  --ai-sidebar-2:#081a2f;
  --ai-blue:#2563eb;
  --ai-cyan:#31d6ee;
  --ai-green:#20c997;
  --ai-purple:#8b5cf6;
  --ai-orange:#f97316;
  --ai-red:#ef4444;
  --ai-radius:24px;
  --ai-shadow:0 18px 55px rgba(15,23,42,.08);
}
[data-theme="light"]{
  --bg:#f6f9fd;
  --panel:rgba(255,255,255,.92);
  --panel-strong:#ffffff;
  --text:#111827;
  --muted:#667085;
  --line:#e4eaf2;
  --shadow:0 18px 55px rgba(15,23,42,.08);
}
[data-theme="light"] body{
  color:var(--ai-text);
  background:linear-gradient(180deg,#f8fbff 0%,#f4f7fb 100%);
}
[data-theme="light"] .app-frame,
[data-theme="light"] .main{background:#f6f9fd;color:var(--ai-text)}
[data-theme="light"] .sidebar{
  background:linear-gradient(180deg,#05101e 0%,#071527 62%,#050c18 100%);
  color:#f8fbff;
  border-color:rgba(255,255,255,.08);
  box-shadow:10px 0 30px rgba(15,23,42,.08);
}
[data-theme="light"] .sidebar .brand strong,
[data-theme="light"] .sidebar-user-card strong{color:#fff}
[data-theme="light"] .sidebar .brand em,
[data-theme="light"] .sidebar-user-card span{color:#9fb1c8}
[data-theme="light"] .nav a{color:#d3dbea}
[data-theme="light"] .nav a:hover,
[data-theme="light"] .nav a.active{color:#fff;background:rgba(20,184,166,.18);border-color:rgba(45,212,191,.5)}
[data-theme="light"] .panel,
[data-theme="light"] .item-card,
[data-theme="light"] .list-row,
[data-theme="light"] .menu-card,
[data-theme="light"] .modal-card{
  color:var(--ai-text);
  background:#fff;
  border-color:var(--ai-line);
  box-shadow:var(--ai-shadow);
}
[data-theme="light"] input,
[data-theme="light"] select,
[data-theme="light"] textarea{
  color:#111827;
  background:#f8fafc;
  border-color:#dce4ee;
}
[data-theme="light"] .topbar{
  background:rgba(255,255,255,.82);
  border:1px solid var(--ai-line);
  box-shadow:var(--ai-shadow);
}
[data-theme="light"] .topbar h1{color:#111827}
[data-theme="light"] .theme-toggle-btn,
[data-theme="light"] .view-toggle-btn,
[data-theme="light"] .profile-top-btn,
[data-theme="light"] .score-card,
[data-theme="light"] .notification-bell{
  background:#fff;
  color:#111827;
  border-color:#dde5ef;
  box-shadow:0 8px 22px rgba(15,23,42,.07);
}

/* Shell refinements matching the clean assistant dashboard */
.app-frame{grid-template-columns:260px minmax(0,1fr)}
.sidebar{padding:22px 18px;gap:18px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.55) transparent}
.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{background:rgba(148,163,184,.45);border-radius:999px}
.brand-premium{padding:8px 6px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-mark-img{width:54px;height:54px;border-radius:18px;object-fit:contain;filter:drop-shadow(0 0 14px rgba(49,214,238,.35))}
.nav{gap:9px}.nav a{border:1px solid transparent;border-radius:14px;min-height:46px;font-size:.96rem}.nav a span{width:24px;text-align:center;font-size:1.08rem}.nav a.active{border-color:rgba(49,214,238,.65);box-shadow:inset 4px 0 0 rgba(49,214,238,.85),0 12px 26px rgba(31,182,255,.12)}
.sidebar-user-card{margin-top:auto;display:flex;align-items:center;gap:12px;border-top:1px solid rgba(255,255,255,.08);padding:18px 6px 4px;color:#fff}
.sidebar-user-avatar{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#d9f6ff,#e8f3ff);color:#082033;font-weight:1000;overflow:hidden}.sidebar-user-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-user-card strong{display:block;font-size:.94rem}.sidebar-user-card span{display:block;color:#31d6ee;font-size:.75rem;font-weight:900;margin-top:2px}
.main{padding:18px 24px 34px}.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto minmax(260px,520px) auto;align-items:center;gap:18px;margin:-4px 0 18px;padding:14px 16px;border-radius:0;background:rgba(5,14,29,.72);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}
.top-title-ref{min-width:180px}.top-title-ref h1{font-size:1.4rem;line-height:1.1}.top-title-ref .eyebrow{font-size:.62rem}.sidebar-toggle-ref{width:42px;height:42px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:1000}
.global-search{height:48px;display:flex;align-items:center;gap:10px;border:1px solid var(--ai-line);background:#fff;border-radius:18px;padding:0 14px;box-shadow:0 10px 26px rgba(15,23,42,.05)}
.global-search input{border:0;background:transparent;min-width:0;flex:1;height:44px;outline:0;color:#111827}.global-search kbd{font-size:.72rem;color:#667085;border:1px solid #dce4ee;border-radius:8px;padding:3px 7px;background:#f8fafc}.global-search span{opacity:.75}
[data-theme="dark"] .global-search{background:rgba(15,23,42,.78);border-color:rgba(255,255,255,.12)}[data-theme="dark"] .global-search input{color:#fff}[data-theme="dark"] .global-search kbd{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#aab8ca}
.top-actions{gap:10px}.top-actions .notification-wrap{order:1}.top-actions .theme-toggle-form{order:2}.top-actions .score-card{order:3}.top-actions .add-button{order:4}.top-actions .view-toggle-form{order:5}.top-actions .joshleen-ai-top-btn{order:6}.top-actions .top-profile-wrap{order:7}.top-actions .install-btn{order:8}
.joshleen-ai-top-btn{min-height:42px;border:1px solid var(--ai-line);border-radius:15px;background:#fff;color:#111827;padding:9px 14px;font-weight:1000;box-shadow:0 8px 22px rgba(15,23,42,.07)}
[data-theme="dark"] .joshleen-ai-top-btn{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.12)}
.profile-dropdown-panel{z-index:200}
.page-dashboard .app-footer-brand{display:none}

/* Dashboard with integrated Joshleen AI assistant */
.ai-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:22px;align-items:start;max-width:1680px;margin:0 auto}.ai-main-column{display:grid;gap:18px}.ai-welcome-card{display:grid;grid-template-columns:190px minmax(0,1fr) auto;gap:24px;align-items:center;background:#eef5ff;border:1px solid #dfe9f6;border-radius:24px;padding:18px 24px;box-shadow:var(--ai-shadow)}
.ai-welcome-visual{height:118px;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#dbeafe,#f0f7ff);display:grid;place-items:center}.ai-welcome-visual img{width:100%;height:100%;object-fit:cover}.ai-welcome-copy h2{font-size:clamp(1.45rem,2.1vw,2.1rem);margin:0 0 8px;color:#111827}.ai-welcome-copy p{margin:0;color:#526273;font-weight:700}.ai-date-card{text-align:right;color:#111827;display:grid;gap:4px}.ai-date-card span,.ai-date-card em{color:#526273;font-style:normal;font-weight:800}.ai-date-card strong{font-size:1.05rem}
.ai-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ai-stat-card{display:grid;gap:8px;min-height:150px;background:#fff;border:1px solid var(--ai-line);border-radius:22px;padding:22px;box-shadow:var(--ai-shadow)}.ai-stat-card span{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:1.55rem}.ai-stat-card strong{font-size:2.1rem;color:#111827}.ai-stat-card small{font-size:1rem;font-weight:900;color:#111827}.ai-stat-card em{font-style:normal;color:#667085;font-weight:750}.ai-stat-card.amber span{background:#fff7dd;color:#f59e0b}.ai-stat-card.green span{background:#dcfce7;color:#16a34a}.ai-stat-card.purple span{background:#f3e8ff;color:#8b5cf6}.ai-stat-card.blue span{background:#dbeafe;color:#2563eb}
.ai-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ai-panel{background:#fff;border:1px solid var(--ai-line);border-radius:22px;padding:20px;box-shadow:var(--ai-shadow);min-height:260px}.ai-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.ai-panel-head div{display:flex;align-items:center;gap:10px}.ai-panel-head span{font-size:1.25rem}.ai-panel-head strong{font-size:1.14rem;color:#111827}.ai-panel-head a{color:#2563eb;font-size:.9rem;font-weight:900}.ai-schedule-list,.ai-priority-list,.ai-meal-list,.ai-activity-list{display:grid;gap:12px}.ai-schedule-item{display:grid;grid-template-columns:92px 12px minmax(0,1fr);gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid #eef2f7}.ai-schedule-item time{font-weight:900;color:#667085}.ai-schedule-item i{width:10px;height:10px;border-radius:50%;background:var(--dot,#2563eb)}.ai-schedule-item strong,.ai-priority-item strong,.ai-meal-item strong,.ai-activity-item strong{display:block;color:#111827}.ai-schedule-item small,.ai-priority-item small,.ai-meal-item small,.ai-activity-item small{color:#667085;font-weight:750}.ai-inline-add{margin-top:10px;border:0;background:transparent;color:#2563eb;font-weight:1000}.ai-priority-item,.ai-meal-item,.ai-activity-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid #eef2f7}.ai-checkbox{width:18px;height:18px;border:2px solid #cbd5e1;border-radius:6px}.ai-priority-item em{font-style:normal;color:#64748b;font-weight:900}.ai-meal-item>span,.ai-activity-item>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f1f5f9}.ai-meal-item em{font-style:normal;border-radius:999px;padding:5px 10px;background:#edfdf5;color:#16a34a;font-weight:900}.ai-activity-item em{font-style:normal;color:#12b981;font-weight:900}.ai-empty{margin:0;padding:16px;border-radius:16px;background:#f8fafc;color:#667085;font-weight:750}

/* Joshleen AI assistant panel */
.joshleen-ai-panel{position:sticky;top:90px;background:#fff;border:1px solid var(--ai-line);border-radius:24px;padding:22px;box-shadow:var(--ai-shadow);min-height:760px;display:grid;align-content:start;gap:16px}.ai-assistant-head{display:flex;align-items:center;gap:12px;position:relative}.ai-assistant-head h2{margin:0;color:#111827}.ai-assistant-head p{margin:2px 0 0;color:#667085;font-weight:800}.mini-robot-icon{width:48px;height:48px;border-radius:50%;background:#eef5ff;display:grid;place-items:center}.mini-robot-icon span{width:30px;height:26px;border-radius:9px;background:#0b1220;position:relative}.mini-robot-icon span:before,.mini-robot-icon span:after{content:"";position:absolute;top:8px;width:5px;height:5px;background:#9ef5ff;border-radius:50%}.mini-robot-icon span:before{left:8px}.mini-robot-icon span:after{right:8px}.ai-panel-close{margin-left:auto;border:0;background:transparent;font-size:1.4rem;color:#334155}.ai-online-badge{justify-self:end;margin-top:-28px;border-radius:999px;background:#eafaf1;color:#10b981;padding:6px 10px;font-size:.8rem;font-weight:900}.ai-online-badge i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#10b981;margin-right:6px}.robot-stage{height:230px;display:grid;place-items:center;overflow:hidden}.friendly-robot{position:relative;width:170px;height:210px}.robot-antenna{position:absolute;left:50%;top:0;width:14px;height:54px;border-radius:999px;background:#1f2937;transform:translateX(-50%)}.robot-antenna:before{content:"";position:absolute;left:50%;top:-12px;width:34px;height:34px;border-radius:50%;background:#171717;transform:translateX(-50%);box-shadow:0 8px 18px rgba(0,0,0,.25)}.robot-head{position:absolute;left:50%;top:38px;width:150px;height:118px;transform:translateX(-50%);border-radius:58px 58px 44px 44px;background:#efe7d5;box-shadow:inset 0 -12px 20px rgba(0,0,0,.08)}.robot-head:before,.robot-head:after{content:"";position:absolute;top:45px;width:24px;height:50px;border-radius:999px;background:#161616}.robot-head:before{left:-11px}.robot-head:after{right:-11px}.eye{position:absolute;top:46px;width:24px;height:24px;border-radius:50%;background:#b7f7ff;box-shadow:0 0 18px rgba(103,232,249,.8)}.eye.left{left:45px}.eye.right{right:45px}.smile{position:absolute;left:50%;top:80px;width:54px;height:20px;transform:translateX(-50%);border-bottom:4px solid #b7f7ff;border-radius:0 0 999px 999px}.robot-body{position:absolute;left:50%;top:145px;width:118px;height:70px;transform:translateX(-50%);border-radius:28px;background:#efe7d5}.robot-hand{position:absolute;left:-38px;top:-62px;width:34px;height:70px;border-radius:18px;background:#1f2937;transform:rotate(-18deg)}.robot-hand:after{content:"";position:absolute;left:-9px;top:-22px;width:42px;height:42px;border-radius:50%;background:#1f2937}.ai-chat-bubble{background:#f1f5f9;border-radius:20px;padding:18px;color:#111827}.ai-chat-bubble strong{display:block;margin-bottom:8px}.ai-chat-bubble span{display:block;color:#475569;font-weight:750}.ai-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ai-quick-grid a,.ai-quick-grid button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center;text-align:left;border:1px solid var(--ai-line);background:#fff;border-radius:16px;padding:14px;color:#111827}.ai-quick-grid span{grid-row:span 2;font-size:1.45rem}.ai-quick-grid strong{font-size:.92rem}.ai-quick-grid small{color:#667085;font-weight:750}.ai-suggestions{display:grid;gap:10px}.ai-suggestions>strong{color:#111827}.ai-suggestions button{display:flex;align-items:center;justify-content:space-between;border:0;background:#f1f5f9;border-radius:999px;padding:12px 14px;color:#475569;font-weight:800;text-align:left}.ai-suggestions button span{color:#2563eb}.ai-input-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;align-items:center;border:1px solid var(--ai-line);border-radius:999px;padding:8px;background:#fff}.ai-input-row button{width:40px;height:40px;border:0;border-radius:50%;background:#f1f5f9}.ai-input-row input{border:0;background:#f1f5f9;border-radius:999px;height:40px;padding:0 14px}.ai-input-row .ai-send{background:#0f172a;color:#fff}.ai-powered{text-align:center;color:#94a3b8;font-size:.82rem;font-weight:800;margin:0}

/* Dark theme keeps the same structure with dark panels */
[data-theme="dark"] .ai-welcome-card,[data-theme="dark"] .ai-panel,[data-theme="dark"] .joshleen-ai-panel,[data-theme="dark"] .ai-stat-card{background:rgba(15,23,42,.9);border-color:rgba(255,255,255,.11);box-shadow:0 18px 55px rgba(0,0,0,.24)}
[data-theme="dark"] .ai-welcome-card{background:linear-gradient(135deg,rgba(13,23,43,.92),rgba(15,23,42,.82))}[data-theme="dark"] .ai-welcome-copy h2,[data-theme="dark"] .ai-date-card,[data-theme="dark"] .ai-stat-card strong,[data-theme="dark"] .ai-stat-card small,[data-theme="dark"] .ai-panel-head strong,[data-theme="dark"] .ai-schedule-item strong,[data-theme="dark"] .ai-priority-item strong,[data-theme="dark"] .ai-meal-item strong,[data-theme="dark"] .ai-activity-item strong,[data-theme="dark"] .ai-assistant-head h2,[data-theme="dark"] .ai-chat-bubble,[data-theme="dark"] .ai-quick-grid a,[data-theme="dark"] .ai-quick-grid button,[data-theme="dark"] .ai-suggestions>strong{color:#f8fafc}[data-theme="dark"] .ai-welcome-copy p,[data-theme="dark"] .ai-date-card span,[data-theme="dark"] .ai-date-card em,[data-theme="dark"] .ai-stat-card em,[data-theme="dark"] .ai-schedule-item small,[data-theme="dark"] .ai-priority-item small,[data-theme="dark"] .ai-meal-item small,[data-theme="dark"] .ai-activity-item small,[data-theme="dark"] .ai-assistant-head p,[data-theme="dark"] .ai-chat-bubble span,[data-theme="dark"] .ai-quick-grid small{color:#a7b4c7}[data-theme="dark"] .ai-empty,[data-theme="dark"] .ai-chat-bubble,[data-theme="dark"] .ai-suggestions button,[data-theme="dark"] .ai-input-row,[data-theme="dark"] .ai-input-row input,[data-theme="dark"] .ai-input-row button{background:rgba(255,255,255,.06);color:#e2e8f0}[data-theme="dark"] .ai-quick-grid a,[data-theme="dark"] .ai-quick-grid button{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}[data-theme="dark"] .ai-schedule-item,[data-theme="dark"] .ai-priority-item,[data-theme="dark"] .ai-meal-item,[data-theme="dark"] .ai-activity-item{border-color:rgba(255,255,255,.08)}

@media (max-width:1320px){.topbar{grid-template-columns:1fr auto}.global-search{grid-column:1 / -1;order:3}.ai-dashboard{grid-template-columns:1fr}.joshleen-ai-panel{position:relative;top:auto;min-height:auto}.ai-content-grid{grid-template-columns:1fr 1fr}}
@media (max-width:1000px){.app-frame{grid-template-columns:1fr}.sidebar{position:fixed;z-index:80;transform:translateX(-105%);transition:.22s ease;width:min(290px,86vw)}body.sidebar-open .sidebar{transform:translateX(0)}.main{padding:14px 14px 92px}.ai-welcome-card{grid-template-columns:1fr}.ai-welcome-visual{height:130px}.ai-date-card{text-align:left}.ai-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-content-grid{grid-template-columns:1fr}.topbar{border-radius:22px}}
@media (max-width:640px){.topbar{display:flex;align-items:flex-start;flex-wrap:wrap}.global-search{width:100%;order:20}.top-actions{width:100%;justify-content:flex-start}.top-actions .score-card{display:none}.ai-dashboard{gap:14px}.ai-welcome-card,.ai-panel,.joshleen-ai-panel{border-radius:20px}.ai-stat-grid{grid-template-columns:1fr}.ai-schedule-item{grid-template-columns:72px 10px minmax(0,1fr)}.ai-quick-grid{grid-template-columns:1fr}.robot-stage{height:190px;transform:scale(.86);transform-origin:center}.ai-content-grid{gap:12px}.sidebar-user-card{display:none}}

/* v7.6 Floating Joshleen AI Bot: lower-right overlay chatbox */
.ai-dashboard{grid-template-columns:minmax(0,1fr);max-width:1500px}
.ai-main-column{width:100%}
.top-actions .joshleen-ai-top-btn{display:none!important}
.joshleen-ai-float-wrap{position:fixed;right:22px;bottom:22px;z-index:300;display:grid;justify-items:end;gap:12px;pointer-events:none}.joshleen-ai-float-wrap>*{pointer-events:auto}
.joshleen-ai-launcher{display:flex;align-items:center;gap:10px;min-height:62px;border:1px solid rgba(34,211,238,.55);border-radius:999px;background:linear-gradient(135deg,#ffffff,#eef8ff);color:#0f172a;padding:9px 16px 9px 10px;font-weight:1000;box-shadow:0 18px 55px rgba(15,23,42,.22),0 0 24px rgba(34,211,238,.25);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.joshleen-ai-launcher:hover{transform:translateY(-2px);border-color:rgba(34,211,238,.95);box-shadow:0 22px 70px rgba(15,23,42,.28),0 0 34px rgba(34,211,238,.42)}.launcher-robot{position:relative;width:46px;height:46px;border-radius:50%;background:#efe7d5;display:grid;place-items:center;box-shadow:inset 0 -6px 12px rgba(15,23,42,.12)}.launcher-robot:before{content:"";position:absolute;top:-7px;left:50%;width:9px;height:15px;border-radius:999px;background:#171717;transform:translateX(-50%)}.launcher-robot i{position:absolute;top:15px;left:9px;right:9px;height:21px;border-radius:12px;background:#0b1722}.launcher-robot i:before,.launcher-robot i:after{content:"";position:absolute;top:7px;width:6px;height:6px;border-radius:50%;background:#9ef5ff;box-shadow:0 0 10px rgba(103,232,249,.9)}.launcher-robot i:before{left:7px}.launcher-robot i:after{right:7px}.launcher-robot b{position:absolute;left:50%;top:27px;width:18px;height:7px;border-bottom:2px solid #9ef5ff;border-radius:0 0 999px 999px;transform:translateX(-50%)}
.joshleen-ai-chatbox{width:min(420px,calc(100vw - 28px));max-height:min(720px,calc(100vh - 108px));display:grid;grid-template-rows:auto minmax(180px,1fr) auto auto auto;overflow:hidden;border:1px solid rgba(34,211,238,.35);border-radius:26px;background:#fff;color:#111827;box-shadow:0 26px 90px rgba(15,23,42,.32),0 0 40px rgba(34,211,238,.18);transform-origin:bottom right}.joshleen-ai-chatbox[hidden]{display:none!important}.joshleen-ai-chatbox.is-open{animation:aiPopIn .18s ease-out}.joshleen-ai-chatbox.is-minimized{grid-template-rows:auto}.joshleen-ai-chatbox.is-minimized .joshleen-chat-body,.joshleen-ai-chatbox.is-minimized .joshleen-chat-suggestions,.joshleen-ai-chatbox.is-minimized .joshleen-chat-input,.joshleen-ai-chatbox.is-minimized .joshleen-chat-powered{display:none}@keyframes aiPopIn{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.joshleen-chat-head{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(135deg,#f8fbff,#eef7ff)}.joshleen-chat-head h2{margin:0;font-size:1.05rem;color:#111827}.joshleen-chat-head p{margin:2px 0 0;color:#64748b;font-size:.8rem;font-weight:850}.chat-robot-avatar{position:relative;width:48px;height:48px;border-radius:50%;background:#efe7d5;display:grid;place-items:center;box-shadow:inset 0 -6px 12px rgba(15,23,42,.1)}.chat-robot-avatar:before{content:"";position:absolute;top:-8px;width:9px;height:17px;border-radius:999px;background:#171717}.chat-robot-avatar span{width:31px;height:24px;border-radius:11px;background:#0b1722;position:relative}.chat-robot-avatar span:before,.chat-robot-avatar span:after{content:"";position:absolute;top:8px;width:6px;height:6px;border-radius:50%;background:#9ef5ff;box-shadow:0 0 12px rgba(103,232,249,.85)}.chat-robot-avatar span:before{left:8px}.chat-robot-avatar span:after{right:8px}.chat-minimize-btn,.chat-close-btn{margin-left:auto;width:34px;height:34px;border:1px solid rgba(15,23,42,.1);border-radius:50%;background:#fff;color:#334155;font-weight:1000;cursor:pointer}.chat-close-btn{margin-left:4px}.chat-minimize-btn:hover,.chat-close-btn:hover{border-color:rgba(34,211,238,.65);color:#0891b2}
.joshleen-chat-body{display:grid;align-content:start;gap:12px;overflow-y:auto;padding:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.ai-msg{display:flex;align-items:flex-start;gap:9px;max-width:92%}.ai-msg.user{margin-left:auto;justify-content:flex-end}.ai-msg span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:0 0 28px;background:#eef6ff}.ai-msg.user span{display:none}.ai-msg p{margin:0;padding:12px 14px;border-radius:17px;font-size:.92rem;font-weight:750;line-height:1.45;background:#eef3f8;color:#243244}.ai-msg.user p{background:#0f172a;color:#fff;border-bottom-right-radius:6px}.ai-msg.bot p{border-bottom-left-radius:6px}.ai-msg.typing p{color:#64748b;font-style:italic}
.joshleen-chat-suggestions{display:flex;gap:8px;overflow-x:auto;padding:10px 14px;border-top:1px solid rgba(15,23,42,.07);background:#fff}.joshleen-chat-suggestions button{white-space:nowrap;border:1px solid #dce7f2;border-radius:999px;background:#f8fafc;color:#334155;padding:8px 10px;font-size:.78rem;font-weight:900;cursor:pointer}.joshleen-chat-suggestions button:hover{border-color:#22d3ee;color:#0891b2}.joshleen-chat-input{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;padding:12px 14px;border-top:1px solid rgba(15,23,42,.08);background:#fff}.joshleen-chat-input input{min-width:0;height:42px;border:1px solid #dce7f2;border-radius:999px;background:#f8fafc;color:#111827;padding:0 14px;font-weight:750;outline:0}.joshleen-chat-input input:focus{border-color:#22d3ee;box-shadow:0 0 0 3px rgba(34,211,238,.16)}.joshleen-chat-input button{width:42px;height:42px;border:0;border-radius:50%;background:#eef3f8;color:#334155;font-weight:1000;cursor:pointer}.joshleen-chat-input .ai-send-btn{background:#0f172a;color:#fff}.joshleen-chat-input button:hover{filter:brightness(.96)}.joshleen-chat-powered{text-align:center;margin:0;padding:0 12px 12px;color:#94a3b8;font-size:.76rem;font-weight:850;background:#fff}
[data-theme="dark"] .joshleen-ai-launcher{background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(2,6,23,.96));color:#f8fafc;border-color:rgba(34,211,238,.55);box-shadow:0 18px 55px rgba(0,0,0,.4),0 0 26px rgba(34,211,238,.22)}[data-theme="dark"] .joshleen-ai-chatbox{background:#08111f;color:#f8fafc;border-color:rgba(34,211,238,.34);box-shadow:0 26px 90px rgba(0,0,0,.5),0 0 40px rgba(34,211,238,.12)}[data-theme="dark"] .joshleen-chat-head,[data-theme="dark"] .joshleen-chat-body,[data-theme="dark"] .joshleen-chat-suggestions,[data-theme="dark"] .joshleen-chat-input,[data-theme="dark"] .joshleen-chat-powered{background:#08111f;border-color:rgba(255,255,255,.08)}[data-theme="dark"] .joshleen-chat-head h2{color:#fff}[data-theme="dark"] .joshleen-chat-head p,[data-theme="dark"] .joshleen-chat-powered{color:#94a3b8}[data-theme="dark"] .chat-minimize-btn,[data-theme="dark"] .chat-close-btn,[data-theme="dark"] .joshleen-chat-input button,[data-theme="dark"] .joshleen-chat-suggestions button{background:rgba(255,255,255,.06);color:#e2e8f0;border-color:rgba(255,255,255,.1)}[data-theme="dark"] .joshleen-chat-input input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:#fff}[data-theme="dark"] .ai-msg span,[data-theme="dark"] .ai-msg p{background:rgba(255,255,255,.07);color:#e5edf7}[data-theme="dark"] .ai-msg.user p{background:linear-gradient(135deg,#06b6d4,#10b981);color:#03101c}[data-theme="dark"] .joshleen-chat-suggestions button:hover{border-color:#22d3ee;color:#a5f3fc}
@media (max-width:1320px){.ai-dashboard{grid-template-columns:minmax(0,1fr)!important}.joshleen-ai-chatbox{position:relative;top:auto;min-height:0}}
@media (max-width:640px){.joshleen-ai-float-wrap{right:12px;bottom:84px}.joshleen-ai-launcher strong{display:none}.joshleen-ai-launcher{min-height:58px;padding:7px}.joshleen-ai-chatbox{width:calc(100vw - 24px);max-height:calc(100vh - 118px);border-radius:22px}.joshleen-chat-suggestions{padding:8px 12px}.joshleen-chat-input{grid-template-columns:minmax(0,1fr) auto}.joshleen-chat-input button:first-child,.joshleen-chat-input button:nth-of-type(2){display:none}}

/* v7.7 Joshleen AI workflow confirmations */
.ai-msg .ai-bubble-content{display:grid;gap:10px;min-width:0;max-width:100%}
.ai-msg .ai-bubble-content>p{margin:0}
.ai-action-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.ai-action-btn{border:1px solid rgba(34,211,238,.35);border-radius:999px;background:linear-gradient(135deg,#67e8f9,#34d399);color:#06111f;font-weight:950;padding:8px 12px;box-shadow:0 8px 20px rgba(34,211,238,.16)}
.ai-action-btn.muted{background:rgba(148,163,184,.12);color:#334155;border-color:rgba(148,163,184,.35);box-shadow:none}
.ai-action-btn.danger{background:rgba(244,63,94,.1);color:#be123c;border-color:rgba(244,63,94,.35);box-shadow:none}
[data-theme="dark"] .ai-action-btn.muted{color:#e2e8f0;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}
[data-theme="dark"] .ai-action-btn.danger{color:#fecdd3;background:rgba(244,63,94,.12);border-color:rgba(244,63,94,.35)}

/* v8.0 Cross-device + iOS PWA optimization layer */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;height:100%;scroll-behavior:smooth;overscroll-behavior-y:none}body{min-height:var(--app-height,100vh);min-height:100dvh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;padding-top:0;padding-bottom:0}body.pwa-standalone,html.pwa-standalone body{background-color:var(--bg)}button,a,input,select,textarea{-webkit-tap-highlight-color:rgba(73,217,255,.18)}button,.btn,.icon-btn,.chip-btn,.profile-top-btn,.theme-toggle-btn,.view-toggle-btn,.sidebar-toggle-ref{touch-action:manipulation;-webkit-user-select:none;user-select:none}input,select,textarea{font-size:max(16px,1rem);line-height:1.35}textarea{resize:vertical}.main{padding-bottom:calc(40px + env(safe-area-inset-bottom))}.sidebar{padding-top:calc(24px + env(safe-area-inset-top));padding-bottom:calc(24px + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}.topbar{position:relative}.bottom-nav{padding-bottom:env(safe-area-inset-bottom)}dialog.modal{max-width:calc(100vw - 16px);max-height:calc(var(--app-height,100vh) - 20px);max-height:calc(100dvh - 20px)}.modal-card,.add-new-modal{-webkit-overflow-scrolling:touch}.joshleen-ai-float-wrap{right:calc(22px + env(safe-area-inset-right));bottom:calc(22px + env(safe-area-inset-bottom))}.joshleen-chat-body{-webkit-overflow-scrolling:touch}.ios-device .install-btn:not([hidden]){display:inline-flex}.ios-device input[type="date"],.ios-device input[type="time"],.ios-device input[type="datetime-local"],.ios-device select{min-height:46px}.ios-device .auth-card,.ios-device .panel,.ios-device .dashboard-panel-ref,.ios-device .hero-card{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.ios-device .month-cell,.ios-device .calendar-month-cell,.ios-device .meal-weekly-table,.ios-device .calendar-week-board,.ios-device .calendar-month-board{transform:translateZ(0)}@supports (padding:max(0px)){.main{padding-left:max(28px,env(safe-area-inset-left));padding-right:max(28px,env(safe-area-inset-right));}.auth-body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);}.joshleen-ai-chatbox{max-height:calc(var(--app-height,100vh) - 108px - env(safe-area-inset-bottom));}}
@media (display-mode:standalone){body{min-height:100dvh}.topbar{padding-top:env(safe-area-inset-top)}.auth-shell{min-height:100dvh}.install-btn{display:none!important}}
@media (hover:none) and (pointer:coarse){.btn,.chip-btn,.icon-btn,.profile-top-btn,.theme-toggle-btn,.view-toggle-btn,.sidebar-toggle-ref,.profile-menu-item{min-height:44px}.nav a{min-height:48px}.item-actions{gap:10px}.segmented a{min-height:42px;display:inline-flex;align-items:center}.calendar-tabs a{min-height:44px}.meal-picker-trigger{min-height:48px}}
@media (max-width:1000px){.main{padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important;padding-bottom:calc(92px + env(safe-area-inset-bottom))!important}.topbar{position:sticky;top:0;z-index:70;margin:-14px -14px 14px!important;padding:calc(12px + env(safe-area-inset-top)) 14px 12px!important;background:linear-gradient(180deg,color-mix(in srgb,var(--bg),transparent 2%),color-mix(in srgb,var(--bg),transparent 12%));backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.sidebar{height:var(--app-height,100vh);height:100dvh;padding-top:calc(18px + env(safe-area-inset-top));padding-bottom:calc(18px + env(safe-area-inset-bottom))}.sidebar-open::before{content:"";position:fixed;inset:0;z-index:79;background:rgba(2,6,23,.48);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}}
@media (max-width:780px){.top-actions{gap:8px}.top-actions .btn,.top-actions .theme-toggle-btn,.top-actions .view-toggle-btn,.top-actions .profile-top-btn{padding-inline:10px}.profile-dropdown-panel.compact-profile-menu{max-width:calc(100vw - 24px)}.week-strip,.month-grid,.menu-library-grid,.meal-week-grid,.calendar-month-board,.calendar-week-board{scrollbar-width:thin}.hero-card,.panel,.metric-card,.dashboard-panel-ref,.today-weather-card-ref,.summary-chip-ref{border-radius:22px}.joshleen-ai-float-wrap{right:calc(12px + env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom))}.joshleen-ai-chatbox{width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(var(--app-height,100vh) - 118px - env(safe-area-inset-bottom))}}
@media (max-width:520px){.topbar h1,.top-title-ref h1{font-size:1.05rem!important;line-height:1.15}.sidebar-toggle-ref{width:42px;min-width:42px}.top-actions .install-btn{order:30;width:100%;justify-content:center}.panel-head{align-items:flex-start;flex-direction:column}.item-card{border-radius:18px}.item-actions{flex-wrap:wrap;justify-content:flex-end}.auth-shell{grid-template-columns:1fr}.auth-hero{min-height:220px}.auth-card{border-radius:24px}.modal-card{border-radius:24px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* v9.0 Joshleen AI task automation, proof upload, and device unlock grants */
.homework-proof-toggle{display:flex!important;align-items:flex-start;gap:10px;border:1px dashed rgba(34,211,238,.38)!important;background:rgba(34,211,238,.07)!important;padding:12px 14px!important;border-radius:16px!important;font-weight:900}.homework-proof-toggle input{width:18px;height:18px;margin-top:2px}.homework-proof-toggle small{display:block;margin-top:4px;color:var(--muted);font-weight:750;line-height:1.35}.todo-tags .proof-tag{color:#fbbf24!important;background:rgba(251,191,36,.12)!important;border-color:rgba(251,191,36,.28)!important}.proof-status-card{display:grid;gap:5px;margin-top:10px;padding:10px 12px;border-radius:16px;border:1px solid rgba(251,191,36,.22);background:rgba(251,191,36,.08);font-size:.85rem}.proof-status-card strong{text-transform:capitalize;color:#fde68a}.proof-status-card span{color:var(--muted);font-weight:750;line-height:1.35}.proof-status-card a{color:#67e8f9;font-weight:1000}.proof-status-card.status-verified_correct,.proof-status-card.status-parent_approved{border-color:rgba(68,215,168,.28);background:rgba(68,215,168,.1)}.proof-status-card.status-verified_correct strong,.proof-status-card.status-parent_approved strong{color:#86efac}.proof-status-card.status-incorrect{border-color:rgba(248,113,113,.32);background:rgba(248,113,113,.1)}.proof-status-card.status-incorrect strong{color:#fecaca}.proof-upload-form{display:grid;gap:8px;min-width:220px}.proof-upload-form label{display:grid;gap:6px;font-size:.75rem;font-weight:1000;color:var(--muted)}.proof-upload-form input[type=file]{width:100%;max-width:260px;padding:8px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.06);font-size:.78rem;color:var(--text)}.todo-actions{gap:8px;flex-wrap:wrap}.device-unlock-card{display:grid;gap:12px}.unlock-list{display:grid;gap:10px}.unlock-row{display:grid;gap:4px;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:10px 12px;background:rgba(255,255,255,.05)}.unlock-row strong{color:var(--text)}.unlock-row span,.unlock-row small{color:var(--muted);font-weight:750;font-size:.82rem}.joshleen-chat-input{position:relative}.joshleen-chat-input .ai-attachment-preview{grid-column:1/-1;border:1px solid rgba(34,211,238,.24);background:rgba(34,211,238,.08);color:#0891b2;border-radius:12px;padding:8px 10px;font-size:.76rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.joshleen-chat-input button.is-listening{background:#ef4444!important;color:#fff!important;box-shadow:0 0 0 4px rgba(239,68,68,.18)}[data-theme="dark"] .joshleen-chat-input .ai-attachment-preview{color:#a5f3fc;background:rgba(34,211,238,.1);border-color:rgba(34,211,238,.25)}[data-theme="light"] .proof-status-card{background:#fffbeb;border-color:#fde68a}[data-theme="light"] .proof-status-card strong{color:#92400e}[data-theme="light"] .proof-status-card span{color:#667085}[data-theme="light"] .proof-status-card a{color:#0369a1}[data-theme="light"] .unlock-row{background:#f8fafc;border-color:#e2e8f0}[data-theme="light"] .proof-upload-form input[type=file]{background:#f8fafc;border-color:#dce4ee;color:#111827}[data-theme="light"] .device-unlock-card{background:#fff!important}
@media (max-width:640px){.joshleen-chat-input{grid-template-columns:auto minmax(0,1fr) auto auto!important}.joshleen-chat-input button[data-ai-attach],.joshleen-chat-input button[data-ai-voice]{display:grid!important}.proof-upload-form,.proof-upload-form input[type=file]{width:100%;max-width:none}.unlock-row{padding:10px}}

/* v9.1 Parent-only homework review */
.proof-status-card.status-pending_parent_review{border-color:rgba(59,130,246,.32);background:rgba(59,130,246,.10)}
.proof-status-card.status-pending_parent_review strong{color:#bfdbfe}
.proof-status-card.status-needs_correction{border-color:rgba(248,113,113,.36);background:rgba(248,113,113,.11)}
.proof-status-card.status-needs_correction strong{color:#fecaca}
.proof-correction-form{display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:8px;align-items:center;min-width:260px}
.proof-correction-form input{min-height:42px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.06);color:var(--text);padding:8px 12px;font-weight:850}
@media (max-width:640px){.proof-correction-form{grid-template-columns:1fr;width:100%}.proof-correction-form input,.proof-correction-form button{width:100%}}

/* v9.2 Mobile-first homework parent review fixes
   Ensures proof upload, Parent approve, and Needs correction controls wrap cleanly
   on Android/iOS phones, tablets, and narrow browser widths. */
.todo-item-card,
.todo-item-card > *,
.todo-actions,
.todo-actions > form,
.proof-upload-form,
.proof-correction-form{
  min-width:0;
  max-width:100%;
}
.todo-item-card.requires-proof{
  align-items:start;
}
.todo-item-card.requires-proof .todo-actions.proof-actions{
  grid-column:1 / -1;
  width:100%;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(260px,1.15fr) minmax(150px,max-content) minmax(260px,1fr);
  gap:10px;
  align-items:end;
  justify-content:stretch;
}
.todo-actions.proof-actions .proof-upload-form,
.todo-actions.proof-actions .proof-approve-form,
.todo-actions.proof-actions .proof-correction-form{
  width:100%;
  min-width:0;
  max-width:100%;
}
.todo-actions.proof-actions .proof-approve-form .btn,
.todo-actions.proof-actions .proof-correction-form .btn,
.todo-actions.proof-actions .proof-upload-form .btn{
  width:100%;
  min-width:0;
  white-space:normal;
  text-align:center;
}
.proof-upload-form input[type=file],
.proof-correction-form input{
  min-width:0;
  max-width:100%;
}
.proof-correction-form input{
  width:100%;
}

@media (max-width:1280px){
  .todo-item-card.requires-proof{
    grid-template-columns:auto minmax(0,1fr);
  }
  .todo-item-card.requires-proof .todo-reward-block,
  .todo-item-card.requires-proof .todo-actions{
    grid-column:1 / -1;
  }
  .todo-item-card.requires-proof .todo-reward-block{
    justify-content:flex-start;
    width:100%;
  }
  .todo-item-card.requires-proof .todo-actions.proof-actions{
    grid-template-columns:1fr 1fr;
  }
  .todo-actions.proof-actions .proof-upload-form,
  .todo-actions.proof-actions .proof-correction-form{
    grid-column:1 / -1;
  }
}

@media (max-width:820px), (hover:none) and (pointer:coarse){
  .todo-item-card.requires-proof,
  html[data-view="desktop"] .todo-item-card.requires-proof{
    grid-template-columns:1fr!important;
    gap:12px;
  }
  .todo-item-card.requires-proof .todo-type-icon,
  .todo-item-card.requires-proof .todo-item-copy,
  .todo-item-card.requires-proof .todo-reward-block,
  .todo-item-card.requires-proof .todo-actions{
    grid-column:1 / -1!important;
    width:100%;
  }
  .todo-item-card.requires-proof .todo-type-icon{
    width:52px;
    height:52px;
  }
  .todo-item-card.requires-proof .todo-reward-block{
    flex-direction:row;
  }
  .todo-item-card.requires-proof .todo-reward-block > div{
    flex:1;
  }
  .todo-item-card.requires-proof .todo-actions.proof-actions,
  html[data-view="desktop"] .todo-item-card.requires-proof .todo-actions.proof-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch;
    justify-content:stretch;
  }
  .todo-actions.proof-actions .proof-upload-form,
  .todo-actions.proof-actions .proof-approve-form,
  .todo-actions.proof-actions .proof-correction-form{
    grid-column:1 / -1!important;
  }
  .proof-upload-form label{
    width:100%;
  }
  .proof-upload-form input[type=file]{
    width:100%;
    max-width:none;
  }
}

@media (max-width:1000px){
  html[data-view="desktop"] .app-frame{
    grid-template-columns:1fr!important;
    max-width:100%!important;
  }
  html[data-view="desktop"] .main{
    width:100%;
    min-width:0;
    padding-left:max(14px,env(safe-area-inset-left))!important;
    padding-right:max(14px,env(safe-area-inset-right))!important;
    padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;
  }
  html[data-view="desktop"] .sidebar{
    position:fixed!important;
    z-index:80;
    transform:translateX(-105%);
    transition:.22s ease;
    width:min(290px,86vw);
  }
  html[data-view="desktop"] body.sidebar-open .sidebar{
    transform:translateX(0);
  }
  html[data-view="desktop"] .bottom-nav{
    display:grid!important;
  }
}

/* v9.3 Authentication UX fixes: field visibility, remember login, registration type gate, recovery options */
.auth-input-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  width:100%;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--readable-input, rgba(255,255,255,.06));
  overflow:hidden;
}
.auth-input-shell input{
  min-width:0;
  width:100%;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  padding:12px 12px!important;
}
.auth-input-shell input.is-masked{
  -webkit-text-security:disc;
  text-security:disc;
}
.field-visibility-btn{
  min-height:38px;
  margin-right:5px;
  border:1px solid color-mix(in srgb,var(--accent),transparent 55%);
  border-radius:999px;
  padding:7px 11px;
  background:color-mix(in srgb,var(--accent),transparent 88%);
  color:var(--text);
  font-size:.78rem;
  font-weight:1000;
  white-space:nowrap;
}
.remember-credentials{
  display:flex!important;
  align-items:flex-start;
  gap:10px;
  padding:12px 14px;
  border:1px solid color-mix(in srgb,var(--accent),transparent 70%);
  border-radius:18px;
  background:color-mix(in srgb,var(--accent),transparent 91%);
}
.remember-credentials input{width:18px;height:18px;margin-top:3px;accent-color:var(--accent)}
.remember-credentials span{display:grid;gap:3px;line-height:1.3}.remember-credentials b{color:var(--text)}.remember-credentials small{color:var(--muted);font-weight:800}
.register-role-choice,.register-fields,.recovery-options-card{display:grid;gap:12px}
.register-role-choice h2,.register-fields-head h2{margin:.1rem 0;color:var(--text)}
.register-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.register-role-card{
  display:grid;
  gap:6px;
  text-align:left;
  min-height:118px;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--accent),transparent 66%);
  border-radius:20px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent),transparent 88%),color-mix(in srgb,var(--accent2),transparent 91%));
  color:var(--text);
  box-shadow:0 10px 28px rgba(0,0,0,.12);
}
.register-role-card strong{font-size:1rem;color:var(--text)}
.register-role-card span{color:var(--muted);font-weight:800;line-height:1.35}
.register-role-card:hover,.register-role-card:focus-visible{border-color:var(--accent);transform:translateY(-1px)}
.register-fields-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.btn.compact{min-height:36px;padding:7px 11px;font-size:.82rem}
.recovery-options-card{
  margin-top:4px;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--success),transparent 58%);
  border-radius:20px;
  background:color-mix(in srgb,var(--success),transparent 90%);
}
.recovery-options-card strong{color:var(--success);font-size:1rem}.recovery-options-card span{color:var(--muted);font-weight:850}
[data-theme="light"] .field-visibility-btn{color:#0d1726;background:#e0f7ff}
[data-theme="light"] .remember-credentials,[data-theme="light"] .register-role-card,[data-theme="light"] .recovery-options-card{background:#f8fcff}
@media (max-width:640px){
  .register-role-grid{grid-template-columns:1fr}
  .register-role-card{min-height:96px}
  .register-fields-head{align-items:stretch;flex-direction:column}
  .register-fields-head .btn{width:100%}
  .auth-input-shell{grid-template-columns:minmax(0,1fr) minmax(64px,auto)}
  .field-visibility-btn{min-width:58px;padding-inline:9px}
}


/* v9.4 account-type prompt and icon-only visibility controls */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.field-visibility-btn{
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  display:inline-grid!important;
  place-items:center!important;
  padding:0!important;
  margin-right:6px!important;
  border-radius:50%!important;
  font-size:0!important;
  line-height:1!important;
}
.visibility-icon{
  position:relative;
  width:22px;
  height:14px;
  display:block;
  border:2px solid currentColor;
  border-radius:70% 70% 65% 65% / 95% 95% 75% 75%;
  transform:rotate(0deg);
}
.visibility-icon::before{
  content:'';
  position:absolute;
  width:7px;
  height:7px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:currentColor;
}
.field-visibility-btn.is-visible .visibility-icon::after{
  content:'';
  position:absolute;
  left:-4px;
  top:5px;
  width:30px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transform:rotate(-38deg);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--panel),transparent 18%);
}
.register-role-modal[hidden]{display:none!important}
.register-role-modal{
  position:fixed;
  inset:0;
  z-index:5000;
  display:grid!important;
  place-items:center;
  padding:clamp(14px,4vw,28px);
}
.register-role-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,8,18,.74);
  backdrop-filter:blur(12px);
}
.register-role-dialog{
  position:relative;
  z-index:1;
  width:min(620px,100%);
  display:grid;
  gap:12px;
  padding:clamp(18px,4vw,28px);
  border:1px solid color-mix(in srgb,var(--accent),transparent 46%);
  border-radius:28px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--panel-strong),transparent 0%),color-mix(in srgb,var(--panel),transparent 6%));
  box-shadow:0 28px 90px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.08);
}
.register-role-dialog .register-role-grid{grid-template-columns:1fr 1fr}
.register-role-dialog .register-role-card{
  min-height:136px;
  padding:18px;
}
.register-role-dialog .register-role-card strong{font-size:1.05rem}
.auth-choice-open{overflow:hidden}
[data-theme="light"] .field-visibility-btn.is-visible .visibility-icon::after{box-shadow:0 0 0 2px #f8fcff}
[data-theme="light"] .register-role-backdrop{background:rgba(15,23,42,.38)}
[data-theme="light"] .register-role-dialog{background:linear-gradient(145deg,#ffffff,#eef9ff);box-shadow:0 28px 80px rgba(15,23,42,.24)}
@media (max-width:640px){
  .auth-input-shell{grid-template-columns:minmax(0,1fr) 52px!important}
  .field-visibility-btn{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;margin-right:6px!important}
  .register-role-modal{align-items:end;padding:12px}
  .register-role-dialog{width:100%;max-height:calc(100dvh - 24px);overflow:auto;border-radius:26px;padding:18px}
  .register-role-dialog .register-role-grid{grid-template-columns:1fr}
  .register-role-dialog .register-role-card{min-height:104px}
}

/* v9.5 universal mobile responsiveness guard
   Forces a usable mobile layout for Auto, Mobile, or accidentally selected Desktop view on phones/tablets. */
html[data-runtime-view="mobile"],
html[data-runtime-view="mobile"] body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
html[data-runtime-view="mobile"] .app-frame{
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  overflow-x:hidden!important;
}
html[data-runtime-view="mobile"] .sidebar.dashboard-ref-sidebar,
html[data-runtime-view="mobile"] .sidebar{
  position:fixed!important;
  top:0!important;
  left:0!important;
  z-index:90!important;
  width:min(300px,86vw)!important;
  max-width:86vw!important;
  height:var(--app-height,100dvh)!important;
  transform:translateX(-106%)!important;
  transition:transform .22s ease!important;
}
html[data-runtime-view="mobile"] body.sidebar-open .sidebar.dashboard-ref-sidebar,
html[data-runtime-view="mobile"] body.sidebar-open .sidebar{
  transform:translateX(0)!important;
}
html[data-runtime-view="mobile"] body.sidebar-open::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:89;
  background:rgba(2,6,23,.48);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
html[data-runtime-view="mobile"] .main{
  width:100%!important;
  min-width:0!important;
  max-width:100vw!important;
  padding-left:max(14px,env(safe-area-inset-left))!important;
  padding-right:max(14px,env(safe-area-inset-right))!important;
  padding-top:0!important;
  padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
  overflow-x:hidden!important;
}
html[data-runtime-view="mobile"] .topbar{
  position:sticky!important;
  top:0!important;
  z-index:70!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  width:auto!important;
  min-height:0!important;
  margin:0 -14px 14px!important;
  padding:calc(12px + env(safe-area-inset-top)) 14px 12px!important;
  border-radius:0!important;
}
html[data-runtime-view="mobile"] .top-title-ref{
  flex:1 1 150px!important;
  min-width:0!important;
}
html[data-runtime-view="mobile"] .top-title-ref h1{
  font-size:clamp(1.05rem,5vw,1.35rem)!important;
  line-height:1.12!important;
  overflow-wrap:anywhere!important;
}
html[data-runtime-view="mobile"] .top-actions{
  flex:1 0 100%!important;
  width:100%!important;
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  gap:8px!important;
}
html[data-runtime-view="mobile"] .top-actions .score-card{
  display:none!important;
}
html[data-runtime-view="mobile"] .top-actions .btn,
html[data-runtime-view="mobile"] .top-actions .theme-toggle-btn,
html[data-runtime-view="mobile"] .top-actions .view-toggle-btn,
html[data-runtime-view="mobile"] .top-actions .profile-top-btn{
  min-width:44px!important;
  max-width:100%!important;
  padding-inline:10px!important;
}
html[data-runtime-view="mobile"] .global-search{
  order:30!important;
  width:100%!important;
  flex:1 0 100%!important;
}
html[data-runtime-view="mobile"] .bottom-nav{
  display:grid!important;
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  z-index:80!important;
  padding-bottom:env(safe-area-inset-bottom)!important;
}
html[data-runtime-view="mobile"] .dashboard-grid,
html[data-runtime-view="mobile"] .dashboard-main-grid-ref,
html[data-runtime-view="mobile"] .dashboard-lower-grid-ref,
html[data-runtime-view="mobile"] .ai-dashboard,
html[data-runtime-view="mobile"] .ai-content-grid,
html[data-runtime-view="mobile"] .grid,
html[data-runtime-view="mobile"] .form-grid,
html[data-runtime-view="mobile"] .form-grid.two,
html[data-runtime-view="mobile"] .form-grid.three,
html[data-runtime-view="mobile"] .form-grid.four,
html[data-runtime-view="mobile"] .four-cards,
html[data-runtime-view="mobile"] .metric-row-ref,
html[data-runtime-view="mobile"] .calendar-day-layout,
html[data-runtime-view="mobile"] .calendar-week-layout,
html[data-runtime-view="mobile"] .calendar-agenda-layout,
html[data-runtime-view="mobile"] .calendar-side-rail,
html[data-runtime-view="mobile"] .week-side-rail,
html[data-runtime-view="mobile"] .agenda-side-rail,
html[data-runtime-view="mobile"] .todo-layout-grid,
html[data-runtime-view="mobile"] .todo-side-panel,
html[data-runtime-view="mobile"] .auth-shell,
html[data-runtime-view="mobile"] .register-role-grid{
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;
  max-width:100%!important;
}
html[data-runtime-view="mobile"] .hero-card,
html[data-runtime-view="mobile"] .todo-hero,
html[data-runtime-view="mobile"] .workspace-code-card,
html[data-runtime-view="mobile"] .panel-head{
  flex-direction:column!important;
  align-items:stretch!important;
}
html[data-runtime-view="mobile"] .hero-stats,
html[data-runtime-view="mobile"] .todo-summary-grid,
html[data-runtime-view="mobile"] .quick-actions-ref,
html[data-runtime-view="mobile"] .meal-grid,
html[data-runtime-view="mobile"] .badge-grid,
html[data-runtime-view="mobile"] .menu-library-grid{
  grid-template-columns:minmax(0,1fr)!important;
}
html[data-runtime-view="mobile"] .panel,
html[data-runtime-view="mobile"] .hero-card,
html[data-runtime-view="mobile"] .dashboard-panel-ref,
html[data-runtime-view="mobile"] .todo-item-card,
html[data-runtime-view="mobile"] .item-card,
html[data-runtime-view="mobile"] .menu-card,
html[data-runtime-view="mobile"] .metric-card{
  max-width:100%!important;
  border-radius:22px!important;
}
html[data-runtime-view="mobile"] .item-card{
  flex-direction:column!important;
  align-items:stretch!important;
}
html[data-runtime-view="mobile"] .item-main,
html[data-runtime-view="mobile"] .item-actions{
  width:100%!important;
}
html[data-runtime-view="mobile"] .item-actions{
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
}
html[data-runtime-view="mobile"] .todo-item-card,
html[data-runtime-view="mobile"] .todo-item-card.requires-proof{
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:12px!important;
}
html[data-runtime-view="mobile"] .todo-type-icon,
html[data-runtime-view="mobile"] .todo-item-copy,
html[data-runtime-view="mobile"] .todo-reward-block,
html[data-runtime-view="mobile"] .todo-actions{
  grid-column:1 / -1!important;
  width:100%!important;
}
html[data-runtime-view="mobile"] .todo-actions,
html[data-runtime-view="mobile"] .todo-actions.proof-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  justify-content:stretch!important;
  align-items:stretch!important;
}
html[data-runtime-view="mobile"] .todo-actions > form,
html[data-runtime-view="mobile"] .todo-actions .btn,
html[data-runtime-view="mobile"] .proof-upload-form,
html[data-runtime-view="mobile"] .proof-approve-form,
html[data-runtime-view="mobile"] .proof-correction-form,
html[data-runtime-view="mobile"] .proof-upload-form input[type=file],
html[data-runtime-view="mobile"] .proof-correction-form input{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
html[data-runtime-view="mobile"] .proof-upload-form label{
  width:100%!important;
}
html[data-runtime-view="mobile"] .btn,
html[data-runtime-view="mobile"] .chip-btn{
  white-space:normal!important;
}
html[data-runtime-view="mobile"] table,
html[data-runtime-view="mobile"] .weekly-meal-table,
html[data-runtime-view="mobile"] .calendar-month-grid,
html[data-runtime-view="mobile"] .month-weekdays,
html[data-runtime-view="mobile"] .week-header-grid,
html[data-runtime-view="mobile"] .week-grid-wrap{
  max-width:none!important;
}
html[data-runtime-view="mobile"] .calendar-week-board,
html[data-runtime-view="mobile"] .calendar-month-board,
html[data-runtime-view="mobile"] .weekly-meal-planner,
html[data-runtime-view="mobile"] .table-scroll,
html[data-runtime-view="mobile"] .role-table{
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu,
html[data-runtime-view="mobile"] .notification-panel{
  left:50%!important;
  right:auto!important;
  width:calc(100vw - 24px)!important;
  max-width:calc(100vw - 24px)!important;
  transform:translateX(-50%)!important;
}
html[data-runtime-view="mobile"] .joshleen-ai-float-wrap{
  right:calc(12px + env(safe-area-inset-right))!important;
  bottom:calc(84px + env(safe-area-inset-bottom))!important;
}
html[data-runtime-view="mobile"] .joshleen-ai-chatbox{
  width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right))!important;
  max-height:calc(var(--app-height,100dvh) - 118px - env(safe-area-inset-bottom))!important;
}
html[data-runtime-view="mobile"] .auth-card,
html[data-runtime-view="mobile"] .auth-hero{
  width:100%!important;
  max-width:100%!important;
}
html[data-runtime-view="mobile"] dialog.modal,
html[data-runtime-view="mobile"] .modal-card,
html[data-runtime-view="mobile"] .add-item-modal{
  width:min(100%,calc(100vw - 18px))!important;
  max-width:calc(100vw - 18px)!important;
}

@media (max-width:1180px), (hover:none) and (pointer:coarse) and (max-width:1366px){
  html:not([data-runtime-view="desktop"]) .app-frame,
  html[data-view="auto"] .app-frame,
  html[data-view="mobile"] .app-frame,
  html[data-view="desktop"] .app-frame{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    overflow-x:hidden!important;
  }
  html:not([data-runtime-view="desktop"]) .sidebar.dashboard-ref-sidebar,
  html[data-view="auto"] .sidebar.dashboard-ref-sidebar,
  html[data-view="mobile"] .sidebar.dashboard-ref-sidebar,
  html[data-view="desktop"] .sidebar.dashboard-ref-sidebar,
  html:not([data-runtime-view="desktop"]) .sidebar,
  html[data-view="auto"] .sidebar,
  html[data-view="mobile"] .sidebar,
  html[data-view="desktop"] .sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    z-index:90!important;
    width:min(300px,86vw)!important;
    max-width:86vw!important;
    height:var(--app-height,100dvh)!important;
    transform:translateX(-106%)!important;
  }
  body.sidebar-open .sidebar.dashboard-ref-sidebar,
  body.sidebar-open .sidebar{
    transform:translateX(0)!important;
  }
  .main{
    width:100%!important;
    min-width:0!important;
    max-width:100vw!important;
    padding-left:max(14px,env(safe-area-inset-left))!important;
    padding-right:max(14px,env(safe-area-inset-right))!important;
    padding-top:0!important;
    padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
  }
  .bottom-nav{display:grid!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:80!important;}
  .topbar{display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;margin:0 -14px 14px!important;padding:calc(12px + env(safe-area-inset-top)) 14px 12px!important;border-radius:0!important;}
  .top-title-ref{flex:1 1 150px!important;min-width:0!important;}
  .top-title-ref h1{font-size:clamp(1.05rem,5vw,1.35rem)!important;line-height:1.12!important;}
  .top-actions{flex:1 0 100%!important;width:100%!important;display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:8px!important;}
  .top-actions .score-card{display:none!important;}
  .dashboard-grid,.dashboard-main-grid-ref,.dashboard-lower-grid-ref,.ai-dashboard,.ai-content-grid,.grid,.form-grid,.form-grid.two,.form-grid.three,.form-grid.four,.four-cards,.metric-row-ref,.calendar-day-layout,.calendar-week-layout,.calendar-agenda-layout,.calendar-side-rail,.week-side-rail,.agenda-side-rail,.todo-layout-grid,.todo-side-panel,.auth-shell,.register-role-grid{grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;}
  .hero-stats,.todo-summary-grid,.quick-actions-ref,.meal-grid,.badge-grid,.menu-library-grid{grid-template-columns:minmax(0,1fr)!important;}
  .hero-card,.todo-hero,.workspace-code-card,.panel-head{flex-direction:column!important;align-items:stretch!important;}
  .item-card{flex-direction:column!important;align-items:stretch!important;}
  .item-main,.item-actions{width:100%!important;}.item-actions{justify-content:flex-start!important;flex-wrap:wrap!important;}
  .todo-item-card,.todo-item-card.requires-proof{grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:12px!important;}
  .todo-type-icon,.todo-item-copy,.todo-reward-block,.todo-actions{grid-column:1 / -1!important;width:100%!important;}
  .todo-actions,.todo-actions.proof-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-content:stretch!important;align-items:stretch!important;}
  .todo-actions > form,.todo-actions .btn,.proof-upload-form,.proof-approve-form,.proof-correction-form,.proof-upload-form input[type=file],.proof-correction-form input{width:100%!important;max-width:none!important;min-width:0!important;}
  .profile-dropdown-panel.compact-profile-menu,.notification-panel{left:50%!important;right:auto!important;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;transform:translateX(-50%)!important;}
}

/* v9.6 Family Hub no-code controls, resilient theme/view toggles, and cross-device visibility fixes */
.theme-toggle-form,
.view-toggle-form,
.top-profile-wrap,
.notification-wrap{
  min-width:0;
  flex:0 0 auto;
}
.theme-toggle-form,
.view-toggle-form{
  display:flex!important;
  align-items:stretch!important;
  margin:0!important;
}
.theme-toggle-btn,
.view-toggle-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-width:104px!important;
  max-width:100%!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.family-hub-options-table .role-row{
  grid-template-columns:minmax(0,1.35fr) minmax(110px,.45fr) minmax(150px,.65fr)!important;
}
.admin-workspace-table .role-row{
  grid-template-columns:minmax(0,1.35fr) minmax(110px,.4fr) minmax(240px,.75fr)!important;
}
.family-hub-setup-panel select,
.family-hub-register-panel select{
  width:100%;
  min-height:46px;
  border-radius:16px;
  border:1px solid var(--line);
  background:color-mix(in srgb,var(--panel-strong),transparent 10%);
  color:var(--text);
  padding:10px 12px;
  font-weight:900;
}
[data-theme="light"] .family-hub-setup-panel select,
[data-theme="light"] .family-hub-register-panel select{
  background:#fff;
  color:#07111f;
}
.toggle-row{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}
.toggle-row label,
.toggle-inline,
.remember-credentials,
.terms-accept{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  overflow:visible!important;
  white-space:normal!important;
}
.toggle-row input[type="checkbox"],
.toggle-inline input[type="checkbox"],
.remember-credentials input[type="checkbox"],
.terms-accept input[type="checkbox"]{
  flex:0 0 auto!important;
  width:20px!important;
  min-width:20px!important;
  height:20px!important;
  margin-top:2px!important;
  accent-color:var(--accent)!important;
}
.top-actions{
  min-width:0!important;
  overflow:visible!important;
}
.profile-dropdown-panel,
.notification-panel{
  max-height:min(76vh,620px)!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
html[data-runtime-view="mobile"] .theme-toggle-form,
html[data-runtime-view="mobile"] .view-toggle-form,
html[data-runtime-view="mobile"] .top-profile-wrap,
html[data-runtime-view="mobile"] .notification-wrap{
  flex:1 1 calc(50% - 6px)!important;
  max-width:calc(50% - 4px)!important;
  min-width:0!important;
  display:flex!important;
}
html[data-runtime-view="mobile"] .theme-toggle-btn,
html[data-runtime-view="mobile"] .view-toggle-btn,
html[data-runtime-view="mobile"] .profile-top-btn,
html[data-runtime-view="mobile"] .notification-bell{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:44px!important;
  justify-content:center!important;
}
html[data-runtime-view="mobile"] .profile-top-btn{
  padding-inline:10px!important;
}
html[data-runtime-view="mobile"] .profile-tab-label,
html[data-runtime-view="mobile"] .view-toggle-btn,
html[data-runtime-view="mobile"] .theme-toggle-btn{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html[data-runtime-view="mobile"] .family-hub-options-table .role-row,
html[data-runtime-view="mobile"] .admin-workspace-table .role-row{
  grid-template-columns:minmax(0,1fr)!important;
}
html[data-runtime-view="mobile"] .family-hub-options-table .btn,
html[data-runtime-view="mobile"] .admin-workspace-table .btn,
html[data-runtime-view="mobile"] .family-hub-setup-panel .btn{
  width:100%!important;
  justify-content:center!important;
}
html[data-runtime-view="mobile"] .toggle-row{
  grid-template-columns:minmax(0,1fr)!important;
}
html[data-runtime-view="mobile"] .settings-form,
html[data-runtime-view="mobile"] .profile-settings-panel,
html[data-runtime-view="mobile"] .security-panel,
html[data-runtime-view="mobile"] .family-hub-setup-panel{
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
@media (max-width:420px){
  html[data-runtime-view="mobile"] .theme-toggle-form,
  html[data-runtime-view="mobile"] .view-toggle-form,
  html[data-runtime-view="mobile"] .top-profile-wrap,
  html[data-runtime-view="mobile"] .notification-wrap{
    flex-basis:100%!important;
    max-width:100%!important;
  }
}
@media (max-width:1180px), (hover:none) and (pointer:coarse) and (max-width:1366px){
  .theme-toggle-form,.view-toggle-form,.top-profile-wrap,.notification-wrap{display:flex!important;min-width:0!important;}
  .theme-toggle-btn,.view-toggle-btn,.profile-top-btn{max-width:100%!important;}
  .family-hub-options-table .role-row,.admin-workspace-table .role-row{grid-template-columns:minmax(0,1fr)!important;}
}

/* v9.7 iPad/tablet profile panel full-sheet fix: prevent top Profile dropdown from being clipped by the app shell. */
@media (max-width:1180px), (hover:none) and (pointer:coarse) and (max-width:1366px){
  .top-profile-wrap{
    position:static!important;
  }
  .profile-dropdown-panel.compact-profile-menu{
    position:fixed!important;
    top:calc(env(safe-area-inset-top) + 10px)!important;
    left:max(10px,env(safe-area-inset-left))!important;
    right:max(10px,env(safe-area-inset-right))!important;
    bottom:auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    max-height:calc(var(--app-height,100dvh) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 20px)!important;
    transform:none!important;
    z-index:9999!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    border-radius:24px!important;
    padding:14px!important;
  }
  .profile-dropdown-panel.compact-profile-menu .profile-dropdown-switch{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  .profile-dropdown-panel.compact-profile-menu .profile-dropdown-menu{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .profile-dropdown-panel.compact-profile-menu .profile-menu-item{
    min-width:0!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  .profile-dropdown-panel.compact-profile-menu select,
  .profile-dropdown-panel.compact-profile-menu button,
  .profile-dropdown-panel.compact-profile-menu a{
    max-width:100%!important;
  }
}

html[data-runtime-view="mobile"] .top-profile-wrap{
  position:static!important;
}
html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu{
  position:fixed!important;
  top:calc(env(safe-area-inset-top) + 10px)!important;
  left:max(10px,env(safe-area-inset-left))!important;
  right:max(10px,env(safe-area-inset-right))!important;
  bottom:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:calc(var(--app-height,100dvh) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 20px)!important;
  transform:none!important;
  z-index:9999!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  border-radius:24px!important;
  padding:14px!important;
}
html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu .profile-dropdown-switch{
  grid-template-columns:minmax(0,1fr) auto!important;
}
html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu .profile-dropdown-menu{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

@media (max-width:560px){
  .profile-dropdown-panel.compact-profile-menu,
  html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu{
    top:calc(env(safe-area-inset-top) + 8px)!important;
    left:max(8px,env(safe-area-inset-left))!important;
    right:max(8px,env(safe-area-inset-right))!important;
    max-height:calc(var(--app-height,100dvh) - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 16px)!important;
    border-radius:20px!important;
    padding:12px!important;
  }
  .profile-dropdown-panel.compact-profile-menu .profile-dropdown-switch,
  html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu .profile-dropdown-switch,
  .profile-dropdown-panel.compact-profile-menu .profile-dropdown-menu,
  html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu .profile-dropdown-menu{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .profile-dropdown-panel.compact-profile-menu .hub-switch-btn,
  html[data-runtime-view="mobile"] .profile-dropdown-panel.compact-profile-menu .hub-switch-btn{
    width:100%!important;
  }
}
