:root{font-family:Avenir Next,Segoe UI,sans-serif;color:#14332e;background:radial-gradient(circle at top,rgba(246,193,134,.45),transparent 28%),linear-gradient(180deg,#f4efe6,#ece8df);color-scheme:light;line-height:1.45;font-weight:400;--surface: rgba(255, 255, 255, .9);--surface-strong: #ffffff;--border: rgba(20, 51, 46, .1);--accent: #176b5b;--accent-soft: #dff1eb;--text-muted: #64756f;--alert: #b75f31;--alert-soft: #fce8dc;--good: #2c8152;--good-soft: #dff1e6}*{box-sizing:border-box}html,body,#root{min-height:100%;width:100%}body{margin:0;min-width:320px;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}input,select{width:100%;min-height:48px;border:1px solid var(--border);border-radius:16px;padding:0 14px;background:#fff;color:inherit}.mobile-app,.login-shell{min-height:100vh;width:100%;max-width:100%}.mobile-app{max-width:1100px;margin:0 auto;padding:16px 16px 96px}.screen-shell,.screen-stack,.topbar,.hero-card,.card-section,.patient-focus-card,.circle-card,.login-card,.task-row,.calendar-row,.feed-item,.stat-card,.empty-card,.caregiver-focus-card{width:100%;max-width:100%;min-width:0}.screen-shell,.screen-stack,.stat-grid,.composer-grid,.task-feed,.feed-list,.circle-grid,.calendar-list,.user-picker{display:grid;gap:14px}.screen-shell>*,.screen-stack>*,.stat-grid>*,.composer-grid>*,.task-feed>*,.feed-list>*,.circle-grid>*,.calendar-list>*,.user-picker>*{min-width:0;max-width:100%}.topbar,.hero-card,.card-section,.patient-focus-card,.circle-card,.login-card,.task-row,.calendar-row,.feed-item,.stat-card,.empty-card{border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:0 14px 32px #37453e14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;margin-bottom:16px}.topbar__actions{display:flex;align-items:center;gap:8px}.app-mark{margin:0 0 2px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.hero-card,.card-section,.patient-focus-card,.circle-card,.login-card,.caregiver-focus-card{padding:18px}.hero-card__row,.card-section__header,.task-row,.calendar-row,.circle-card__top,.profile-line,.login-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.hero-card h1,.patient-focus-card h1,.login-card h1,.card-section h2{margin:0}.card-section h2,.hero-card h1,.login-card h1{line-height:1.15}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.stat-grid--compact{margin-top:0}.stat-card{padding:16px}.stat-card strong{display:block;font-size:1.65rem}.stat-card span{color:var(--text-muted)}.stat-card--good{background:var(--good-soft)}.stat-card--alert{background:var(--alert-soft)}.chip-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scroll-snap-type:x proximity}.filter-chip,.mini-button,.button-primary,.button-secondary,.bottom-nav__item,.user-card{border:0;border-radius:18px}.filter-chip{min-height:44px;padding:0 14px;background:#edf0eb;color:#24453f;white-space:nowrap;scroll-snap-align:start}.filter-chip--active{background:var(--accent);color:#fff}.composer-grid{grid-template-columns:1fr}.field--full{grid-column:1 / -1}.field-toolbar,.field-toolbar__actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.selection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.selection-chip{min-height:48px;padding:12px 14px;border:1px solid var(--border);border-radius:18px;background:#f4f6f2;color:#24453f;text-align:left}.selection-chip--active{border-color:#176b5b47;background:var(--accent-soft);color:var(--accent)}.field-hint{display:block;margin:0;color:var(--alert);line-height:1.3}.text-action{min-height:auto;padding:0;border:0;background:transparent;color:var(--accent);line-height:1.2}.task-row,.calendar-row,.feed-item,.empty-card{padding:14px 16px}.feed-item{display:grid;gap:6px}.task-row{gap:14px}.task-row small,.calendar-row small,.feed-item small,.circle-card small,.profile-line span:last-child{color:var(--text-muted)}.feed-item strong,.feed-item small,.user-card strong,.user-card span,.user-card small,.circle-card strong,.circle-card small{display:block}.task-row strong,.calendar-row strong,.feed-item strong,.circle-card strong,.user-card strong{margin:0}.task-row small,.calendar-row small,.feed-item small,.circle-card small,.user-card small,.user-card span{margin:0;line-height:1.35}.feed-item strong{line-height:1.35}.feed-item small{line-height:1.3}.task-row--highlight{border-width:2px;border-color:#176b5b59;background:#dff1ebe6}.task-row__main{display:grid;gap:6px;min-width:0}.task-row__title{display:block;line-height:1.2;font-size:1.08rem;letter-spacing:-.01em}.task-row__meta-text{display:block;line-height:1.35}.task-row__actions,.calendar-row__meta,.patient-focus-card__actions,.circle-card__stats{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}.button-primary,.button-secondary,.mini-button,.user-card{min-height:48px;padding:0 16px}.button-primary{background:var(--accent);color:#fff}.button-primary--wide,.button-primary--large,.button-secondary--large{width:100%}.button-primary--large,.button-secondary--large{min-height:56px;font-size:1.05rem}.button-secondary,.mini-button{background:#edf0eb;color:#24453f}.mini-button--soft{background:#eef3ef}.mini-button--alert{background:var(--alert-soft);color:var(--alert)}.mini-button--danger{background:#b75f311f;color:#9a4d26}.status-tag{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;font-size:.86rem;line-height:1;white-space:nowrap}.status-tag--scheduled,.status-tag--in_progress{background:var(--accent-soft);color:var(--accent)}.status-tag--completed{background:var(--good-soft);color:var(--good)}.status-tag--missed,.status-tag--cancelled{background:var(--alert-soft);color:var(--alert)}.patient-focus-card{background:radial-gradient(circle at top right,rgba(255,232,205,.9),transparent 34%),linear-gradient(180deg,#fff,#f8fbf9)}.patient-focus-card--primary{padding:20px}.patient-focus-card__badge{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#fee7cc;color:#8f4b1b;font-size:.86rem;margin-bottom:10px}.patient-focus-card h1{font-size:clamp(1.8rem,7vw,3.4rem);line-height:1;margin-bottom:8px}.patient-focus-card p{font-size:1.15rem;margin:0 0 18px}.patient-detail-card{display:grid;gap:4px;margin-bottom:18px;padding:14px 16px;border-radius:18px;background:#ffffffd9;border:1px solid var(--border)}.patient-detail-card span,.section-helper{color:var(--text-muted)}.section-helper{margin:0;line-height:1.35}.patient-task-card{display:grid;gap:12px;padding:16px;border-radius:22px;border:1px solid rgba(23,107,91,.12);background:#f7fbf9}.patient-task-card>div,.patient-calendar-row>div{display:grid;gap:6px;min-width:0}.patient-task-card--now{margin-bottom:12px}.patient-task-card__label{display:inline-flex;margin-bottom:6px;color:var(--accent);font-size:.85rem}.patient-task-card strong{display:block;font-size:1.15rem;line-height:1.25;margin:0 0 4px}.patient-task-card small{color:var(--text-muted);display:block;margin:0;line-height:1.35}.patient-task-card__button{width:100%}.patient-task-row{background:#fffffff2}.patient-calendar-row{align-items:center}.patient-calendar-row strong,.patient-calendar-row small{display:block;margin:0}.circle-card{display:grid;gap:12px}.circle-card--primary{border-color:#176b5b3d;background:#f7fbf9}.login-shell{display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:min(100%,760px);display:grid;gap:20px}.user-picker{grid-template-columns:1fr}.user-card{text-align:left;display:grid;gap:6px;padding:16px;background:#f4f6f2}.user-card--active{background:var(--accent-soft);outline:2px solid rgba(23,107,91,.22)}.login-form,.field{display:grid;gap:8px}.field span{color:var(--text-muted);font-size:.88rem;line-height:1.3}.profile-screen-card,.profile-stack{display:grid;gap:16px}.profile-line{margin-top:2px}.caregiver-focus-card{background:radial-gradient(circle at top right,rgba(223,241,235,.9),transparent 38%),linear-gradient(180deg,#fff,#f7fbf9)}.patient-profile-card{background:radial-gradient(circle at top right,rgba(255,232,205,.75),transparent 34%),linear-gradient(180deg,#fff,#fbf8f2)}.bottom-nav{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:min(calc(100% - 24px),1100px);max-width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#f4efe6f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);border-radius:24px 24px 0 0}.bottom-nav__item{min-height:50px;background:#ecefe9;color:#29453f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.98rem;min-width:0}.bottom-nav__item--active{background:var(--accent);color:#fff}@media(min-width:900px){.mobile-app{padding:24px 24px 110px}.screen-shell{max-width:980px}.stat-grid,.circle-grid,.composer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.button-primary--wide{grid-column:1 / -1}.user-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.mobile-app{padding:12px 12px 96px}.task-row,.calendar-row,.hero-card__row,.topbar,.login-card__top{align-items:flex-start;flex-direction:column}.task-row__actions,.calendar-row__meta,.topbar__actions{width:100%;justify-content:flex-start}.task-row__actions .status-tag,.task-row__actions .mini-button{min-height:42px}.task-row__actions .mini-button{flex:1 1 calc(50% - 4px)}.card-section__header{align-items:flex-start;flex-direction:column}.card-section__header .button-secondary{width:100%}.chip-row{margin:0 -2px;padding-right:2px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:14px}.stat-card strong,.card-section h2,.hero-card h1{overflow-wrap:anywhere}.patient-focus-card__actions{flex-direction:column}.selection-grid{grid-template-columns:1fr}.field-toolbar{align-items:flex-start;flex-direction:column}.field-toolbar__actions{width:100%;justify-content:flex-start}.bottom-nav{width:calc(100% - 24px);gap:6px;padding-left:10px;padding-right:10px}.bottom-nav__item{padding:0 8px;font-size:.84rem}}
