/* PetaniRapi v2.29 — full visual QA & UI consistency pass */
:root{
  --ui-bg:#f4f7f5;
  --ui-card:#ffffff;
  --ui-text:#173529;
  --ui-muted:#64786f;
  --ui-line:#dfe8e2;
  --ui-green:#177347;
  --ui-green-2:#0f5c39;
  --ui-green-soft:#edf7f1;
  --ui-blue:#2b83c7;
  --ui-blue-soft:#edf6fd;
  --ui-teal:#178f81;
  --ui-teal-soft:#eaf8f5;
  --ui-violet:#6d58d8;
  --ui-violet-soft:#f0ecff;
  --ui-amber:#ce7f14;
  --ui-amber-soft:#fff4e2;
  --ui-red:#b44a42;
  --ui-red-soft:#fff1ef;
  --ui-shadow:0 12px 28px rgba(18,44,31,.055);
}

/* Global consistency */
html,body{background:#eef3ef}
body{color:var(--ui-text)}
a,button,.btn,input,select,textarea{touch-action:manipulation}
a:focus-visible,button:focus-visible,.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(27,122,76,.18)!important;outline-offset:2px}
.phone-shell{background:linear-gradient(180deg,#fbfcfb 0%,#f5f8f6 100%)}
.content{padding-top:14px}
.card,.list-item,.choice,.quick,.compact-disclosure,.settings-row,.weather-day-card,.weather-reco-card{border-color:var(--ui-line);box-shadow:var(--ui-shadow)}
.card{border-radius:22px}
.btn{min-height:48px;border-radius:16px}
.btn.primary{background:linear-gradient(180deg,#1c7d4c,#14663f);color:#fff;box-shadow:0 10px 20px rgba(19,104,63,.13)}
.btn.secondary{background:#edf6f0;color:#176c43;border:1px solid #dce9e1}
.btn.ghost{background:#fff;color:#274438;border:1px solid var(--ui-line)}
.btn.small{min-height:38px;border-radius:13px;padding:7px 10px}
input,select,textarea{border-color:#d7e2db;background:#fff;border-radius:15px}
input:focus,select:focus,textarea:focus{border-color:#78ab8d!important;box-shadow:0 0 0 4px rgba(23,115,71,.08)!important}
.section-title{align-items:flex-end;margin:18px 2px 9px}
.section-title h2{font-size:18px!important;line-height:1.2;color:#173529}
.section-title a{font-weight:850}
.pill{border:1px solid #dce9e1;background:#eff6f2;color:#176a42}
.meta,.muted,.field-help,.form-hint{color:var(--ui-muted)!important}

/* Topbar / sync */
.topbar{background:rgba(250,252,251,.97);border-bottom-color:#e2ebe5}
.topbar h1{color:#18382b}
.topbar-quickcard{border-radius:16px;box-shadow:none}
.sync-status{border-radius:18px;background:#fff;box-shadow:none;border-color:var(--ui-line)}
.sync-status-copy strong,.sync-status-copy small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.sync-status-action{border-radius:13px;min-height:34px}

/* Overview / metrics */
.home-overview-card{padding:14px}
.home-farm-switcher{align-items:end}
.home-farm-switcher select{font-weight:800}
.home-metrics{gap:9px}
.home-metrics>div{border:1px solid var(--ui-line)!important;border-radius:18px!important;box-shadow:none!important}
.home-metrics>div:nth-child(1){background:linear-gradient(145deg,#f7fcf9,#edf8f2)!important}
.home-metrics>div:nth-child(2){background:linear-gradient(145deg,#f8fbff,#edf5fb)!important}
.home-metrics>div small{color:#6a7e74!important}
.home-metrics>div strong{color:#18382a!important}

/* Quick action section */
.home-quick-actions-v218{padding:14px!important;border-radius:24px!important}
.home-quick-head-v218{align-items:flex-start!important;gap:10px}
.home-quick-head-v218 h2{margin-top:2px!important}
.home-quick-all-v218{border:1px solid var(--ui-line);background:#f7faf8!important;border-radius:999px!important;min-height:34px;display:inline-flex;align-items:center;padding:0 11px!important}
.home-action-grid-v218{gap:10px!important}
.home-action-card-v218{min-height:122px!important;border-radius:20px!important}
.home-action-copy-v218{margin-top:2px}
.home-action-copy-v218 strong{font-weight:900!important}
.home-secondary-card-v226{border-radius:20px!important;box-shadow:none!important}
.secondary-card-copy strong{font-weight:900}

/* Lists / choices / empty state */
.list{display:grid;gap:8px}
.list-item{padding:13px 14px;border-radius:18px;background:#fff}
.list-item .row{align-items:center}
.list-item strong{font-size:14px;line-height:1.3}
.list-item .meta{font-size:11.8px;line-height:1.45;margin-top:3px}
.slim-farm-item{position:relative;padding-right:36px!important}
.slim-farm-item .right-arrow{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#8ca198}
.farm-gps-mini{display:inline-flex;align-items:center;gap:5px;margin-top:6px;padding:4px 8px;border-radius:999px;background:#f5f8f6}
.farm-gps-mini.ok{background:#edf8f1;color:#197047}
.farm-gps-mini.missing{background:#fff6e8;color:#8f6219}
.choice{min-height:68px;padding:12px 13px;border-radius:18px;box-shadow:none}
.choice-icon{width:44px;height:44px;border-radius:15px}
.choice-list .choice:nth-child(1) .choice-icon{background:var(--ui-green-soft);color:var(--ui-green)}
.choice-list .choice:nth-child(2) .choice-icon{background:var(--ui-teal-soft);color:var(--ui-teal)}
.choice-list .choice:nth-child(3) .choice-icon{background:var(--ui-violet-soft);color:var(--ui-violet)}
.choice-list .choice:nth-child(4) .choice-icon{background:var(--ui-amber-soft);color:var(--ui-amber)}
.choice-list .choice:nth-child(5) .choice-icon{background:var(--ui-blue-soft);color:var(--ui-blue)}
.empty{border-radius:20px;background:linear-gradient(180deg,#fff,#fafcfb)}
.empty-illustration{background:#edf6f1;color:var(--ui-green);box-shadow:none}
.page-hint{border-radius:16px;background:#f7faf8;border:1px solid var(--ui-line);color:#5f756a}

/* Farm detail / GPS */
.farm-detail-head{padding:14px;border-radius:22px}
.farm-detail-head .meta{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.compact-tabs{background:#f1f5f2!important;border:1px solid var(--ui-line)!important;border-radius:16px!important;padding:4px!important;gap:4px!important;overflow-x:auto}
.compact-tabs a{border-radius:12px!important;min-height:38px;display:flex;align-items:center;justify-content:center;white-space:nowrap}
.compact-tabs a.active{background:#fff!important;color:var(--ui-green)!important;box-shadow:0 4px 12px rgba(18,44,31,.05)!important}
.quick{min-height:104px;border-radius:18px;box-shadow:none}
.quick-grid .quick:nth-child(1) .quick-icon{background:var(--ui-green-soft);color:var(--ui-green)}
.quick-grid .quick:nth-child(2) .quick-icon{background:var(--ui-teal-soft);color:var(--ui-teal)}
.quick-grid .quick:nth-child(3) .quick-icon{background:var(--ui-violet-soft);color:var(--ui-violet)}
.quick-grid .quick:nth-child(4) .quick-icon{background:var(--ui-amber-soft);color:var(--ui-amber)}
.farm-gps-card{border-radius:22px;background:linear-gradient(180deg,#fff,#fafcfb)}
.farm-gps-status{border-radius:15px}
.gps-values{gap:7px}
.gps-values span{border-radius:13px}

/* Forms / wizard */
.wizard-intro{padding:14px;border-radius:22px;box-shadow:none;background:linear-gradient(145deg,#f7fcf9,#eef8f2)}
.wizard-intro .wizard-icon{width:48px;height:48px;flex-basis:48px;border-radius:16px;box-shadow:none}
.wizard-intro h2{font-size:20px!important}
.wizard-step{padding:15px 14px;border-radius:22px;box-shadow:none}
.wizard-question{margin-bottom:14px}
.wizard-question h2{font-size:21px!important}
.wizard-question p{font-size:12.5px}
.wizard-progress{margin-bottom:10px}
.wizard-actions{margin-top:16px;gap:8px}
.wizard-actions .btn{min-height:46px}
.select-card-grid{gap:8px}
.select-card{min-height:102px;padding:12px;border-radius:17px;box-shadow:none}
.select-card-icon{width:36px;height:36px;border-radius:12px}
.select-card:has(input:checked),.select-card.is-selected{border-color:#79ad8e;background:linear-gradient(180deg,#f7fcf9,#edf8f2);box-shadow:0 0 0 3px rgba(23,115,71,.06)}
.wizard-review,.summary-box{border-radius:15px}
.sticky-form-action{padding-bottom:max(4px,env(safe-area-inset-bottom))}

/* Finance */
.finance-summary-card{border-radius:22px;padding:14px}
.finance-summary-head{align-items:flex-end}
.finance-metrics{gap:8px}
.finance-metrics .amount{border-radius:17px!important;min-width:0}
.finance-metrics .amount.in{background:linear-gradient(145deg,#effaf4,#e6f7ed)!important;color:#176f46!important}
.finance-metrics .amount.out{background:linear-gradient(145deg,#fff4f1,#ffebe7)!important;color:#a9473f!important}
.inline-month-form input[type="month"]{width:auto;min-width:126px}
.filter-disclosure{border-radius:18px}

/* Profile/settings */
.profile-summary-card{padding:14px;border-radius:22px}
.profile-summary-main{align-items:center}
.profile-summary-main .profile-avatar{box-shadow:none;border:1px solid var(--ui-line)}
.profile-summary-actions{gap:8px}
.profile-summary-actions .btn{min-height:42px}
.profile-disclosure{border-radius:20px;overflow:hidden}
.profile-disclosure>summary{background:#fff}
.settings-list-card{padding:5px!important;overflow:hidden}
.settings-row{border:0!important;border-bottom:1px solid #edf2ee!important;border-radius:0!important;box-shadow:none!important;background:#fff!important}
.settings-row:last-child{border-bottom:0!important}
.settings-row:hover{background:#fafcfb!important}
.settings-row>span:first-child,.settings-row>.app-icon:first-child{width:36px;height:36px;border-radius:13px;background:#edf6f1;color:var(--ui-green);display:grid;place-items:center}
.danger-row{color:#a54139!important}
.font-size-option-v224{box-shadow:none!important}

/* Location picker */
.location-picker,.location-picker-card{border-radius:20px!important;background:#fbfdfc!important;border:1px solid var(--ui-line)!important}
.location-profile-btn{white-space:normal!important;line-height:1.25!important;min-height:38px}
.location-mode-toggle{border-radius:15px!important}

/* Fertilizer advisor */
.fert-advisor-shell,.fert-advisor-card,.fert-guide-card{border-radius:22px!important}
.fert-advisor-guardrail{border-radius:15px}
.fert-compact-farm-switch.improved{grid-template-columns:minmax(0,1fr) minmax(160px,38%)!important;align-items:end}
.fert-farm-switch-copy strong,.fert-farm-switch-copy span,.fert-farm-switch-copy em{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.fert-context-strip{gap:7px}
.fert-context-strip span{border-radius:13px}
.fert-context-strip small,.fert-context-strip strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.fert-calc-result>div{box-shadow:none}
.fert-guide-item,.fert-weather-line{border-radius:15px}

/* Weather final consistency */
.dashboard-weather-card-v226{border-radius:22px!important}
.weather-current-card-v226{box-shadow:0 16px 32px rgba(18,63,41,.16)!important}
.weather-day-card-v226,.weather-reco-card-v226{box-shadow:none!important}
.weather-education-disclosure{box-shadow:none!important}

/* PWA install promo */
.pwa-install-promo{border-radius:24px!important;border:1px solid #dce7e0!important;box-shadow:0 18px 48px rgba(12,32,22,.18)!important}
.pwa-install-promo-head img{border-radius:14px!important}
.pwa-install-benefits{gap:6px!important;flex-wrap:wrap!important}
.pwa-install-benefits span{background:#edf7f1!important;border-color:#dbe9e0!important;color:#256643!important}
.pwa-install-actions{gap:8px!important}
.pwa-install-actions .btn{min-height:46px!important}

/* Support */
.hero-panel{border-radius:24px!important;box-shadow:none!important;background:linear-gradient(145deg,#1b7748,#125b39)!important}
.hero-panel h1,.hero-panel h2,.hero-panel h3,.hero-panel p,.hero-panel .muted{color:#fff!important}

/* Bottom navigation */
.bottom-nav{border-top-color:#e1eae4!important;box-shadow:0 -8px 24px rgba(18,42,31,.045)!important}
.bottom-nav a{border-radius:13px}
.bottom-nav a.active{background:#f2f8f4}
.bottom-nav a.active .nav-ico,.bottom-nav a.active small{color:#176c43!important}

/* Narrow phones */
@media(max-width:390px){
  .content{padding-left:11px!important;padding-right:11px!important}
  .home-overview-card,.home-quick-actions-v218,.profile-summary-card,.finance-summary-card,.farm-gps-card{padding:12px!important}
  .home-action-grid-v218{gap:8px!important}
  .home-action-card-v218{min-height:112px!important;padding:11px!important}
  .home-secondary-card-v226{min-height:76px!important;padding:12px!important}
  .secondary-card-icon{width:42px!important;height:42px!important}
  .wizard-step{padding:13px 12px}
  .wizard-actions{grid-template-columns:1fr 1fr!important}
  .fert-compact-farm-switch.improved{grid-template-columns:1fr!important}
  .fert-context-strip{grid-template-columns:1fr 1fr!important}
  .compact-tabs{justify-content:flex-start!important}
  .profile-summary-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
}
@media(max-width:335px){
  .home-action-grid-v218,.quick-grid,.grid2,.grid3,.select-card-grid{grid-template-columns:1fr!important}
  .home-action-card-v218{min-height:auto!important;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important}
  .home-action-copy-v218{margin-top:0}
  .home-secondary-actions-v226{grid-template-columns:1fr!important}
  .wizard-actions{grid-template-columns:1fr!important}
  .profile-summary-actions{grid-template-columns:1fr!important}
  .finance-summary-head{display:grid!important;grid-template-columns:1fr!important}
  .inline-month-form input[type="month"]{width:100%!important}
}

/* Large-font mode */
html[data-font-size="large"] .home-action-grid-v218,
html[data-font-size="xlarge"] .home-action-grid-v218,
html[data-font-size="large"] .home-secondary-actions-v226,
html[data-font-size="xlarge"] .home-secondary-actions-v226,
html[data-font-size="xlarge"] .quick-grid,
html[data-font-size="xlarge"] .select-card-grid{grid-template-columns:1fr!important}
html[data-font-size="large"] .home-action-card-v218,
html[data-font-size="xlarge"] .home-action-card-v218{min-height:auto!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important}
html[data-font-size="large"] .home-action-copy-v218,
html[data-font-size="xlarge"] .home-action-copy-v218{margin-top:0!important}
html[data-font-size="large"] .wizard-actions,
html[data-font-size="xlarge"] .wizard-actions{grid-template-columns:1fr!important}
html[data-font-size="large"] .select-card-grid,
html[data-font-size="xlarge"] .select-card-grid{grid-template-columns:1fr!important}
html[data-font-size="large"] .fert-compact-farm-switch.improved,
html[data-font-size="xlarge"] .fert-compact-farm-switch.improved{grid-template-columns:1fr!important}
html[data-font-size="large"] .profile-summary-actions,
html[data-font-size="xlarge"] .profile-summary-actions{display:grid!important;grid-template-columns:1fr!important}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Landing final polish */
.landing-main-v223{padding:18px 16px 16px!important;border-radius:28px!important;background:#fff!important;border:1px solid var(--ui-line)!important;box-shadow:var(--ui-shadow)!important}
.landing-brand-row-v223{margin-bottom:14px!important}
.landing-brand-badge-v223{background:#edf7f1!important;color:#1f6f47!important;border:1px solid #dceae1!important}
.landing-kicker-v223{color:#6c8176!important;font-size:11px!important;letter-spacing:.07em!important}
.landing-copy-v223 h1{font-size:30px!important;line-height:1.06!important;color:#173529!important}
.landing-copy-v223 h1 span{color:#176d43!important}
.landing-copy-v223 p{color:#60756b!important}
.landing-feature-list-v223{gap:8px!important}
.landing-feature-v223{padding:10px 11px!important;border-radius:16px!important;background:#f9fbfa!important;border:1px solid #e5ede8!important}
.landing-feature-v223>span{width:36px!important;height:36px!important;border-radius:13px!important;background:#edf6f1!important;color:#176d43!important}
.landing-feature-list-v223 .landing-feature-v223:nth-child(2)>span{background:var(--ui-blue-soft)!important;color:var(--ui-blue)!important}
.landing-feature-list-v223 .landing-feature-v223:nth-child(3)>span{background:var(--ui-violet-soft)!important;color:var(--ui-violet)!important}
.landing-feature-list-v223 .landing-feature-v223:nth-child(4)>span{background:var(--ui-amber-soft)!important;color:var(--ui-amber)!important}
.landing-photo-v223{border-radius:20px!important;overflow:hidden!important}
.landing-photo-v223 img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center 25%}
.landing-photo-caption-v223{background:linear-gradient(180deg,rgba(10,43,28,.08),rgba(10,43,28,.82))!important}
.landing-actions-v223{gap:8px!important}
.landing-main-cta-v223{min-height:52px!important}
.landing-install-cta-v223{min-height:46px!important}
.landing-login-v223{padding:6px 0!important}
.landing-trust-v223{background:#f4f8f5!important;border:1px solid #e1eae4!important;border-radius:15px!important;color:#526e61!important;padding:9px 10px!important}
.landing-steps-v223{padding:15px!important;border-radius:22px!important}
.landing-step-v223{border-radius:15px!important;background:#fafcfb!important;border:1px solid #e6ede9!important}

/* Auth final polish */
.auth-screen-v215 .compact-auth-wrap{padding-top:14px!important}
.auth-brand-compact-v215{padding:16px 14px 14px!important;border-radius:24px!important;background:linear-gradient(160deg,#176e43,#115837)!important;color:#fff!important;box-shadow:0 14px 30px rgba(18,67,43,.12)!important;text-align:center!important}
.auth-wordmark-v224{width:min(210px,72vw)!important;filter:brightness(0) invert(1)!important;opacity:.98}
.auth-brand-copy{margin-top:12px!important}
.auth-brand-copy h1{color:#fff!important;font-size:25px!important;max-width:none!important;margin:6px auto!important}
.auth-brand-copy p{color:rgba(255,255,255,.84)!important;font-size:12.5px!important}
.auth-eyebrow-v215{color:rgba(255,255,255,.72)!important;font-size:10.5px!important}
.auth-header-mini-visual-v228{height:62px!important;border-radius:16px!important;margin:12px 0 10px!important}
.auth-usp-text-v228{gap:6px!important}
.auth-usp-text-v228 span{min-height:34px!important;padding:6px 8px!important;border-radius:12px!important;font-size:11px!important;background:rgba(255,255,255,.11)!important;border-color:rgba(255,255,255,.12)!important}
.auth-switch-v215{margin:10px 0!important;border-radius:16px!important}
.auth-switch-v215 a{min-height:40px!important}
.auth-card-v215{padding:14px!important;border-radius:20px!important;box-shadow:none!important}
.auth-bottom-note-v215{padding-top:8px!important}
.auth-back-link-v215{margin-top:4px!important}

@media(max-width:360px){
  .landing-main-v223{padding:15px 13px!important}
  .landing-copy-v223 h1{font-size:27px!important}
  .landing-feature-list-v223{grid-template-columns:1fr!important}
  .auth-brand-compact-v215{padding:14px 12px 12px!important}
  .auth-brand-copy h1{font-size:23px!important}
}
