:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#123b50;background:#f3f7f6;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 10% -10%,#cee9dc 0,transparent 36%),linear-gradient(125deg,#f1f7f4,#f4f7f9)}
.header{background:#123e64;color:white}
.header-inner{max-width:1140px;padding:21px 22px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-size:24px;font-weight:840;letter-spacing:-1px}.logo span{color:#8ce0b8}.logo small{display:block;font-size:11px;font-weight:500;opacity:.8;letter-spacing:.2px}
.env{font-size:11px;font-weight:700;letter-spacing:.09em;opacity:.7}
.container{max-width:1140px;margin:auto;padding:34px 22px 54px}
.heading{margin-bottom:24px}.heading h1{font-size:clamp(27px,4.5vw,37px);letter-spacing:-1.3px;margin:5px 0 7px}.heading p{color:#627b81;margin:0;line-height:1.5}
.overline{font-size:11px;color:#137559;font-weight:830;letter-spacing:.12em}
h2{font-size:20px;margin:7px 0 19px;letter-spacing:-.4px}
.card{background:#fff;border:1px solid #dbe8e4;border-radius:19px;padding:24px;box-shadow:0 10px 30px #153d5b09;margin-bottom:18px}
.entry{max-width:540px;margin:18px auto 22px}
.status{background:#e9f4ef;color:#245c52;border-radius:11px;padding:15px 18px;font-size:14px;line-height:1.4;max-width:100%;margin:0 0 22px}
.status.error{background:#ffede9;color:#a43c34}.status.success{background:#e1f5e9;color:#126342}
label{font-weight:730;font-size:13px;margin:17px 0 7px;display:block}
input{width:100%;border:1px solid #bad1c9;border-radius:11px;padding:14px 13px;font-size:16px;color:#153a50;background:white}
button{cursor:pointer;border:0;border-radius:11px;padding:12px 17px;font-weight:730;font-size:13px;min-height:44px;transition:background .15s ease}
button:disabled{opacity:.55;cursor:wait}
input:focus-visible,button:focus-visible{outline:3px solid #7cd8b1;outline-offset:2px}
.primary{background:#166b55;color:white}.primary:hover:not(:disabled){background:#105844}
.secondary{background:#e8f3ed;color:#145d49}.secondary:hover:not(:disabled){background:#d1e9db}
#loginButton{margin-top:20px;width:100%;display:flex;justify-content:space-between;align-items:center}
.hint{font-size:12px;color:#698087;margin:19px 0 0;line-height:1.5}.muted{color:#698087;line-height:1.5}
.hidden{display:none!important}
.qr{max-width:230px;display:block;width:100%;margin:17px auto;border:8px solid white;border-radius:12px}
.secretWrap{margin:10px 0}.secret{word-break:break-all;background:#f0f6f5;border-radius:10px;padding:10px;margin-top:8px;font-size:12px}
.action-row{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:19px}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:17px}
.metric{background:#fff;padding:21px;border:1px solid #dae7e2;border-radius:15px;min-height:118px}
.metric strong{font-size:32px;display:block;margin-bottom:6px;line-height:1;font-variant-numeric:tabular-nums;color:#143f5d}.metric span{font-size:12px;color:#627b84;line-height:1.4;display:block}
.module-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.module-header h2{margin-bottom:0}
.tabs{display:flex;gap:8px;margin:25px 0 18px;flex-wrap:wrap}
.tab{border-radius:24px;background:#e9f2ee;color:#205e55;padding:10px 14px;min-height:42px}.tab.selected{background:#176a56;color:#fff}
.table-scroller{max-width:100%;overflow-x:auto}table{width:100%;min-width:620px;border-collapse:collapse;text-align:left;font-size:13px}
th{border-bottom:1px solid #d9e7e4;font-size:11px;color:#698088;text-transform:uppercase;letter-spacing:.05em;padding:12px 10px}td{border-bottom:1px solid #edf1f0;padding:14px 10px;vertical-align:top;max-width:260px;overflow-wrap:anywhere}
tr:hover td{background:#fbfcfc}td.empty{text-align:center;color:#7c9196;padding:24px}
footer{border-top:1px solid #d8e7e2;margin-top:34px;padding-top:17px;font-size:11px;color:#768b93;line-height:1.5}
@media(max-width:720px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.env{font-size:9px}.header-inner{padding:17px 18px}.container{padding:27px 16px}}

/* Operações administrativas: decisão explícita, sem ações destrutivas implícitas */
.row-actions{min-width:156px}.row-actions button{display:inline-block;padding:9px 12px;margin:2px;min-height:42px}
.row-actions .outline{background:white;color:#245c52;border:1px solid #b9d6cc}.row-actions .outline:hover{background:#e9f6f0}
.admin-dialog{border:1px solid #d2e5dd;border-radius:20px;max-width:min(510px,92vw);width:100%;padding:26px;color:#123b50;box-shadow:0 22px 68px #062d3d44}
.admin-dialog::backdrop{background:#092d3a99;backdrop-filter:blur(2px)}
.admin-dialog .action-row{margin-top:24px}
.admin-dialog p.muted{font-size:14px;line-height:1.55}
