
:root{
  --bg:#070604;
  --panel:#12100c;
  --panel2:#1b1610;
  --ink:#f6ead1;
  --muted:#c5aa75;
  --gold:#c99a45;
  --gold2:#8a6429;
  --line:#4a351e;
  --field:#f8f1df;
  --dark:#1b130b;
  --green:#2e7d46;
  --red:#8a302a;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Georgia, "Times New Roman", serif;background:
radial-gradient(circle at top, rgba(201,154,69,.18), transparent 35%),
linear-gradient(180deg,#070604,#110d08 55%,#070604);color:var(--ink)}
a{color:inherit;text-decoration:none}
.home{
  min-height:100vh;display:flex;align-items:center;justify-content:center;padding:18px;
}
.home-card{
  width:min(1180px,96vw);min-height:92vh;border:1px solid var(--line);border-radius:26px;
  background:linear-gradient(145deg,rgba(27,22,16,.96),rgba(12,9,6,.98));
  box-shadow:0 22px 80px rgba(0,0,0,.55), inset 0 0 90px rgba(201,154,69,.08);
  padding:28px;display:grid;grid-template-columns:360px 1fr;gap:26px;align-items:center;
}
.logo{max-width:100%;filter:drop-shadow(0 18px 22px rgba(0,0,0,.65))}
.kicker{letter-spacing:.22em;color:var(--muted);text-transform:uppercase;font-size:12px}
h1{font-size:44px;line-height:1.02;margin:10px 0 12px;text-transform:uppercase;color:#fff4d5;text-shadow:0 2px 0 #000}
.message{font-size:18px;line-height:1.45;color:#ead8ad;margin:0 0 18px;max-width:680px}
.nav-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px}
.nav-card{
  border:1px solid var(--line);border-radius:16px;padding:15px 16px;background:linear-gradient(135deg,rgba(201,154,69,.18),rgba(255,255,255,.02));
  min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:10px;transition:.18s
}
.nav-card:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 10px 28px rgba(0,0,0,.3)}
.nav-card strong{display:block;font-size:18px;color:#fff1c9}
.nav-card span{display:block;font-size:12px;color:var(--muted);margin-top:4px}
.arrow{font-size:28px;color:var(--gold)}
.page{min-height:100vh;padding:12px;background:
linear-gradient(180deg,rgba(201,154,69,.09),transparent 260px),
radial-gradient(circle at 85% 0, rgba(201,154,69,.10), transparent 28%),
#080604}
.topbar{
  min-height:74px;border:1px solid var(--line);border-radius:18px;background:rgba(18,16,12,.96);
  display:flex;align-items:center;gap:16px;padding:10px 16px;margin-bottom:12px;position:sticky;top:8px;z-index:3;box-shadow:0 8px 30px rgba(0,0,0,.35)
}
.topbar img{height:54px;width:54px;object-fit:contain}
.topbar h2{margin:0;font-size:27px;color:#fff0c5;text-transform:uppercase;letter-spacing:.02em}
.topbar p{margin:2px 0 0;color:var(--muted);font-size:13px}
.back{margin-left:auto;padding:9px 14px;border:1px solid var(--gold2);border-radius:999px;background:#191109;color:#ffe6a4;font-weight:bold;font-size:13px}
.content{max-width:1240px;margin:0 auto}
.card-panel{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(27,22,16,.97),rgba(13,10,7,.97));padding:16px;margin-bottom:14px;box-shadow:0 14px 34px rgba(0,0,0,.25)}
.section-title{font-size:20px;color:#ffe1a0;margin:0 0 10px;border-bottom:1px solid var(--line);padding-bottom:8px;text-transform:uppercase}
.pretty-table{width:100%;border-collapse:separate;border-spacing:0 6px;font-size:14px}
.pretty-table th{color:#f8d688;background:rgba(201,154,69,.14);padding:9px;text-align:left;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pretty-table td{padding:8px 9px;background:rgba(255,255,255,.04);border-top:1px solid rgba(201,154,69,.14);border-bottom:1px solid rgba(201,154,69,.14);vertical-align:top}
.pretty-table tr td:first-child,.pretty-table tr th:first-child{border-left:1px solid rgba(201,154,69,.18);border-radius:10px 0 0 10px}
.pretty-table tr td:last-child,.pretty-table tr th:last-child{border-right:1px solid rgba(201,154,69,.18);border-radius:0 10px 10px 0}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.info-card{border:1px solid rgba(201,154,69,.28);border-radius:16px;background:rgba(255,255,255,.035);padding:13px;min-height:88px}
.info-card h3{margin:0 0 7px;color:#ffdf99;font-size:17px}
.info-card p{margin:3px 0;color:#ead8ad;font-size:13px}
.badge{display:inline-block;padding:3px 9px;border:1px solid var(--gold2);border-radius:999px;color:#ffe2a2;font-size:12px;margin:2px 4px 2px 0;background:rgba(201,154,69,.1)}
/* Registro */
.registro-page{min-height:100vh;overflow:auto;padding:8px;background:#080604}
.registro-wrap{max-width:1320px;min-height:auto;height:auto;margin:0 auto;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(18,14,9,.98),rgba(5,4,3,.98));padding:8px;display:flex;flex-direction:column;gap:6px}
.registro-head{height:58px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;background:rgba(201,154,69,.09);padding:5px 10px;flex:none}
.registro-head img{height:46px;width:46px;object-fit:contain}
.registro-head h1{font-size:22px;margin:0;color:#fff1c9;letter-spacing:.03em}
.registro-head .sub{font-size:11px;color:var(--muted);margin-top:1px}
.registro-head .back{padding:7px 11px;font-size:11px}
.registro-sections{display:grid;grid-template-columns:1.08fr .92fr;gap:6px;flex:none}
.compact-box{border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);padding:6px}
.compact-box h3{margin:0 0 5px;color:#ffd994;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.form-grid{display:grid;grid-template-columns:142px 1fr 142px 1fr;gap:4px 6px;align-items:center}
.form-grid label{font-size:11px;color:#e8d1a0}
input,select,textarea{font-family:Arial,sans-serif}
.registro-page input,.registro-page select,.registro-page textarea{
  width:100%;height:22px;border:1px solid #6a4b24;border-radius:6px;background:var(--field);color:#111;padding:2px 6px;font-size:12px;outline:none}
.registro-page textarea{height:22px;resize:none;overflow:hidden}
.registro-page input[readonly]{background:#dfd2ae;color:#22190c;font-weight:bold}
.items-box{flex:none;min-height:0;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);padding:6px;overflow:hidden}
.items-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.items-title h3{margin:0;color:#ffd994;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.items-title span{font-size:11px;color:var(--muted)}
.order-table{width:100%;border-collapse:collapse;table-layout:fixed;font-family:Arial,sans-serif;font-size:11px}
.order-table th{height:22px;background:#2a1d0f;color:#ffe0a0;border:1px solid #5a3d1b;padding:2px 4px}
.order-table td{border:1px solid #4a351e;padding:2px;background:rgba(255,255,255,.035)}
.order-table input,.order-table select{height:22px;font-size:11px;border-radius:4px;padding:1px 4px}
.order-table .idx{width:32px;text-align:center;color:#f4d58c;font-weight:bold}
.order-table .qty{width:105px}
.order-table .unit,.order-table .total{width:112px}
.order-table .obs{width:180px}
.footer-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:6px;flex:none}
.total-box{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--gold2);border-radius:12px;background:rgba(201,154,69,.12);padding:8px 12px}
.total-box span{font-size:13px;color:#f4d58c;text-transform:uppercase;letter-spacing:.08em}
.total-box strong{font-family:Arial,sans-serif;font-size:26px;color:#fff5d8}
.delivery-grid{display:grid;grid-template-columns:130px 1fr 120px 1fr;gap:4px 6px;align-items:center}
.delivery-grid label{font-size:11px;color:#e8d1a0}
.print-note{font-size:10px;color:#bda676;text-align:center;margin-top:1px}
@media (max-width:900px){
  .home-card{grid-template-columns:1fr;text-align:center;min-height:auto}
  .home-card .logo{max-width:260px;margin:0 auto}
  .nav-grid,.grid-2,.grid-3{grid-template-columns:1fr}
  .topbar{position:static}
  .registro-page{overflow:auto;height:auto}
  .registro-wrap{height:auto}
  .registro-sections,.footer-grid{grid-template-columns:1fr}
  .form-grid,.delivery-grid{grid-template-columns:1fr}
}

@media (min-width:901px){
  .registro-wrap{max-height:calc(100vh - 16px);overflow:hidden}
  .order-table th{height:24px;font-size:12px}
  .order-table td{height:26px}
  .order-table input,.order-table select{height:23px;font-size:12px}
  .registro-page input,.registro-page select,.registro-page textarea{height:23px;font-size:12px}
  .total-box{padding:7px 12px}
  .total-box strong{font-size:25px}
  .lista-membros{max-width:860px;margin:0 auto}
}

/* Registro do Abatedouro */
.abatedouro-page{overflow:hidden}
.abatedouro-wrap{
  width:min(1120px, calc(100vw - 16px));height:calc(100vh - 16px);margin:0 auto;
  border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(18,14,9,.98),rgba(5,4,3,.98));
  padding:8px;display:flex;flex-direction:column;gap:8px;overflow:hidden;
}
.abatedouro-hero{
  border:1px solid var(--line);border-radius:14px;background:
  linear-gradient(135deg,rgba(201,154,69,.18),rgba(255,255,255,.03));
  padding:12px 16px;display:flex;justify-content:space-between;align-items:center;min-height:98px;
}
.abatedouro-hero h2{margin:4px 0 4px;color:#fff1c9;font-size:32px;text-transform:uppercase;line-height:1}
.abatedouro-hero p{margin:0;color:#ead8ad;font-size:14px}
.stamp{
  border:2px solid var(--gold2);color:#ffe0a0;border-radius:12px;padding:10px 15px;
  transform:rotate(-4deg);font-size:20px;letter-spacing:.12em;font-weight:bold;background:rgba(201,154,69,.08)
}
.abatedouro-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:8px}
.abatedouro-card{padding:10px}
.abatedouro-card h3{font-size:13px;margin-bottom:8px}
.abatedouro-form{display:grid;grid-template-columns:170px 1fr;gap:7px 8px;align-items:center}
.abatedouro-form label{font-size:12px;color:#e8d1a0}
.abatedouro-form input,.abatedouro-form select{
  width:100%;height:30px;border:1px solid #6a4b24;border-radius:7px;background:var(--field);color:#111;
  padding:3px 8px;font-size:14px;font-family:Arial,sans-serif;
}
.abatedouro-form input[readonly]{background:#dfd2ae;color:#22190c;font-weight:bold}
.abatedouro-results{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px}
.result-card{
  border:1px solid var(--gold2);border-radius:15px;background:rgba(201,154,69,.12);padding:14px 16px;
  min-height:100px;display:flex;flex-direction:column;justify-content:center;box-shadow:inset 0 0 28px rgba(201,154,69,.04)
}
.result-card span{color:#f4d58c;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.result-card strong{font-family:Arial,sans-serif;font-size:30px;color:#fff5d8;margin-top:6px}
.main-result strong{font-size:42px}
.ab-note{font-size:12px;margin-top:auto;padding-bottom:2px}
@media (max-width:900px){
  .abatedouro-page{overflow:auto}
  .abatedouro-wrap{height:auto;width:auto}
  .abatedouro-grid,.abatedouro-results{grid-template-columns:1fr}
  .abatedouro-form{grid-template-columns:1fr}
  .stamp{display:none}
}


.header-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;}
.export-png-btn{border:1px solid rgba(221,180,88,.75);background:linear-gradient(180deg,#d8ad55,#8b5d23);color:#1b1008;font-weight:900;text-transform:uppercase;letter-spacing:.4px;border-radius:10px;padding:9px 12px;box-shadow:0 6px 16px rgba(0,0,0,.35);cursor:pointer;white-space:nowrap;}
.export-png-btn:hover{filter:brightness(1.08);transform:translateY(-1px);}
.export-hidden{display:none!important;}
@media print{.no-export{display:none!important;}}


/* Registro de Compras Diversas */
.compras-page{overflow:auto}
.compras-wrap{max-width:1320px}
.compras-top{grid-template-columns:1.2fr .8fr}
.compras-top textarea{width:100%;height:52px;resize:none;overflow:hidden}
.compras-note p{margin:0;color:#ead8ad;font-size:13px;line-height:1.35}
@media (min-width:901px){
  .compras-wrap{max-height:calc(100vh - 16px);overflow:hidden}
}
@media (max-width:900px){
  .compras-top{grid-template-columns:1fr}
}
