 :root{--ink:#142c3d;--muted:#677b8a;--accent:#147b78;--line:#e0e8ee;--surface:#f3f6f9}*{box-sizing:border-box}body{background:var(--surface);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6;margin:0}a{color:#146e72;text-underline-offset:4px}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:20px;top:20px;z-index:100}.app-sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:#102d3c;color:white;display:flex;flex-direction:column;z-index:30;padding:26px 16px}.brand{display:flex;gap:12px;align-items:center;color:white;text-decoration:none;font-size:17px;font-weight:750;padding:0 8px 26px;line-height:1.4}.brand small{display:block;color:#a9c2ce;font-size:11px;font-weight:400}.brand-mark{background:#26a393;border-radius:12px;width:40px;height:40px;display:grid;place-items:center;font-size:24px}.module-nav{overflow:auto;flex:1}.module-nav a,.sidebar-bottom>a{display:flex;align-items:center;gap:12px;border-radius:9px;padding:10px 12px;color:#c7d8e0;text-decoration:none;font-size:14px;margin:3px 0}.module-nav a:hover,.module-nav a.active{background:#235164;color:white}.module-nav a.active{box-shadow:inset 3px 0 #43c4af}.sidebar-bottom{padding-top:12px;border-top:1px solid #ffffff20}.sidebar-bottom form{margin:0}.logout{background:none;border:0;color:#c7d8e0;font:inherit;font-size:14px;padding:10px 12px}.app-shell{margin-left:252px;min-height:100vh;display:flex;flex-direction:column}.app-topbar{padding:18px 32px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.breadcrumb-home{font-size:14px;text-decoration:none;color:var(--muted)}.account-chip{display:flex;gap:10px;align-items:center;font-size:13px}.account-chip small{display:block;color:var(--muted)}.avatar{display:grid;place-items:center;border-radius:50%;width:38px;height:38px;background:#e3f3ee;color:#11716a;font-weight:700}.app-main{padding:32px;max-width:1500px;width:100%;margin:0 auto;flex:1}.app-footer{padding:20px 32px;color:var(--muted);font-size:12px}.app-footer a{float:right}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap;margin-bottom:24px}.eyebrow{color:var(--accent);font-size:11px;font-weight:750;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:8px}h1{font-size:clamp(26px,3vw,36px);font-weight:750;letter-spacing:-1px}h2{font-size:22px;font-weight:700;letter-spacing:-.4px}h3{font-size:17px;font-weight:650}.muted{color:var(--muted)}.pill{display:inline-flex;gap:6px;align-items:center;background:#e4f3ee;color:#136b60;padding:5px 11px;border-radius:20px;font-size:12px;font-weight:650}.panel,.card{background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 3px 14px #152c3d04}.panel{padding:24px;margin-bottom:20px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.metric-card{padding:22px;background:white;border:1px solid var(--line);border-radius:16px}.metric-card small{color:var(--muted);display:block}.metric-value{font-size:30px;font-weight:750;letter-spacing:-1px}.metric-value span{font-size:16px;margin-left:4px}.hero-balance{background:linear-gradient(120deg,#123c4f,#176b68);color:white}.hero-balance small{color:#cee7e6}.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.module-tile{display:block;padding:22px;border:1px solid var(--line);border-radius:16px;background:white;text-decoration:none;color:var(--ink)}.module-tile:hover{border-color:#82bbb3;box-shadow:0 8px 25px #123c4f0a;color:var(--ink)}.tile-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#e7f3f0;color:#147b78;font-size:21px;margin-bottom:16px}.module-tile small{display:block;color:var(--muted)}.btn,.button,button:not(.logout):not(.navbar-toggler):not(.btn-close){border-radius:9px;font-weight:600}.button{display:inline-flex;align-items:center;gap:7px;padding:10px 17px;background:#147b78;color:white;border:0;text-decoration:none}.button:hover{color:white;background:#11615f}.button.secondary{background:white;color:#285563;border:1px solid #cfdee5}.button.danger{background:#b13749}.btn-primary,.btn-success{background:#147b78;border-color:#147b78}.btn-outline-primary{color:#147b78;border-color:#147b78}.form-control,.form-select,input,select,textarea{border-radius:9px}.form-panel{max-width:780px}.form-panel label{display:block;font-weight:600;margin:12px 0 6px}.form-panel input:not([type=checkbox]),.form-panel select,.form-panel textarea{width:100%;padding:10px 12px;border:1px solid #bfced8}.form-panel input[type=checkbox]{width:auto}.helptext,.form-panel .helptext{display:block;color:var(--muted);font-size:13px}.errorlist{background:#fff0f0;border-left:3px solid #b13749;color:#9b2635;padding:10px 14px;list-style:none;border-radius:6px}.notice{background:#eaf4f2;padding:16px;border-radius:10px;margin:16px 0}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.chat-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}#message label{display:block;margin-top:12px}#message select,#message textarea{width:100%;padding:10px;border:1px solid #bfced8}#message textarea{min-height:100px}#messages p{background:#f1f6f8;padding:12px;border-radius:10px;overflow-wrap:anywhere}#status{margin-top:10px;color:var(--muted)}.video-grid{display:flex;gap:10px;flex-wrap:wrap}video{background:#102d3c;width:calc(50% - 5px);border-radius:12px;min-height:120px}button:disabled{opacity:.5;cursor:default}.table-responsive{border-radius:12px}.table{--bs-table-bg:transparent;font-size:14px}.table th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}.empty-state{text-align:center;padding:24px;color:var(--muted)}.mobile-menu{display:none}.auth-page{background:radial-gradient(ellipse at top left,#dcefea,#f3f6f9 65%);min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:100%;max-width:540px;padding:36px;background:white;border:1px solid var(--line);border-radius:22px;box-shadow:0 16px 60px #102d3c10}.auth-panel .brand{color:var(--ink);padding:0 0 28px}.auth-panel .brand small{color:var(--muted)}.auth-panel nav{font-size:13px;margin-top:24px}.auth-panel input{min-height:46px}.password-wrap{display:flex;gap:8px}.password-wrap input{flex:1;min-width:0}.password-wrap button{border:1px solid #bfced8;background:white;color:var(--ink);font-size:12px}.container-fluid{padding-left:0!important;padding-right:0!important}@media(max-width:1000px){.app-sidebar{width:210px}.app-shell{margin-left:210px}.app-main{padding:24px}.chat-grid{grid-template-columns:1fr}}@media(max-width:720px){.app-sidebar{position:relative;width:100%;padding:16px}.brand{padding:0 0 12px}.mobile-menu{display:block}.module-nav,.sidebar-bottom{display:none}.menu-open .module-nav,.menu-open .sidebar-bottom{display:block}.module-nav{max-height:50vh}.app-shell{margin-left:0}.app-topbar{padding:14px 18px}.app-main{padding:20px 14px}.panel{padding:18px}.auth-panel{padding:24px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-value{font-size:24px}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-tile{padding:16px}.account-chip small{font-size:11px}.app-footer{padding:20px 14px}}@media(prefers-reduced-motion:no-preference){.module-tile,.button{transition:background .15s,border-color .15s,box-shadow .15s}}
.auth-panel form>button{padding:11px 18px;background:var(--accent);color:white;border:0;border-radius:9px;font:inherit;font-weight:600;cursor:pointer}.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus,.button:focus-visible,.module-nav a:focus-visible{outline:3px solid #54bcb0;outline-offset:2px}.metric-value{overflow-wrap:anywhere}.toolbar .button{white-space:normal}.auth-panel input[type=checkbox]{min-height:0}.sidebar-bottom{flex-shrink:0}

/* Family Center v1.3 */
.watch-tile{position:relative}.new-badge{display:none;position:absolute;right:12px;top:12px;font-size:10px;font-weight:800;letter-spacing:.8px;background:#b42338;color:#fff;padding:4px 7px;border-radius:999px}.watch-tile.has-new-data .new-badge{display:inline-flex}.watch-tile.has-new-data{border-color:#d33b52;box-shadow:0 0 0 3px #d33b5218}
@media(prefers-reduced-motion:no-preference){.watch-tile.has-new-data{animation:fmPulse 1.15s ease-in-out infinite}.message-new,.unread-pill{animation:fmPulse 1.15s ease-in-out 4}}@keyframes fmPulse{50%{box-shadow:0 0 0 6px #d33b5222;transform:translateY(-1px)}}
.section-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.unread-pill{background:#b42338;color:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:750}.message-list{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow:auto;padding:4px}.message-bubble{max-width:88%;padding:12px 14px;border-radius:16px;background:#edf3f6;border:1px solid #dae5ea;overflow-wrap:anywhere}.message-bubble.mine{align-self:flex-end;background:#e1f4ef;border-color:#c3e4db}.message-bubble.theirs{align-self:flex-start}.message-meta{font-size:11px;font-weight:750;color:var(--muted);margin-bottom:4px}.message-footer{font-size:11px;color:var(--muted);margin-top:7px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.read-state{font-weight:650}.attachment-chip{display:inline-block;margin-top:7px;padding:6px 9px;background:#fff;border:1px solid #cadbe2;border-radius:9px;text-decoration:none}.message-delete{font:inherit!important;font-size:11px!important;padding:2px 7px!important;margin:0!important;background:transparent!important;color:#a22b3e!important;border:0!important}.status-error{background:#fff0f1!important;color:#982638!important;padding:10px 12px;border-radius:10px}.status-ok{background:#eaf7f3!important;color:#126458!important;padding:10px 12px;border-radius:10px}.button.whatsapp{background:#167c5c}.button.whatsapp:hover{background:#12664c}.call-note{margin-top:18px;padding:16px;border-radius:13px;background:#f4f8fa;border:1px solid var(--line)}.call-note p{margin:.35rem 0 0;color:var(--muted)}
@media(max-width:720px){.stats-grid,.module-grid{grid-template-columns:1fr}.app-topbar{position:sticky;top:0;z-index:20}.account-chip{max-width:58%}.account-chip div{min-width:0}.account-chip strong,.account-chip small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-bubble{max-width:94%}.button,.toolbar .button{width:100%;justify-content:center}.footer-links{align-items:stretch}.footer-links a{padding:9px 0}.module-tile{min-height:132px}input,select,textarea{font-size:16px!important}}
