:root{--ink:#24343a;--muted:#6e7d80;--paper:#f8f7f2;--card:#ffffff;--rose:#c96f64;--rose-dark:#a9574e;--sage:#8ea98b;--line:#e4e8e1;--shadow:0 20px 55px rgba(48,67,62,.08)}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;background:radial-gradient(circle at 90% 0,#f0e7df 0,transparent 28rem),var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit}.shell{min-height:100vh;padding:34px}.hero{max-width:1040px;margin:0 auto;padding:70px 0 100px}.hero:before{display:block;width:58px;height:58px;margin-bottom:42px;border-radius:20px 20px 20px 5px;background:linear-gradient(145deg,var(--rose),#e4aa89);box-shadow:12px 12px 0 #e9eee6;content:""}.eyebrow{color:var(--rose-dark);font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}h1{max-width:760px;margin:18px 0;font-size:clamp(2.7rem,7vw,6.4rem);line-height:.94;letter-spacing:-.075em}h2{letter-spacing:-.035em}.lead{max-width:600px;color:var(--muted);font-size:1.18rem;line-height:1.7}.status{display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:12px 16px;border:1px solid #dbe6d7;border-radius:999px;background:#edf2e9;color:#52654b;font-weight:700}.dot{display:inline-block;width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px #e2edde}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:32px}.action-link{display:inline-flex;align-items:center;justify-content:center;color:var(--rose-dark);font-weight:800;text-decoration:none}.hero-actions .action-link{min-height:50px;padding:0 20px;border-radius:14px;background:var(--rose);color:white;box-shadow:0 8px 20px rgba(169,87,78,.16)}.text-link{color:var(--rose-dark);font-weight:800;text-decoration:none}.dashboard,.form-card{max-width:820px;margin:0 auto;padding:48px 0}.form-card{max-width:520px}.dashboard-title,.form-title{margin:12px 0;font-size:clamp(2.5rem,6vw,4.8rem);letter-spacing:-.07em;line-height:.96}.form-stack{display:grid;grid-gap:18px;gap:18px;margin-top:32px}label{display:grid;grid-gap:8px;gap:8px;font-weight:700}input,label{color:var(--ink)}input{width:100%;border:1px solid #d6deda;border-radius:14px;padding:15px 16px;outline:0;background:rgba(255,255,255,.86);font:inherit;transition:border-color .2s,box-shadow .2s}input:focus{border-color:var(--rose);box-shadow:0 0 0 4px rgba(201,111,100,.14)}button{border:0;border-radius:14px;padding:15px 20px;background:var(--rose);color:white;cursor:pointer;font:inherit;font-weight:700;box-shadow:0 8px 20px rgba(169,87,78,.16);transition:transform .2s,background .2s}button:hover:not(:disabled){background:var(--rose-dark);transform:translateY(-1px)}button:disabled{cursor:wait;opacity:.65}.error{margin:0;color:#a0443d}.form-foot{margin-top:22px;color:var(--muted)}.form-foot a{color:var(--rose);font-weight:700}.form-hint{margin:0;color:var(--muted);font-size:.92rem;line-height:1.5}.field-hint{color:var(--muted);font-size:.78rem;font-weight:400}.dashboard-actions,.notification-card{display:flex;align-items:center;gap:18px}.notification-card{justify-content:space-between;padding:18px;border-radius:16px;background:#f2f6f1}.notification-card.unread{border-left:4px solid var(--rose)}.notification-card p{margin:7px 0;color:var(--muted);line-height:1.5}.notification-card span{color:var(--muted);font-size:.84rem}.invite-form{display:grid;grid-gap:14px;gap:14px;margin-top:22px;padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.invite-form h3{margin:0}.invite-result{padding:12px;border-radius:12px;background:#edf2e9;color:#52654b;overflow-wrap:anywhere}.invite-result a{color:var(--rose-dark);font-weight:700}.success{padding:12px;border-radius:12px;background:#edf2e9;color:#52654b;line-height:1.5}.danger-button{margin-top:18px;color:#9b4646}.section-heading{margin-top:30px!important}.sos-event{border-left:4px solid #b84d4d}select,textarea{width:100%;border:1px solid #d6deda;border-radius:14px;padding:15px 16px;outline:0;background:rgba(255,255,255,.86);color:var(--ink);font:inherit}.routine-row{display:grid;grid-template-columns:1fr 150px;grid-gap:12px;gap:12px;padding:14px;border-radius:16px;background:#f2f6f1}.dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.button-muted{background:#e8eeea;color:var(--ink)}.family-card{margin-top:36px;padding:30px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.88);box-shadow:var(--shadow)}.family-card h2{margin:0 0 4px;font-size:1.5rem}.family-title-row,.senior-main{display:flex;align-items:center;justify-content:space-between;gap:16px}.status-line{display:inline-flex;align-items:center;gap:7px;color:#52654b!important}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:12px;color:var(--muted);font-size:.92rem}.empty-state{padding:20px;border-radius:16px;background:#f2f6f1}.muted,.senior-card span{color:var(--muted)}.senior-list{display:grid;grid-gap:12px;gap:12px;margin-top:22px}.senior-card{display:grid;grid-gap:6px;gap:6px;padding:20px;border:1px solid #e2e9e0;border-radius:18px;background:#f2f6f1}.card-links,.profile-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px}.action-link,.back-link,.card-links a{color:var(--rose);font-weight:700;text-decoration:none}.back-link{display:inline-block;margin-bottom:28px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:30px}.action-link{padding:13px 16px;border-radius:12px;background:#edf2e9}.event-list{display:grid;grid-gap:12px;gap:12px;margin-top:20px}.event-card{display:grid;grid-gap:6px;gap:6px;padding:17px;border:1px solid #e2e9e0;border-radius:15px;background:#f2f6f1}.event-card p,.event-card span,.permission-row span{color:var(--muted)}.event-card p{margin:0}.permission-row{display:flex;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid #e0e7e0}.chat-box{display:grid;grid-gap:12px;gap:12px;min-height:360px;margin-top:28px;padding:20px;border:1px solid #e0e7e0;border-radius:22px;background:var(--card)}.chat-message{max-width:82%;padding:13px 16px;border-radius:16px;line-height:1.5}.chat-message.assistant{justify-self:start;background:#edf2e9}.chat-message.user{justify-self:end;background:var(--rose);color:white}.chat-form{display:flex;gap:10px;margin-top:14px}.chat-form input{flex:1 1}.companion-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(145deg,#eef3e9,#fbf7f1)}.companion-card{width:min(720px,100%);padding:clamp(30px,7vw,74px);border:1px solid #dfe8dc;border-radius:36px;background:rgba(255,255,255,.9);box-shadow:var(--shadow);text-align:center}.companion-card h1{margin:18px auto;font-size:clamp(2.5rem,8vw,5.5rem)}.companion-lead{color:var(--muted);font-size:1.2rem}.companion-actions{display:grid;grid-gap:14px;gap:14px;margin:34px 0 22px}.companion-action{min-height:68px;display:grid;place-items:center;border:1px solid #dfe8dc;border-radius:20px;background:#f3f7f1;color:var(--ink);font-size:1.15rem;font-weight:800;text-decoration:none}.companion-action.primary{background:var(--rose);border-color:var(--rose);color:white}.sos-button{width:100%;min-height:58px;background:#b84d4d;font-size:1.05rem}.sos-message{color:#8e3d3d;line-height:1.5}@media (max-width:600px){.profile-grid{grid-template-columns:1fr}.shell{padding:22px}.dashboard-head,.family-title-row,.senior-main{display:grid}.summary-grid{grid-template-columns:1fr}}