*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f9fafb;--fg:#111827;--muted:#6b7280;--card:#ffffff;--border:#e5e7eb;--accent:#111827;--green:#16a34a;--yellow:#ca8a04;--red:#dc2626}body{background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;min-height:100dvh}main{max-width:480px;margin:0 auto;padding:1rem 1rem 6rem}button,input,select,textarea{font:inherit;min-height:44px}input,select,textarea{width:100%;padding:.6rem .8rem;border:1px solid var(--border);border-radius:.5rem;background:var(--card)}button{padding:.6rem 1rem;border:none;border-radius:.5rem;background:var(--accent);color:#fff;font-weight:600;cursor:pointer}a{color:inherit;text-decoration:none}h1{font-size:1.4rem}.card{display:block;background:var(--card);border:1px solid var(--border);border-radius:.75rem;padding:.85rem;margin-top:.6rem}.card-critical{border-color:var(--red);border-width:2px}.card-title{font-weight:700}.card-sub{color:var(--muted);font-size:.9rem;margin-top:.15rem}.card-action{margin-top:.35rem;font-size:.95rem}.card-action-critical{color:var(--red);font-weight:700}.overdue{color:var(--red);font-weight:600}.flow-header{margin-top:1.4rem;font-size:.8rem;letter-spacing:.05em;color:var(--muted);font-weight:700}.row{display:flex;gap:.5rem;align-items:center}.btn-secondary{background:transparent;color:var(--fg);border:1px solid var(--border)}.btn-small{min-height:44px;padding:.4rem .8rem;font-size:.9rem}.btn-danger{background:var(--red)}.btn-green{background:var(--green)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--card);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);z-index:10}.tab{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.5rem 0;min-height:56px;color:var(--muted);font-size:.75rem}.tab-active{color:var(--fg);font-weight:700}.state-buttons{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.econ-grid{display:grid;grid-template-columns:1fr auto;grid-gap:.35rem .75rem;gap:.35rem .75rem;margin-top:.5rem}.econ-grid dt{color:var(--muted)}.econ-grid dd{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff}.badge-aberto{background:var(--green)}.badge-fechado{background:var(--muted)}