:root{--brand-hue: 200;--brand-primary: hsl(var(--brand-hue), 80%, 40%);--brand-secondary: hsl(170, 75%, 38%);--brand-accent: hsl(25, 95%, 55%);--brand-calm: hsl(210, 60%, 98%);--bg-app: hsl(var(--brand-hue), 25%, 97%);--bg-card: hsl(0, 0%, 100%);--border-color: hsl(var(--brand-hue), 20%, 90%);--text-primary: hsl(var(--brand-hue), 40%, 15%);--text-secondary: hsl(var(--brand-hue), 15%, 45%);--text-tertiary: hsl(var(--brand-hue), 10%, 65%);--text-white: hsl(0, 0%, 100%);--color-success: hsl(140, 60%, 42%);--color-success-light: hsl(140, 60%, 96%);--color-warning: hsl(40, 95%, 48%);--color-warning-light: hsl(40, 95%, 96%);--color-danger: hsl(5, 75%, 55%);--color-danger-light: hsl(5, 75%, 97%);--color-info: hsl(200, 85%, 45%);--color-info-light: hsl(200, 85%, 96%);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-full: 9999px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .02);--shadow-md: 0 8px 16px rgba(0, 0, 0, .04);--shadow-lg: 0 16px 32px rgba(15, 30, 60, .06);--shadow-inset: inset 0 2px 4px rgba(0,0,0,.02);--font-family-body: "Inter", system-ui, -apple-system, sans-serif;--font-family-title: "Outfit", "Inter", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family-body);background:radial-gradient(circle at top left,rgba(56,189,248,.16),transparent 34rem),linear-gradient(180deg,#f0f6f9,#f8fafc);color:var(--text-primary);line-height:1.5;min-height:100vh;overflow-x:hidden}button,input,select,textarea{font:inherit}button{border:0}#root{min-height:100vh}.app-shell{min-height:100vh;width:100%;max-width:920px;margin:0 auto;display:flex;flex-direction:column;position:relative}.app-topbar{position:sticky;top:0;z-index:120;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:calc(14px + env(safe-area-inset-top)) 16px 12px;background:#f7fbfde0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(148,163,184,.2)}.app-topbar h1{font-family:var(--font-family-title);font-size:1.6rem;font-weight:800;letter-spacing:0;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary),var(--brand-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-lockup{display:flex;align-items:center;gap:10px}.brand-lockup img{width:42px;height:42px;border-radius:12px;object-fit:contain;background:#fff;box-shadow:var(--shadow-sm)}.app-topbar p{font-size:.76rem;color:var(--text-secondary);font-weight:700;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-status-chip{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 10px;border-radius:var(--radius-full);border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:.76rem;font-weight:800;box-shadow:var(--shadow-sm);cursor:pointer}.db-status-chip.live{color:var(--color-success);border-color:#22c55e3d;background:var(--color-success-light)}.db-status-chip.offline{color:var(--color-warning);border-color:#f59e0b47;background:var(--color-warning-light)}.db-status-chip.error{color:var(--color-danger);border-color:#ef44443d;background:var(--color-danger-light)}.db-guide-panel{margin:12px 16px 0;padding:14px;border-radius:var(--radius-md);background:#fff;border:1px solid var(--border-color);box-shadow:var(--shadow-md);color:var(--text-secondary);font-size:.8rem}.db-guide-panel h3{color:var(--text-primary);font-size:.95rem;margin-bottom:6px}.db-guide-panel ol{padding-left:18px}.db-guide-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.db-guide-status-grid span{display:block;font-size:.68rem;font-weight:800;color:var(--text-muted);text-transform:uppercase}.db-guide-status-grid strong{display:block;margin-top:2px;color:var(--text-primary);font-size:.8rem}.db-guide-error{margin:8px 0 0;padding:9px;border-radius:var(--radius-sm);background:var(--color-danger-light);color:var(--color-danger);font-weight:700}.db-guide-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.app-main{flex:1;padding:16px;padding-bottom:calc(86px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px}.permission-panel{min-height:60vh;padding:28px;display:flex;flex-direction:column;justify-content:center;gap:16px;text-align:center}.auth-shell{min-height:calc(100vh - 140px);display:grid;place-items:center}.auth-card{width:min(100%,420px);display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:#ffffffe0;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-logo{width:74px;height:74px;object-fit:contain;border-radius:24px;margin:0 auto;box-shadow:var(--shadow-md)}.role-quick-switcher{display:flex;gap:8px;background:#ffffffc7;padding:6px;border-radius:var(--radius-md);flex-wrap:wrap;justify-content:center;border:1px solid rgba(148,163,184,.18);box-shadow:var(--shadow-sm)}.app-role-switcher{margin:10px 16px 0;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.app-role-switcher::-webkit-scrollbar{display:none}.role-switcher-btn{padding:6px 12px;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s ease;white-space:nowrap}.role-switcher-btn.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary);box-shadow:0 4px 10px #38bdf83d}.role-switcher-btn:hover:not(.active){background:var(--brand-calm)}.rel8-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px;transition:transform .2s ease,box-shadow .2s ease}.rel8-card:hover{box-shadow:var(--shadow-md)}.rel8-card-header{display:flex;justify-content:space-between;align-items:center}.rel8-card-title{font-family:var(--font-family-title);font-size:1.15rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:8px}.rel8-card-primary{border-left:5px solid var(--brand-primary)}.rel8-card-secondary{border-left:5px solid var(--brand-secondary)}.rel8-card-accent{border-left:5px solid var(--brand-accent)}.rel8-card-success{border-left:5px solid var(--color-success)}.rel8-card-warning{border-left:5px solid var(--color-warning)}.rel8-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--radius-full);font-size:.9rem;font-weight:600;font-family:var(--font-family-title);cursor:pointer;transition:all .2s ease;border:none;width:100%}.rel8-btn-primary{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:var(--text-white);box-shadow:0 4px 12px rgba(var(--brand-hue),80%,40%,.15)}.rel8-btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(var(--brand-hue),80%,40%,.25)}.rel8-btn-secondary{background:var(--brand-calm);color:var(--brand-primary);border:1px solid var(--border-color)}.rel8-btn-secondary:hover{background:hsl(var(--brand-hue),80%,94%)}.rel8-btn-ghost{background:transparent;color:var(--text-secondary)}.rel8-btn-ghost:hover{background:var(--brand-calm);color:var(--brand-primary)}.rel8-btn-danger{background:var(--color-danger-light);color:var(--color-danger);border:1px solid rgba(239,68,68,.2)}.rel8-btn-danger:hover{background:var(--color-danger);color:var(--text-white)}.rel8-btn-sm{padding:6px 12px;font-size:.8rem}.app-header{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-color)}.greeting-text{font-family:var(--font-family-title);font-size:1.3rem;font-weight:800;color:var(--text-primary)}.subgreeting-text{font-size:.8rem;color:var(--text-secondary)}.today-child-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.today-child-card{min-width:0;display:flex;flex-direction:column;gap:10px;padding:13px;border:1px solid rgba(15,23,42,.08);border-radius:var(--radius-md);background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:var(--shadow-sm)}.today-child-head{display:flex;align-items:center;gap:9px}.today-child-head h4{color:var(--text-primary);font-size:.92rem;font-weight:850}.today-child-head p{margin-top:2px;color:var(--text-secondary);font-size:.7rem}.today-child-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.today-child-metrics div{min-width:0;padding:8px 6px;border-radius:12px;background:var(--bg-muted);border:1px solid rgba(148,163,184,.16)}.today-child-metrics span,.today-child-metrics strong{display:block;text-align:center}.today-child-metrics span{color:var(--text-tertiary);font-size:.56rem;font-weight:900;text-transform:uppercase;line-height:1.1}.today-child-metrics strong{margin-top:4px;color:var(--text-primary);font-size:.76rem}.install-app-prompt{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 16px 0;padding:11px 12px;border-radius:16px;border:1px solid rgba(22,151,183,.2);background:linear-gradient(135deg,#fffffff5,#e7f8fbeb);box-shadow:0 10px 26px #0f172a14}.install-app-prompt>div:first-child{min-width:0;display:flex;flex-direction:column;gap:2px}.install-app-prompt strong{color:var(--text-primary);font-size:.82rem;font-weight:900}.install-app-prompt span{color:var(--text-secondary);font-size:.72rem;font-weight:700}.install-app-prompt-actions{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto}.install-share-hint,.install-dismiss-button{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(148,163,184,.2);background:#ffffffd6;color:var(--text-secondary)}.install-dismiss-button{cursor:pointer}.toast-stack{position:fixed;z-index:80;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));width:min(420px,calc(100vw - 24px));transform:translate(-50%);display:flex;flex-direction:column;gap:8px;pointer-events:none}.app-toast{pointer-events:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fffffff7;box-shadow:var(--shadow-lg);color:var(--text-secondary)}.app-toast strong{display:block;color:var(--text-primary);font-size:.82rem;font-weight:900}.app-toast p{margin:2px 0 0;font-size:.78rem;line-height:1.35}.app-toast-icon{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:var(--brand-calm);color:var(--brand-primary)}.app-toast-success .app-toast-icon{background:var(--color-success-light);color:var(--color-success)}.app-toast-warning .app-toast-icon{background:var(--color-warning-light);color:var(--color-warning)}.app-toast-danger .app-toast-icon{background:var(--color-danger-light);color:var(--color-danger)}.app-toast-close{border:0;background:transparent;color:var(--text-muted);cursor:pointer;padding:4px}.app-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:end center;padding:18px;background:#0f172a5c;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.app-modal{width:min(420px,100%);display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:16px;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#fffffffa;box-shadow:var(--shadow-lg)}.app-modal-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:var(--brand-calm);color:var(--brand-primary)}.app-modal-danger .app-modal-icon{background:var(--color-danger-light);color:var(--color-danger)}.app-modal h3{margin:0;color:var(--text-primary);font-size:1rem;font-weight:900}.app-modal p{margin:6px 0 0;color:var(--text-secondary);font-size:.84rem;line-height:1.45}.app-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.mobile-nav-bar{position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%);width:100%;max-width:920px;min-height:calc(64px + env(safe-area-inset-bottom));padding:0 6px env(safe-area-inset-bottom);box-sizing:border-box;background:#ffffffeb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--border-color);display:flex;justify-content:center;align-items:center;z-index:100;overflow:hidden;box-shadow:0 -10px 24px #0f172a14}.mobile-nav-bar::-webkit-scrollbar{display:none}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text-tertiary);cursor:pointer;flex:1 1 0;min-width:0;min-height:64px;padding:0 2px;transition:all .2s ease;text-decoration:none;font-size:.66rem;font-weight:500;background:transparent}.nav-item span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item svg{width:17px;height:17px;flex:0 0 auto}.nav-item-active{color:var(--brand-primary);font-weight:700}.rel8-input-group{display:flex;flex-direction:column;gap:6px}.rel8-label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.rel8-input,.rel8-select,.rel8-textarea{padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-family-body);font-size:.9rem;color:var(--text-primary);background:#fff;outline:none;transition:border-color .2s ease;width:100%}.rel8-input:focus,.rel8-select:focus,.rel8-textarea:focus{border-color:var(--brand-primary)}.onboarding-shell{min-height:100%;display:flex;flex-direction:column;gap:14px;padding:4px 2px 12px}.onboarding-progress{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}.onboarding-progress span{height:5px;border-radius:var(--radius-full);background:#dde6ee}.onboarding-progress span.active{background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary))}.onboarding-slide{display:flex;flex-direction:column;gap:14px;animation:fadeIn .22s ease-out}.onboarding-welcome{min-height:560px;justify-content:center;text-align:center}.onboarding-brand-mark{width:76px;height:76px;border-radius:28px;margin:0 auto;display:grid;place-items:center;color:#fff;background:#fff;box-shadow:0 18px 40px #0ea5e947;overflow:hidden}.onboarding-brand-mark img{width:100%;height:100%;object-fit:contain}.onboarding-welcome h2{font-family:var(--font-family-title);font-size:3rem;letter-spacing:0;color:var(--text-primary)}.onboarding-welcome p{color:var(--text-secondary);font-size:.92rem}.onboarding-action-stack{display:flex;flex-direction:column;gap:10px}.onboarding-step-header{padding:14px;border-radius:var(--radius-md);background:linear-gradient(135deg,#ecf8fdeb,#edfcf5eb);border:1px solid hsla(200,55%,82%,.7);box-shadow:var(--shadow-sm)}.onboarding-step-header>div{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-sm);color:#fff;background:var(--brand-primary);margin-bottom:10px}.onboarding-step-header h3{font-size:1.2rem;color:var(--text-primary)}.onboarding-step-header p{margin-top:4px;color:var(--text-secondary);font-size:.78rem;line-height:1.35}.onboarding-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}.onboarding-section{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffffc7;box-shadow:var(--shadow-sm)}.onboarding-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.86rem;font-weight:800;color:var(--text-primary)}.onboarding-section-header small{color:var(--text-secondary);font-size:.7rem;font-weight:700}.onboarding-icon-btn{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:var(--radius-full);border:1px solid var(--border-color);color:var(--brand-primary);background:#fff;cursor:pointer}.onboarding-icon-btn.danger{color:var(--color-danger);border-color:#ef44443d}.onboarding-member-row{display:grid;grid-template-columns:1fr;gap:8px}.onboarding-child-card{display:grid;grid-template-columns:56px 1fr;gap:10px;padding:10px;border-radius:var(--radius-sm);background:#fff;border:1px solid var(--border-color)}.onboarding-child-card>img{width:56px;height:56px;border-radius:18px;background:var(--brand-calm);border:1px solid var(--border-color)}.onboarding-child-fields{display:flex;flex-direction:column;gap:8px;min-width:0}.onboarding-avatar-list{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.onboarding-avatar-list button{width:32px;height:32px;padding:0;border:1px solid var(--border-color);border-radius:12px;background:#fff;overflow:hidden;cursor:pointer}.onboarding-avatar-list button.active{border-color:var(--brand-primary);box-shadow:0 0 0 2px var(--brand-calm)}.onboarding-avatar-list img{width:100%;height:100%}.profile-avatar-editor{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center}.profile-avatar-editor>img{width:58px;height:58px;border-radius:18px;border:1px solid var(--border-color);background:var(--brand-calm);object-fit:cover}.avatar-editor-body{display:flex;flex-direction:column;gap:8px;min-width:0}.avatar-upload-btn{min-width:58px;height:32px;display:inline-grid;place-items:center;padding:0 8px;border-radius:12px;border:1px dashed var(--brand-primary);color:var(--brand-primary);background:#fff;font-size:.68rem;font-weight:800;cursor:pointer}.avatar-upload-btn input{display:none}.onboarding-check-list{display:flex;flex-direction:column;gap:7px;max-height:168px;overflow-y:auto;padding-right:4px}.onboarding-check-list label{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start;font-size:.76rem;line-height:1.3;color:var(--text-secondary)}.onboarding-check-list input{width:16px;height:16px;margin-top:1px;accent-color:var(--brand-primary)}.onboarding-choice-grid{display:grid;grid-template-columns:1fr;gap:10px}.onboarding-choice-grid button{text-align:left;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff;padding:12px;cursor:pointer}.onboarding-choice-grid button.active{border-color:var(--brand-primary);background:var(--brand-calm);box-shadow:var(--shadow-sm)}.onboarding-choice-grid span,.onboarding-summary-card span{display:block;font-size:.82rem;font-weight:800;color:var(--text-primary)}.onboarding-choice-grid small{display:block;margin-top:4px;color:var(--text-secondary);font-size:.7rem;line-height:1.35}.onboarding-summary-card{gap:10px}.onboarding-summary-card h3{font-size:1.3rem;color:var(--text-primary)}.onboarding-summary-card div{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.55)}.onboarding-summary-card strong{color:var(--brand-primary);font-size:.85rem;text-align:right}.onboarding-footer{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}.onboarding-inline-error{color:var(--color-danger);font-weight:700;font-size:.76rem;line-height:1.3}.rel8-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.badge-primary{background:var(--brand-calm);color:var(--brand-primary)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-danger{background:var(--color-danger-light);color:var(--color-danger)}.points-pill{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#fef4d7;border:1px solid hsl(45,95%,85%);color:#ae8404;font-weight:700;font-size:.85rem;border-radius:var(--radius-full)}.chore-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all .2s ease}.chore-list-item.checked{background:var(--color-success-light);border-color:#22c55e33;opacity:.85}.chore-checkbox-container{display:flex;align-items:center;gap:12px;cursor:pointer;flex:1}.chore-checkbox{width:22px;height:22px;border-radius:50%;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:var(--bg-card)}.chore-checkbox.checked{background:var(--color-success);border-color:var(--color-success);color:#fff}.chore-title{font-weight:600;color:var(--text-primary);font-size:.92rem}.chore-freq{font-size:.72rem;color:var(--text-secondary)}.progress-bar-bg{width:100%;height:8px;background:var(--border-color);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary));border-radius:var(--radius-full);transition:width .3s ease}.chat-messages-container{flex:1;display:flex;flex-direction:column;gap:12px;padding:8px 0;overflow-y:auto}.chat-bubble{max-width:80%;padding:10px 14px;border-radius:var(--radius-md);font-size:.88rem;line-height:1.4;position:relative}.chat-bubble-assistant{background:#fff;border:1px solid var(--border-color);color:var(--text-primary);align-self:flex-start;border-bottom-left-radius:4px}.chat-bubble-user{background:var(--brand-primary);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.chat-input-bar{display:flex;gap:8px;padding:10px 0;border-top:1px solid var(--border-color)}.parent-coach-card{min-height:56vh}.parent-coach-messages{min-height:320px}.icon-btn{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:var(--radius-full);color:var(--text-secondary);background:var(--brand-calm);border:1px solid var(--border-color);cursor:pointer}.empty-state{padding:18px;border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);background:var(--brand-calm);font-size:.82rem;line-height:1.45}.settings-row-card,.settings-form-stack{display:flex;flex-direction:column;gap:9px;padding:12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffffd6}.settings-form-stack h4{font-size:.86rem;font-weight:800;color:var(--text-primary)}.settings-toggle-row{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;color:var(--text-secondary);font-size:.78rem;font-weight:800}.settings-toggle-row.compact{min-height:38px;padding:8px;gap:8px}.notification-user-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(130px,1fr) auto auto minmax(84px,auto);gap:8px;align-items:center;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.settings-diagnostics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}.settings-diagnostic-tile{min-height:78px;display:flex;flex-direction:column;gap:4px;justify-content:center;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffffdb}.settings-diagnostic-tile svg{color:var(--brand-primary)}.settings-diagnostic-tile span{font-size:.68rem;font-weight:800;color:var(--text-muted);text-transform:uppercase}.settings-diagnostic-tile strong{color:var(--text-primary);font-size:.82rem;overflow-wrap:anywhere}.settings-feed-list{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto}.settings-feed-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffffdb}.settings-feed-row div{min-width:0;display:flex;flex-direction:column;gap:2px}.settings-feed-row strong{color:var(--text-primary);font-size:.82rem}.settings-feed-row span{color:var(--text-secondary);font-size:.72rem}.settings-approval-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffffe0}.settings-approval-row>div:first-child{min-width:0;display:flex;flex-direction:column;gap:3px}.settings-approval-row strong{color:var(--text-primary);font-size:.84rem}.settings-approval-row span{color:var(--text-secondary);font-size:.72rem}.settings-approval-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.settings-timeline-list{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow-y:auto}.settings-timeline-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:#ffffffe0}.settings-timeline-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:999px;background:var(--brand-calm);color:var(--brand-primary)}.settings-timeline-row>div:last-child{min-width:0;display:flex;flex-direction:column;gap:3px}.settings-timeline-row strong{color:var(--text-primary);font-size:.84rem}.settings-timeline-row span{color:var(--text-secondary);font-size:.72rem;overflow-wrap:anywhere}.settings-timeline-row small{color:var(--text-tertiary);font-size:.66rem;font-weight:700}.timeline-money .settings-timeline-icon{background:var(--color-success-light);color:var(--color-success)}.timeline-screen .settings-timeline-icon{background:#ebf3fe;color:#135ac3}.timeline-school .settings-timeline-icon{background:#f5f0fe;color:#5e25d0}.timeline-wellbeing .settings-timeline-icon{background:#feecf2;color:#d5205c}@media (max-width: 560px){.settings-approval-row{grid-template-columns:1fr}.settings-approval-actions{justify-content:stretch}.settings-approval-actions .rel8-btn{flex:1 1 120px}}.notification-user-row strong,.notification-user-row span{display:block}.notification-user-row strong{color:var(--text-primary);font-size:.78rem}.notification-user-row span{color:var(--text-secondary);font-size:.66rem}.on-behalf-banner{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:0 var(--space-md) var(--space-sm);padding:10px 12px;border:1px solid rgba(14,116,144,.18);border-radius:var(--radius-md);background:var(--brand-calm);color:var(--text-primary);font-size:.76rem;font-weight:800}.oversight-device-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--brand-calm)}.oversight-device-row p{font-size:.68rem;color:var(--text-secondary);word-break:break-all}.oversight-info-pills{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.oversight-info-pills span{padding:3px 7px;border-radius:999px;background:#ffffffbf;border:1px solid var(--border-color);color:var(--text-secondary);font-size:.64rem;font-weight:800}.oversight-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.oversight-status-grid div{padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.oversight-status-grid .oversight-wide{grid-column:1 / -1}.oversight-status-grid span{display:block;font-size:.66rem;color:var(--text-tertiary);font-weight:800;text-transform:uppercase}.oversight-status-grid strong{display:block;margin-top:2px;font-size:.82rem;color:var(--text-primary)}.screen-integration-device-block{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid rgba(148,163,184,.18);border-radius:var(--radius-md);background:#f8fafcc7}.children-screen{display:flex;flex-direction:column;gap:14px}.children-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px;border-radius:var(--radius-md);background:linear-gradient(135deg,#ecfdf5f2,#fff7ede6);border:1px solid rgba(20,184,166,.18);box-shadow:var(--shadow-sm)}.children-hero h2{font-size:1.2rem;line-height:1.1;color:var(--text-primary)}.children-hero p{margin-top:5px;font-size:.78rem;color:var(--text-secondary)}.children-eyebrow{display:inline-flex;color:var(--brand-primary);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:0}.children-roster{display:grid;grid-template-columns:1fr;gap:8px}.child-report-card{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto 16px;gap:9px;align-items:center;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffffe6;box-shadow:var(--shadow-sm);text-align:left}.child-report-card.active{border-color:#0ea5e961;background:linear-gradient(135deg,#e0f2feeb,#f0fdfaeb)}.child-report-card img{width:42px;height:42px;border-radius:14px;object-fit:cover;background:var(--brand-calm)}.child-report-card-main,.child-report-card-metrics{display:flex;flex-direction:column;gap:2px;min-width:0}.child-report-card-main strong{color:var(--text-primary);font-size:.88rem}.child-report-card-main span,.child-report-card-metrics span{color:var(--text-secondary);font-size:.68rem;font-weight:700}.child-detail-shell{gap:14px}.child-detail-header{display:flex;align-items:center;gap:10px}.child-detail-header>div{min-width:0;flex:1}.child-login-button{margin-left:auto;white-space:nowrap}.child-detail-header img{width:50px;height:50px;border-radius:16px;object-fit:cover;background:var(--brand-calm)}.child-detail-header h3{font-size:1.04rem;color:var(--text-primary)}.child-detail-header p{font-size:.72rem;color:var(--text-secondary)}.quick-behaviour-panel{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(0,1fr) minmax(0,1fr) minmax(120px,1fr) auto auto;gap:8px;align-items:center;padding:10px;border:1px solid rgba(20,184,166,.18);border-radius:var(--radius-sm);background:linear-gradient(135deg,#f0fdfaeb,#ffffffeb)}.quick-behaviour-panel strong,.quick-behaviour-panel span{display:block}.quick-behaviour-panel strong{color:var(--text-primary);font-size:.78rem}.quick-behaviour-panel span{margin-top:2px;color:var(--text-secondary);font-size:.64rem;font-weight:800}.quick-behaviour-panel .rel8-select,.quick-behaviour-panel .rel8-input{min-width:0;height:34px;padding:7px 9px;font-size:.7rem}.child-quick-action-hub{grid-template-columns:minmax(150px,1fr) minmax(160px,.9fr) minmax(170px,1.1fr) minmax(140px,1fr) minmax(130px,auto);margin:8px 0;padding:12px;border-radius:16px;background:var(--brand-calm);border-color:#0ea5e91a}.quick-action-summary strong{display:flex;align-items:center;gap:6px;color:var(--brand-primary)}.behaviour-toggle{display:flex;height:34px;padding:2px;border:1px solid var(--border-color);border-radius:12px;background:#ffffff70}.behaviour-toggle button{flex:1;border:0;border-radius:9px;background:transparent;color:var(--text-secondary);font-size:.7rem;font-weight:800;cursor:pointer;transition:all .15s ease}.behaviour-toggle button.active.praise{background:var(--color-success);color:#fff}.behaviour-toggle button.active.discipline{background:var(--color-danger);color:#fff}.quick-action-submit{height:34px;justify-content:center;gap:5px;border:0;border-radius:10px;color:#fff;font-size:.72rem;font-weight:800}.quick-action-submit.praise{background:var(--color-success)}.quick-action-submit.discipline{background:var(--color-danger)}.chore-edit-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(110px,.8fr) 70px 92px auto auto 30px 30px;gap:6px;align-items:center;padding:8px;border:1px solid rgba(14,165,233,.14);border-radius:var(--radius-sm);background:#f0f9ffbd}.chore-edit-row .rel8-input,.chore-edit-row .rel8-select{min-width:0;height:32px;padding:6px 8px;font-size:.7rem}.chore-edit-row label{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);font-size:.66rem;font-weight:900;white-space:nowrap}.child-detail-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.child-detail-tabs button{min-height:42px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 4px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;color:var(--text-secondary);font-size:.66rem;font-weight:800}.child-detail-tabs button.active{color:#fff;background:var(--brand-primary);border-color:var(--brand-primary)}.child-device-stack,.child-report-section,.report-list{display:flex;flex-direction:column;gap:10px}.child-device-card{display:flex;flex-direction:column;gap:12px;padding:12px;border-radius:var(--radius-md);border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#f8fafc)}.child-device-top{display:flex;justify-content:space-between;gap:10px;color:var(--brand-primary)}.child-device-top h4{margin-top:2px;font-size:.98rem;color:var(--text-primary)}.child-device-top p{font-size:.66rem;color:var(--text-secondary);word-break:break-all}.device-identity-panel,.family-link-metrics,.child-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.device-identity-panel div,.family-link-metrics div,.report-stat{padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.device-identity-panel span,.family-link-metrics span,.report-stat span{display:block;color:var(--text-tertiary);font-size:.63rem;font-weight:900;text-transform:uppercase}.device-identity-panel strong,.family-link-metrics strong,.report-stat strong{display:block;margin-top:3px;color:var(--text-primary);font-size:.86rem}.device-identity-panel small{display:inline-flex;align-items:center;gap:3px;margin-top:2px;color:var(--text-secondary);font-size:.66rem}.device-control-panel{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:var(--radius-sm);background:var(--brand-calm)}.device-control-panel>span{color:var(--text-primary);font-size:.74rem;font-weight:900}.device-control-panel>div{display:flex;flex-wrap:wrap;gap:6px}.device-phone-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.device-phone-frame{width:320px;min-height:560px;padding:16px 14px;border-radius:44px;background:linear-gradient(145deg,rgba(255,255,255,.14),transparent 18%),linear-gradient(160deg,#0f172a,#1e293b 64%,#020617);box-shadow:inset 0 0 0 2px #ffffff1f,inset 0 0 0 8px #0206175c,0 22px 46px #0f172a47}.device-phone-speaker{width:46px;height:5px;margin:0 auto 10px;border-radius:999px;background:#ffffff3d}.device-phone-screen{min-height:500px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:13px 10px;border-radius:29px;background:linear-gradient(180deg,#ecfefff5,#fffffff5 45%,#f8fafcfa),radial-gradient(circle at 18% 8%,rgba(14,165,233,.16),transparent 30%);text-align:center;box-shadow:inset 0 0 0 1px #0ea5e91a}.phone-status-row{width:100%;display:flex;justify-content:space-between;color:var(--text-secondary);font-size:.62rem;font-weight:900}.phone-device-title{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border-radius:20px;background:#ffffffc7;border:1px solid rgba(14,165,233,.16);box-shadow:0 8px 22px #0ea5e914;text-align:left}.phone-device-title span{min-width:0;color:var(--text-primary);font-size:.78rem;font-weight:900}.phone-device-title strong{align-self:center;padding:3px 7px;border-radius:999px;background:#14b8a61f;color:var(--brand-primary);font-size:.72rem}.phone-tab-switcher{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;border-radius:16px;background:#e2e8f0b8}.phone-tab-switcher button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:4px;border:0;border-radius:12px;background:transparent;color:var(--text-secondary);font-size:.65rem;font-weight:900}.phone-tab-switcher button.active{background:#fff;color:var(--brand-primary);box-shadow:var(--shadow-sm)}.phone-info-stack{width:100%;display:flex;flex-direction:column;gap:5px}.phone-info-stack div{display:grid;grid-template-columns:16px minmax(0,1fr);gap:5px;align-items:center;padding:6px 8px;border-radius:12px;background:#ffffffc7;border:1px solid rgba(148,163,184,.18);color:var(--text-secondary);font-size:.66rem;font-weight:800;text-align:left;box-shadow:0 4px 14px #0f172a0a}.phone-info-stack svg{color:var(--brand-primary)}.phone-control-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:auto}.phone-control-grid button{min-height:46px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid var(--border-color);border-radius:14px;background:#fff;color:var(--text-primary);font-size:.66rem;font-weight:900;box-shadow:var(--shadow-sm)}.phone-control-grid button.feedback-loading,.phone-setting-card button.feedback-loading{border-color:#0ea5e973;background:#e0f2feeb;color:var(--brand-primary)}.phone-control-grid button.feedback-success,.phone-setting-card button.feedback-success{border-color:#22c55e7a;background:#dcfce7f0;color:#15803d}.phone-control-grid button.is-active-control{cursor:default;border-color:#14b8a66b;background:#ccfbf1db;color:#0f766e;box-shadow:inset 0 0 0 1px #14b8a629;opacity:1}.phone-settings-stack{width:100%;display:flex;flex-direction:column;gap:7px}.phone-setting-card{display:grid;grid-template-columns:1fr;gap:5px;padding:8px;border-radius:16px;background:#ffffffd1;border:1px solid rgba(148,163,184,.2);text-align:left}.phone-setting-card strong{color:var(--text-primary);font-size:.72rem}.phone-setting-card span{color:var(--text-secondary);font-size:.61rem;font-weight:800}.phone-setting-card .rel8-input{height:32px;min-width:0;padding:5px 7px;font-size:.68rem}.phone-setting-card>div:last-child,.phone-time-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.phone-time-row{grid-template-columns:repeat(2,minmax(0,1fr))}.phone-setting-card button{min-height:30px;border:1px solid var(--border-color);border-radius:10px;background:#fff;color:var(--text-primary);font-size:.64rem;font-weight:900}.configuration-panel,.activity-history-panel{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.panel-heading{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-size:.78rem;font-weight:900}.device-config-actions{display:flex;flex-direction:column;gap:7px}.device-config-row{display:grid;grid-template-columns:minmax(86px,1fr) repeat(5,minmax(42px,auto));gap:6px;align-items:center;padding:8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-muted)}.device-config-row div{min-width:0}.device-config-row strong,.device-config-row span{display:block}.device-config-row strong{color:var(--text-primary);font-size:.74rem}.device-config-row span{color:var(--text-secondary);font-size:.62rem}.device-config-row .rel8-input{min-width:0;height:34px;padding:6px;font-size:.72rem}.device-config-row button{min-height:34px;padding:0 9px;border:1px solid var(--border-color);border-radius:10px;background:#fff;color:var(--text-primary);font-size:.68rem;font-weight:900}.configuration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.configuration-grid div{padding:9px;border-radius:var(--radius-sm);background:var(--brand-calm);border:1px solid var(--border-color)}.configuration-grid p{grid-column:1 / -1;color:var(--text-secondary);font-size:.72rem}.configuration-grid span,.configuration-grid small{display:block;color:var(--text-secondary);font-size:.62rem;word-break:break-word}.configuration-grid strong{display:block;margin:3px 0;color:var(--text-primary);font-size:.82rem}.device-oversight-grid{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(260px,1.1fr);grid-template-areas:"live app" "health app";gap:14px;align-items:start;min-width:0}.device-live-card{grid-area:live}.device-app-card{grid-area:app}.device-health-card{grid-area:health}.oversight-card,.analytics-card{min-width:0;display:flex;flex-direction:column;gap:9px;padding:12px;border:1px solid rgba(15,23,42,.08);border-radius:var(--radius-sm);background:#ffffffeb;box-shadow:var(--shadow-sm)}.usage-card{align-items:center;text-align:center}.usage-card .panel-heading{align-self:stretch}.usage-gauge,.analytics-gauge{--usage: 0%;--metric: 0%;width:106px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:999px;background:conic-gradient(var(--brand-primary) var(--usage),rgba(226,232,240,.86) 0);position:relative}.analytics-gauge{width:82px;flex:0 0 auto;background:conic-gradient(var(--brand-secondary) var(--metric),rgba(226,232,240,.9) 0)}.usage-gauge:after,.analytics-gauge:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border-radius:inherit;background:#fff}.usage-gauge strong,.usage-gauge span,.analytics-gauge strong,.analytics-gauge span{position:relative;z-index:1}.usage-gauge strong,.analytics-gauge strong{color:var(--text-primary);font-size:1rem;line-height:1}.usage-gauge span,.analytics-gauge span{margin-top:0;color:var(--text-tertiary);font-size:.58rem;font-weight:900;line-height:1;text-transform:uppercase}.usage-card p,.analytics-card p{color:var(--text-secondary);font-size:.7rem;line-height:1.35}.app-count-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.app-count-grid div,.configuration-mini-grid div{min-width:0;padding:9px 7px;border-radius:12px;background:var(--bg-muted);border:1px solid rgba(148,163,184,.15);text-align:center}.app-count-grid span,.configuration-mini-grid span{display:block;color:var(--text-tertiary);font-size:.5rem;font-weight:900;text-transform:uppercase;line-height:1.1;overflow-wrap:anywhere}.app-count-grid strong,.configuration-mini-grid strong{display:block;margin-top:5px;color:var(--text-primary);font-size:.92rem}.daily-app-usage-card{grid-column:1 / -1}.daily-app-usage-list{display:flex;flex-direction:column;gap:8px}.daily-app-usage-list>p{color:var(--text-secondary);font-size:.72rem;line-height:1.35}.daily-app-usage-row{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(74px,auto);gap:9px;align-items:center;padding:8px;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:#f8fafce6}.app-logo-badge{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#fff;background:#64748b;font-size:.68rem;font-weight:950;box-shadow:inset 0 -10px 20px #0f172a2e}.app-logo-badge.youtube{background:#ef4444}.app-logo-badge.tiktok{background:#ff3b5c}.app-logo-badge.roblox{background:#334155}.app-logo-badge.whatsapp{background:#22c55e}.app-logo-badge.clock{background:#0ea5e9}.daily-app-main{min-width:0;display:flex;flex-direction:column;gap:3px}.daily-app-main strong{color:var(--text-primary);font-size:.78rem;line-height:1.2}.daily-app-main small{min-width:0;overflow:hidden;color:var(--text-tertiary);font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}.daily-app-main>span{height:7px;overflow:hidden;border-radius:999px;background:#94a3b82e}.daily-app-main i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary))}.daily-app-metric{min-width:0;text-align:right}.daily-app-metric strong{display:block;color:var(--text-primary);font-size:.76rem;line-height:1.15}.daily-app-metric span{display:block;margin-top:2px;color:var(--text-secondary);font-size:.62rem;font-weight:900}.top-app-bars{display:flex;flex-direction:column;gap:6px}.top-app-bars>span{color:var(--text-secondary);font-size:.68rem}.top-app-bars div{display:grid;grid-template-columns:74px minmax(0,1fr) 34px;gap:6px;align-items:center}.top-app-bars label{min-width:0;overflow:hidden;color:var(--text-primary);font-size:.64rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.top-app-bars div>span,.money-progress,.ratio-meter{height:8px;overflow:hidden;border-radius:999px;background:#94a3b82e}.top-app-bars i,.money-progress span,.ratio-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary))}.top-app-bars em{color:var(--text-secondary);font-size:.62rem;font-style:normal;font-weight:900}.setting-light-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:7px;align-items:center}.setting-light-row>span{width:9px;height:9px;border-radius:999px;background:#cbd5e1;box-shadow:0 0 0 4px #cbd5e133}.setting-light-row>span.on{background:#22c55e;box-shadow:0 0 0 4px #22c55e29,0 0 16px #22c55e85}.setting-light-row strong{color:var(--text-primary);font-size:.7rem}.setting-light-row em{color:var(--brand-primary);font-size:.66rem;font-style:normal;font-weight:900}.configuration-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.configuration-mini-grid p{grid-column:1 / -1;color:var(--text-secondary);font-size:.68rem}.activity-history-list{display:flex;flex-direction:column;gap:6px}.activity-history-list>div{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:start;padding:8px;border-radius:var(--radius-sm);background:var(--bg-muted)}.activity-history-list strong,.activity-history-list span{display:block;font-size:.72rem}.activity-history-list strong{color:var(--text-primary)}.activity-history-list span{color:var(--text-secondary)}.sensor-dataset{border-top:1px solid var(--border-color);padding-top:8px}.sensor-mapping-panel{display:flex;flex-direction:column;gap:8px}.sensor-mapping-panel>.panel-heading{display:flex;margin-top:0}.sensor-dataset summary{cursor:pointer;color:var(--text-primary);font-size:.78rem;font-weight:900}.sensor-dataset>div,.sensor-detail-list{display:grid;grid-template-columns:1fr;gap:6px;margin-top:8px}.sensor-dataset>div>div:not(.sensor-detail-card),.report-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px}.icon-danger-button{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid rgba(239,68,68,.22);border-radius:10px;background:#fef2f2db;color:#dc2626}.icon-danger-button:hover{border-color:#dc26266b;background:#fee2e2}.icon-success-button,.icon-quiet-button{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:10px}.icon-success-button{border:1px solid rgba(34,197,94,.25);background:#dcfce7e6;color:#15803d}.icon-success-button:hover{border-color:#15803d6b;background:#dcfce7}.icon-quiet-button{border:1px solid rgba(148,163,184,.22);background:#f8fafceb;color:var(--text-secondary)}.icon-quiet-button:hover{border-color:#0ea5e952;color:var(--brand-primary)}.discipline-value-row{display:grid;grid-template-columns:minmax(0,1fr) 92px auto;gap:8px;align-items:center;padding:9px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.discipline-value-row .rel8-input{min-width:0;height:34px;padding:7px 9px;font-size:.72rem}.discipline-value-row label{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);font-size:.7rem;font-weight:900;white-space:nowrap}.sensor-dataset span,.report-row strong{color:var(--text-primary);font-size:.78rem;font-weight:800}.sensor-dataset strong,.report-row em{color:var(--brand-primary);font-size:.74rem;font-style:normal;font-weight:900}.sensor-dataset small,.report-row span{display:block;margin-top:2px;color:var(--text-secondary);font-size:.65rem;word-break:break-word}.sensor-detail-card{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff}.sensor-detail-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.sensor-detail-header em{align-self:start;padding:3px 7px;border-radius:999px;background:var(--brand-calm);color:var(--brand-primary);font-size:.62rem;font-style:normal;font-weight:900;white-space:nowrap}.sensor-field-mapper{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;align-items:center}.sensor-field-mapper input{grid-column:2}.sensor-attribute-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sensor-attribute-grid div{min-width:0;padding:8px;border-radius:var(--radius-sm);background:var(--bg-muted);border:1px solid rgba(148,163,184,.16)}.sensor-attribute-grid span,.sensor-attribute-grid strong{display:block}.sensor-attribute-grid span{color:var(--text-tertiary);font-size:.61rem;font-weight:900;text-transform:uppercase}.sensor-attribute-grid strong{margin-top:2px;color:var(--text-primary);font-size:.72rem;word-break:break-word}.sensor-attribute-grid small{display:inline-flex;margin-top:5px;padding:2px 6px;border-radius:999px;background:#0ea5e91a;color:var(--brand-primary);font-size:.6rem;font-weight:900}@media (max-width: 560px){.device-phone-layout{grid-template-columns:1fr}.device-phone-frame{width:min(320px,100%);margin:0 auto}.today-child-grid{grid-template-columns:1fr}.today-child-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.child-detail-header{flex-direction:column;align-items:stretch;gap:12px}.child-login-button{width:100%;justify-content:center}.configuration-grid,.sensor-attribute-grid,.device-oversight-grid,.quick-behaviour-panel,.discipline-value-row{grid-template-columns:1fr}.device-oversight-grid{grid-template-areas:"live" "app" "health"}.child-quick-action-hub,.chore-edit-row{grid-template-columns:1fr}.device-config-row{grid-template-columns:1fr repeat(3,minmax(42px,auto))}.device-config-row input[type=time]{grid-column:span 1}.app-count-grid,.configuration-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-card,.analytics-card.report-row-wide,.notification-user-row{grid-template-columns:1fr}.on-behalf-banner{align-items:stretch;flex-direction:column}.install-app-prompt{margin-inline:12px}}@media (max-width: 360px){.today-child-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.progress-track{height:10px;overflow:hidden;border-radius:999px;background:#94a3b82e}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-primary),var(--brand-secondary))}.report-row-wide{grid-column:1 / -1}.analytics-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center}.analytics-card.report-row-wide{grid-template-columns:auto minmax(0,1fr) auto}.analytics-card h4{color:var(--text-primary);font-size:.86rem}.analytics-card>strong{color:var(--brand-primary);font-size:.92rem}.ratio-meter,.money-progress{width:100%;min-width:72px}.calendar-day-toolbar{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:10px}.calendar-day-toolbar span{display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:.72rem;font-weight:800}.day-hour-view{max-height:430px;overflow-y:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#fff}.day-hour-view.interactive{-webkit-user-select:none;user-select:none}.day-hour-slot{display:grid;grid-template-columns:54px 1fr;min-height:30px;border-bottom:1px solid rgba(148,163,184,.18);cursor:crosshair;transition:background .15s ease,box-shadow .15s ease}.day-hour-slot:hover{background:#e0f2fe80}.day-hour-slot.selected{background:#0ea5e91f;box-shadow:inset 3px 0 0 var(--brand-primary)}.day-hour-slot.occupied{background:linear-gradient(90deg,#0ea5e91f,#e0f2fe5c);box-shadow:inset 3px 0 #0ea5e96b}.day-hour-slot.occupied.continuation{background:linear-gradient(90deg,#0ea5e914,#e0f2fe3d);box-shadow:inset 3px 0 #0ea5e93d}.day-hour-slot.occupied.selected{background:#0ea5e929;box-shadow:inset 3px 0 0 var(--brand-primary)}.day-hour-slot.hour{border-top:1px solid rgba(14,116,144,.18)}.day-hour-slot time{padding:6px 8px;color:var(--text-tertiary);font-size:.68rem;font-weight:800}.day-hour-slot>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:4px 6px}.day-block{display:inline-flex;align-items:center;max-width:100%;min-height:22px;padding:3px 8px;border-radius:var(--radius-full);background:var(--color-info-light);color:var(--color-info);font-size:.68rem;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:0 8px 16px #0ea5e91f}.day-block[role=button]{cursor:pointer}.day-block[role=button]:hover,.day-block[role=button]:focus-visible{outline:none;filter:saturate(1.08);transform:translateY(-1px);box-shadow:0 10px 18px #0ea5e92e}.day-block.chore{background:var(--color-success-light);color:var(--color-success)}.day-block.birthday{background:#fce7f3;color:#be185d;box-shadow:0 8px 16px #be185d1f}.budget-planning-row,.budget-payable-controls{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}.profile-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:end}.profile-feature-grid .rel8-btn{min-height:38px}.budget-command-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.budget-command-card,.budget-meter-card,.budget-envelope-card{padding:10px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffffe0}.budget-command-card span,.budget-meter-card span{display:block;color:var(--text-tertiary);font-size:.62rem;font-weight:900;text-transform:uppercase}.budget-command-card strong,.budget-meter-card strong{display:block;margin-top:3px;color:var(--text-primary);font-size:.98rem}.budget-command-card.success strong{color:var(--color-success)}.budget-limit-display{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:3px}.budget-limit-display strong{margin-top:0}.budget-limit-edit{display:grid;grid-template-columns:minmax(0,1fr) 30px 30px;gap:6px;align-items:center;margin-top:6px}.budget-limit-edit .rel8-input{min-width:0;height:34px;padding:7px 9px;font-size:.78rem}.budget-command-card.danger strong,.budget-warning{color:var(--color-danger)}.budget-meter-card{display:flex;flex-direction:column;gap:7px}.budget-meter-card>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.budget-meter-card small,.budget-warning{font-size:.7rem}.budget-warning{display:flex;align-items:center;gap:5px;font-weight:800}.next-payables-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.next-payables-strip div{padding:9px;border-radius:var(--radius-sm);background:var(--brand-calm);border:1px solid rgba(14,165,233,.15)}.next-payables-strip span,.next-payables-strip small{display:block;color:var(--text-secondary);font-size:.62rem;font-weight:800}.next-payables-strip strong{display:block;color:var(--text-primary);font-size:.78rem}.recommended-payables,.budget-envelope-list{display:flex;flex-direction:column;gap:8px}.recommended-payables>div:last-child,.recommendation-chip-grid{display:flex;flex-wrap:wrap;gap:6px}.recommended-payables button,.recommendation-chip-grid button{min-height:34px;display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(14,165,233,.18);border-radius:var(--radius-full);background:#fff;color:var(--brand-primary);font-size:.68rem;font-weight:900}.recommended-payables p,.holiday-action-panel p{color:var(--text-secondary);font-size:.72rem}.budget-envelope-list h4{color:var(--text-tertiary);font-size:.75rem;font-weight:900;text-transform:uppercase}.budget-envelope-card{display:flex;flex-direction:column;gap:7px}.budget-envelope-card.danger{border-color:#ef444459;background:#fef2f2e6}.budget-envelope-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}.budget-envelope-main strong,.budget-envelope-main span,.budget-envelope-card p{display:block}.budget-envelope-main strong{color:var(--text-primary);font-size:.84rem}.budget-envelope-main span,.budget-envelope-card p{color:var(--text-secondary);font-size:.68rem}.budget-envelope-main em{color:var(--brand-primary);font-size:.72rem;font-style:normal;font-weight:900}.budget-envelope-main>div:last-child{display:inline-flex;align-items:center;gap:6px}.budget-envelope-main button{width:30px;height:30px;display:inline-grid;place-items:center;border:1px solid rgba(239,68,68,.22);border-radius:10px;background:#fef2f2db;color:var(--color-danger)}.status-pill{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:var(--radius-full);background:#64748b1a;color:var(--text-secondary);font-size:.64rem;font-weight:900;text-transform:uppercase}.status-pill.success{background:#22c55e1f;color:var(--color-success)}.status-pill.warning{background:#f59e0b24;color:var(--color-warning)}.status-pill.danger{background:#ef44441f;color:var(--color-danger)}.budget-recommendation{margin:8px 0 0;padding:9px;border-radius:var(--radius-sm);background:#22c55e1f;color:var(--text-primary);font-size:.74rem;font-weight:800}.bulk-import-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.bulk-import-panel p{grid-column:1 / -1;color:var(--text-secondary);font-size:.7rem}.bulk-upload-drop{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border:1px dashed rgba(14,165,233,.36);border-radius:var(--radius-sm);background:#e0f2fe75;color:var(--brand-primary);font-size:.74rem;font-weight:900;cursor:pointer}.bulk-upload-drop input{display:none}.holiday-action-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.holiday-action-panel div{padding:9px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#ffffffc7}.holiday-action-panel strong,.holiday-action-panel span{display:block}.holiday-action-panel strong{color:var(--text-primary);font-size:.78rem}.holiday-action-panel span{color:var(--text-secondary);font-size:.66rem}.schedule-list-row{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:start;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.schedule-list-row>div{min-width:55px;padding:6px 8px;border-radius:8px;background:var(--brand-calm);color:var(--text-primary);text-align:center;font-size:.74rem;font-weight:900}.schedule-list-row h4{color:var(--text-primary);font-size:.85rem;font-weight:800}.schedule-list-row p{color:var(--text-secondary);font-size:.72rem}.schedule-layover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:end center;padding:16px;background:#0f172a57;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.schedule-layover{width:min(520px,100%);display:flex;flex-direction:column;gap:9px;padding:14px;border:1px solid rgba(255,255,255,.46);border-radius:var(--radius-md);background:#fffffff5;box-shadow:var(--shadow-xl)}.schedule-layover-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.schedule-layover-head span,.schedule-layover-head strong{display:block}.schedule-layover-head span{color:var(--text-tertiary);font-size:.66rem;font-weight:900;text-transform:uppercase}.schedule-layover-head strong{color:var(--text-primary);font-size:.98rem}.schedule-layover-head button{width:34px;height:34px;display:inline-grid;place-items:center;border:1px solid var(--border-color);border-radius:12px;background:#fff;color:var(--text-secondary)}.mood-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.mood-option{display:flex;flex-direction:column;align-items:center;padding:8px;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;background:var(--bg-card)}.mood-option:hover{border-color:var(--brand-primary);background:var(--brand-calm)}.mood-option.active{border-color:var(--brand-primary);background:var(--brand-calm);transform:scale(1.05);box-shadow:var(--shadow-sm)}.mood-emoji{font-size:1.5rem}.mood-label{font-size:.7rem;font-weight:600;color:var(--text-secondary);margin-top:4px}.info-notice{background:#ecf8fd;border:1px solid hsl(200,85%,88%);color:#0a5276;padding:12px;border-radius:var(--radius-sm);font-size:.82rem;display:flex;flex-direction:column;gap:4px}.info-notice-title{font-weight:700;font-family:var(--font-family-title);display:flex;align-items:center;gap:6px}.privacy-mask-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;padding:16px;border:1px solid rgba(14,165,233,.22);border-left:5px solid var(--brand-primary);border-radius:var(--radius-md);background:linear-gradient(135deg,#f0f9ffeb,#ecfdf5e0);box-shadow:var(--shadow-sm)}.privacy-mask-card h3{margin:0 0 4px;font-family:var(--font-family-title);font-size:1rem;color:var(--text-primary)}.privacy-mask-card p{margin:0;font-size:.78rem;color:var(--text-secondary);line-height:1.45}.privacy-mask-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:var(--brand-primary);background:#ffffffc2;border:1px solid rgba(14,165,233,.2)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.section-title{font-family:var(--font-family-title);font-size:1.05rem;font-weight:700;color:var(--text-primary);margin-top:8px;margin-bottom:4px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@media (min-width: 768px){.app-main{padding:20px 24px 104px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-day-toolbar,.budget-planning-row{grid-template-columns:minmax(0,1fr) auto;align-items:end}.budget-payable-controls{grid-template-columns:110px 80px minmax(0,1fr)}.budget-command-grid,.next-payables-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 560px){.budget-command-grid,.next-payables-strip,.holiday-action-panel,.bulk-import-panel,.budget-envelope-main,.profile-feature-grid{grid-template-columns:1fr}.schedule-layover-backdrop{place-items:end center;padding:10px}}
