:root{--bg:#061015;--surface:#0b1a20;--surface-2:#10262d;--line:#1a343c;--line-hi:#28515a;--mint:#39e2c2;--mint-2:#28cbb3;--cyan:#229db3;--selected:#f2c96d;--selected-bg:#292314;--text:#edf9f7;--muted:#88a3a8;--soft:#c4d7d5;--shadow:0 24px 70px rgba(0,0,0,.28)}
*{box-sizing:border-box}[hidden]{display:none!important}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% -10%,#123740 0,transparent 32%),radial-gradient(circle at 95% 15%,#0b232a 0,transparent 28%),var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums}
button,input{font:inherit}.dashboard-shell{max-width:1520px;margin:auto;padding:28px}
.topbar,.hero{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 30px;border:1px solid var(--line);border-radius:22px;background:rgba(11,26,32,.93);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:16px}.brand-mark{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(135deg,var(--mint),#48f0d2);color:var(--bg);font-weight:950;letter-spacing:-.06em;box-shadow:0 12px 32px rgba(57,226,194,.18)}
h1{font-size:clamp(25px,3vw,40px);letter-spacing:-.04em;margin:4px 0 0}.hero h1{font-size:clamp(28px,4vw,48px);margin:7px 0 5px}.hero p{margin:0;color:#dce7ef}.eyebrow,.section-tag{font-size:10px;font-weight:900;letter-spacing:.18em;color:var(--mint)}
.header-actions,.table-actions{display:flex;align-items:center;gap:10px}.header-actions form{margin:0}.live{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.live i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 5px rgba(57,226,194,.1)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:11px 17px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--mint),var(--mint-2));color:var(--bg);font-weight:850;text-decoration:none;cursor:pointer;transition:transform .18s ease,filter .18s ease,border-color .18s ease}.button:hover{transform:translateY(-1px);filter:brightness(1.05)}.button:disabled{opacity:.4;cursor:not-allowed;transform:none}.button-muted{background:#ffffff0a;color:var(--text);border:1px solid var(--line)}.button-quiet{background:transparent;color:var(--muted);border:1px solid transparent}.button-quiet:hover{border-color:var(--line);color:var(--text)}
.context-line{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:28px 3px 15px}.context-line div{display:flex;flex-direction:column;gap:5px}.context-line b{font-size:16px}.context-line span,.updated{color:var(--muted);font-size:12px}
.cards{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:14px;margin-bottom:14px}.card{min-height:134px;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--surface),#09171c);box-shadow:0 12px 34px rgba(0,0,0,.14);transition:border-color .2s ease,transform .2s ease}.card:hover{border-color:var(--line-hi);transform:translateY(-2px)}.card span,.card small{display:block;color:var(--muted);font-size:12px}.card strong{display:block;font-size:clamp(21px,2.4vw,32px);letter-spacing:-.04em;margin:15px 0 9px}.card.primary{background:linear-gradient(135deg,var(--mint),#25bfae);border-color:transparent;color:var(--bg)}.card.primary span,.card.primary small{color:#093f3b}
.analytics-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(310px,.75fr);gap:14px}.panel{background:linear-gradient(145deg,var(--surface),#08161b);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 14px 36px rgba(0,0,0,.15)}.panel-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.panel-title h2,.table-head h2{margin:4px 0 0;font-size:20px;letter-spacing:-.025em}.panel-title>span{color:var(--muted);font-size:11px;padding-top:5px}
.chart-filter{color:inherit}.category-list{display:grid;gap:5px}.category-row{display:block;width:100%;padding:9px 10px;border:1px solid transparent;border-radius:11px;background:transparent;text-align:left;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.category-row:hover{background:#ffffff05;border-color:var(--line);transform:translateX(2px)}.category-row.is-active{background:rgba(57,226,194,.08);border-color:rgba(57,226,194,.4)}.category-meta{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:12px}.category-meta>span{display:flex;align-items:center;gap:10px}.category-meta em{font-style:normal;color:var(--mint);font-weight:900;font-size:10px}.category-meta b{font-size:12px}.category-meta b small{display:inline-block;min-width:42px;margin-left:8px;color:var(--muted);font-weight:600;text-align:right}.bar{display:block;height:8px;background:#142b32;border-radius:12px;margin-top:8px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--mint),var(--cyan));border-radius:12px;transition:width .45s ease}
.donut-wrap{display:grid;place-items:center;padding:3px 0 20px}.donut{--moraes:50;--mike-end:80;width:180px;aspect-ratio:1;border:1px solid transparent;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at center,var(--surface) 0 54%,transparent 55%),conic-gradient(var(--mint) 0 calc(var(--moraes)*1%),var(--cyan) calc(var(--moraes)*1%) calc(var(--mike-end)*1%),#526e76 calc(var(--mike-end)*1%) 100%);color:var(--text);cursor:pointer;box-shadow:0 0 44px rgba(57,226,194,.08);transition:transform .2s ease,filter .2s ease}.donut:hover,.donut.is-active{transform:scale(1.035);filter:drop-shadow(0 0 18px rgba(57,226,194,.2))}.donut>span{text-align:center}.donut strong{display:block;font-size:29px}.donut small{font-size:11px;color:var(--muted)}
.legend{display:grid;gap:8px}.legend button{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;width:100%;padding:11px 8px;border:1px solid transparent;border-top-color:var(--line);border-radius:8px;background:transparent;color:inherit;text-align:left;font-size:12px;cursor:pointer;transition:background .18s ease,border-color .18s ease}.legend button:hover,.legend button.is-active{background:rgba(57,226,194,.07);border-color:rgba(57,226,194,.35)}.legend i{width:8px;height:8px;border-radius:50%}.legend .moraes{background:var(--mint)}.legend .mike{background:var(--cyan)}.legend .other{background:#526e76}.legend span{color:var(--muted)}
.evolution-panel{margin-top:14px}.month-chart{height:238px;display:grid;grid-template-columns:repeat(8,minmax(62px,1fr));align-items:end;gap:15px;padding:8px 5px 0;border-bottom:1px solid var(--line);overflow-x:auto}.month-column{height:100%;min-width:62px;display:grid;grid-template-rows:31px 1fr 25px;gap:6px;padding:0 4px;border:1px solid transparent;border-radius:10px 10px 0 0;background:transparent;color:inherit;text-align:center;cursor:pointer;transition:background .18s ease,border-color .18s ease}.month-column:hover,.month-column.is-active{background:rgba(57,226,194,.055);border-color:rgba(57,226,194,.28)}.month-value{font-size:10px;color:var(--muted);white-space:nowrap}.month-track{height:100%;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(90deg,transparent 18%,rgba(255,255,255,.018) 18% 82%,transparent 82%)}.month-track i{display:block;width:min(43px,70%);min-height:3px;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,var(--mint),var(--cyan));box-shadow:0 0 22px rgba(57,226,194,.1);transition:height .45s ease}.month-column b{font-size:10px;color:var(--muted);letter-spacing:.08em}
.table-panel{margin-top:14px;padding:0;overflow:hidden;scroll-margin-top:18px}.table-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:24px}.table-head p{margin:8px 0 0;color:var(--muted);font-size:12px}.search{height:42px;min-width:300px;display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid var(--line);border-radius:11px;background:#071419;color:var(--muted)}.search:focus-within{border-color:var(--mint);box-shadow:0 0 0 3px rgba(57,226,194,.08)}.search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:12px}.search input::placeholder{color:#648087}.active-filters{display:flex;gap:8px;flex-wrap:wrap;min-height:0;padding:0 24px}.active-filters:not(:empty){padding-bottom:18px}.filter-chip{padding:7px 11px;border:1px solid rgba(57,226,194,.28);border-radius:20px;background:rgba(57,226,194,.08);color:var(--mint);font-size:11px;cursor:pointer}.filter-chip:hover{background:rgba(57,226,194,.14)}
.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:980px}th,td{text-align:left;padding:14px 16px;border-top:1px solid var(--line);font-size:12px}th{position:sticky;top:0;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em;background:#071419;z-index:1}tbody tr{transition:background .15s ease}tbody tr:hover{background:#0e242b}.amount{text-align:right;font-weight:850;white-space:nowrap}.transaction-id{font-weight:850;color:var(--soft)}.pill{display:inline-block;padding:5px 9px;border-radius:20px;background:rgba(57,226,194,.1);color:var(--mint);font-size:10px;white-space:nowrap}.loading,.empty-state{text-align:center!important;padding:42px!important;color:var(--muted)!important}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.print-heading{display:none}
.chart-filter{position:relative}.chart-filter:focus-visible{outline:3px solid var(--selected);outline-offset:3px}.category-row.is-active{background:linear-gradient(90deg,rgba(242,201,109,.18),rgba(242,201,109,.055));border-color:var(--selected);box-shadow:inset 4px 0 0 var(--selected),0 10px 28px rgba(242,201,109,.09);transform:translateX(3px)}.category-row.is-active:after,.legend button.is-active:after,.month-column.is-active:after{content:"✓";position:absolute;top:-7px;right:-7px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--selected);color:#181307;font-size:11px;font-weight:950;box-shadow:0 5px 16px rgba(0,0,0,.35)}.category-row.is-active .category-meta em,.category-row.is-active .category-meta b,.category-row.is-active .category-meta>span{color:var(--selected)}.category-row.is-active .bar i{background:linear-gradient(90deg,var(--selected),#eaa84f)}.legend button.is-active{background:linear-gradient(90deg,rgba(242,201,109,.16),rgba(242,201,109,.045));border-color:var(--selected);box-shadow:inset 3px 0 0 var(--selected)}.legend button.is-active span,.legend button.is-active b{color:var(--selected)}.month-column.is-active{background:linear-gradient(180deg,rgba(242,201,109,.13),rgba(242,201,109,.025));border-color:var(--selected);box-shadow:inset 0 3px 0 var(--selected)}.month-column.is-active .month-track i{background:linear-gradient(180deg,var(--selected),#d89f46);box-shadow:0 0 25px rgba(242,201,109,.22)}.month-column.is-active b,.month-column.is-active .month-value{color:var(--selected)}.donut.is-active{outline:4px solid var(--selected);outline-offset:5px;filter:drop-shadow(0 0 22px rgba(242,201,109,.25));transform:scale(1.045)}.donut.is-active strong{color:var(--selected)}.filter-chip{border-color:rgba(242,201,109,.5);background:rgba(242,201,109,.12);color:var(--selected)}.filter-chip:hover{background:rgba(242,201,109,.2)}
.category-row:hover:not(.is-active){background:linear-gradient(90deg,rgba(57,226,194,.1),rgba(34,157,179,.03));border-color:rgba(57,226,194,.52);box-shadow:0 9px 25px rgba(57,226,194,.07);transform:translateX(5px)}.legend button:hover:not(.is-active){background:rgba(57,226,194,.095);border-color:rgba(57,226,194,.5);transform:translateX(3px)}.month-column:hover:not(.is-active){background:linear-gradient(180deg,rgba(57,226,194,.09),rgba(57,226,194,.015));border-color:rgba(57,226,194,.45);transform:translateY(-3px)}.donut:hover:not(.is-active){transform:scale(1.04);filter:drop-shadow(0 0 24px rgba(57,226,194,.28))}
.help code{display:block;padding:10px 12px;margin:8px 0;background:#071419;border-radius:8px;color:var(--mint)}.help p,.connection p{font-size:13px;color:var(--muted)}.connection{text-align:center;max-width:700px;margin:24px auto}.qr{width:min(360px,90%);border:12px solid #fff;border-radius:14px}.success{color:var(--mint)!important;font-weight:800}footer{display:flex;justify-content:space-between;color:var(--muted);padding:28px 3px;font-size:11px}
@media(max-width:1050px){.dashboard-shell{padding:16px}.topbar,.hero{padding:22px}.cards{grid-template-columns:1fr 1fr}.analytics-grid{grid-template-columns:1fr}.table-head{align-items:flex-start;flex-direction:column}.table-actions{width:100%;flex-wrap:wrap}.search{flex:1;min-width:240px}}
@media(max-width:620px){.dashboard-shell{padding:10px}.topbar,.hero{align-items:flex-start;flex-direction:column;padding:18px;border-radius:17px}.brand{align-items:flex-start}.brand-mark{width:42px;height:42px;border-radius:12px}.eyebrow{font-size:8px;letter-spacing:.12em}h1{font-size:25px}.header-actions{width:100%;justify-content:space-between}.live{font-size:10px}.context-line{align-items:flex-start;flex-direction:column;margin:22px 3px 12px}.cards{grid-template-columns:1fr 1fr;gap:9px}.card{min-height:118px;padding:16px;border-radius:15px}.card strong{font-size:20px;margin:12px 0 8px}.card span,.card small{font-size:10px}.panel{padding:17px;border-radius:16px}.panel-title{margin-bottom:14px}.panel-title h2{font-size:18px}.panel-title>span{font-size:9px}.category-row{padding:9px 5px}.category-meta{align-items:flex-start}.category-meta>span{max-width:56%}.category-meta b{white-space:nowrap}.category-meta b small{display:block;margin:2px 0 0}.month-chart{height:220px;grid-template-columns:repeat(8,70px);gap:7px;margin-right:-10px}.table-head{padding:18px}.table-actions{display:grid;grid-template-columns:1fr 1fr}.search{grid-column:1/-1;min-width:0;width:100%}.active-filters{padding-left:18px;padding-right:18px}.table-wrap{padding:0 12px;overflow:visible}table{min-width:0}thead{display:none}tbody,table{display:block}tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;margin:0 0 12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#09171c}tbody td{display:flex;flex-direction:column;gap:4px;padding:0;border:0;font-size:12px}tbody td:before{content:attr(data-label);color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}tbody td:nth-child(3){grid-column:1/-1;grid-row:1}tbody td:nth-child(7){align-items:flex-end;text-align:right}.empty-state{display:block!important;grid-column:1/-1!important;text-align:center!important}.table-footer{padding:14px 18px}.table-footer .button{min-height:38px;padding:9px 12px;font-size:11px}footer{flex-direction:column;gap:8px;padding:24px 3px}}
@media(max-width:380px){.cards{grid-template-columns:1fr}.header-actions .live{display:none}.table-actions{grid-template-columns:1fr}.search{grid-column:1}.button{width:100%}}
@media print{@page{size:A4 landscape;margin:12mm}body{background:#fff;color:#111}.topbar,.context-line,.cards,.analytics-grid,.evolution-panel,.table-head,.active-filters,.table-footer,footer{display:none!important}.dashboard-shell{max-width:none;padding:0}.table-panel{margin:0;border:0;box-shadow:none;background:#fff}.print-heading{display:block;padding:0 0 14px;color:#111}.print-heading span{font-size:9px;font-weight:800;letter-spacing:.14em}.print-heading h2{margin:5px 0;font-size:21px}.print-heading p{margin:0;color:#555;font-size:10px}.table-wrap{overflow:visible}table{min-width:0;color:#111}th,td{padding:7px 8px;border-color:#ddd;font-size:9px}th{position:static;background:#f0f3f3;color:#333}.pill{border:1px solid #bbb;background:none;color:#111}.amount{color:#111}}

.investment-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:10px}.investment-summary .card strong{font-size:clamp(23px,2.4vw,36px)}.investment-note{color:#9aadb5;font-size:12px;line-height:1.6;margin:0 0 24px;max-width:980px}@media(max-width:700px){.investment-summary{grid-template-columns:1fr}.investment-summary .card{min-height:110px}.investment-note{font-size:11px}}@media print{.investment-note{display:none}}

.pill-scheduled{background:#3b3019;color:#ffd58a;border:1px solid #8c672e}#statusFilter{background:#10242b;color:#e9f7f5;border:1px solid #38565e;border-radius:8px;padding:8px 12px;margin:8px;font:inherit}

/* Login institucional — identidade visual Fazenda Petrolina */
.login-page{min-height:100svh;background:#07120c;color:#f7f4ed;overflow-x:hidden}
.login-stage{min-height:100svh;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(420px,.7fr);background:#07120c}
.login-visual{position:relative;min-height:100svh;padding:clamp(30px,4vw,62px);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:#07120c url("login-hero.webp") center 51%/cover no-repeat;animation:loginReveal .9s cubic-bezier(.16,1,.3,1) both}
.login-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,transparent,#000 35%,transparent);opacity:.2}
.login-visual-shade{position:absolute;inset:0;background:radial-gradient(circle at 72% 25%,rgba(200,180,122,.13),transparent 30%),linear-gradient(180deg,rgba(4,12,8,.2),rgba(4,12,8,.48) 45%,rgba(4,12,8,.92)),linear-gradient(90deg,rgba(4,12,8,.76),rgba(4,12,8,.1))}
.login-brand,.login-visual-copy,.login-visual-foot{position:relative;z-index:2}.login-brand,.login-mobile-brand{display:flex;align-items:center;gap:14px}.farm-logo-box{width:56px;height:56px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(14px);box-shadow:inset 0 1px rgba(255,255,255,.13)}.farm-logo-box svg{width:39px;height:39px}.farm-wordmark{line-height:1}.farm-wordmark small{display:block;margin-bottom:5px;font-size:9px;letter-spacing:.36em;text-transform:uppercase;color:rgba(255,255,255,.62)}.farm-wordmark strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:400;letter-spacing:.01em}
.login-visual-copy{max-width:700px;padding:10vh 0 3vh}.login-visual-copy>span{font-size:10px;font-weight:700;letter-spacing:.27em;text-transform:uppercase;color:#dcca94}.login-visual-copy h1{margin:19px 0 20px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5vw,78px);font-weight:400;line-height:.98;letter-spacing:-.045em}.login-visual-copy p{max-width:510px;margin:0;color:rgba(247,244,237,.72);font-size:clamp(14px,1.25vw,18px);line-height:1.7}.login-visual-foot{display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.58);font-size:9px;font-weight:700;letter-spacing:.23em;text-transform:uppercase}.login-visual-foot i{width:7px;height:7px;border-radius:50%;background:#c8b47a;box-shadow:0 0 18px rgba(200,180,122,.85)}
.login-access{position:relative;display:grid;place-items:center;padding:clamp(28px,5vw,78px);background:radial-gradient(circle at 100% 0,rgba(200,180,122,.1),transparent 32%),#f4f0e7;color:#17221a}.login-access:before{content:"";position:absolute;inset:20px;border:1px solid rgba(13,33,22,.09);pointer-events:none}.login-card{position:relative;z-index:1;width:min(100%,460px);animation:loginCardIn .8s .18s cubic-bezier(.16,1,.3,1) both}.login-mobile-brand{display:none}.access-badge{display:inline-flex;align-items:center;gap:8px;margin-bottom:36px;padding:8px 11px;border:1px solid rgba(13,33,22,.11);border-radius:999px;background:rgba(255,255,255,.48);color:#526057;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.access-badge i{width:6px;height:6px;border-radius:50%;background:#2f7650;box-shadow:0 0 0 4px rgba(47,118,80,.1)}.login-kicker{display:block;color:#937d43;font-size:9px;font-weight:900;letter-spacing:.22em}.login-card h2{margin:12px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,4vw,55px);font-weight:400;letter-spacing:-.045em}.login-intro{max-width:390px;margin:0 0 34px;color:#68736b;font-size:14px;line-height:1.65}.login-error{display:flex;align-items:flex-start;gap:10px;margin:-12px 0 22px;padding:12px 14px;border:1px solid rgba(146,60,44,.22);border-radius:12px;background:rgba(171,70,50,.07);color:#874235;font-size:12px;line-height:1.45}.login-error span{display:grid;place-items:center;flex:0 0 19px;height:19px;border-radius:50%;background:#9b4f40;color:#fff;font-size:11px;font-weight:900}.login-form{display:grid;gap:20px}.login-form label>span{display:block;margin:0 0 8px;color:#334138;font-size:11px;font-weight:800;letter-spacing:.04em}.login-form input{width:100%;height:55px;padding:0 17px;border:1px solid rgba(13,33,22,.18);border-radius:13px;outline:0;background:rgba(255,255,255,.68);color:#102017;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.login-form input::placeholder{color:#98a19b}.login-form input:focus{border-color:#937d43;background:#fff;box-shadow:0 0 0 4px rgba(200,180,122,.16)}.login-form button{height:57px;margin-top:7px;padding:0 20px;border:0;border-radius:13px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0d2116,#173522);color:#fff;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 18px 34px rgba(13,33,22,.17);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.login-form button span{font-size:20px;font-weight:400;color:#d8c587}.login-form button:hover{transform:translateY(-2px);box-shadow:0 23px 44px rgba(13,33,22,.24);background:linear-gradient(135deg,#173522,#214e33)}.login-privacy{display:flex;align-items:center;justify-content:center;gap:8px;margin:28px 0 0;color:#879188;font-size:10px}.login-privacy span{color:#b19b61;font-size:7px}
@keyframes loginReveal{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes loginCardIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.login-stage{grid-template-columns:1fr}.login-visual{display:none}.login-access{min-height:100svh;padding:42px 24px}.login-access:before{inset:10px}.login-mobile-brand{display:flex;margin-bottom:clamp(52px,10vh,92px)}.login-mobile-brand .farm-logo-box{width:49px;height:49px;border-color:rgba(13,33,22,.14);background:rgba(13,33,22,.05);color:#0d2116}.login-mobile-brand .farm-logo-box svg{width:34px;height:34px}.login-mobile-brand .farm-wordmark small{color:#778178}.login-mobile-brand .farm-wordmark strong{font-size:22px}.access-badge{margin-bottom:25px}.login-card h2{font-size:43px}.login-intro{margin-bottom:29px}}
@media(max-width:420px){.login-access{padding:28px 22px}.login-card h2{font-size:38px}.login-mobile-brand{margin-bottom:50px}.login-form input,.login-form button{height:53px}}
@media(prefers-reduced-motion:reduce){.login-visual,.login-card{animation:none}.login-form button{transition:none}}

/* Pontal login refinement: clearer farm identity and legible editorial hero. */
.login-visual-shade{background:radial-gradient(circle at 77% 25%,rgba(211,193,138,.14),transparent 32%),linear-gradient(180deg,rgba(4,12,8,.18) 0%,rgba(4,12,8,.31) 44%,rgba(4,12,8,.82) 100%),linear-gradient(90deg,rgba(4,12,8,.63),rgba(4,12,8,.06))}
.login-visual-copy h1{max-width:760px;text-shadow:0 4px 30px rgba(0,0,0,.3)}
.login-visual-copy h1 em{font-weight:400;color:#dbc897}
.login-visual-copy p{color:rgba(255,255,255,.86);text-shadow:0 2px 12px rgba(0,0,0,.35)}
.login-visual-copy>span,.login-visual-foot{color:#e0ce9e}
.login-brand .farm-wordmark small,.login-mobile-brand .farm-wordmark small{letter-spacing:.22em}
.login-access{background:radial-gradient(circle at 100% 0,rgba(200,180,122,.11),transparent 32%),#f8f6f0}
.login-card h2{line-height:1.06}
.login-form button{background:linear-gradient(135deg,#123121,#1c4530)}
.login-form button:hover{background:linear-gradient(135deg,#1a4430,#285c3f)}
