@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg-main:#f8f7f1;--bg-soft:#f1f2e8;--surface:#fff;--g900:#103c25;--g800:#20502a;--g700:#396b29;--g600:#567f2c;--g500:#759a3b;--gsoft:#eaf1d8;--gsoft2:#dce9c4;--yellow:#fff1a8;--orange:#fbe4c1;--blue:#ddeef8;--red:#f8dfda;--text:#10241d;--secondary:#68756f;--muted:#8b958f;--border:rgba(30,50,35,.08);--shadow:0 10px 30px rgba(31,54,31,.08)}
.skip-link{position:fixed;left:12px;top:-60px;z-index:100;background:#103c25;color:#fff;padding:12px 16px;border-radius:10px}.skip-link:focus{top:12px}
*{box-sizing:border-box}html{background:var(--bg-main);color:var(--text);font-family:Inter,system-ui,sans-serif}body{margin:0;background:radial-gradient(circle at 88% 0,#f1f5da 0,transparent 30%),var(--bg-main);font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}.modern-app{min-height:100vh}.modern-main{max-width:1180px;margin:auto;padding:0 18px 110px}.desktop-nav{display:none}svg{width:24px;height:24px}.olive-header{height:188px;position:relative;display:flex;align-items:flex-start;padding-top:46px;overflow:hidden}.header-photo{position:absolute;right:-40px;top:-30px;width:62%;height:190px;background:url('/images/olivar/hero-home.webp') center/cover;border-radius:0 0 0 58%;mask-image:radial-gradient(ellipse at 70% 25%,#000 0 60%,transparent 73%)}.olive-logo{position:relative;z-index:2;display:flex;align-items:center;gap:10px}.logo-mark{width:54px;height:64px;color:var(--g700);display:grid;place-items:center}.logo-mark svg{width:54px;height:54px}.olive-logo strong{display:block;font-size:24px;letter-spacing:.01em;color:var(--g900)}.olive-logo small,.welcome-logo small{display:block;font-size:13px;line-height:1.35;color:#39534b}.page-heading{margin:-4px 8px 28px}.page-heading h1{font-size:42px;line-height:1;margin:0 0 8px;letter-spacing:-.04em}.page-heading p{font-size:20px;margin:0;color:#40564f}.campaign-hero{min-height:390px;margin:0 -18px;padding:112px 38px 45px;position:relative;background:linear-gradient(90deg,rgba(248,247,241,.98) 10%,rgba(248,247,241,.55) 55%,rgba(248,247,241,.06)),url('/images/olivar/hero-home.webp') 65% center/cover;border-radius:0 0 54% 14%}.campaign-hero:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(0deg,var(--bg-main),transparent);pointer-events:none}.campaign-hero>*{position:relative;z-index:1}.status-badge{display:inline-flex;align-items:center;gap:8px;background:var(--yellow);padding:10px 16px;border-radius:999px;font-weight:800}.status-badge i{width:11px;height:11px;background:var(--g600);border-radius:50%}.campaign-hero h1{font-size:43px;line-height:1.04;letter-spacing:-.05em;margin:28px 0 12px;max-width:300px}.campaign-hero p{font-size:19px;color:#385047;margin:0 0 24px}.hero-cta,.primary-pill,.save-task{border:0;background:linear-gradient(135deg,var(--g600),var(--g800));color:white;border-radius:999px;min-height:62px;padding:0 25px;display:flex;align-items:center;justify-content:center;gap:14px;font-size:19px;font-weight:700;box-shadow:0 10px 25px rgba(57,107,41,.23)}.hero-cta{width:100%;max-width:310px}.hero-cta b{margin-left:auto;font-size:30px}.panel{background:rgba(255,255,255,.86);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow)}.summary-panel{position:relative;margin-top:-18px;padding:24px 16px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.panel-title h2,.summary-panel>h2{font-size:23px;margin:0}.panel-title button,.campaign-title button{border:1px solid var(--border);background:#fff;border-radius:999px;padding:11px 15px;font-weight:700}.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:32px}.metric-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:18px;padding:13px 8px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 6px 17px rgba(35,51,33,.04)}.metric-card .icon-circle{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:var(--g700);margin-bottom:10px}.metric-card .icon-circle svg{width:26px}.metric-card.green .icon-circle{background:var(--gsoft)}.metric-card.olive .icon-circle{background:var(--gsoft2)}.metric-card.orange .icon-circle{background:var(--orange);color:#b8640e}.metric-card.blue .icon-circle{background:var(--blue);color:#176184}.metric-card strong{font-size:clamp(15px,4vw,22px);letter-spacing:-.03em;white-space:nowrap}.metric-card small{color:var(--secondary);font-size:11px;margin-top:5px}.summary-panel>h2{margin:0 0 16px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.result-card{min-height:130px;border-radius:20px;padding:20px;position:relative;display:flex;flex-direction:column;justify-content:center}.result-card span{color:var(--secondary)}.result-card strong{font-size:22px;margin-top:12px}.result-card>b{position:absolute;right:18px;bottom:21px;font-size:28px}.result-card.income{background:#f0f5e5}.result-card.income span,.result-card.income b{color:var(--g600)}.result-card.expense{background:#faf0ed}.result-card.expense span,.result-card.expense b{color:#b23e2d}.result-card.insight{grid-column:span 2;background:linear-gradient(120deg,#f0f5e5,#fff);min-height:100px;flex-direction:row;align-items:center;gap:24px}.mini-bars{display:flex;align-items:end;gap:5px;height:50px}.mini-bars i{display:block;width:12px;background:#bfd59d;border-radius:3px}.mini-bars i:nth-child(1){height:16px}.mini-bars i:nth-child(2){height:26px}.mini-bars i:nth-child(3){height:38px}.mini-bars i:nth-child(4){height:50px}.modern-bottom{position:fixed;z-index:20;left:0;right:0;bottom:0;height:84px;padding-bottom:env(safe-area-inset-bottom);background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(5,1fr);align-items:center}.modern-bottom a{min-height:60px;color:#6a777d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:12px}.modern-bottom a.active{color:var(--g700);font-weight:700}.modern-bottom svg{width:26px;height:26px}.fab{width:66px;height:66px;border:1px solid #fff;border-radius:50%;background:linear-gradient(135deg,var(--g600),var(--g800));color:#fff;margin:-28px auto 0;display:grid;place-items:center;box-shadow:0 8px 22px rgba(30,80,42,.28)}.fab svg{width:36px;height:36px}.bottom-sheet{position:fixed;z-index:50;inset:0}.sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(16,36,29,.42)}.bottom-sheet section{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:28px 28px 0 0;padding:12px 22px 32px;animation:slide .2s ease}.sheet-handle{width:50px;height:5px;background:#d8ddd8;border-radius:5px;margin:auto}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-actions a{border:1px solid var(--border);border-radius:18px;padding:18px;display:flex;align-items:center;gap:10px;font-weight:700;background:var(--bg-main)}@keyframes slide{from{transform:translateY(100%)}to{transform:none}}
.farm-tools{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:16px}.search{height:56px;border:1px solid #dfe3df;background:#fff;border-radius:999px;display:flex;align-items:center;padding:0 15px;gap:10px}.search span{font-size:34px}.search input{border:0;outline:0;width:100%;font-size:16px;background:transparent}.primary-small{border:0;border-radius:999px;background:var(--g700);color:#fff;padding:0 16px;display:flex;align-items:center;gap:8px;font-weight:700}.filter-pills{display:flex;gap:8px;overflow:auto;margin-bottom:20px}.filter-pills button,.segment-tabs button,.calendar-switch button{border:1px solid var(--border);background:#fff;border-radius:999px;padding:12px 18px;white-space:nowrap}.filter-pills .active,.segment-tabs .active,.calendar-switch .active{background:var(--g700);color:#fff}.farm-list{display:grid;gap:12px}.farm-row{display:grid;grid-template-columns:118px 1fr 20px;gap:14px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:22px;padding:10px;box-shadow:var(--shadow)}.farm-row img{width:118px;height:126px;object-fit:cover;border-radius:15px}.farm-row h2{font-size:20px;margin:0 0 6px}.farm-row p{margin:0 0 6px;color:var(--secondary)}.farm-row>div>strong{font-weight:500;color:#43534e}.farm-tags{display:flex;gap:8px;margin-top:10px}.farm-tags i{font-style:normal;background:var(--gsoft);color:var(--g800);padding:7px 10px;border-radius:999px;display:flex;align-items:center;gap:5px;font-size:12px}.farm-tags i.water{background:var(--orange);color:#77521f}.farm-tags svg{width:16px;height:16px}.chev{font-size:34px}.compact{padding:20px;margin:14px 0}.modern-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modern-form label,.task-form>label{display:grid;gap:7px;font-weight:700}.modern-form input,.task-form input,.task-form select,.task-form textarea{min-height:54px;border:1px solid #dfe3df;background:#fff;border-radius:14px;padding:12px}.modern-form .primary-pill{grid-column:1/-1}.farm-hero{height:390px;margin:0 -18px;position:relative;color:#fff}.farm-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,29,16,.82),transparent 64%)}.farm-hero>img{width:100%;height:100%;object-fit:cover}.farm-hero>a,.farm-hero>button{position:absolute;z-index:2;top:42px;width:50px;height:50px;border:0;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center}.farm-hero>a{left:22px}.farm-hero>button{right:22px}.farm-hero>div{position:absolute;z-index:2;left:25px;bottom:30px}.farm-hero h1{font-size:42px;margin:0}.farm-hero p{font-size:18px}.farm-detail{background:var(--bg-main);border-radius:30px 30px 0 0;margin:-20px -18px 0;padding:22px 18px;position:relative;z-index:3}.segment-tabs{background:#fff;border-radius:999px;padding:5px;display:flex;overflow:auto}.segment-tabs button{border:0;flex:1;background:transparent}.detail-grid,.campaign-kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.detail-grid .metric-card,.campaign-kpis .metric-card{min-height:145px;align-items:flex-start;text-align:left;padding:22px;position:relative}.detail-grid .icon-circle,.campaign-kpis .icon-circle{position:absolute;left:18px;top:20px}.detail-grid strong,.detail-grid small,.campaign-kpis strong,.campaign-kpis small{margin-left:65px}.farm-map{height:260px;border-radius:22px;overflow:hidden;position:relative}.farm-map img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.farm-map span{position:absolute;inset:42px 55px 55px;border:3px solid white;background:rgba(93,133,56,.35);clip-path:polygon(16% 0,100% 23%,76% 100%,0 64%)}.farm-map button{position:absolute;right:14px;bottom:14px;border:0;background:#fff;padding:13px 16px;border-radius:999px;display:flex;gap:8px;font-weight:700}.detail-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.detail-bottom .panel{padding:18px;min-height:180px}.detail-bottom h3{margin:0 0 25px}.detail-bottom p{color:var(--secondary)}.gauge{text-align:center}.gauge-arc{width:100px;height:50px;border:12px solid var(--g600);border-bottom:0;border-radius:100px 100px 0 0;margin:10px auto}.gauge strong{display:block}.task-form{display:grid;gap:18px}.task-types{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.task-type{background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px 7px;min-height:115px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;text-align:center}.task-type input{position:absolute;opacity:0}.task-type span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--gsoft);color:var(--g700)}.task-type:has(input:checked){outline:3px solid var(--g600);background:#f3f8e9}.tone-1 span{background:var(--blue)}.tone-2 span{background:var(--orange)}.tone-3 span{background:#e4eff8}.tone-4 span{background:#efe7f8}.task-form>label{grid-template-columns:88px 1fr;align-items:center;font-size:17px}.task-form textarea{min-height:90px;resize:vertical}.photo-uploader{display:grid;gap:10px}.photo-uploader>b small{font-weight:400}.photo-uploader>label{width:105px;height:105px;border:2px dashed #cbd2cb;border-radius:16px;display:grid;place-items:center}.photo-uploader input{display:none}.photo-uploader label span{display:flex;flex-direction:column;align-items:center}.save-task{width:100%;border:0}.campaign-title{display:flex;align-items:center;justify-content:space-between}.campaign-kpis .metric-card strong{font-size:22px}.production-chart{padding:22px;margin-bottom:18px}.production-chart h2{font-size:20px}.production-chart>div{display:grid;grid-template-columns:90px 1fr 58px;gap:10px;align-items:center;margin:18px 0}.production-chart i{height:16px;background:#eaede9;border-radius:5px;overflow:hidden}.production-chart i b{display:block;height:100%;background:linear-gradient(90deg,var(--g500),var(--g700));border-radius:5px}.production-chart>div>strong{text-align:right}.cost-card{background:linear-gradient(120deg,#eff5e4,#fff);border-radius:22px;padding:24px;display:flex;align-items:center;gap:22px}.cost-card>span{width:82px;height:82px;border-radius:50%;background:var(--gsoft);display:grid;place-items:center;color:var(--g700)}.cost-card>span svg{width:42px;height:42px}.cost-card small,.cost-card strong{display:block}.cost-card small{font-size:17px}.cost-card strong{font-size:35px;margin:5px 0}.cost-card p{color:var(--g700);margin:0}.calendar-switch{display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:999px;padding:5px;margin-bottom:18px}.calendar-switch button{border:0}.calendar{padding:18px}.calendar-head{display:flex;justify-content:space-between;align-items:center}.calendar-head button{border:0;background:none;font-size:36px}.week,.days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:5px}.week{color:var(--secondary);margin:20px 0 8px}.days button{border:0;background:none;min-height:45px;border-radius:50%;position:relative}.days button.today{background:var(--g700);color:#fff}.days button i{position:absolute;bottom:3px;left:50%;width:7px;height:7px;border-radius:50%;background:var(--g500)}.daily-title{display:flex;justify-content:space-between;align-items:center}.daily-title span{color:var(--secondary)}.task-list{display:grid;gap:10px}.task-list a,.menu-list a{background:#fff;border:1px solid var(--border);border-radius:18px;padding:14px;display:flex;align-items:center;gap:14px}.task-list a>span,.menu-list a>svg{width:50px;height:50px;background:var(--gsoft);border-radius:50%;padding:12px;color:var(--g700)}.task-list a div{flex:1}.task-list small{display:block;color:var(--secondary);margin-top:5px}.profile-card{background:#fff;border-radius:22px;padding:22px;display:flex;align-items:center;gap:18px}.profile-card>span{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#89aa73,#4b7835);color:#fff;font-size:27px;font-weight:700}.profile-card div{flex:1}.profile-card h1{font-size:24px;margin:0}.profile-card p{color:var(--secondary)}.pro-banner{margin:18px 0;background:linear-gradient(120deg,#fff7c2,#fffbea);border-radius:22px;padding:20px;display:flex;align-items:center;gap:17px}.pro-banner>span{width:54px;height:54px;border-radius:50%;background:#ffe570;display:grid;place-items:center;font-size:28px}.pro-banner div{flex:1}.pro-banner h2,.pro-banner p{margin:3px}.menu-list{display:grid;gap:9px}.menu-list a svg{flex:none}.menu-list a span{flex:1;font-size:17px;font-weight:700}.menu-list a b,.profile-card>b,.pro-banner>b{font-size:28px}.menu-list .logout svg{background:var(--red);color:#a53827}.welcome{min-height:100vh;background:#0f1713;display:grid;place-items:center}.welcome-card{position:relative;max-width:430px;min-height:100vh;background:var(--bg-main);overflow:hidden}.welcome-photo{height:52vh;background:url('/images/olivar/hero-home.webp') 62% center/cover;border-radius:0 0 0 48%}.welcome-logo{position:absolute;top:10vh;left:28px;display:flex;align-items:center}.welcome-logo strong{display:block;font-size:25px}.welcome-card section{padding:25px 28px}.welcome-card h1{font-size:39px;line-height:1.04;letter-spacing:-.045em;margin:0 0 24px}.outline-pill{border:2px solid var(--g700);color:var(--g700);border-radius:999px;min-height:60px;display:flex;align-items:center;justify-content:center;margin-top:10px;font-size:17px;font-weight:700}.primary-pill b,.outline-pill b{margin-left:20px;font-size:28px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px;text-align:center}.benefits span{width:52px;height:52px;border-radius:50%;background:var(--gsoft);display:grid;place-items:center;margin:0 auto 8px;color:var(--g700)}.benefits b,.benefits small{display:block}.benefits small{font-size:11px;color:var(--secondary);line-height:1.35;margin-top:5px}.welcome-card footer{text-align:center;color:#718166;letter-spacing:.22em;font-size:10px;padding:18px}.toast{position:fixed;top:16px;left:50%;transform:translateX(-50%);background:var(--g900);color:#fff;padding:14px 20px;border-radius:999px;z-index:80}:focus-visible{outline:3px solid #2b72c4;outline-offset:3px}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(min-width:760px){.modern-main{padding-left:32px;padding-right:32px}.metrics-row{gap:14px}.result-grid{grid-template-columns:1fr 1fr 1fr}.result-card.insight{grid-column:auto}.farm-list{grid-template-columns:1fr 1fr}.task-form{max-width:760px}.campaign-kpis{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1050px){body{background:#eef1e7}.modern-app{display:grid;grid-template-columns:250px 1fr}.desktop-nav{display:block;position:sticky;top:0;height:100vh;background:#fff;padding:35px 24px;border-right:1px solid var(--border)}.desktop-nav nav{display:grid;gap:8px;margin-top:45px}.desktop-nav nav a{display:flex;gap:12px;align-items:center;padding:14px;border-radius:14px}.desktop-nav nav a:hover{background:var(--gsoft)}.modern-main{width:100%;padding:0 46px 60px}.modern-bottom{display:none}.olive-header{height:170px}.campaign-hero{border-radius:30px;margin:0;min-height:370px;padding:85px 56px}.summary-panel{margin:-35px 35px 0}.farm-list{grid-template-columns:repeat(2,1fr)}.farm-row{grid-template-columns:150px 1fr 20px}.farm-row img{width:150px}.farm-detail{margin:-35px 30px 0;padding:30px}.detail-grid{grid-template-columns:repeat(4,1fr)}.farm-hero{margin:0;height:480px;border-radius:0 0 30px 30px;overflow:hidden}.campaign-kpis{grid-template-columns:repeat(4,1fr)}.bottom-sheet section{left:50%;right:auto;width:480px;transform:translateX(-50%)}}
.olive-logo img{display:block;width:min(280px,46vw);height:auto;max-height:78px;object-fit:contain;object-position:left center}.welcome-logo{width:min(330px,82vw);height:108px;background:url('/images/olivar/logo-mi-olivar.png') left center/contain no-repeat}.welcome-logo>*{display:none}.header-photo{display:none}.olive-header{height:112px;padding-top:18px}.campaign-hero{min-height:245px;margin:0 -18px;padding:27px 28px 28px;background:var(--bg-main);border-radius:0 0 34% 10%}.campaign-hero h1{font-size:34px;margin:18px 0 8px}.campaign-hero p{font-size:16px;margin-bottom:15px}.hero-cta{min-height:54px;font-size:16px;max-width:285px}.summary-panel{margin-top:-10px;padding:17px 12px}.panel-title{margin-bottom:12px}.panel-title h2,.summary-panel>h2{font-size:19px}.metric-card{padding:8px 4px;border-radius:14px}.metric-card .icon-circle{width:38px;height:38px;margin-bottom:5px}.metric-card .icon-circle svg{width:20px}.metric-card small{font-size:10px}.metric-card strong{font-size:14px}.metrics-row{margin-bottom:18px;gap:5px}.result-card{min-height:92px;padding:13px;border-radius:15px}.result-card strong{font-size:17px;margin-top:6px}.result-card.insight{min-height:74px}.result-card.insight strong{font-size:14px}.mini-bars{height:34px}.modern-main{padding-bottom:92px}
@media(min-width:760px){.olive-header{height:150px;padding-top:30px}.campaign-hero{min-height:300px;padding:55px 45px}.campaign-hero h1{font-size:40px}.summary-panel{padding:24px 20px}.metric-card{padding:15px 10px}.metric-card strong{font-size:20px}}
.olive-logo img,.welcome-logo{mix-blend-mode:multiply}
.welcome-logo{background-image:url('/images/olivar/logo-mi-olivar-transparent.png')}
.home-hero{min-height:330px!important;margin:0 -18px;padding:105px 28px 32px!important;background:linear-gradient(90deg,rgba(248,247,241,.96) 0%,rgba(248,247,241,.42) 62%,rgba(248,247,241,.08)),url('/images/olivar/hero-home.webp') 70% center/cover no-repeat!important;border-radius:0 0 42% 12%}.home-brand{position:absolute;left:18px;top:14px;z-index:2}.home-brand .olive-logo img{width:205px;max-height:75px}.home-hero .status-badge{margin-top:0}.home-hero h1{max-width:280px}
.olive-header{height:214px!important;display:flex;flex-direction:column;align-items:center;padding:0!important;background:#fff;border-bottom:1px solid var(--border);overflow:hidden}
.olive-header>div:first-child{height:88px;width:100%;display:flex;align-items:center;justify-content:center;padding:8px 18px;background:var(--surface)}
.olive-header .olive-logo img{width:min(260px,72vw);max-height:72px}
.olive-header .header-photo{display:block;position:static;right:auto;top:auto;width:100%;height:126px;flex:0 0 126px;background:url('/images/olivar/hero-home.webp') center 54%/cover no-repeat;border-radius:0 0 30px 30px;mask-image:none}
@media(min-width:760px){.olive-header{height:245px!important}.olive-header>div:first-child{height:100px}.olive-header .header-photo{height:145px;flex-basis:145px}}
.welcome-card{background:var(--bg-main);display:flex;flex-direction:column;min-height:100vh}.welcome-photo{display:none}.welcome-logo{position:static;margin:34px auto 12px;width:min(360px,88vw);height:124px;background-position:center}.welcome-card section{padding:20px 28px 12px}.welcome-card h1{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(35px,9vw,48px);line-height:1.08;letter-spacing:-.035em;text-align:center;margin:10px auto 28px;max-width:370px}.welcome-card .primary-pill,.welcome-card .outline-pill{font-family:Inter,system-ui,sans-serif;font-size:17px}.welcome-card .benefits b{font-size:15px}.welcome-card .benefits small{font-size:12px}.welcome-card footer{display:none}
.welcome-title-large,.welcome-title-small{display:block}.welcome-title-large{font-size:clamp(40px,10vw,52px);line-height:1}.welcome-title-small{font-size:clamp(27px,7vw,36px);line-height:1.08;margin-top:10px;font-weight:600}
.welcome-card section{flex:1;display:flex;flex-direction:column}.welcome-card .benefits{margin-top:auto;padding-top:22px;padding-bottom:12px}
/* ---- Nueva labor ---- */
.modern-main{overflow-x:hidden}
.labor-hero{position:relative;margin:0 -18px 20px;padding:14px 18px 22px;min-height:215px;overflow:hidden;background:var(--bg-main)}
.labor-hero-photo{position:absolute;right:0;top:0;width:58%;height:205px;background:url('/images/olivar/hero-home.webp') 62% 42%/cover no-repeat;border-radius:0 0 0 46%;z-index:0}
.labor-hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(95deg,var(--bg-main) 26%,rgba(248,247,241,.72) 52%,rgba(248,247,241,0) 78%)}
.labor-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:62px;z-index:1;background:linear-gradient(0deg,var(--bg-main),rgba(248,247,241,0))}
.labor-hero-top{position:relative;z-index:2;display:flex;align-items:center;gap:12px}
.hero-back{flex:none;width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--border);display:grid;place-items:center;color:var(--g900);box-shadow:0 5px 14px rgba(31,54,31,.1)}
.labor-hero-top .olive-logo img{width:min(172px,44vw);max-height:54px}
.labor-hero-copy{position:relative;z-index:2;margin-top:26px}
.labor-hero-copy h1{font-size:clamp(34px,10vw,44px);line-height:1;margin:0 0 10px;letter-spacing:-.05em;color:var(--g900)}
.labor-hero-copy p{font-size:17px;color:#41584f;max-width:14em;margin:0}
.task-form{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.task-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-width:0}
.task-type{min-width:0;padding:13px 4px 11px;min-height:112px;gap:9px;cursor:pointer;transition:transform .12s ease}
.task-type span{width:52px;height:52px;flex:none}
.task-type b{font-size:clamp(11.5px,3.25vw,14px);line-height:1.15;hyphens:none;overflow-wrap:break-word}
.task-type:active{transform:scale(.97)}
.task-type:has(input:focus-visible){outline:3px solid #2b72c4;outline-offset:2px}
.tone-green span{background:var(--gsoft);color:var(--g700)}
.tone-blue span{background:var(--blue);color:#176184}
.tone-yellow span{background:#fbeec3;color:#8a6410}
.tone-purple span{background:#ebe4f8;color:#5b4592}
.tone-red span{background:var(--red);color:#a53827}
.tone-grey span{background:#eceeeb;color:#5d6a63}
.field-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;font-weight:700;font-size:16px;min-width:0}
.field-label{color:var(--g900);font-size:15.5px;line-height:1.15;width:104px}
.field-control{position:relative;display:flex;align-items:center;gap:10px;min-width:0;background:#fff;border:1px solid #dfe3df;border-radius:15px;padding:0 14px;min-height:58px;box-shadow:0 4px 12px rgba(31,54,31,.04)}
.field-control>svg{flex:none;width:22px;height:22px;color:var(--g700)}
.field-control input,.field-control select,.field-control textarea{flex:1;min-width:0;width:100%;border:0;background:transparent;outline:0;padding:0;font-weight:500;font-size:16px;min-height:56px;-webkit-appearance:none;appearance:none}
.field-control select{text-overflow:ellipsis}
.field-control textarea{min-height:56px;font-size:15px;padding:17px 0;resize:none;overflow:hidden;line-height:1.35;font-family:inherit}
.field-control textarea::placeholder,.field-control input::placeholder{color:var(--muted);font-weight:400}
.field-control select:invalid,.field-control select option[value=""]{color:var(--muted)}
.field-control input[type=date]::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.field-chevron{flex:none;display:grid;place-items:center;color:#7b8a82;pointer-events:none}
.field-chevron svg{width:20px;height:20px}
.field-control:focus-within{border-color:var(--g600);box-shadow:0 0 0 3px rgba(86,127,44,.16)}
.photo-uploader{display:grid;gap:12px;min-width:0}
.photo-uploader>b{font-size:16px}
.photo-uploader>b small{font-weight:400;color:var(--secondary)}
.photo-row{display:flex;align-items:flex-start;gap:12px;overflow-x:auto;padding-bottom:4px}
.photo-row>label{flex:none;width:104px;height:104px;border:2px dashed #cbd2cb;border-radius:16px;display:grid;place-items:center;color:var(--g700);background:rgba(255,255,255,.5);cursor:pointer;margin:0}
.photo-row>label small{display:block;text-align:center;font-size:12px;color:var(--secondary);margin-top:4px;line-height:1.15}
.photo-preview{display:flex;gap:12px}
.photo-thumb{position:relative;flex:none}
.photo-thumb img{width:104px;height:104px;object-fit:cover;border-radius:16px;display:block}
.photo-thumb button{position:absolute;top:-7px;right:-7px;width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:#fff;color:var(--g900);display:grid;place-items:center;font-size:15px;line-height:1;box-shadow:0 3px 8px rgba(0,0,0,.14)}
.save-task{width:100%;border:0;margin-top:4px}
.save-task svg{width:22px;height:22px}
@media(min-width:760px){.labor-hero{min-height:260px;padding:22px 26px 28px}.labor-hero-photo{height:250px;width:52%}.labor-hero-copy{margin-top:34px}.field-row{grid-template-columns:120px minmax(0,1fr)}}
@media(min-width:1050px){.labor-hero{margin:0;border-radius:0 0 28px 28px}}

.toast{max-width:88vw;text-align:center;font-weight:600;box-shadow:0 12px 30px rgba(16,36,29,.25)}
.toast.error{background:#a53827}

/* ---- Fincas ---- */
.farm-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:14px}
.search{height:56px;border:1px solid #e0e4df;border-radius:999px;padding:0 16px;gap:10px;box-shadow:0 4px 12px rgba(31,54,31,.04)}
.search svg{width:21px;height:21px;color:#6c7a72;flex:none}
.search input{font-size:15.5px}
.search input::placeholder{color:var(--muted)}
.primary-small{min-height:56px;padding:0 20px;font-size:16px;background:linear-gradient(135deg,var(--g600),var(--g800));box-shadow:0 8px 20px rgba(57,107,41,.22);white-space:nowrap}
.primary-small svg{width:21px;height:21px;flex:none}
.filter-pills{gap:8px;margin-bottom:18px;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none}
.filter-pills::-webkit-scrollbar{display:none}
.filter-pills button{min-height:42px;padding:0 14px;font-size:14px;font-weight:600;flex:none}
.farm-list{gap:14px}
.farm-row{grid-template-columns:114px minmax(0,1fr) 22px;gap:13px;padding:11px;border-radius:20px;box-shadow:0 8px 22px rgba(31,54,31,.06)}
.farm-row img{width:114px;height:118px;border-radius:14px}
.farm-row>div{min-width:0}
.farm-row h2{font-size:19px;line-height:1.15;margin:0 0 7px;letter-spacing:-.02em}
.farm-row p{display:flex;align-items:center;gap:5px;margin:0 0 6px;color:var(--secondary);font-size:14.5px}
.farm-row p svg{width:17px;height:17px;flex:none;color:#7c8a83}
.farm-row p span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.farm-row>div>strong{display:block;font-size:14.5px;font-weight:600;color:#3c4d47}
.farm-tags{flex-wrap:wrap;gap:7px;margin-top:9px}
.farm-tags i{padding:7px 11px;font-size:12.5px;font-weight:600}
.farm-tags i.wet{background:var(--blue);color:#2a6f93}
.farm-tags i.dry{background:#f1e3cd;color:#7a5a2a}
.chev{display:grid;place-items:center;color:#31453c}
.chev svg{width:24px;height:24px}
@media(min-width:760px){.farm-row{grid-template-columns:150px minmax(0,1fr) 22px}.farm-row img{width:150px;height:140px}}
.filter-pills{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
.filter-pills button{padding:0 13px;font-size:13.5px}
.primary-small{padding:0 18px;font-size:15.5px}
.farm-row{grid-template-columns:108px minmax(0,1fr) 20px;gap:12px}
.farm-row img{width:108px;height:114px}
.farm-tags{gap:6px;margin-top:8px}
.farm-tags i{padding:6px 9px;font-size:12px;gap:4px}
.farm-tags svg{width:15px;height:15px}
@media(min-width:760px){.farm-row{grid-template-columns:150px minmax(0,1fr) 22px}.farm-row img{width:150px;height:140px}.filter-pills button{font-size:14.5px;padding:0 16px}}
.farm-row{grid-template-columns:clamp(96px,26vw,118px) minmax(0,1fr) 20px;gap:11px}
.farm-row img{width:100%;height:clamp(104px,28vw,124px)}
.farm-tags i{padding:6px 9px;font-size:11.8px;gap:4px}
@media(min-width:760px){.farm-row{grid-template-columns:150px minmax(0,1fr) 22px;gap:14px}.farm-row img{width:150px;height:140px}.farm-tags i{font-size:12.5px;padding:7px 11px}}
.filter-pills{gap:7px}
.filter-pills button{padding:0 12px}
@media(min-width:420px){.filter-pills button{padding:0 16px;font-size:14.5px}}
@media(max-width:419px){.filter-pills{gap:6px}.filter-pills button{padding:0 10px;font-size:12.8px;min-height:40px}}
.farm-hero>a,.farm-hero>button{color:var(--g900)}

/* ---- Detalle de finca ---- */
.farm-detail .segment-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;background:#fff;border-radius:999px;padding:5px;box-shadow:0 6px 18px rgba(31,54,31,.06)}
.farm-detail .segment-tabs button{min-height:44px;padding:0 4px;border-radius:999px;font-size:13.2px;font-weight:600;color:var(--secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.farm-detail .segment-tabs .active{background:#e7f0d5;color:var(--g800);font-weight:700}
.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:18px 0}
.detail-grid .metric-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:0;padding:14px;border-radius:17px;text-align:left}
.detail-grid .metric-card .icon-circle{position:static;grid-row:1/3;grid-column:1;width:52px;height:52px;margin:0}
.detail-grid .metric-card .icon-circle svg{width:25px;height:25px}
.detail-grid .metric-card>small{grid-column:2;grid-row:1;margin:0 0 1px;align-self:end;font-size:13px;color:var(--secondary)}
.detail-grid .metric-card>strong{grid-column:2;grid-row:2;margin:0;align-self:start;font-size:clamp(17px,5vw,22px);white-space:normal;overflow:hidden;text-overflow:ellipsis}
.metric-card.beige .icon-circle{background:#f2e7d1;color:#6d5828}
.farm-map{height:220px;border-radius:20px;margin-bottom:14px}
.map-locate{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:0;background:#fff;display:grid;place-items:center;color:var(--g700);box-shadow:0 5px 14px rgba(0,0,0,.18)}
.map-locate svg{width:21px;height:21px}
.map-open{right:12px;bottom:12px;gap:8px;align-items:center;font-size:14.5px;padding:12px 15px;box-shadow:0 6px 16px rgba(0,0,0,.16);color:var(--g800)}
.map-open svg{width:20px;height:20px}
.map-open b{font-size:19px;line-height:1}
.detail-bottom{gap:11px}
.detail-bottom .panel{min-height:0;padding:16px;border-radius:18px;background:#fff}
.detail-bottom h3{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 14px;font-size:16px}
.detail-bottom h3 b{color:var(--secondary);font-size:20px;font-weight:400}
.last-work>div{display:flex;align-items:center;gap:11px;min-width:0}
.last-work>div>span{flex:none;width:48px;height:48px;border-radius:50%;background:var(--gsoft);color:var(--g700);display:grid;place-items:center}
.last-work>div>span svg{width:24px;height:24px}
.last-work small{display:block;color:var(--secondary);font-size:13px;margin-bottom:2px}
.last-work strong{font-size:15px;line-height:1.2;display:block}
.gauge{text-align:center}
.gauge h3{justify-content:center}
.gauge-arc{position:relative;width:min(126px,100%);height:63px;margin:4px auto 12px;border:0;border-radius:200px 200px 0 0;background:conic-gradient(from 270deg at 50% 100%,var(--g700) 0deg,var(--g600) 70deg,var(--g500) 130deg,#cbdf9f 180deg);overflow:hidden}
.gauge-arc:after{content:"";position:absolute;left:14px;right:14px;top:14px;bottom:0;background:#fff;border-radius:200px 200px 0 0}
.gauge-arc svg{position:absolute;z-index:1;left:50%;bottom:3px;transform:translateX(-50%);width:26px;height:26px;color:var(--g700)}
.gauge strong{font-size:16px}
.gauge p{margin:4px 0 0;font-size:13.5px}
@media(min-width:760px){.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.farm-detail .segment-tabs button{font-size:15px}.farm-map{height:280px}}
.detail-grid .metric-card>strong{font-size:clamp(15px,4.4vw,22px);white-space:nowrap;letter-spacing:-.02em}
@media(max-width:419px){.farm-detail .segment-tabs button{font-size:12.4px;padding:0 2px}}
@media(max-width:419px){
.detail-grid{gap:10px}
.detail-grid .metric-card{padding:12px;column-gap:9px}
.detail-grid .metric-card .icon-circle{width:44px;height:44px}
.detail-grid .metric-card .icon-circle svg{width:22px;height:22px}
.detail-grid .metric-card>small{font-size:12.2px}
.detail-grid .metric-card>strong{font-size:16px}
.detail-bottom .panel{padding:14px}
.detail-bottom h3{font-size:14.5px;margin-bottom:11px}
.last-work>div{gap:9px}
.last-work>div>span{width:42px;height:42px}
.last-work>div>span svg{width:21px;height:21px}
.last-work small{font-size:12.2px;white-space:nowrap}
.last-work strong{font-size:14px}
.gauge-arc{width:min(108px,100%);height:54px}
.gauge-arc:after{left:12px;right:12px;top:12px}
.gauge strong{font-size:15px}
.gauge p{font-size:12.5px}
}

/* ---- Calendario ---- */
.i-green{background:var(--gsoft);color:var(--g700)}
.i-blue{background:var(--blue);color:#2a6f93}
.i-amber{background:#fbeec3;color:#8a6410}
.i-red{background:var(--red);color:#a53827}
.i-grey{background:#eceeeb;color:#5d6a63}
.d-green{background:var(--g600)}
.d-blue{background:#4ba3d4}
.d-amber{background:#e8b52f}
.d-red{background:#cf5741}
.d-grey{background:#9aa5a0}
.calendar-switch{display:grid;grid-template-columns:1fr 1fr;background:#edefe4;border-radius:999px;padding:5px;margin-bottom:16px;gap:4px}
.calendar-switch a{min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:999px;font-size:15.5px;font-weight:600;color:#54635c}
.calendar-switch a.active{background:linear-gradient(135deg,var(--g600),var(--g800));color:#fff;font-weight:700;box-shadow:0 6px 16px rgba(57,107,41,.22)}
.calendar{padding:16px 12px;background:#fff;border-radius:22px}
.calendar-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.calendar-head a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--g900)}
.calendar-head a:hover{background:var(--bg-soft)}
.calendar-head h2{margin:0;font-size:18px;letter-spacing:-.02em}
.week,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:2px 0}
.week{color:var(--muted);margin:16px 0 6px;font-size:13.5px}
.week b{font-weight:600}
.days .out{color:#c3cac5;font-size:15px;display:grid;place-items:center;height:46px}
.day{position:relative;display:grid;justify-items:center;align-content:center;gap:4px;width:42px;height:46px;margin:0 auto;border-radius:23px;font-size:15.5px;font-weight:600;color:var(--text)}
.day i{display:block;width:7px;height:7px;border-radius:50%}
.day.sel{background:linear-gradient(135deg,var(--g600),var(--g800));color:#fff;box-shadow:0 6px 14px rgba(57,107,41,.28)}
.day.sel i{background:#fff!important}
.day.today:not(.sel){color:var(--g700);font-weight:800}
.daily-title{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:20px 0 12px}
.daily-title h2{font-size:19px;margin:0;letter-spacing:-.02em}
.daily-title span{color:var(--secondary);font-size:14.5px;white-space:nowrap}
.task-list{display:grid;gap:11px}
.task-list a{background:#fff;border:1px solid var(--border);border-radius:18px;padding:11px 12px;display:flex;align-items:center;gap:11px;min-width:0;box-shadow:0 6px 16px rgba(31,54,31,.05)}
.task-list a>span{flex:none;width:50px;height:50px;border-radius:50%;padding:0;display:grid;place-items:center}
.task-list a>span svg{width:25px;height:25px}
.task-list a>div{flex:1;min-width:0}
.task-list strong{display:block;font-size:15.5px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.task-list small{display:flex;align-items:center;gap:4px;color:var(--secondary);margin-top:4px;font-size:13px;min-width:0}
.task-list small svg{width:15px;height:15px;flex:none}
.task-list small{overflow:hidden}
.task-time{flex:none;display:flex;align-items:center;gap:5px;border-radius:999px;padding:7px 11px;font-style:normal;font-size:13.5px;font-weight:600}
.task-time svg{width:16px;height:16px}
.task-list a>b{flex:none;color:#6d7b74;font-size:21px}
.empty-day{background:#fff;border:1px dashed #d4dbd4;border-radius:18px;padding:18px;text-align:center;color:var(--secondary);margin:0}
@media(max-width:419px){.calendar{padding:14px 8px}.day{width:38px;font-size:14.5px}.days .out{font-size:14px}.calendar-head h2{font-size:16.5px}.daily-title h2{font-size:17px}.task-list a>span{width:44px;height:44px}.task-time{padding:6px 9px;font-size:12.5px}}
.task-list small span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.campaign-select{display:flex;justify-content:flex-end;margin:-4px 0 14px}
.campaign-select button{border:1px solid var(--border);background:#fff;border-radius:999px;padding:11px 16px;font-weight:700;display:flex;align-items:center;gap:6px;box-shadow:0 4px 12px rgba(31,54,31,.05)}

/* ---- Campaña: mismas tarjetas y pestañas que la ficha de finca ---- */
.segment-tabs.wide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;background:#fff;border-radius:999px;padding:5px;box-shadow:0 6px 18px rgba(31,54,31,.06)}
.segment-tabs.wide button{min-height:44px;padding:0 4px;border-radius:999px;font-size:13.2px;font-weight:600;color:var(--secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.segment-tabs.wide .active{background:#e7f0d5;color:var(--g800);font-weight:700}
.campaign-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:16px 0}
.campaign-kpis .metric-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;min-height:0;padding:14px;border-radius:17px;text-align:left}
.campaign-kpis .metric-card .icon-circle{position:static;grid-row:1/3;grid-column:1;width:52px;height:52px;margin:0}
.campaign-kpis .metric-card .icon-circle svg{width:25px;height:25px}
.campaign-kpis .metric-card>small{grid-column:2;grid-row:1;margin:0 0 1px;align-self:end;font-size:13px;color:var(--secondary)}
.campaign-kpis .metric-card>strong{grid-column:2;grid-row:2;margin:0;align-self:start;font-size:clamp(15px,4.4vw,22px);white-space:nowrap;letter-spacing:-.02em}
@media(max-width:419px){.segment-tabs.wide button{font-size:12.4px;padding:0 2px}.campaign-kpis .metric-card{padding:12px;column-gap:9px}.campaign-kpis .metric-card .icon-circle{width:44px;height:44px}.campaign-kpis .metric-card .icon-circle svg{width:22px;height:22px}.campaign-kpis .metric-card>small{font-size:12.2px}.campaign-kpis .metric-card>strong{font-size:16px}}
@media(min-width:760px){.campaign-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ---- Mapa SIGPAC ---- */
.farm-map{position:relative;z-index:0;isolation:isolate;background:#e8ece6}
#farmMap{width:100%;height:100%;border-radius:20px}
.farm-map .map-locate,.farm-map .map-open{z-index:500}
.map-open{position:absolute;display:flex}
.map-empty{height:100%;display:grid;place-content:center;justify-items:center;gap:6px;text-align:center;padding:20px;background:linear-gradient(140deg,#eef2e5,#fff)}
.map-empty svg{width:30px;height:30px;color:var(--g700)}
.map-empty strong{font-size:16px}
.map-empty small{color:var(--secondary);max-width:26em}
.map-empty .primary-pill{min-height:46px;padding:0 20px;font-size:15px;margin-top:6px}
.map-screen{position:relative;z-index:0;isolation:isolate;margin:0 -18px;height:calc(100vh - 84px);min-height:420px}
.map-screen #farmMap{height:100%;border-radius:0}
.map-back{position:absolute;left:16px;top:16px;z-index:500}
.map-screen .map-locate{top:16px;right:16px}
.map-legend{position:absolute;left:16px;bottom:16px;z-index:500;background:rgba(255,255,255,.94);border-radius:16px;padding:11px 15px;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.map-legend b{display:block;font-size:15px}
.map-legend small{color:var(--secondary);font-size:12px}
.plots-panel{padding:16px;margin-bottom:14px;background:#fff;border-radius:18px}
.plots-panel h3{margin:0 0 12px;font-size:16px}
.plot-row{border:1px solid var(--border);border-radius:16px;padding:11px 13px;margin-bottom:10px;background:var(--bg-main)}
.plot-row summary{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;font-size:15px;list-style:none}
.plot-row summary::-webkit-details-marker{display:none}
.plot-row summary span{color:var(--secondary);font-size:12.2px;text-align:right}
.sigpac-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.sigpac-form label{display:grid;gap:5px;font-size:12.8px;font-weight:700;min-width:0}
.sigpac-form label small{font-weight:400;color:var(--secondary)}
.sigpac-form input{min-height:46px;border:1px solid #dfe3df;background:#fff;border-radius:12px;padding:0 12px;font-weight:500;min-width:0}
.sigpac-form .primary-pill{grid-column:1/-1;min-height:52px;font-size:15.5px;gap:9px}
.sigpac-form .primary-pill svg{width:20px;height:20px}
.sigpac-info{grid-column:1/-1;margin:0;color:var(--g700);font-size:12.8px;font-weight:600}
.sigpac-help{color:var(--secondary);font-size:12.4px;margin:12px 0 0;line-height:1.45}
.sigpac-help a{color:var(--g700);text-decoration:underline}
.map-open{position:absolute;right:12px;bottom:12px;display:flex;background:#fff;border:0;border-radius:999px;font-weight:700}
.leaflet-control-attribution{font-size:9.5px!important;padding:1px 6px!important;background:rgba(255,255,255,.75)!important;max-width:64%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map-screen .leaflet-control-attribution{max-width:100%}
.leaflet-container svg,.leaflet-pane svg{width:auto;height:auto}
.leaflet-container img{max-width:none}
.farm-map .map-locate,.farm-map .map-open,.map-back,.map-screen .map-locate,.map-legend{z-index:1000}
.map-screen .leaflet-bottom.leaflet-right{margin-bottom:34px}
.sigpac-form select{min-height:46px;border:1px solid #dfe3df;background:#fff;border-radius:12px;padding:0 10px;font-weight:500;min-width:0}
.new-plot{background:#fff;border-style:dashed}
.new-plot summary b{color:var(--g700)}

/* ---- Formulario de nueva finca ---- */
.modern-form{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}
.modern-form label{min-width:0}
.modern-form label small{font-weight:400;color:var(--secondary)}
.modern-form input,.modern-form select{min-width:0;width:100%;border-radius:12px;min-height:50px}
.modern-form input::placeholder{color:var(--muted);font-weight:400}
.modern-form .primary-pill{grid-column:1/-1;min-height:54px;font-size:16px}
.form-note{grid-column:1/-1;margin:6px 0 0;padding:11px 13px;background:var(--gsoft);border-radius:13px;color:var(--g800);font-size:12.8px;line-height:1.4}
.compact{padding:18px 16px}
@media(max-width:419px){.modern-form{gap:10px}.modern-form label{font-size:13px}}

/* ---- Campo y clima ---- */
.filter-pills a{border:1px solid var(--border);background:#fff;border-radius:999px;min-height:42px;padding:0 14px;display:flex;align-items:center;font-size:13.5px;font-weight:600;white-space:nowrap;flex:none}
.filter-pills a.active{background:var(--g700);color:#fff}
.wx-empty{display:grid;justify-items:center;text-align:center;gap:8px;padding:26px 20px}
.wx-empty svg{width:32px;height:32px;color:var(--g700)}
.wx-empty h2{margin:0;font-size:18px}
.wx-empty p{margin:0;color:var(--secondary);font-size:14px;max-width:30em}
.wx-empty .primary-pill{min-height:50px;padding:0 22px;font-size:15.5px;margin-top:6px}
.wx-now{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;background:linear-gradient(135deg,var(--g700),var(--g900));color:#fff;border-radius:22px;padding:18px;box-shadow:0 12px 26px rgba(31,54,31,.22)}
.wx-now small{display:block;opacity:.82;font-size:12.8px;margin-bottom:4px}
.wx-now strong{font-size:44px;line-height:1;letter-spacing:-.04em}
.wx-now p{margin:4px 0 0;font-size:15px;opacity:.92}
.wx-icon svg{width:62px;height:62px;color:#eaf1d8}
.wx-now ul{grid-column:1/-1;display:flex;gap:16px;list-style:none;margin:14px 0 0;padding:0;font-size:13.5px}
.wx-now li{display:flex;align-items:center;gap:5px;opacity:.94}
.wx-now li svg{width:17px;height:17px}
.wx-days{display:flex;gap:8px;overflow-x:auto;margin:14px 0;padding-bottom:2px;scrollbar-width:none}
.wx-days::-webkit-scrollbar{display:none}
.wx-days>div{flex:none;width:72px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:10px 6px;display:grid;justify-items:center;gap:3px;box-shadow:0 5px 14px rgba(31,54,31,.05)}
.wx-days .today{background:#eef4e2;border-color:#d3e2b8}
.wx-days b{font-size:12.5px;color:var(--secondary)}
.wx-days span svg{width:27px;height:27px;color:var(--g700)}
.wx-days strong{font-size:16px}
.wx-days small{font-size:12.5px;color:var(--secondary)}
.wx-days i{font-style:normal;font-size:11.5px;color:#2a6f93}
.wx-advice{padding:16px;margin-bottom:14px;background:#fff}
.wx-advice h2{margin:0 0 12px;font-size:17px}
.wx-advice p{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px;padding:11px 12px;border-radius:14px;font-size:13.5px;line-height:1.4}
.wx-advice p:last-child{margin-bottom:0}
.wx-advice svg{width:20px;height:20px;flex:none;margin-top:1px}
.wx-advice .ok{background:#eef4e2;color:#20502a}
.wx-advice .warn{background:#fbeee6;color:#8a4a22}
.wx-advice .info{background:var(--blue);color:#1f5b78}
.wx-grid{margin:0 0 14px}
.wx-aemet{padding:16px;background:#fff;margin-bottom:12px}
.wx-aemet h2{margin:0 0 8px;font-size:16px}
.wx-aemet p{margin:0;font-size:14px;line-height:1.45}
.wx-aemet small{color:var(--secondary);font-size:12px}
.wx-sources{color:var(--secondary);font-size:12px;line-height:1.5;margin:0 2px}
.wx-alerts{display:grid;gap:9px;margin-bottom:14px}
.wx-alert{display:flex;gap:11px;align-items:flex-start;border-radius:16px;padding:13px 14px;border-left:5px solid}
.wx-alert svg{width:22px;height:22px;flex:none}
.wx-alert b{display:block;font-size:14.5px;margin-bottom:3px}
.wx-alert small{display:block;font-size:12.5px;opacity:.85;line-height:1.35}
.wx-alert.n-amarillo{background:#fdf4d4;border-color:#e0b420;color:#6f5410}
.wx-alert.n-naranja{background:#fbe6d2;border-color:#e0812a;color:#7c4310}
.wx-alert.n-rojo{background:#f9dbd5;border-color:#c9402b;color:#7d2417}
.wx-alert-src{margin:0;font-size:11.5px;color:var(--secondary);text-align:right}
.plot-pills{align-items:center;margin-top:-6px}
.pill-label{flex:none;color:var(--secondary);font-size:12.5px;font-weight:700;padding-right:2px;align-self:center}

/* ---- Precios del aceite ---- */
.oil-now{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;background:linear-gradient(135deg,var(--g600),var(--g900));color:#fff;border-radius:22px;padding:18px;box-shadow:0 12px 26px rgba(31,54,31,.22);margin-bottom:12px}
.oil-now small{display:block;opacity:.84;font-size:12.8px;margin-bottom:4px}
.oil-now strong{font-size:40px;line-height:1;letter-spacing:-.04em}
.oil-now strong span{font-size:17px;font-weight:600;opacity:.8;letter-spacing:0}
.oil-now p{margin:8px 0 0;font-size:13.5px;font-weight:600;opacity:.95}
.oil-icon svg{width:54px;height:54px;color:#dbe8bf}
.oil-changes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}
.oil-changes>div{background:#fff;border:1px solid var(--border);border-radius:16px;padding:12px;text-align:center;box-shadow:0 5px 14px rgba(31,54,31,.05)}
.oil-changes small{display:block;color:var(--secondary);font-size:12px;margin-bottom:5px}
.oil-changes b{display:block;font-size:17px}
.oil-changes i{font-style:normal;font-size:11.5px;color:var(--secondary)}
.up{color:#2c7a3d}.down{color:#b23e2d}
.oil-now .up,.oil-now .down{color:#eaf1d8}
.oil-chart-panel{padding:16px;background:#fff;margin-bottom:14px}
.oil-chart-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.oil-chart-head h2{margin:0;font-size:17px}
.oil-range{display:flex;gap:5px;background:var(--bg-soft);border-radius:999px;padding:4px}
.oil-range a{padding:7px 11px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--secondary)}
.oil-range a.active{background:#fff;color:var(--g800);box-shadow:0 2px 6px rgba(31,54,31,.12)}
.oil-chart{width:100%;height:190px;overflow:visible}
.oil-axis{font-size:10px;fill:#8b958f}
.oil-nochart{color:var(--secondary);font-size:13.5px;margin:0}
.oil-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}
.oil-types a{border:1px solid var(--border);border-radius:14px;padding:10px 8px;text-align:center;background:var(--bg-main)}
.oil-types a.active{background:#e7f0d5;border-color:#cfe0ac}
.oil-types b{display:block;font-size:12.5px}
.oil-types span{display:block;font-size:13px;color:var(--g700);font-weight:700;margin-top:3px}
.oil-stats{padding:16px;background:#fff;margin-bottom:14px}
.oil-stats h2{margin:0 0 12px;font-size:17px}
.oil-stats>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--border)}
.oil-stats>div:last-child{border-bottom:0}
.oil-stats span{color:var(--secondary);font-size:13.5px}
.oil-stats b{font-size:15.5px;margin-left:auto}
.oil-stats small{color:var(--muted);font-size:12px;min-width:66px;text-align:right}
.oil-mine{padding:16px;background:#fff;margin-bottom:14px}
.oil-mine h2{margin:0 0 8px;font-size:17px}
.oil-mine p{margin:0 0 12px;font-size:13.8px;line-height:1.45;color:#3c4d47}
.oil-mine-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.oil-mine-grid>div{background:var(--bg-main);border-radius:14px;padding:12px}
.oil-mine-grid small{display:block;color:var(--secondary);font-size:12px;margin-bottom:4px}
.oil-mine-grid strong{font-size:17px}
.oil-mine-note{margin:12px 0 0;font-size:13px;color:var(--g700);font-weight:600}
.oil-mine .primary-pill{min-height:48px;font-size:15px}
