:root{--primary: #00a09b;--primary-container: #00c6b5;--secondary: #e0e0e0;--tertiary: #00526b;--background: #fffbfe;--surface: #fffbfe;--on-secondary: #808080;--river-1: #00526b;--river-2: #017396;--river-3: #00a09b;--river-4: #01d1ca;--warning: #ffcc00;--danger: #c13737;--danger-disabled: #e0a8a8;--text: #14262b;--muted: #64747a;--line: #d8e6e7;--soft-line: #edf5f5;--nav-surface: #ffffff;--panel: #ffffff;--app-bg: #f4fbfb;--shadow: 0 18px 48px rgba(0, 82, 107, .14);--soft-shadow: 0 10px 30px rgba(0, 82, 107, .08);--tight-shadow: 0 4px 14px rgba(0, 82, 107, .06);font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif;color:var(--text);background:var(--app-bg)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--app-bg)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.64}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(1,209,202,.32);outline-offset:2px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--primary)}.login-card{width:min(540px,100%);display:grid;gap:26px;padding:42px 48px 46px;border-radius:8px;background:#fff;border:1px solid rgba(0,82,107,.1);box-shadow:6px 0 #00526b2e,var(--shadow)}.login-brand{display:grid;justify-items:center;gap:8px;text-align:center}.login-logo{width:min(220px,72%)}.eyebrow{margin:0 0 6px;color:var(--tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}h1,h2{margin:0;letter-spacing:0}.login-brand h1{color:var(--tertiary);font-size:clamp(1.7rem,4vw,2.25rem)}.login-form{display:grid;gap:16px}.field{position:relative;display:grid;font-weight:700}.field-label{position:absolute;z-index:1;top:8px;left:44px;color:var(--muted);font-size:.78rem;font-weight:800}.input-shell{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:8px;min-height:60px;padding:16px 12px 4px}.input-shell:focus-within,.search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #00a09b1f}.input-shell svg,.search-box svg{color:var(--primary);flex:0 0 auto}.input-shell input{width:100%;min-height:44px;border:0;outline:0;background:transparent}.password-toggle{width:38px;height:38px;border:0;border-left:1px solid var(--line);background:transparent;color:var(--text);display:inline-grid;place-items:center}.search-box{display:flex;align-items:center;gap:10px;min-height:48px;border:1px solid var(--line);background:#fff;border-radius:8px;padding:0 14px}.search-box input{width:100%;min-height:46px;border:0;outline:0;background:transparent}.form-error{color:var(--danger);font-weight:700}.primary-button,.danger-button,.secondary-button,.ghost-button{border:0;border-radius:8px;min-height:44px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}.primary-button{background:var(--primary);color:#fff;box-shadow:0 8px 18px #00a09b33}.danger-button{background:var(--danger);color:#fff}.secondary-button,.ghost-button{background:#edf7f7;color:var(--tertiary)}.login-button{width:100%}.app-shell{min-height:100vh;display:grid;grid-template-columns:236px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:20px 16px;display:flex;flex-direction:column;gap:24px;color:var(--text);background:var(--nav-surface);border-right:1px solid var(--line)}.brand-block{display:grid;gap:8px;padding:2px 8px 8px;color:var(--tertiary);font-weight:900}.brand-block img{width:146px;border-radius:8px}.side-nav{display:grid;gap:8px}.side-nav a,.bottom-nav a,.mobile-drawer a,.mobile-drawer button{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:8px}.side-nav a{color:var(--muted);font-weight:800;border:1px solid transparent}.side-nav a svg{color:var(--primary)}.side-nav a.active{background:#e7f8f7;border-color:#00a09b38;color:var(--tertiary);box-shadow:inset 4px 0 0 var(--primary)}.logout-button{margin-top:auto;justify-content:flex-start;box-shadow:none}.content-shell{min-width:0}.topbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 28px;border-bottom:1px solid var(--line);background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-title{min-width:0}.topbar h1{color:var(--text);font-size:clamp(1.35rem,2vw,1.9rem)}.user-pill{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#fff;color:var(--tertiary);font-weight:800}.user-avatar{width:28px;height:28px;border-radius:50%;display:inline-grid;place-items:center;background:var(--primary);color:#fff;font-size:.8rem;font-weight:900;text-transform:uppercase}.main-content{padding:24px}.work-panel,.details-panel{max-width:1180px;margin:0 auto}.list-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:center;margin-bottom:18px}.filter-row{display:flex;gap:8px;overflow-x:auto;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fff}.filter-row button{border:1px solid transparent;border-radius:7px;background:#eef8f8;color:var(--tertiary);min-height:44px;min-width:118px;padding:0 18px;font-weight:800}.filter-row button.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 8px 18px #00a09b2e}.record-list{display:grid;gap:12px}.swipe-row{position:relative;overflow:hidden;border-radius:8px}.swipe-background{position:absolute;top:0;right:0;bottom:0;left:0;display:none;align-items:center;gap:8px;padding:0 20px;color:#fff;font-weight:900}.approve-bg{justify-content:flex-end;background:var(--primary)}.reject-bg{justify-content:flex-start;background:var(--danger)}.swipe-content{position:relative;background:var(--surface)}.record-card{min-height:96px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:stretch;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--tight-shadow)}.record-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,230px);gap:18px}.record-main div,.record-value,.record-actions{display:grid;gap:5px}.record-identity strong{color:var(--text);font-size:1rem}.record-main span,.record-value span,.record-date,small{color:var(--muted)}.record-meta,.record-date{display:inline-flex;align-items:center;gap:6px}.record-meta svg,.record-date svg{color:var(--primary);flex:0 0 auto}.record-value strong{color:var(--tertiary);font-size:1.1rem}.record-actions{justify-items:end;align-content:center;min-width:128px}.desktop-actions{display:flex;gap:8px}.icon-action{width:36px;height:36px;border:0;border-radius:8px;color:#fff;display:inline-grid;place-items:center}.icon-action svg{width:18px}.icon-action.approve{background:var(--primary)}.icon-action.reject{background:var(--danger)}.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;min-width:92px;padding:6px 11px;font-size:.78rem;font-weight:900}.status-pendente{background:#ffcc0038;color:#705200}.status-aprovado{background:#00a09b29;color:var(--tertiary)}.status-reprovado{background:#c1373721;color:var(--danger)}.panel-state{border:1px dashed var(--line);border-radius:8px;padding:34px;text-align:center;background:#fff;color:var(--muted);font-weight:800}.error-state{color:var(--danger)}.back-link{display:inline-flex;gap:6px;align-items:center;color:var(--tertiary);font-weight:900;margin-bottom:16px}.details-header,.details-grid,.metric-band{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--tight-shadow)}.details-header{padding:18px;display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;overflow:hidden;background:var(--line)}.info-cell{display:grid;gap:6px;padding:16px;background:#fff}.info-cell span{color:var(--muted);font-weight:800}.info-cell.wide{grid-column:1 / -1}.metric-band{margin-top:14px;padding:22px;text-align:center;display:grid;gap:4px}.metric-band strong{font-size:clamp(2rem,5vw,3rem);color:var(--tertiary)}.sticky-actions{position:sticky;bottom:16px;margin:18px auto 0;display:flex;justify-content:center;gap:12px;padding:12px;border-radius:8px;background:#fffbfee6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.profile-panel{display:grid;gap:16px}.profile-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;margin-bottom:16px;padding:22px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:var(--tight-shadow)}.profile-avatar{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--tertiary),var(--primary));color:#fff;font-size:4rem;font-weight:900;text-transform:uppercase;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-heading{display:grid;gap:4px;min-width:0}.profile-heading h2{font-size:clamp(1.45rem,3vw,2rem);color:var(--text)}.profile-heading span{color:var(--muted);font-weight:700;overflow-wrap:anywhere}.role-list{display:flex;flex-wrap:wrap;gap:8px}.role-badge{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:999px;background:#e7f8f7;color:var(--tertiary);font-weight:900}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#071f266b;z-index:20}.dialog{width:min(420px,100%);display:grid;gap:14px;padding:22px;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.dialog-icon{color:var(--warning)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.toast-stack{position:fixed;right:20px;bottom:20px;display:grid;gap:10px;z-index:30}.toast{min-width:min(360px,calc(100vw - 40px));display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-radius:8px;background:#102d35;color:#fff;box-shadow:var(--shadow)}.toast button{border:0;background:transparent;color:var(--primary-container);font-weight:900}.offline-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;background:#fff4c2;color:#5c4300;font-weight:800}.bottom-nav,.mobile-only,.mobile-drawer{display:none}.full-page-state{min-height:100vh;display:grid;place-items:center;color:var(--tertiary);font-weight:900}@media (max-width: 820px){.app-shell{display:block;padding-bottom:68px}.sidebar{display:none}.mobile-only{display:inline-grid}.icon-button{width:42px;height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;place-items:center}.topbar{padding:12px 14px}.topbar-title .eyebrow,.user-pill{display:none}.main-content{padding:14px}.mobile-drawer{display:grid;gap:6px;margin:0 14px 10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.mobile-drawer a.active{background:#e7f8f7;color:var(--tertiary);font-weight:900}.mobile-drawer button{border:0;background:transparent;text-align:left;color:var(--danger)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);background:#fff}.bottom-nav a{min-height:64px;justify-content:center;flex-direction:column;gap:2px;border-radius:0;font-size:.78rem;color:var(--muted)}.bottom-nav a.active{color:var(--primary);font-weight:900}.list-toolbar{grid-template-columns:1fr}.filter-row{width:100%}.filter-row button{min-width:max-content;flex:1 0 auto}.swipe-row{touch-action:pan-y}.swipe-background{display:flex}.record-card,.record-main{grid-template-columns:1fr}.record-actions{justify-items:start;grid-template-columns:repeat(3,auto);justify-content:space-between;align-items:center;min-width:0}.desktop-actions{display:none}.details-grid{grid-template-columns:1fr}.details-header{display:grid}.profile-card{grid-template-columns:1fr;justify-items:center;text-align:center}.profile-avatar{width:128px;height:128px;font-size:3.4rem}.sticky-actions{bottom:80px}.toast-stack{left:12px;right:12px;bottom:78px}}@media (max-width: 560px){.login-page{padding:16px}.login-card{padding:30px 22px 32px}.record-actions{grid-template-columns:1fr;gap:8px;justify-content:start}}@media (prefers-reduced-motion: no-preference){.record-card,.swipe-content,.primary-button,.danger-button,.filter-row button,.side-nav a,.bottom-nav a{transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}.swipe-row.is-swiping .swipe-content{transition:none}.swipe-row .record-card:hover{transform:none}.record-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px #00526b1a}.primary-button:hover,.danger-button:hover,.filter-row button:hover{transform:translateY(-1px)}}
