:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#1f6feb;--color-primary-dark:#1550b4;--color-bg:#f5f7fb;--color-surface:#fff;--color-text:#14181f;--color-muted:#6b7280;--color-border:#e5e8ef;--color-danger:#d33636;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);-webkit-tap-highlight-color:transparent;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-bg);color:var(--color-text);overscroll-behavior-y:none;margin:0}button,input{font:inherit;color:inherit}a{color:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{padding:calc(var(--safe-top) + .75rem) 1rem .75rem;background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:5;align-items:center;gap:.6rem;display:flex;position:sticky;top:0}.app-header__text{flex-direction:column;line-height:1.2;display:flex}.app-header__text span{color:var(--color-muted);font-size:.75rem}.app-content{padding:1rem 1rem calc(5.5rem + var(--safe-bottom));flex:1;width:100%;max-width:640px;margin:0 auto}.bottom-nav{background:var(--color-surface);border-top:1px solid var(--color-border);padding:.4rem .25rem calc(.4rem + var(--safe-bottom));z-index:10;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{color:var(--color-muted);border-radius:.6rem;flex-direction:column;align-items:center;gap:.2rem;min-width:3.5rem;padding:.25rem .4rem;font-size:.68rem;text-decoration:none;display:flex}.bottom-nav__icon{width:22px;height:22px}.bottom-nav__item--active{color:var(--color-primary)}.page__title{margin:.25rem 0 1rem;font-size:1.4rem}.placeholder-card{background:var(--color-surface);border:1px solid var(--color-border);text-align:center;color:var(--color-muted);border-radius:1rem;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1.25rem;display:flex}.placeholder-card__icon{color:var(--color-primary)}.placeholder-card__badge{color:var(--color-primary-dark);background:#eaf1fe;border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600}.profile-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;align-items:center;gap:.9rem;margin-bottom:1rem;padding:1rem;display:flex}.profile-card__avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:1.1rem;font-weight:700;display:flex}.profile-card p{color:var(--color-muted);margin:.15rem 0 0;font-size:.85rem}.profile-details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:1rem;margin:0 0 1.25rem;padding:.25rem 1rem}.profile-details>div{border-bottom:1px solid var(--color-border);justify-content:space-between;padding:.75rem 0;display:flex}.profile-details>div:last-child{border-bottom:none}.profile-details dt{color:var(--color-muted)}.profile-details dd{margin:0;font-weight:500}.button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:.7rem;width:100%;padding:.85rem 1rem;font-size:1rem;font-weight:600}.button:disabled{opacity:.6;cursor:default}.button--secondary{background:var(--color-surface);color:var(--color-danger);border:1px solid var(--color-border)}.login-screen{min-height:100dvh;padding:1.5rem;padding-top:calc(1.5rem + var(--safe-top));padding-bottom:calc(1.5rem + var(--safe-bottom));justify-content:center;align-items:center;display:flex}.login-card{text-align:center;flex-direction:column;align-items:center;gap:.35rem;width:100%;max-width:360px;display:flex}.login-card h1{margin:.5rem 0 0}.login-card__subtitle{color:var(--color-muted);margin:0 0 1rem;font-size:.9rem}.login-form{text-align:left;flex-direction:column;gap:.9rem;width:100%;display:flex}.field{color:var(--color-muted);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.field input{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.6rem;padding:.7rem .8rem}.field input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.field-error{color:var(--color-danger);margin:0;font-size:.85rem}.splash{min-height:100dvh;color:var(--color-muted);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}
