@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--font: "Inter", system-ui, -apple-system, sans-serif;--radius: 16px;--radius-sm: 12px;--radius-xs: 8px;--radius-pill: 100px;--topbar-h: 56px;--bottomnav-h: 68px;--safe-bottom: env(safe-area-inset-bottom, 0px);--bg: #0A1628;--bg-grad: linear-gradient(180deg, #0A1628 0%, #0D1B2A 50%, #0A1628 100%);--surface: #11203A;--surface-2: #16273F;--surface-3: #1B3050;--fg: #E2E8F0;--muted: #8FA3B8;--muted-2: #64748B;--teal: #2DD4BF;--teal-hover: #14B8A6;--teal-soft: rgba(45, 212, 191, .1);--teal-border: rgba(45, 212, 191, .25);--emerald: #10B981;--emerald-soft: rgba(16, 185, 129, .12);--gold: #E8B547;--gold-soft: rgba(232, 181, 71, .12);--gold-border: rgba(232, 181, 71, .3);--red: #EF4444;--orange: #F97316;--yellow: #EAB308;--blue: #3B82F6;--purple: #A855F7;--border: rgba(255, 255, 255, .07);--border-2: rgba(255, 255, 255, .12);--shadow: 0 4px 16px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .35);--green-glow: 0 0 24px rgba(16, 185, 129, .15)}.theme-light{--bg: #F1F5F9;--bg-grad: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);--surface: #FFFFFF;--surface-2: #F8FAFC;--surface-3: #F1F5F9;--fg: #1E293B;--muted: #64748B;--muted-2: #94A3B8;--teal: #0D9488;--teal-hover: #0F766E;--teal-soft: rgba(13, 148, 136, .06);--teal-border: rgba(13, 148, 136, .2);--emerald: #059669;--emerald-soft: rgba(5, 150, 105, .08);--gold: #C8941E;--gold-soft: rgba(200, 148, 30, .08);--gold-border: rgba(200, 148, 30, .25);--border: rgba(15, 23, 42, .08);--border-2: rgba(15, 23, 42, .12);--shadow: 0 2px 12px rgba(0, 0, 0, .05);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .08);--green-glow: 0 0 24px rgba(5, 150, 105, .08)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden}body{font-family:var(--font);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.5}#root{height:100%}button{font-family:var(--font);cursor:pointer;border:none;background:none;color:inherit}input,textarea,select{font-family:var(--font);color:var(--fg)}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;max-width:480px;margin:0 auto;position:relative;background:var(--bg-grad);transition:max-width .3s ease}.app-shell--wide{max-width:1024px}.app-main{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.screen{padding:16px 20px 24px;animation:screen-in .3s ease-out}.screen--scroll{padding-bottom:calc(var(--bottomnav-h) + var(--safe-bottom) + 24px)}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.logo{display:flex;align-items:center;gap:10px}.logo__icon{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--teal),var(--emerald));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;color:#0a1628;flex-shrink:0}.logo__text{display:flex;flex-direction:column;line-height:1.1}.logo__name{font-weight:800;font-size:17px;letter-spacing:.06em;color:var(--fg)}.logo__name span{color:var(--gold)}.avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff;flex-shrink:0;background:linear-gradient(135deg,var(--teal),var(--emerald))}.avatar--sm{width:32px;height:32px;font-size:13px}.avatar--md{width:40px;height:40px;font-size:16px}.avatar--lg{width:48px;height:48px;font-size:18px}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;white-space:nowrap}.pill--outline{background:transparent;border:1px solid var(--border-2);color:var(--muted)}.pill--teal{background:var(--teal-soft);border:1px solid var(--teal-border);color:var(--teal)}.pill--gold{background:var(--gold-soft);border:1px solid var(--gold-border);color:var(--gold)}.pill--emerald{background:var(--emerald-soft);border:1px solid rgba(16,185,129,.25);color:var(--emerald)}.pill--red{background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:var(--red)}.pill--blue{background:#3b82f61a;border:1px solid rgba(59,130,246,.25);color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-pill);font-size:15px;font-weight:600;transition:transform .15s ease,opacity .2s ease,background .2s ease}.btn:active{transform:scale(.97)}.btn--teal{background:var(--teal);color:#0a1628}.btn--teal:hover{background:var(--teal-hover)}.btn--outline{background:transparent;border:1px solid var(--border-2);color:var(--fg)}.btn--outline-light{background:#fff;border:1px solid var(--border-2);color:var(--fg)}.btn--ghost{background:transparent;color:var(--teal)}.btn--gold{background:var(--gold);color:#0a1628}.btn--sm{padding:8px 16px;font-size:13px}.btn--lg{padding:16px 32px;font-size:16px;width:100%}.btn--block{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.card--pad-sm{padding:14px}.card--hover{transition:transform .15s ease,border-color .2s ease}.card--hover:active{transform:scale(.98)}.card-title{font-size:16px;font-weight:700;margin-bottom:2px}.card-subtitle{font-size:13px;color:var(--muted)}.section-h{font-size:18px;font-weight:700;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}.section-h a,.section-h button{font-size:13px;font-weight:600;color:var(--teal)}.bottomnav{height:calc(var(--bottomnav-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);display:flex;background:var(--surface);border-top:1px solid var(--border);position:relative;z-index:100}.bottomnav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--muted-2);font-size:10px;font-weight:600;transition:color .2s ease;position:relative}.bottomnav__item--active{color:var(--teal)}.bottomnav__badge{position:absolute;top:6px;right:50%;transform:translate(14px);background:var(--red);color:#fff;font-size:9px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.login-screen{min-height:100%;display:flex;flex-direction:column;padding:24px 24px calc(var(--safe-bottom) + 24px);max-width:440px;margin:0 auto}.login-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.login-role-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:var(--radius-pill);border:1.5px solid var(--border-2);font-size:12px;font-weight:600;color:var(--muted)}.login-hero{width:100%;height:200px;border-radius:var(--radius);margin:20px 0;background:linear-gradient(135deg,#dbeafe,#ccfbf1,#fef3c7);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.login-hero__circle{position:absolute;border-radius:50%;opacity:.5}.login-welcome{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow-lg);margin-top:8px}.login-welcome h1{font-size:26px;font-weight:800;margin-bottom:6px;color:var(--fg)}.login-welcome h1 span{color:var(--teal)}.login-welcome p{font-size:15px;color:var(--muted);margin-bottom:24px}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--muted-2);font-size:12px;font-weight:600}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.login-footer{margin-top:auto;padding-top:24px;text-align:center}.login-footer__text{font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px}.login-footer__hipaa{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted-2);font-weight:500}.home-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 8px}.home-greeting{padding:0 20px 8px}.home-greeting h2{font-size:24px;font-weight:800;margin-bottom:10px}.home-role-row{padding:0 20px 16px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 20px 20px}.summary-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px 12px;text-align:center;box-shadow:var(--green-glow),var(--shadow)}.summary-card__icon{width:36px;height:36px;border-radius:10px;background:var(--teal-soft);display:flex;align-items:center;justify-content:center;margin:0 auto 10px;color:var(--teal)}.summary-card__value{font-size:24px;font-weight:800;color:var(--fg)}.summary-card__label{font-size:11px;color:var(--muted);font-weight:500;margin-top:2px}.appointment-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:10px;box-shadow:var(--shadow);position:relative;overflow:hidden;transition:transform .15s ease}.appointment-card:active{transform:scale(.98)}.appointment-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--teal)}.appointment-card__info{flex:1;min-width:0}.appointment-card__name{font-size:15px;font-weight:700;margin-bottom:2px}.appointment-card__meta{font-size:13px;color:var(--muted)}.profile-topbar{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border)}.profile-topbar__back{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-2);display:flex;align-items:center;justify-content:center;color:var(--fg);flex-shrink:0}.profile-topbar__titles{flex:1;min-width:0}.profile-topbar__title{font-size:17px;font-weight:700}.profile-topbar__subtitle{font-size:12px;color:var(--muted)}.profile-topbar__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.profile-layout{display:flex;gap:20px;padding:20px}.profile-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;gap:16px}.profile-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.client-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.client-card__head{display:flex;align-items:center;gap:14px;margin-bottom:14px}.client-card__info h3{font-size:18px;font-weight:700}.client-card__info p{font-size:13px;color:var(--muted)}.sidebar-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px;box-shadow:var(--shadow)}.sidebar-menu__item{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--radius-xs);font-size:14px;font-weight:500;color:var(--muted);transition:all .15s ease;width:100%;text-align:left}.sidebar-menu__item:hover{background:var(--surface-2);color:var(--fg)}.sidebar-menu__item--active{background:var(--teal-soft);color:var(--teal);font-weight:600}.sidebar-menu__icon{width:18px;height:18px;flex-shrink:0}.contact-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.contact-block__title{font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.contact-row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--fg);margin-bottom:8px}.contact-row:last-of-type{margin-bottom:14px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.info-item__label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.info-item__value{font-size:14px;font-weight:500;color:var(--fg)}.info-item__value--accent{color:var(--gold);font-weight:600}.care-team{display:flex;align-items:center;gap:8px;margin-top:10px}.care-team__avatars{display:flex}.care-team__avatars .avatar{border:2px solid var(--surface);margin-left:-8px}.care-team__avatars .avatar:first-child{margin-left:0}.care-team__link{font-size:13px;font-weight:600;color:var(--teal);margin-left:6px}.care-plan-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.care-plan-col__label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.care-plan-col__value{font-size:13px;color:var(--fg);line-height:1.4}.profile-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.appt-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.appt-item:last-child{border-bottom:none}.appt-item__date{text-align:center;flex-shrink:0;width:44px}.appt-item__day{font-size:18px;font-weight:800}.appt-item__month{font-size:10px;color:var(--muted);text-transform:uppercase}.appt-item__info{flex:1;min-width:0}.appt-item__time{font-size:13px;font-weight:600}.appt-item__desc{font-size:12px;color:var(--muted)}.doc-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.doc-item:last-child{border-bottom:none}.doc-item__icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;flex-shrink:0}.doc-item__name{flex:1;font-size:13px;font-weight:500}.doc-item__size{font-size:11px;color:var(--muted)}.note-item{padding:12px 0;border-bottom:1px solid var(--border)}.note-item:last-child{border-bottom:none}.note-item__head{display:flex;align-items:center;gap:8px;margin-bottom:4px}.note-item__author{font-size:13px;font-weight:600}.note-item__date{font-size:11px;color:var(--muted)}.note-item__text{font-size:13px;color:var(--muted);line-height:1.5}.med-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--border)}.med-row:last-child{border-bottom:none}.med-row__name{font-size:14px;font-weight:500}.med-row__dose{font-size:12px;color:var(--muted)}.contact-tile{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px}.contact-tile__name{font-size:14px;font-weight:600;margin-bottom:2px}.contact-tile__rel{font-size:12px;color:var(--muted);margin-bottom:8px}.contact-tile--dashed{border:2px dashed var(--border-2);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:100px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.incident-topbar{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border)}.incident-topbar__actions{margin-left:auto;display:flex;gap:8px}.incident-layout{display:flex;gap:20px;padding:20px}.incident-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;gap:16px}.incident-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.progress-steps{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.progress-step{display:flex;align-items:center;gap:12px;padding:10px 0;position:relative}.progress-step:not(:last-child):after{content:"";position:absolute;left:15px;top:36px;bottom:-6px;width:2px;background:var(--border-2)}.progress-step--done:not(:last-child):after{background:var(--teal)}.progress-step__num{width:32px;height:32px;border-radius:50%;border:2px solid var(--border-2);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--muted);flex-shrink:0;z-index:1;background:var(--surface)}.progress-step--active .progress-step__num{border-color:var(--teal);color:var(--teal);background:var(--teal-soft)}.progress-step--done .progress-step__num{background:var(--teal);border-color:var(--teal);color:#0a1628}.progress-step__label{font-size:14px;font-weight:500;color:var(--muted)}.progress-step--active .progress-step__label{color:var(--fg);font-weight:600}.progress-step--done .progress-step__label{color:var(--fg)}.help-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.help-card__title{font-size:14px;font-weight:700;margin-bottom:4px}.help-card__desc{font-size:12px;color:var(--muted);margin-bottom:14px}.form-section__title{font-size:16px;font-weight:700;margin-bottom:14px}.form-group{margin-bottom:16px}.form-label{font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px;display:block}.form-input,.form-select,.form-textarea{width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-2);background:var(--surface-2);font-size:14px;color:var(--fg);outline:none;transition:border-color .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--teal)}.form-textarea{resize:vertical;min-height:100px;font-family:var(--font)}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238FA3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.char-count{text-align:right;font-size:12px;color:var(--muted-2);margin-top:4px}.segmented{display:flex;gap:0;border:1px solid var(--border-2);border-radius:var(--radius-sm);overflow:hidden}.segmented__btn{flex:1;padding:11px;font-size:14px;font-weight:600;color:var(--muted);transition:all .15s ease}.segmented__btn--active{background:var(--teal);color:#0a1628}.input-with-icon{position:relative}.input-with-icon__icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--gold);pointer-events:none}.input-with-icon .form-input,.input-with-icon .form-select{padding-right:36px}.injury-map{display:flex;gap:24px;align-items:flex-start}.injury-map__diagram{flex-shrink:0;position:relative}.injury-map__side{flex:1;min-width:0}.injury-marker{position:absolute;width:20px;height:20px;border-radius:50%;border:2px solid #fff;box-shadow:0 2px 8px #0000004d;z-index:2}.injury-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xs);margin-bottom:8px}.injury-list-item__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.injury-list-item__info{flex:1;min-width:0}.injury-list-item__name{font-size:13px;font-weight:600}.injury-list-item__type{font-size:11px;color:var(--muted)}.injury-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.injury-legend__item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.injury-legend__dot{width:10px;height:10px;border-radius:50%}.body-toggle{display:flex;border:1px solid var(--border-2);border-radius:var(--radius-xs);overflow:hidden;margin-bottom:12px;width:fit-content}.body-toggle__btn{padding:6px 16px;font-size:12px;font-weight:600;color:var(--muted)}.body-toggle__btn--active{background:var(--teal-soft);color:var(--teal)}.confirmation{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px}.confirmation__icon{width:64px;height:64px;border-radius:50%;background:var(--emerald-soft);display:flex;align-items:center;justify-content:center;color:var(--emerald);margin-bottom:20px}.confirmation__title{font-size:20px;font-weight:700;margin-bottom:8px}.confirmation__desc{font-size:14px;color:var(--muted);max-width:300px;margin-bottom:24px}@media (max-width: 768px){.profile-layout,.incident-layout{flex-direction:column}.profile-sidebar,.incident-sidebar{width:100%}.care-plan-grid{grid-template-columns:repeat(2,1fr)}.profile-two-col,.info-grid{grid-template-columns:1fr}.injury-map{flex-direction:column}.contact-grid{grid-template-columns:1fr}}@media (max-width: 480px){.summary-grid{gap:8px}.summary-card{padding:12px 8px}.summary-card__value{font-size:20px}.form-row,.care-plan-grid{grid-template-columns:1fr}}.app-main::-webkit-scrollbar{width:6px}.app-main::-webkit-scrollbar-track{background:transparent}.app-main::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:3px}
