.app-root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.app-main{width:min(100%,46rem);flex:1;margin-inline:auto;padding:1.25rem 1rem 6rem}.shell-card{padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 8px 24px #0f172a0d}.shell-card h1{margin-bottom:.5rem;font-size:clamp(1.5rem,6vw,2rem)}.shell-card p{color:var(--color-muted);line-height:1.55}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102a32;background:#f4f7f8;font-synthesis:none;text-rendering:optimizeLegibility;--tenant-primary: #164e63;--tenant-on-primary: #ffffff;--color-text: #102a32;--color-muted: #52656b;--color-surface: #ffffff;--color-border: #cbd5d8;--radius-card: 1rem}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,a{min-height:44px}a{color:var(--tenant-primary);text-underline-offset:.2em}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #f0a202;outline-offset:2px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.site-header{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.header-inner{display:flex;align-items:center;gap:.75rem;width:min(100%,46rem);margin:0 auto;min-height:44px}.brand-name{font-weight:700}.brand-logo{width:2.25rem;height:2.25rem;-o-object-fit:contain;object-fit:contain}.site-footer{padding:1rem;text-align:center}.bottom-nav{position:fixed;z-index:2;inset:auto 0 0;display:flex;justify-content:center;padding:.4rem;border-top:1px solid var(--color-border);background:var(--color-surface)}.bottom-nav a{min-width:7rem;padding:.65rem 1rem;text-align:center;text-decoration:none}.bottom-nav a.active{color:var(--tenant-primary);font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:1rem;padding:.7rem 1rem;border:1px solid transparent;border-radius:.7rem;font-weight:650}.button-primary{color:var(--tenant-on-primary);background:var(--tenant-primary)}.button-secondary,.button-quiet{color:var(--color-text);border-color:var(--color-border);background:var(--color-surface)}.field{display:grid;gap:.4rem;margin-block:1rem}.field-label{font-weight:600}.field input,.field textarea,.field select,.otp-input{width:100%;min-height:48px;padding:.65rem .75rem;border:1px solid #829398;border-radius:.55rem;background:#fff}.field-error{color:#a32121;font-size:.92rem}.otp-input{letter-spacing:.5em;text-align:center;font-size:1.4rem}.card,.shell-card{background:var(--color-surface)}.empty-state{display:grid;justify-items:start;gap:.6rem;padding:1.5rem 0}.empty-state p{color:var(--color-muted);line-height:1.5}.empty-action{width:100%}.status-pill{display:inline-flex;align-items:center;min-height:28px;padding:.2rem .65rem;border-radius:999px;color:#173b32;background:#d8eee4;font-size:.85rem;font-weight:650}.status-overdue,.status-declined,.status-cancelled{color:#742020;background:#f8dddd}.status-pending,.status-sent{color:#674400;background:#fff0c2}.skeleton{min-height:6rem;border-radius:var(--radius-card);background:linear-gradient(90deg,#e7edef,#f8fafb,#e7edef);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.install-hint,.toast{position:fixed;z-index:4;right:1rem;bottom:5.5rem;left:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:.8rem;background:#fff;box-shadow:0 4px 18px #0f172a1f}.install-hint button,.toast button{min-height:44px;border:0;color:var(--tenant-primary);background:transparent;font-weight:700}.sheet-backdrop{position:fixed;z-index:5;top:0;right:0;bottom:0;left:0;display:flex;align-items:end;background:#00000073}.sheet{width:100%;max-height:90vh;overflow:auto;padding:1rem;border-radius:1rem 1rem 0 0;background:#fff}.sheet-header{display:flex;align-items:center;justify-content:space-between}.file-drop{display:grid;gap:.75rem;padding:1rem;border:2px dashed var(--color-border);border-radius:.7rem}.avatar{display:inline-grid;place-items:center;border-radius:50%;-o-object-fit:cover;object-fit:cover;background:#e4ecee}.avatar-medium{width:2.75rem;height:2.75rem}@media (min-width: 700px){.app-main{padding-top:2rem}.button{width:auto;min-width:9rem}.empty-action{width:auto}.bottom-nav{position:static;border-top:0}}
