:root { --ink:#173128; --muted:#6b7d74; --line:#dce6df; --paper:#f7f9f6; --panel:#fff; --green:#19754a; --green-dark:#105536; --lime:#bbdf64; --sand:#f1e6c9; --orange:#d57629; --red:#a94036; --shadow:0 12px 28px rgba(25,57,42,.07); }
.map-empty,.map-base-warning { position:absolute; z-index:900; right:16px; bottom:16px; max-width:330px; padding:10px 12px; color:#5d4a1f; background:rgba(255,251,235,.94); border:1px solid #e8d79a; border-radius:8px; box-shadow:0 4px 15px rgba(54,53,30,.15); font-size:.78rem; line-height:1.45; }.map-empty { right:50%; bottom:50%; width:min(90%,400px); color:#365e46; background:rgba(244,249,241,.96); border-color:#cfe1cf; text-align:center; transform:translate(50%,50%); }
.field-summary article { min-height:52px !important; padding:7px 14px !important; }.field-summary span,.field-summary small { font-size:.67rem !important; }.field-summary strong { margin:3px 0 1px !important; font-size:.95rem !important; }
.parcel-name-form[hidden] { display:none !important; }
.field-history-panel { margin:18px auto 0; }
.parcel-cadastral-bar { display:flex; max-width:calc(1400px + 3cm); margin:0 auto 18px; overflow-x:auto; background:#fff; border:1px solid #e4ece6; border-radius:13px; box-shadow:var(--shadow); }.parcel-cadastral-bar>div { flex:1 0 150px; min-width:150px; padding:14px 16px; border-right:1px solid var(--line); }.parcel-cadastral-bar>div:last-child { border-right:0; }.parcel-cadastral-bar span { display:block; margin-bottom:5px; color:var(--muted); font-size:.67rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }.parcel-cadastral-bar strong { display:block; color:#254536; font-size:.8rem; line-height:1.4; overflow-wrap:anywhere; }.parcel-cadastral-bar .cadastral-source { background:#eff6e9; }.parcel-cadastral-bar .cadastral-source strong { color:#1c633d; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }.parcel-name-display { display:flex; align-items:center; justify-content:space-between; gap:8px; margin:23px 0 3px; }.parcel-name-display h2 { margin:0; }.parcel-name-edit-toggle { display:grid; flex:0 0 auto; place-items:center; width:30px; height:30px; padding:0; color:#386249; background:#edf4e9; border:1px solid #d9e8d8; border-radius:7px; font-size:16px; }.parcel-name-edit-toggle:hover { color:#fff; background:var(--green); }.parcel-name-form { display:grid; gap:6px; margin:18px 0 3px; }.parcel-name-form input { width:100%; min-height:40px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #b9d8bd; border-radius:7px; font-weight:700; }.parcel-name-save-state { color:var(--muted); font-size:.7rem; }.parcel-name-save-state.error { color:#a94036; }.parcel-name-save-state.saving { color:#35624a; }
.archived-parcels summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; list-style:none; }.archived-parcels summary::-webkit-details-marker { display:none; }.archived-parcels[open] summary { margin-bottom:18px; }.archived-parcels summary p { margin-bottom:5px; }.archived-parcels summary h2 { margin:0; font-size:1.15rem; }.archived-parcels summary b { font-size:1.2rem; transition:.2s; }.archived-parcels[open] summary b { transform:rotate(180deg); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; color:var(--ink); background:var(--paper); font-family:"DM Sans",Arial,sans-serif; }
h1,h2,h3,p { margin-top:0; } h1,h2 { font-family:Fraunces,Georgia,serif; letter-spacing:-.035em; } h1 { margin-bottom:.35rem; font-size:clamp(2rem,3vw,3.05rem); line-height:1.05; } h2 { margin-bottom:0; font-size:1.38rem; } h3 { margin-bottom:.4rem; } a { color:var(--green-dark); text-decoration:none; } button,input,select,textarea { font:inherit; } button { cursor:pointer; }
.sidebar { position:fixed; inset:0 auto 0 0; z-index:5; width:245px; display:flex; flex-direction:column; padding:28px 16px 18px; color:#eef7ed; background:#163f2f; }
.brand { display:inline-flex; align-items:center; gap:9px; color:inherit; font-family:Fraunces,Georgia,serif; font-size:1.65rem; font-weight:700; letter-spacing:-.07em; } .brand>span:last-child span { color:var(--lime); } .brand-mark { display:inline-grid; place-items:center; width:31px; height:31px; color:#173128; background:var(--lime); border-radius:50% 50% 50% 8%; font-family:Arial; font-size:19px; transform:rotate(-12deg); }
.farm-name { margin:46px 12px 22px; padding-bottom:20px; color:#a7c2b3; border-bottom:1px solid rgba(255,255,255,.13); font-size:.76rem; line-height:1.5; text-transform:uppercase; letter-spacing:.08em; } .farm-name strong { color:white; font-size:.9rem; font-weight:500; letter-spacing:0; text-transform:none; }
.sidebar nav { display:grid; gap:4px; }.nav-link { display:flex; align-items:center; gap:12px; padding:11px 12px; color:#c5d8cd; border-radius:10px; font-size:.94rem; } .nav-link span { width:16px; text-align:center; color:#a6c9b2; font-size:18px; } .nav-link.active,.nav-link:hover { color:white; background:rgba(207,238,127,.14); } .nav-link.active span { color:var(--lime); }.logout { margin-top:auto; }.logout button { width:100%; padding:10px 12px; color:#c8ddd0; background:transparent; border:0; text-align:left; }.logout button:hover { color:white; }
.main-content { min-height:100vh; margin-left:245px; padding:42px clamp(24px,4vw,70px) 60px; }.page-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin:0 auto 31px; max-width:calc(1400px + 3cm); }.page-header>div { max-width:760px; }.page-header .button { margin-top:7px; white-space:nowrap; }.eyebrow { margin-bottom:8px; color:var(--green); font-size:.7rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }.muted { color:var(--muted); line-height:1.55; }.small { font-size:.81rem; }.back-link { display:inline-block; margin-bottom:15px; color:var(--muted); font-size:.88rem; }.back-link:hover { color:var(--green); }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:9px 14px; border:1px solid transparent; border-radius:8px; font-weight:700; font-size:.88rem; transition:.18s ease; }.button.primary { color:#fff; background:var(--green); box-shadow:0 7px 13px rgba(25,117,74,.16); }.button.primary:hover { background:var(--green-dark); transform:translateY(-1px); }.button.light { color:var(--green-dark); background:#edf4e9; border-color:#d9e8d8; }.button.light:hover { background:#e1eedc; }.button.text { color:var(--muted); background:transparent; }.button.wide { width:100%; }.button:focus,input:focus,select:focus,textarea:focus { outline:3px solid rgba(187,223,100,.4); outline-offset:1px; }
.button.danger { color:#8f3029; background:#fff0ee; border-color:#f3cbc6; }.button.danger:hover { color:#fff; background:#a94036; border-color:#a94036; }.button.archive { color:#745b20; background:#f8f2dd; border-color:#eadcad; }.button.archive:hover { color:#5c4718; background:#eee2be; border-color:#dfcc91; }.field-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; }.field-actions form { display:flex; margin:0; }.field-actions .button { margin-top:0; }.parcel-modal { width:min(100% - 28px, 490px); padding:0; color:var(--ink); background:white; border:0; border-radius:14px; box-shadow:0 25px 70px rgba(19,49,35,.3); }.parcel-modal::backdrop { background:rgba(13,37,26,.58); backdrop-filter:blur(2px); }.modal-form { display:grid; gap:16px; padding:27px; }.modal-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }.modal-head h2 { margin:0; font-size:1.65rem; }.modal-head .eyebrow { margin-bottom:5px; }.modal-close { display:grid; place-items:center; width:32px; height:32px; padding:0; color:var(--muted); background:#f0f3ef; border:0; border-radius:50%; font-size:23px; line-height:1; }.modal-close:hover { color:var(--ink); background:#e3ebe3; }.modal-form label { display:grid; gap:6px; color:#4c6257; font-size:.78rem; font-weight:700; }.modal-form input { width:100%; min-height:43px; padding:9px 11px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }.modal-form .hint { margin:0; }.modal-actions { display:flex; justify-content:flex-end; gap:8px; padding-top:3px; border-top:1px solid var(--line); }
.panel { max-width:calc(1400px + 3cm); padding:24px; background:var(--panel); border:1px solid #e7eee9; border-radius:13px; box-shadow:var(--shadow); }.panel-title { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:21px; }.panel-title>a { font-size:.85rem; font-weight:700; }.panel hr { margin:23px 0; border:0; border-top:1px solid var(--line); }
  .metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; max-width:calc(1400px + 3cm); margin:0 auto 18px; }.metric-card,.weather-card { min-height:151px; padding:20px; background:#fff; border:1px solid #e7eee9; border-radius:13px; box-shadow:var(--shadow); }.metric-card span,.weather-card>span { display:block; margin-bottom:20px; color:var(--muted); font-size:.78rem; font-weight:600; }.metric-card strong { display:block; color:var(--ink); font-family:Fraunces,Georgia,serif; font-size:2rem; letter-spacing:-.06em; }.metric-card strong small { font-family:"DM Sans",sans-serif; font-size:.8rem; letter-spacing:0; }.metric-card em { display:block; margin-top:10px; color:var(--muted); font-size:.78rem; font-style:normal; }.metric-card.accent { border:0; color:white; background:linear-gradient(135deg,#267a50,#155a3d); }.metric-card.accent span,.metric-card.accent em,.metric-card.accent strong { color:white; }.weather-card { background:#f5f4e9; border-color:#e7e0c5; }.weather-loading { color:var(--muted); font-size:.9rem; }.weather-main { display:flex; align-items:center; gap:12px; }.weather-icon { font-size:32px; }.weather-temp { font-family:Fraunces,serif; font-size:1.9rem; }.weather-meta { margin-top:10px; color:var(--muted); font-size:.76rem; }.weather-attribution { margin:10px 0 0; color:var(--muted); font-size:.67rem; line-height:1.35; }.weather-attribution a { color:var(--green-dark); text-decoration:underline; text-underline-offset:2px; }
.dashboard-grid { display:grid; grid-template-columns:1.03fr 1fr; gap:18px; max-width:calc(1400px + 3cm); margin:0 auto 18px; }.treatment-panel { background:#f6faed; border-color:#dce9b9; }.status { display:inline-block; padding:5px 9px; border-radius:99px; font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }.status.good { color:#17633d; background:#dcefd9; }.status.pending { color:#85631c; background:#f8edc5; }.window-main { display:flex; gap:19px; align-items:center; margin:9px 0 19px; }.window-icon { display:grid; place-items:center; width:44px; height:44px; background:#dcefb9; border-radius:50%; font-size:22px; }.window-time { display:block; color:#244d35; font-family:Fraunces,serif; font-size:1.45rem; }.window-text { color:var(--muted); font-size:.8rem; }.window-loading { margin:25px 0; color:var(--muted); }.crop-bars { display:grid; gap:13px; }.crop-bars>div>div { display:flex; justify-content:space-between; margin-bottom:5px; font-size:.84rem; }.crop-bars strong { font-size:.8rem; }.crop-bars i { display:block; height:7px; overflow:hidden; background:#edf1ed; border-radius:20px; }.crop-bars b { display:block; height:100%; background:linear-gradient(90deg,#8bc756,#21794c); border-radius:inherit; }
.ai-auto-training-status { margin:16px 0; padding:14px 16px; border:1px solid; border-radius:9px; }.ai-auto-training-status.enabled { background:#edf7eb; border-color:#cce3c8; }.ai-auto-training-status.disabled { background:#fff8e7; border-color:#ead9a6; }.ai-auto-training-status strong { display:block; margin-bottom:6px; }.ai-auto-training-status p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.55; }.ai-auto-training-status small { display:block; margin-top:8px; color:var(--muted); font-size:.72rem; }.ai-auto-training-status code { color:#25553d; background:rgba(255,255,255,.72); border-radius:4px; padding:2px 4px; }.ai-auto-training-form { margin-top:12px; }.ai-auto-training-form .button { min-height:38px; }
.panel+.panel { margin-top:18px; }.table-wrap { overflow-x:auto; } table { width:100%; border-collapse:collapse; font-size:.86rem; } th { padding:0 13px 11px; color:var(--muted); font-size:.69rem; text-align:left; text-transform:uppercase; letter-spacing:.08em; white-space:nowrap; } td { padding:13px; border-top:1px solid #edf1ee; vertical-align:middle; } td strong,td small { display:block; } td small { margin-top:3px; color:var(--muted); font-size:.75rem; }.bbch { display:inline-block; min-width:32px; padding:4px 7px; color:#235b3e; background:#e1f0dc; border-radius:5px; font-size:.78rem; font-weight:700; text-align:center; }.table-link { font-weight:700; white-space:nowrap; }
.empty { padding:38px 15px; color:var(--muted); text-align:center; }.empty h3 { color:var(--ink); }.empty.compact { padding:21px 5px; text-align:left; }.flash { position:fixed; z-index:50; top:21px; right:24px; max-width:400px; padding:13px 17px; border-radius:9px; box-shadow:0 15px 35px rgba(0,0,0,.15); font-size:.88rem; animation:appear .2s ease; }.flash.success { color:#164c30; background:#def0dd; }.flash.warning { color:#6d4915; background:#fff0c9; }.flash.error { color:#7a2821; background:#fde3df; }@keyframes appear { from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none} }

.advisor-alerts{display:grid;gap:9px;margin:0 0 18px}.advisor-alert{display:flex;align-items:flex-start;gap:12px;padding:12px 15px;border:1px solid #ead8ac;border-left:4px solid #bc7a24;border-radius:9px;background:#fff8e8;color:#5f5138;font-size:.82rem}.advisor-alert.high{border-color:#e7bbb4;border-left-color:#b84e43;background:#fff0ed;color:#71312b}.advisor-alert strong{white-space:nowrap}.scouting-panel{margin-top:18px}.scouting-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.scouting-list article{padding:13px;border:1px solid var(--line);border-radius:10px;background:#fafcf9}.scouting-list article>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.scouting-list p{margin:10px 0;color:#40574b;font-size:.82rem;line-height:1.45}.scouting-list img{display:block;width:100%;height:160px;object-fit:cover;margin-top:10px;border-radius:7px}.scouting-list small{color:var(--muted)}
.advisor-live-panel,.ai-what-if{margin:18px 0}.advisor-live-metrics,.ai-simulator-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.advisor-live-metrics>div,.ai-simulator-results>div{padding:13px;border:1px solid var(--line);border-radius:9px;background:#f6f9f4}.advisor-live-metrics span,.ai-simulator-results span{display:block;color:var(--muted);font-size:.72rem}.advisor-live-metrics strong,.ai-simulator-results strong{display:block;margin:5px 0;color:var(--green-dark);font-size:1.05rem}.advisor-live-metrics small,.ai-simulator-results small{display:block;color:var(--muted);font-size:.72rem;line-height:1.4}.advisor-source{display:flex;justify-content:space-between;gap:15px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:#fafbf8;font-size:.8rem}.advisor-source.good{border-color:#b9d9bf;background:#f0f8ef}.advisor-source span{color:var(--muted)}
@media(max-width:760px){.scouting-list,.advisor-live-metrics,.ai-simulator-results{grid-template-columns:1fr}.advisor-source,.advisor-alert{flex-direction:column}.advisor-alert strong{white-space:normal}}
.filter-panel { padding:13px; margin:0 auto 18px; }.search-form { display:flex; gap:9px; }.search-form input { flex:1; }.form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }.form-grid label,.stack-form label { display:grid; gap:6px; color:#4c6257; font-size:.76rem; font-weight:700; }.form-grid input,.form-grid select,.form-grid textarea,.stack-form input,.stack-form select,.stack-form textarea,.search-form input,.map-toolbar select { width:100%; min-height:39px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }.form-grid textarea,.stack-form textarea { resize:vertical; }.form-action { display:flex; align-items:end; }.hint { margin:16px 0 0; color:var(--muted); font-size:.76rem; line-height:1.55; }.hint code,.info-grid code { color:#25553d; background:#ecf2e7; border-radius:4px; padding:2px 4px; }.add-panel { margin:24px auto 0; }.parcel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; max-width:calc(1400px + 3cm); margin:auto; }.parcel-card { display:flex; flex-direction:column; padding:20px; background:#fff; border:1px solid #e4ece6; border-radius:13px; box-shadow:var(--shadow); }.parcel-card-top { display:flex; justify-content:space-between; align-items:center; }.field-icon { display:inline-grid; place-items:center; width:32px; height:32px; color:#1a633e; background:#e4f0df; border-radius:9px; font-weight:700; }.tag { padding:5px 8px; color:#746038; background:#f5eedb; border-radius:99px; font-size:.7rem; font-weight:700; }.parcel-card h2 { margin:23px 0 3px; }.parcel-number { min-height:22px; margin:0; color:var(--muted); font-size:.8rem; }.parcel-stats { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:22px 0; }.parcel-stats div:last-child { grid-column:span 2; }.parcel-stats span { display:block; color:var(--muted); font-size:.69rem; }.parcel-stats strong { display:block; margin-top:2px; font-size:.84rem; }.parcel-card .wide { margin-top:auto; }.wide-empty { grid-column:1/-1; }
.field-header { margin-bottom:18px; }.field-summary { display:grid; grid-template-columns:repeat(4,1fr); max-width:calc(1400px + 3cm); margin:0 auto 18px; overflow:hidden; background:white; border:1px solid #e4ece6; border-radius:13px; box-shadow:var(--shadow); }.field-summary article { min-height:102px; padding:19px; border-right:1px solid var(--line); }.field-summary article:last-child { border:0; }.field-summary .priority { background:#f3f8e9; }.field-summary span,.field-summary small { display:block; color:var(--muted); font-size:.73rem; }.field-summary strong { display:block; margin:7px 0 3px; font-size:1.05rem; }.detail-grid { display:grid; grid-template-columns:1fr; gap:18px; max-width:calc(1400px + 3cm); margin:auto; }.detail-side { display:grid; align-content:start; gap:18px; }.detail-side .panel { width:100%; }.detail-side .panel+.panel { margin-top:0; }.detail-side details summary { display:flex; align-items:center; justify-content:space-between; list-style:none; cursor:pointer; }.detail-side details summary::-webkit-details-marker { display:none; }.detail-side details[open] summary { margin-bottom:18px; }.detail-side details summary p { margin-bottom:5px; }.detail-side details summary h2 { font-size:1.15rem; }.detail-side details summary b { font-size:1.2rem; transition:.2s; }.detail-side details[open] summary b { transform:rotate(180deg); }.compact-form { gap:11px; }.stack-form { display:grid; gap:15px; }.compact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.span-all { grid-column:1/-1; }.inline-form { display:flex; gap:8px; align-items:end; }.inline-form input { min-width:0; flex:1; min-height:39px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }.bbch-confirm { margin-top:14px; }.forecast-note { margin-top:14px; padding:11px; color:#35624a; background:#edf5e7; border-radius:7px; font-size:.77rem; line-height:1.5; }.nutrient-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }.nutrient { min-height:118px; padding:13px; background:#f7f9f6; border:1px solid #e5ece5; border-radius:9px; }.nutrient span,.nutrient small { display:block; color:var(--muted); font-size:.71rem; }.nutrient strong { display:block; margin:8px 0; color:#1c5637; font-family:Fraunces,serif; font-size:1.28rem; letter-spacing:-.04em; }.nutrient strong small { display:inline; font-family:"DM Sans",sans-serif; font-size:.7rem; letter-spacing:0; }.nutrient.lime { background:#fbf7e9; border-color:#eee1bb; }.nutrient.lime strong { color:#795c1c; }.lower-grid { grid-template-columns:1fr 1.15fr; margin-top:18px; }.lower-grid>.panel { width:100%; }.history-list { display:grid; grid-template-columns:repeat(5,1fr); margin-bottom:20px; }.history-list div { display:grid; gap:3px; padding:5px 11px; border-left:2px solid #b7d98a; }.history-list strong { color:var(--green); font-size:.82rem; }.history-list span { font-size:.82rem; }.history-list small { color:var(--muted); font-size:.7rem; }.history-form input { width:25%; }.upload-form { align-items:center; }.upload-form input[type=file] { padding:7px 0; background:transparent; border:0; font-size:.76rem; }.upload-form input[type=file]::file-selector-button { margin-right:8px; padding:6px 8px; color:var(--green-dark); background:#edf4e9; border:0; border-radius:5px; font-weight:700; }
.catalog-intro { max-width:calc(1400px + 3cm); margin:0 auto 15px; }.catalog-intro h2 { margin:3px 0 5px; font-size:1.35rem; }.catalog-intro .muted { margin:0; font-size:.8rem; }.crop-catalog-details { max-width:calc(1400px + 3cm); margin:0 auto; }.crop-catalog-details summary { display:flex; align-items:center; justify-content:space-between; padding:12px 15px; color:#1d643e; background:#eff6ea; border:1px solid #d7e6cd; border-radius:9px; cursor:pointer; font-size:.8rem; font-weight:700; list-style:none; }.crop-catalog-details summary::-webkit-details-marker { display:none; }.crop-catalog-details summary b { font-size:1rem; transition:transform .2s; }.crop-catalog-details[open] summary { margin-bottom:15px; }.crop-catalog-details[open] summary b { transform:rotate(180deg); }.crop-details-less { display:none; }.crop-catalog-details[open] .crop-details-more { display:none; }.crop-catalog-details[open] .crop-details-less { display:inline; }.crop-catalog { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; max-width:calc(1400px + 3cm); margin:auto; }.crop-catalog-card { min-height:221px; padding:20px; background:white; border:1px solid #e5ece6; border-radius:12px; box-shadow:var(--shadow); }.crop-catalog-card h2 { margin:18px 0 6px; font-size:1.22rem; }.crop-catalog-card p { color:var(--muted); font-size:.79rem; }.crop-catalog-card div { display:flex; flex-wrap:wrap; gap:5px; margin:15px 0; }.crop-catalog-card div span { padding:3px 6px; color:#315d45; background:#eff5ec; border-radius:4px; font-size:.67rem; }.crop-catalog-card small { color:var(--muted); font-size:.72rem; }.catalog-columns { display:grid; grid-template-columns:1.25fr .8fr; align-items:start; gap:18px; max-width:calc(1400px + 3cm); margin:auto; }.catalog-columns>.panel { width:100%; }.catalog-columns h3 { margin:0 0 15px; font-size:1rem; }.protection-list { display:grid; gap:0; }.protection-list>div { display:grid; gap:4px; padding:13px 0; border-top:1px solid var(--line); }.protection-list span,.protection-list small { color:var(--muted); font-size:.77rem; }
.harvest-dashboard { margin:0 auto 18px; }.harvest-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; max-width:calc(1400px + 3cm); margin:0 auto 18px; }.harvest-summary-grid>div,.harvest-summary-grid article { padding:15px; background:#f4f8ee; border:1px solid #dfead7; border-radius:10px; }.harvest-summary-grid span,.harvest-summary-grid small { display:block; color:var(--muted); font-size:.75rem; }.harvest-summary-grid strong { display:block; margin:7px 0 4px; color:#1d5b39; font-family:Fraunces,Georgia,serif; font-size:1.5rem; letter-spacing:-.05em; }.harvest-summary-grid strong small { display:inline; font-family:"DM Sans",sans-serif; font-size:.72rem; letter-spacing:0; }.harvest-summary-grid em { display:block; margin-top:8px; color:#785d23; font-size:.76rem; font-style:normal; }.wide-summary { margin-bottom:26px; }.harvest-list,.calculator-list { display:grid; gap:17px; max-width:calc(1400px + 3cm); margin:0 auto; }.section-heading { display:flex; justify-content:space-between; align-items:end; margin:3px 0 0; }.section-heading h2 { margin:0; }.harvest-entry,.calculator-entry,.archive-panel { width:100%; }.harvest-entry-title,.calculator-head { display:flex; justify-content:space-between; align-items:center; gap:17px; margin-bottom:19px; }.harvest-entry-title>div:first-child,.calculator-head>div:first-child { display:flex; align-items:center; gap:11px; }.harvest-entry h2,.calculator-head h2 { margin:0 0 2px; font-size:1.3rem; }.harvest-entry p,.calculator-head p { margin:0; color:var(--muted); font-size:.79rem; }.previous-harvest,.calculator-cost { display:grid; gap:2px; min-width:135px; padding:10px 12px; background:#f6f3e8; border-radius:8px; text-align:right; }.previous-harvest span,.previous-harvest small,.calculator-cost span,.calculator-cost small { color:var(--muted); font-size:.7rem; }.previous-harvest strong,.calculator-cost strong { font-size:.92rem; }.harvest-form,.application-form { display:grid; grid-template-columns:1fr 1.2fr 1fr 1.25fr auto; gap:11px; align-items:end; }.harvest-form label,.application-form label,.year-form label { display:grid; gap:6px; color:#4c6257; font-size:.74rem; font-weight:700; }.harvest-form input,.harvest-form select,.application-form input,.application-form select,.year-form input { width:100%; min-height:39px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }.year-form { display:flex; align-items:end; gap:9px; }.year-form input { width:120px; }.yield-tag { display:inline-block; padding:4px 7px; color:#1e5c3a; background:#e4f1dc; border-radius:5px; font-size:.76rem; font-weight:700; }.calculator-head { align-items:flex-start; }.calculator-cost { background:#f7f9f6; border:1px solid #e1ebe2; }.calculator-nutrients { grid-template-columns:repeat(5,minmax(0,1fr)); }.applications-details { margin-top:19px; padding-top:18px; border-top:1px solid var(--line); }.applications-details summary,.add-application summary { display:flex; justify-content:space-between; align-items:center; cursor:pointer; list-style:none; font-size:.86rem; }.applications-details summary::-webkit-details-marker,.add-application summary::-webkit-details-marker { display:none; }.applications-details[open] summary { margin-bottom:13px; }.add-application { margin-top:13px; padding:12px; background:#f1f6eb; border:1px dashed #b9d3a9; border-radius:8px; }.add-application summary { color:#1d5f3b; font-weight:700; }.add-application summary span { display:inline-grid; place-items:center; width:22px; height:22px; margin-right:8px; color:white; background:var(--green); border-radius:50%; }.add-application[open] summary { margin-bottom:14px; }.application-form { grid-template-columns:1fr 1.6fr 1fr 1fr 1.3fr auto; }.archive-panel { margin:22px auto 0; }
.map-toolbar { display:flex; align-items:center; gap:18px; max-width:calc(1400px + 3cm); margin:0 auto 13px; color:var(--muted); font-size:.82rem; }.map-toolbar label { display:flex; align-items:center; gap:7px; color:var(--ink); font-weight:700; }.map-toolbar select { width:auto; min-height:36px; }.parcel-map { position:relative; z-index:1; height:min(68vh,690px); max-width:calc(1400px + 3cm); margin:auto; overflow:hidden; background:#dce6d5; border:1px solid #d6e0d3; border-radius:13px; box-shadow:var(--shadow); }.map-legend { max-width:calc(1400px + 3cm); margin:10px auto 0; color:var(--muted); font-size:.75rem; }.map-legend i { display:inline-block; width:19px; height:4px; vertical-align:middle; background:#22794c; border-radius:5px; }.map-legend i.point { width:8px; height:8px; margin-left:10px; border-radius:50%; background:#d4752b; }.soil-class-legend { max-width:calc(1400px + 3cm); margin:18px auto 0; padding:17px 19px; background:#fff; border:1px solid #e4ece6; border-radius:12px; box-shadow:var(--shadow); transition:opacity .18s ease; }.soil-class-legend.is-muted { opacity:.58; }.soil-class-legend-head { display:flex; align-items:end; justify-content:space-between; gap:16px; }.soil-class-legend-head .eyebrow { margin-bottom:5px; }.soil-class-legend-head h2 { margin:0; font-size:1.05rem; }.soil-class-legend-head>span { color:#4f6a5a; font-size:.74rem; font-weight:700; text-align:right; }.soil-class-legend-items { display:flex; flex-wrap:wrap; gap:9px 14px; margin-top:13px; }.soil-class-legend-item { display:inline-flex; align-items:center; gap:7px; color:#385447; font-size:.78rem; font-weight:700; }.soil-class-legend-item i { display:inline-block; flex:0 0 auto; width:13px; height:13px; border:2px solid rgba(23,49,40,.22); border-radius:4px; }.leaflet-popup-content-wrapper { border-radius:8px; font-family:"DM Sans",sans-serif; }.map-popup strong,.map-popup span { display:block; }.map-popup span { margin-top:3px; color:#63766a; font-size:.78rem; }
.info-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; max-width:calc(1400px + 3cm); margin:auto; }.info-grid .panel { max-width:none; }.info-grid .field-icon { margin-bottom:18px; }.info-grid p,.disclaimer p { color:var(--muted); font-size:.87rem; line-height:1.7; }.disclaimer { margin:18px auto 0; background:#fffbed; border-color:#f1e3b6; }.disclaimer h2 { font-size:1.22rem; }
.admin-users-panel { max-width:calc(1400px + 3cm); margin:18px auto 0; }.admin-users-panel .section-heading { margin-bottom:7px; }.admin-users-panel > .muted { margin:0 0 17px; }.admin-role-form { display:flex; align-items:center; gap:8px; min-width:210px; }.admin-role-form select { flex:1; min-width:0; min-height:36px; padding:7px 9px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; font:inherit; }.admin-role-form .button { min-height:36px; padding:8px 11px; white-space:nowrap; }.admin-users-panel .hint { margin-bottom:0; }
.ai-training-panel { max-width:calc(1400px + 3cm); margin:18px auto 0; }.ai-training-panel .section-heading { margin-bottom:7px; }.ai-training-panel > .muted { margin:0 0 13px; }.ai-training-config { display:grid; gap:5px; margin:0 0 15px; padding:12px 14px; color:#745b20; background:#fbf7e9; border:1px solid #eee1bb; border-radius:8px; font-size:.82rem; }.ai-training-actions { display:flex; align-items:center; min-width:150px; }.ai-training-actions form { margin:0; }.ai-training-actions .button { white-space:nowrap; }.training-error { margin-top:5px; color:#9b3c32; }
.geoportal-details { margin:18px auto 0; }.geo-data-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; overflow:hidden; border:1px solid var(--line); border-radius:8px; background:var(--line); }.geo-data-grid>div { min-height:67px; padding:11px; background:#fbfcfa; }.geo-data-grid span { display:block; margin-bottom:4px; color:var(--muted); font-size:.69rem; }.geo-data-grid strong { font-size:.82rem; line-height:1.35; }
.auth-body { display:grid; min-height:100vh; place-items:center; padding:24px; background:radial-gradient(circle at 75% 12%,#d7eeb8 0,transparent 24%),radial-gradient(circle at 25% 90%,#d2ead9 0,transparent 30%),#f4f7f1; }.auth-main { width:min(100%,460px); }.auth-card { padding:42px; background:rgba(255,255,255,.91); border:1px solid rgba(215,229,218,.9); border-radius:17px; box-shadow:0 26px 60px rgba(26,65,45,.13); }.auth-brand { margin-bottom:36px; color:var(--ink); }.auth-card h1 { font-size:2.5rem; }.auth-card .stack-form { margin-top:27px; }.auth-card input { min-height:46px; }.auth-switch { margin:24px 0 0; color:var(--muted); font-size:.85rem; text-align:center; }.auth-switch a { font-weight:700; }
.password-requirements { margin:-5px 0 1px; color:var(--muted); font-size:.72rem; font-weight:400; line-height:1.45; }
.password-requirements.is-error { color:#a94036; }.password-requirements.is-valid { color:#19774f; }
.change-log-list { display:grid; gap:14px; max-width:calc(1400px + 3cm); margin:0 auto; }.change-log-entry { width:100%; }.change-log-entry h2 { margin:0 0 10px; font-size:1.2rem; }.change-log-entry p { margin:8px 0 0; color:#4c6257; font-size:.86rem; line-height:1.65; }
@media (max-width:1180px){ .metric-grid{grid-template-columns:repeat(2,1fr)}.parcel-grid{grid-template-columns:repeat(2,1fr)}.crop-catalog{grid-template-columns:repeat(3,1fr)}.history-list{grid-template-columns:repeat(3,1fr);gap:8px}.history-list div{border:0;border-left:2px solid #b7d98a}.nutrient-grid,.calculator-nutrients{grid-template-columns:repeat(2,1fr)}.harvest-form,.application-form{grid-template-columns:repeat(3,1fr)} }
@media (max-width:860px){ .sidebar{position:static;width:auto;min-height:auto;padding:14px 18px;flex-direction:row;align-items:center;gap:18px}.sidebar .farm-name,.sidebar .logout{display:none}.sidebar nav{display:flex;gap:2px;overflow:auto;flex:1}.nav-link{padding:8px 9px;white-space:nowrap}.nav-link span{display:none}.main-content{margin:0;padding:28px 18px 40px}.dashboard-grid,.detail-grid,.lower-grid,.catalog-columns{grid-template-columns:1fr}.detail-side{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.field-summary{grid-template-columns:repeat(2,1fr)}.field-summary article:nth-child(2){border-right:0}.field-summary article:nth-child(-n+2){border-bottom:1px solid var(--line)}.field-summary article:nth-child(3){border-left:0}.crop-catalog,.harvest-summary-grid{grid-template-columns:repeat(2,1fr)}.geo-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:560px){ .sidebar{padding:12px}.brand{font-size:1.3rem}.brand-mark{width:27px;height:27px}.nav-link{font-size:.78rem}.main-content{padding:24px 13px 35px}.page-header{display:block;margin-bottom:22px}.page-header .button{margin-top:14px}.metric-grid,.parcel-grid,.crop-catalog,.info-grid,.harvest-summary-grid,.geo-data-grid{grid-template-columns:1fr}.dashboard-grid{gap:13px}.panel{padding:17px;border-radius:10px}.metric-card,.weather-card{min-height:126px}.form-grid,.compact-grid,.harvest-form,.application-form{grid-template-columns:1fr}.form-action{align-items:start}.span-all{grid-column:auto}.search-form,.inline-form{flex-wrap:wrap}.search-form input{flex-basis:100%}.inline-form input{flex-basis:100%}.field-summary{grid-template-columns:1fr}.field-summary article{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}.field-summary article:nth-child(2){border-bottom:1px solid var(--line)}.field-summary article:last-child{border-bottom:0}.detail-side{grid-template-columns:1fr}.nutrient-grid,.calculator-nutrients{grid-template-columns:1fr}.history-list{grid-template-columns:repeat(2,1fr)}.history-form input{width:auto}.map-toolbar{align-items:flex-start;flex-direction:column;gap:7px}.parcel-map{height:55vh}.auth-card{padding:30px 23px}.auth-card h1{font-size:2.1rem}.flash{top:10px;right:10px;left:10px;max-width:none}.harvest-entry-title,.calculator-head,.section-heading{align-items:flex-start;flex-direction:column}.previous-harvest,.calculator-cost{text-align:left}.field-actions{justify-content:flex-start}.modal-form{padding:22px}.modal-actions{justify-content:stretch}.modal-actions .button{flex:1}.admin-role-form{min-width:230px} }
.soil-history { margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }.soil-history h3 { margin:0 0 11px; font-size:.92rem; }.soil-history table { min-width:660px; font-size:.74rem; }.soil-history td small { display:block; margin-top:3px; color:#2d7749; font-size:.65rem; font-weight:700; }.soil-history .current-soil-test { background:#f1f7eb; }.soil-history .hint { margin-top:10px; }
.crop-ai-advice { margin:16px 0 0; padding:16px 18px; background:#f3f8ef; border:1px solid #d5e7cb; border-radius:10px; }.crop-ai-advice .eyebrow { margin:0 0 5px; }.crop-ai-advice h3 { margin:0; font-size:1rem; }.crop-ai-advice p:not(.eyebrow) { max-width:1050px; margin:7px 0 12px; color:#496054; font-size:.82rem; line-height:1.55; white-space:pre-line; }.crop-ai-advice .button { margin:0 7px 0 0; }
.year-form select { width:120px; min-height:39px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }
.auth-reset-link { margin-top:10px; padding:0; color:var(--green-dark); background:transparent; border:0; font-weight:700; font-size:.84rem; }.auth-reset-link:hover { color:var(--green); text-decoration:underline; }
.dashboard-grid { align-items:stretch; }.dashboard-grid > .panel { height:100%; box-sizing:border-box; }
.dashboard-grid > .panel + .panel { margin-top:0; }
@media (min-width:561px){ .dashboard-grid { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; }.dashboard-grid > .panel { min-height:220px; height:100%; } }
.crop-readonly { display:grid; gap:8px; }.crop-readonly>div { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:39px; padding:8px 10px; background:#f8faf7; border:1px solid #dfe8e0; border-radius:7px; }.crop-readonly span { color:var(--muted); font-size:.72rem; font-weight:700; }.crop-readonly strong { color:var(--ink); font-size:.82rem; text-align:right; }
@media (min-width:861px){ .detail-nutrients { grid-template-columns:repeat(5,minmax(0,1fr)); }.detail-nutrients .nutrient { min-height:101px; padding:11px; }.detail-nutrients .nutrient strong { margin:7px 0; font-size:1.08rem; }.detail-nutrients .nutrient span,.detail-nutrients .nutrient small { font-size:.67rem; }.detail-nutrients .nutrient strong small { font-size:.64rem; } }
.record-panel summary { display:flex; align-items:center; justify-content:space-between; list-style:none; cursor:pointer; }.record-panel summary::-webkit-details-marker { display:none; }.record-panel summary p { margin-bottom:5px; }.record-panel summary h2 { font-size:1.15rem; }.record-panel summary b { font-size:1.2rem; transition:transform .2s; }.record-panel[open] summary { margin-bottom:18px; }.record-panel[open] summary b { transform:rotate(180deg); }.record-history { margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }.record-history h3 { margin:0 0 11px; font-size:.92rem; }
.detail-main { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.detail-main .calculator-panel { grid-column:1/-1; }.detail-side { grid-template-columns:repeat(2,minmax(0,1fr)); }@media (max-width:860px){ .detail-main { grid-template-columns:1fr; }.detail-main .calculator-panel { grid-column:auto; } }@media (max-width:560px){ .detail-side { grid-template-columns:1fr; } }
.catalog-columns { position:relative; left:50%; display:flex; align-items:stretch; gap:18px; width:100%; max-width:calc(1400px + 3cm); margin:0; transform:translateX(-50%); }.catalog-columns>.panel { flex:1 1 0; width:auto; min-width:0; height:auto; max-width:none; margin:0; }.catalog-delete { margin:0; }.catalog-delete .button { min-height:32px; padding:6px 9px; font-size:.74rem; }@media (max-width:860px){ .catalog-columns { left:auto; flex-direction:column; width:auto; max-width:calc(1400px + 3cm); margin:0 auto; transform:none; }.catalog-columns>.panel { width:100%; } }
.field-header { position:sticky; top:0; z-index:12; margin-bottom:18px; padding:13px 0 14px; background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 86%,rgba(247,249,246,0) 100%); box-shadow:0 9px 15px -18px rgba(23,49,40,.5); }.field-header::after { position:absolute; right:0; bottom:0; left:0; height:1px; content:""; background:rgba(220,230,223,.75); }.field-header .back-link { margin-bottom:7px; }.field-header .eyebrow { margin-bottom:5px; }.field-header h1 { margin-bottom:3px; }.field-header .muted { margin-bottom:0; }.field-header .field-actions { position:relative; z-index:1; }@media (max-width:560px){ .field-header { padding:10px 0 12px; }.field-header h1 { font-size:clamp(1.7rem,9vw,2.25rem); }.field-header .field-actions { gap:6px; }.field-header .field-actions .button { min-height:34px; padding:7px 9px; font-size:.76rem; } }
.protection-type-tag { display:inline-block; padding:4px 7px; color:#315d45; background:#eaf3e7; border-radius:5px; font-size:.71rem; font-weight:700; white-space:nowrap; }.catalog-row-actions { display:flex; justify-content:flex-end; gap:6px; }.catalog-row-actions .button { min-height:32px; padding:6px 8px; font-size:.73rem; }@media (max-width:560px){ .catalog-row-actions { justify-content:flex-start; } }
.catalog-columns>.panel:first-child .catalog-row-actions { min-width:0; flex-direction:column; align-items:stretch; }.catalog-columns>.panel:first-child .catalog-row-actions .button,.catalog-columns>.panel:first-child .catalog-delete { width:100%; }@media (max-width:860px){ .catalog-columns>.panel:first-child .catalog-row-actions { flex-direction:row; align-items:center; }.catalog-columns>.panel:first-child .catalog-row-actions .button,.catalog-columns>.panel:first-child .catalog-delete { width:auto; } }
.catalog-edit-modal { width:min(100% - 28px,640px); max-height:calc(100vh - 28px); padding:0; color:var(--ink); background:#fff; border:0; border-radius:14px; box-shadow:0 25px 70px rgba(19,49,35,.3); overflow:auto; }.catalog-edit-modal::backdrop { background:rgba(13,37,26,.58); backdrop-filter:blur(2px); }.catalog-edit-modal .modal-form { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-edit-modal .modal-head,.catalog-edit-modal .modal-actions { grid-column:1/-1; }.catalog-edit-modal label { display:grid; gap:6px; color:#4c6257; font-size:.78rem; font-weight:700; }.catalog-edit-modal input,.catalog-edit-modal select,.catalog-edit-modal textarea { width:100%; min-height:43px; padding:9px 11px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }.catalog-edit-modal textarea { min-height:72px; resize:vertical; }.catalog-edit-modal .span-all { grid-column:1/-1; }@media (max-width:560px){ .catalog-edit-modal .modal-form { grid-template-columns:1fr; padding:22px; }.catalog-edit-modal .modal-head,.catalog-edit-modal .modal-actions,.catalog-edit-modal .span-all { grid-column:auto; } }
.catalog-columns>.panel:nth-child(2) table { table-layout:fixed; }.catalog-columns>.panel:nth-child(2) th { padding:0 7px 9px; font-size:.62rem; }.catalog-columns>.panel:nth-child(2) td { padding:10px 7px; overflow-wrap:anywhere; }.catalog-columns>.panel:nth-child(2) th:nth-child(1) { width:21%; }.catalog-columns>.panel:nth-child(2) th:nth-child(2) { width:17%; }.catalog-columns>.panel:nth-child(2) th:nth-child(3) { width:20%; }.catalog-columns>.panel:nth-child(2) th:nth-child(4) { width:25%; }.catalog-columns>.panel:nth-child(2) th:nth-child(5) { width:17%; }.catalog-columns>.panel:nth-child(2) .catalog-row-actions { min-width:0; flex-direction:column; align-items:stretch; }.catalog-columns>.panel:nth-child(2) .catalog-row-actions .button,.catalog-columns>.panel:nth-child(2) .catalog-delete { width:100%; }.catalog-columns>.panel:nth-child(2) .catalog-delete .button { white-space:nowrap; }@media (max-width:860px){ .catalog-columns>.panel:nth-child(2) table { table-layout:auto; }.catalog-columns>.panel:nth-child(2) .catalog-row-actions { flex-direction:row; align-items:center; }.catalog-columns>.panel:nth-child(2) .catalog-row-actions .button,.catalog-columns>.panel:nth-child(2) .catalog-delete { width:auto; } }
.liming-fieldset { display:grid; grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:2px 0 0; padding:12px; background:#fffbef; border:1px solid #eedfae; border-radius:8px; }.liming-fieldset legend { padding:0 5px; color:#795c1c; font-size:.75rem; font-weight:700; }.liming-fieldset p { grid-column:1/-1; margin:0; color:#7b6a3c; font-size:.7rem; line-height:1.45; }.catalog-edit-modal .liming-fieldset { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-edit-modal .liming-fieldset label:first-of-type,.catalog-edit-modal .liming-fieldset p { grid-column:1/-1; }@media (max-width:560px){ .liming-fieldset,.catalog-edit-modal .liming-fieldset { grid-template-columns:1fr; }.catalog-edit-modal .liming-fieldset label:first-of-type,.catalog-edit-modal .liming-fieldset p { grid-column:auto; } }
.parcel-card { padding:16px; }.parcel-card .field-icon { width:30px; height:30px; border-radius:8px; }.parcel-card .tag { padding:4px 7px; }.parcel-card .parcel-name-display { margin:0 0 2px; }.parcel-card h2 { font-size:1.26rem; }.parcel-card .parcel-number { min-height:18px; font-size:.75rem; }.parcel-card .parcel-stats { gap:8px; margin:14px 0; }.parcel-card .parcel-stats span { font-size:.66rem; }.parcel-card .parcel-stats strong { font-size:.8rem; }.parcel-card .button.wide { min-height:36px; padding:7px 11px; font-size:.82rem; }
.liming-estimate { margin-top:14px; padding:12px 13px; color:#72591e; background:#fffaea; border:1px solid #efdfad; border-radius:8px; font-size:.78rem; line-height:1.5; }.liming-estimate strong { color:#755d1e; }.liming-estimate p { margin:5px 0 3px; }.liming-estimate small { color:#7b6a3c; font-size:.7rem; }
.price-history-columns { margin-top:18px; }.price-history-columns .panel { display:flex; flex-direction:column; }.price-history-columns .table-wrap { flex:1; }.price-history-columns .status { white-space:nowrap; }
.app-footer { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:6px 18px; padding:11px 18px 13px; color:var(--muted); background:var(--paper); font-size:.71rem; letter-spacing:.03em; text-align:right; }
.app-footer-authenticated { margin-left:245px; }
.app-seller-details { display:flex; flex:1 1 100%; flex-wrap:wrap; justify-content:flex-end; gap:4px 14px; margin:0; padding-top:7px; border-top:1px solid var(--line); font-style:normal; }
.app-seller-details strong { color:var(--ink); }
.seller-unavailable { color:#9a5b13; font-weight:700; }
@media (max-width:860px){ .app-footer-authenticated { margin-left:0; } }

.cookie-notice { position:fixed; right:22px; bottom:22px; z-index:1000; display:flex; align-items:center; gap:22px; width:min(680px,calc(100vw - 44px)); padding:18px 20px; color:#214535; background:#fff; border:1px solid #d7e5db; border-left:4px solid #76b64e; border-radius:12px; box-shadow:0 18px 50px rgba(17,52,37,.2); }
.cookie-notice[hidden] { display:none; }
.cookie-notice strong { display:block; margin-bottom:4px; color:#123f2d; font-family:Fraunces,Georgia,serif; font-size:1.05rem; }
.cookie-notice p { margin:0; color:#536c60; font-size:.78rem; line-height:1.55; }
.cookie-notice .button { flex:none; min-width:104px; }
@media (max-width:650px){ .cookie-notice { right:14px; bottom:14px; align-items:stretch; flex-direction:column; gap:14px; width:calc(100vw - 28px); padding:17px; }.cookie-notice .button { width:100%; } }
.sowing-date-picker { display:flex; flex-wrap:wrap; gap:7px; min-width:0; margin:0; padding:0; border:0; }.sowing-date-picker legend { flex:0 0 100%; margin:0 0 -1px; color:#4c6257; font-size:.76rem; font-weight:700; }.sowing-date-picker label { min-width:0; }.sowing-date-picker label:nth-of-type(1) { flex:0 0 58px; }.sowing-date-picker label:nth-of-type(2) { flex:1 1 92px; }.sowing-date-picker label:nth-of-type(3) { flex:0 0 72px; }.sowing-date-picker select { min-height:39px; padding:8px 7px; }.sowing-date-picker.has-calendar-ui { position:relative; display:block; }.sowing-date-picker.has-calendar-ui>label { display:none; }.sowing-calendar-ui { position:relative; width:100%; }.sowing-calendar-trigger { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:39px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; text-align:left; }.sowing-calendar-trigger:hover,.sowing-calendar-trigger[aria-expanded="true"] { border-color:#9bbb74; box-shadow:0 0 0 3px rgba(187,223,100,.3); }.sowing-calendar-icon { display:grid; flex:0 0 auto; place-items:center; width:23px; height:23px; color:#296344; background:#edf4e9; border-radius:5px; font-size:.82rem; }.sowing-calendar-popup { position:absolute; z-index:80; top:calc(100% + 7px); right:0; width:min(340px,calc(100vw - 36px)); padding:13px; background:#fff; border:1px solid #d9e4dc; border-radius:11px; box-shadow:0 18px 45px rgba(24,54,40,.2); }.sowing-calendar-popup.opens-upward { top:auto; bottom:calc(100% + 7px); }.sowing-calendar-popup[hidden] { display:none; }.sowing-calendar-head { display:grid; grid-template-columns:34px minmax(110px,1fr) 82px 34px; gap:6px; align-items:center; margin-bottom:11px; }.sowing-calendar-head button,.sowing-calendar-actions button { min-height:34px; padding:6px 8px; color:#245a3d; background:#eff5eb; border:1px solid #d8e6d5; border-radius:6px; font-weight:700; }.sowing-calendar-head button:disabled { opacity:.35; cursor:not-allowed; }.sowing-calendar-head select { width:100%; min-height:34px; padding:5px 7px; }.sowing-calendar-weekdays,.sowing-calendar-days { display:grid; grid-template-columns:repeat(7,1fr); gap:3px; }.sowing-calendar-weekdays { margin-bottom:4px; color:var(--muted); font-size:.67rem; font-weight:700; text-align:center; }.sowing-calendar-weekdays span { padding:4px 0; }.sowing-calendar-days button,.sowing-calendar-spacer { min-width:0; aspect-ratio:1; }.sowing-calendar-days button { display:grid; place-items:center; padding:0; color:#29473a; background:#fff; border:1px solid transparent; border-radius:7px; font-size:.78rem; }.sowing-calendar-days button:hover { background:#edf5e9; border-color:#cfe1c8; }.sowing-calendar-days button.is-today { border-color:#8fb66e; }.sowing-calendar-days button.is-selected { color:#fff; background:var(--green); border-color:var(--green); font-weight:700; }.sowing-calendar-actions { display:flex; justify-content:space-between; gap:8px; margin-top:10px; }.sowing-calendar-actions button { font-size:.73rem; }
.sowing-calendar-ui,.sowing-calendar-ui button,.sowing-calendar-ui select { font-family:"DM Sans",Arial,sans-serif; }.sowing-calendar-trigger { font-size:.76rem; font-weight:700; }.sowing-calendar-head select { font-size:.76rem; font-weight:700; }.sowing-calendar-days button { font-size:.76rem; font-weight:500; }
.sowing-calendar-trigger.is-invalid { border-color:#c85d52; box-shadow:0 0 0 3px rgba(200,93,82,.16); }
.sowing-date-picker.has-calendar-ui legend { margin-bottom:6px; }
.form-grid input[readonly] { color:#52675c; background:#f2f5f1; cursor:not-allowed; }
.archive-panel td small.danger-text { color:#a94036; }
.harvest-total-row th,.harvest-total-row td { padding-top:15px; padding-bottom:15px; background:#f2f7ed; border-top:2px solid #cfe1c7; }.harvest-total-row th { color:#315642; font-size:.74rem; }.harvest-total-row td strong { color:#174f32; font-size:.94rem; }
.ai-summary-grid { grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:18px; }.ai-summary-grid article { min-height:116px; padding:17px; background:#fff; border:1px solid #e4ece6; border-radius:11px; box-shadow:var(--shadow); }.ai-summary-grid span,.ai-summary-grid small { display:block; color:var(--muted); font-size:.74rem; }.ai-summary-grid strong { display:block; margin:9px 0 4px; color:#1b5938; font-family:Fraunces,Georgia,serif; font-size:1.55rem; letter-spacing:-.05em; }.ai-columns { display:grid; grid-template-columns:1fr 1fr; gap:18px; max-width:calc(1400px + 3cm); margin:0 auto 22px; }.ai-columns .panel { width:100%; max-width:none; }.ai-config { padding:16px; color:#4c6257; background:#f5f8f2; border:1px solid #dde9d8; border-radius:8px; font-size:.86rem; line-height:1.55; }.ai-config p:last-child { margin-bottom:0; }.ai-advice-history { display:grid; gap:16px; max-width:calc(1400px + 3cm); margin:auto; }.ai-advice { width:100%; max-width:none; }.ai-advice-head { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; margin-bottom:14px; }.ai-advice-head h3 { margin:0 0 4px; font-family:Fraunces,Georgia,serif; font-size:1.18rem; }.ai-advice-head p { margin:0; color:var(--muted); font-size:.75rem; }.ai-answer { padding:14px; color:#2d493b; background:#f5f8f3; border-left:3px solid #8ebf64; border-radius:6px; font-size:.86rem; line-height:1.6; }.ai-feedback-form { display:grid; grid-template-columns:1fr .7fr 1.5fr auto; gap:10px; align-items:end; margin-top:15px; }.ai-feedback-form label { display:grid; gap:6px; color:#4c6257; font-size:.72rem; font-weight:700; }.ai-feedback-form input,.ai-feedback-form select { width:100%; min-height:37px; padding:8px 10px; color:var(--ink); background:#fff; border:1px solid #d7e1db; border-radius:7px; }.ai-feedback-form .button { min-height:37px; }.forecast-note small { color:#597667; font-size:.68rem; }@media (max-width:860px){ .ai-columns{grid-template-columns:1fr}.ai-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ai-feedback-form{grid-template-columns:1fr 1fr}.ai-feedback-note{grid-column:1/-1}.ai-feedback-form .button{grid-column:1/-1} }@media (max-width:560px){ .ai-summary-grid{grid-template-columns:1fr}.ai-feedback-form{grid-template-columns:1fr}.ai-feedback-note,.ai-feedback-form .button{grid-column:auto} }
.ai-request-actions { display:flex; flex-wrap:wrap; gap:9px; }.ai-request-actions .button { flex:1 1 260px; }.ai-batch-progress { display:grid; gap:9px; padding:14px; color:#355848; background:#f3f8ef; border:1px solid #d5e6cf; border-radius:9px; }.ai-batch-progress[hidden] { display:none; }.ai-batch-progress strong,.ai-batch-progress span { display:block; }.ai-batch-progress span { color:var(--muted); font-size:.78rem; }.ai-batch-progress progress { width:100%; height:12px; accent-color:var(--green); }.ai-batch-progress .button { justify-self:start; margin-top:2px; }

.candidate-notice { margin-top:9px; padding:10px 12px; color:#73561c; background:#fff6d9; border:1px solid #ead79b; border-radius:10px; font-size:.76rem; line-height:1.5; white-space:normal; min-width:160px; }.candidate-notice small { display:block; margin-top:6px; }
.help-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; width:100%; max-width:calc(1400px + 3cm); margin:0 auto; }
@media (min-width:861px) { .main-content { padding-inline:max(12px,calc(clamp(24px,4vw,70px) - 1.5cm)); } }
.help-layout > .page-header,.help-layout > section { width:100%; min-width:0; max-width:none; margin:0; }
.help-layout > .panel + .panel { margin-top:0; }
.help-layout .info-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; align-items:stretch; }
.help-layout .panel { min-width:0; padding:24px; }
.help-layout .info-grid > .panel { margin:0; height:100%; }
.help-layout .panel > :last-child,.help-layout .page-header p:last-child { margin-bottom:0; }
.help-layout .section-heading { margin:0 0 18px; align-items:flex-start; gap:16px; }
.help-layout .table-wrap { width:100%; min-width:0; }
.help-layout .ai-training-lifecycle-panel table { min-width:1200px; }
.help-layout .ai-training-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; min-width:240px; }
.help-layout .ai-training-actions form { margin:0; }
.help-layout .ai-training-actions > small { flex-basis:100%; }
.help-layout code { overflow-wrap:anywhere; }
@media (max-width:1180px) { .help-layout .info-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .help-layout { gap:18px; }.help-layout .info-grid { grid-template-columns:1fr; gap:18px; }.help-layout .panel { padding:18px; } }

.main-content > section,.main-content > header,.main-content > div { max-width:calc(1400px + 3cm); margin-inline:auto; min-width:0; }
.main-content > .catalog-columns { left:auto; transform:none; width:100%; margin-inline:auto; }
/* Licencje: wspólne odstępy i równa wysokość ofert. */
.license-banner { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:24px; }
.license-banner h2 { margin:0 0 8px; }
.license-banner p:last-child { margin-bottom:0; }
.license-banner .button { flex-shrink:0; }
.license-active { border-left:4px solid #19774f; }
.license-expired { border-left:4px solid #bc8c2c; background:#fff9ed; }
.license-nav-locked { opacity:.5; cursor:not-allowed; }
.legal-consent { display:flex!important; align-items:flex-start; gap:9px!important; font-size:.82rem!important; line-height:1.45; color:#4c6257; }
.legal-consent input { width:auto!important; margin-top:3px; flex:0 0 auto; }
.legal-consent a,.app-footer a { color:#137a4b; text-decoration:underline; text-underline-offset:2px; }
.legal-document ul,.legal-document li { color:#4f685a; font-family:inherit; font-size:1.02rem; font-weight:400; line-height:1.85; letter-spacing:normal; }
.legal-document ul { display:grid; gap:10px; margin:0; padding-left:22px; }
.legal-document section { scroll-margin-top:90px; }
.purchase-unavailable { border-left:4px solid #b6791b; background:#fff9ec; }
.license-purchase-form { display:grid; gap:12px; margin-top:18px; }
.license-purchase-form .button[disabled],.license-offer .button[disabled] { opacity:.58; cursor:not-allowed; }
.ai-usage-panel { margin-bottom:22px; }
.ai-usage-total { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:18px 0; }
.ai-usage-total>div { display:grid; gap:6px; padding:16px; border:1px solid var(--line); border-radius:10px; background:#f8fbf8; }
.ai-usage-total span { color:#62776b; font-size:.78rem; }
.ai-usage-total strong { font-size:1.35rem; color:#123f2b; }
@media(max-width:560px){.ai-usage-total{grid-template-columns:1fr}}
.license-offers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-bottom:24px; }
.license-offers > .panel { margin:0; }
.license-offer { display:flex; flex-direction:column; }
.license-offer form { margin-top:auto; }
.license-price { font-size:44px; font-weight:700; color:#19774f; margin:12px 0; }
.license-price span { font-size:20px; }
.license-consent { display:flex; align-items:flex-start; gap:10px; font-size:12px; }
.license-consent input { width:auto; min-width:16px; margin-top:3px; }
.license-admin-form { display:grid; grid-template-columns:2fr 1fr auto; align-items:end; gap:16px; margin:20px 0; }
.license-account-actions { display:flex; flex-wrap:wrap; gap:7px; }.license-account-actions form { margin:0; }.license-account-actions .button { margin:0; white-space:nowrap; }
@media(max-width:1000px) { .license-offers { grid-template-columns:1fr; } .license-admin-form { grid-template-columns:1fr; } }
@media(max-width:650px) { .license-banner { flex-direction:column; align-items:stretch; } }
.account-management-actions { display: flex; flex-direction: column; align-items: flex-start; gap: .45rem; }
.account-management-actions form { margin: 0; }

/* Formularz kontaktowy */
.contact-layout { display:grid; grid-template-columns:minmax(0,760px); justify-content:center; gap:30px; width:100%; margin:0 auto; }
.public-contact-layout { width:min(100% - 48px,1120px); padding:95px 0 110px; }
.contact-intro { text-align:center; }
.contact-intro h1 { margin:0 0 20px; font-size:clamp(2.5rem,5vw,4.5rem); }
.contact-intro>p:last-of-type { max-width:680px; margin:0 auto; color:#587062; font-size:1.02rem; line-height:1.75; }
.contact-form { display:grid; gap:17px; margin:0; }
.contact-form label { display:grid; gap:7px; color:#4c6257; font-size:.78rem; font-weight:700; }
.contact-form input,.contact-form select,.contact-form textarea { width:100%; }
.contact-form textarea { resize:vertical; }
.contact-form .button { justify-self:start; min-width:190px; }
.contact-trap { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
@media(max-width:1000px) { .contact-layout { grid-template-columns:minmax(0,760px); } }
@media(max-width:650px) { .public-contact-layout { width:min(100% - 28px,1120px); padding:55px 0 70px; }.contact-form { padding:20px; }.contact-form .button { width:100%; } }

/* Publiczna strona Agro-AI */
.public-body { min-height:100vh; color:#173128; background:#f6f8f3; }
.public-header { position:sticky; top:0; z-index:30; display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:34px; width:100%; min-height:76px; padding:12px max(24px,calc((100vw - 1320px)/2)); background:rgba(246,248,243,.94); border-bottom:1px solid rgba(210,225,211,.9); backdrop-filter:blur(16px); }
.public-brand { color:#163f2f; letter-spacing:-.06em; }.public-brand>span:last-child span { color:#78a92f; }
.public-header nav { display:flex; justify-content:center; gap:28px; }.public-header nav a,.public-login { color:#52695c; font-size:.9rem; font-weight:700; }.public-header nav a:hover,.public-header nav a.active,.public-login:hover { color:#137a4b; }
.public-actions { display:flex; align-items:center; gap:18px; }.public-menu-button { display:none; padding:7px 10px; color:#163f2f; background:#edf3e9; border:1px solid #d9e5d8; border-radius:8px; font-size:1.25rem; }
.public-main { overflow:hidden; }.public-main h1,.public-main h2,.public-main h3 { color:#173128; }.public-main h1 { font-size:clamp(2.7rem,5.5vw,5.2rem); line-height:.98; letter-spacing:-.065em; }.public-main h2 { font-size:clamp(2rem,3.5vw,3.3rem); line-height:1.08; letter-spacing:-.05em; }.public-main h3 { font-size:1.18rem; }
.public-hero { display:grid; grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr); align-items:center; gap:clamp(42px,6vw,90px); max-width:1400px; min-height:calc(100vh - 76px); margin:auto; padding:76px 40px 90px; }.public-hero-copy { max-width:650px; }.public-hero .lead,.public-page-head>p,.knowledge-article .lead { max-width:760px; margin:24px 0; color:#567062; font-size:clamp(1.05rem,1.6vw,1.28rem); line-height:1.7; }.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }.hero-actions .button { min-height:48px; padding:13px 20px; }.hero-note { margin:15px 0 0; color:#6d7f73; font-size:.78rem; }
.product-preview { position:relative; padding:18px; background:#fff; border:1px solid #dce7dd; border-radius:20px; box-shadow:0 34px 80px rgba(24,68,45,.16); }.product-preview::before { position:absolute; z-index:-1; inset:12% -10% -10% 8%; content:""; background:#d9efad; border-radius:40%; filter:blur(55px); opacity:.65; }.preview-top { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:10px; padding:9px 6px 17px; border-bottom:1px solid #e6eee7; }.preview-top>span { width:13px; height:13px; background:#b9df56; border-radius:50%; }.preview-top strong { font-size:.82rem; }.preview-top em { color:#789084; font-size:.7rem; font-style:normal; }.preview-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-top:14px; }.preview-grid article { min-height:116px; padding:18px; background:#f7faf5; border:1px solid #e4ece3; border-radius:12px; }.preview-grid small,.preview-grid span { display:block; color:#6b8175; font-size:.68rem; }.preview-grid strong { display:block; margin:12px 0 5px; color:#165f3d; font-family:Fraunces,Georgia,serif; font-size:1.65rem; }.preview-grid .preview-wide { grid-column:1/-1; }.preview-bars { display:grid; gap:8px; margin-top:17px; }.preview-bars i { display:block; height:9px; background:linear-gradient(90deg,#5e9b58,#b9dc70); border-radius:9px; }.preview-ai { background:#173f2f!important; }.preview-ai small,.preview-ai span { color:#b8d1c2; }.preview-ai strong { color:#e7f7c3; font-family:inherit; font-size:1rem; }
.public-section,.public-split,.public-video-section,.public-page-head,.feature-detail-grid,.public-pricing-grid,.public-price-note,.article-grid-full,.knowledge-article,.public-cta { width:min(100% - 48px,1320px); margin-inline:auto; }.public-section { padding:105px 0; }.public-section>.eyebrow { text-align:center; }.public-section>h2 { max-width:760px; margin:0 auto 48px; text-align:center; }.public-feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }.public-feature-grid article,.article-grid article { padding:27px; background:#fff; border:1px solid #e0e9e1; border-radius:14px; box-shadow:0 12px 32px rgba(28,68,47,.05); }.public-feature-grid article>span { color:#81af43; font-family:Fraunces,Georgia,serif; font-size:1.3rem; }.public-feature-grid h3 { margin:24px 0 10px; }.public-feature-grid p,.article-grid p { color:#61776a; font-size:.9rem; line-height:1.65; }
.public-split { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; padding:90px 70px; background:#173f2f; border-radius:24px; }.public-split h2 { color:#fff; }.public-split .eyebrow { color:#b9df56; }.public-split ol { display:grid; gap:0; margin:0; padding:0; list-style:none; counter-reset:steps; }.public-split li { position:relative; display:grid; grid-template-columns:48px 1fr; gap:6px 17px; padding:23px 0; color:#fff; border-bottom:1px solid rgba(255,255,255,.13); counter-increment:steps; }.public-split li::before { grid-row:1/3; display:grid; place-items:center; width:43px; height:43px; content:"0" counter(steps); color:#173f2f; background:#c6e576; border-radius:50%; font-weight:800; }.public-split li span { color:#b9cdc1; font-size:.86rem; }
.public-video-section { padding:105px 0; text-align:center; }.public-video-heading { max-width:850px; margin:0 auto 38px; }.public-video-heading h2 { margin:0 0 18px; }.public-video-heading>p:last-child { margin:0; color:#5b7466; font-size:1rem; line-height:1.7; }.public-video-frame { overflow:hidden; padding:10px; background:#173f2f; border:1px solid #d7e3d8; border-radius:22px; box-shadow:0 28px 70px rgba(23,63,47,.16); }.public-video-frame video { display:block; width:100%; aspect-ratio:16/9; background:#102b21; border-radius:14px; }.public-video-note { margin:14px 0 0; color:#6c8175; font-size:.78rem; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:35px; }.section-heading h2 { margin:0; }.section-heading a,.article-link { color:#147a4b; font-weight:700; }.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.article-grid article { display:flex; flex-direction:column; }.article-grid small { color:#769083; }.article-grid h2,.article-grid h3 { margin:17px 0 9px; }.article-grid h2 a,.article-grid h3 a { color:inherit; }.article-grid .article-link { margin-top:auto; padding-top:18px; font-size:.86rem; }
.public-page-head { padding:105px 0 65px; text-align:center; }.public-page-head h1 { max-width:950px; margin:auto; }.public-page-head>p { margin:25px auto 0; }.feature-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; padding-bottom:105px; }.feature-detail-grid article { padding:35px; background:#fff; border:1px solid #e0e9e1; border-radius:16px; }.feature-detail-grid b { display:grid; place-items:center; width:44px; height:44px; color:#175d3d; background:#e7f2dc; border-radius:11px; font-size:1.25rem; }.feature-detail-grid h2 { margin:22px 0 11px; font-size:1.55rem; letter-spacing:-.035em; }.feature-detail-grid p { color:#60776a; line-height:1.7; }
.public-pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; padding-bottom:35px; }.public-pricing-grid article { position:relative; padding:35px; background:#fff; border:1px solid #dce7de; border-radius:17px; }.public-pricing-grid article.recommended { border:2px solid #77ad48; box-shadow:0 20px 50px rgba(44,101,59,.12); }.pricing-badge { position:absolute; top:-13px; left:28px; padding:6px 11px; color:#173f2f; background:#c4e66f; border-radius:20px; font-size:.7rem; font-weight:800; }.public-pricing-grid h2 { margin:6px 0; font-size:1.65rem; }.public-price { margin:22px 0; color:#17613f; font-family:Fraunces,Georgia,serif; font-size:3.1rem; font-weight:700; }.public-price small { font-size:1rem; }.public-pricing-grid ul { display:grid; gap:12px; min-height:170px; margin:0 0 28px; padding:0; color:#577064; list-style:none; }.public-pricing-grid li::before { margin-right:9px; content:"✓"; color:#6ca43e; font-weight:800; }.public-price-note { margin-bottom:105px; padding:30px 35px; background:#eef5e8; border:1px solid #d8e8ce; border-radius:14px; }.public-price-note h2 { font-size:1.45rem; }.public-price-note p { color:#587062; }
.article-grid-full { grid-template-columns:repeat(2,1fr); padding-bottom:105px; }.knowledge-article { max-width:850px; padding:78px 0 105px; }.breadcrumbs { display:flex; gap:9px; margin-bottom:35px; color:#70877a; font-size:.78rem; }.breadcrumbs a { color:#347354; }.knowledge-article header { padding-bottom:38px; border-bottom:1px solid #dce7de; }.knowledge-article h1 { font-size:clamp(2.7rem,5vw,4.6rem); }.knowledge-article section { padding-top:36px; }.knowledge-article section h2 { font-size:1.75rem; }.knowledge-article section p { color:#4f685a; font-size:1.02rem; line-height:1.85; }.knowledge-article aside { margin-top:48px; padding:30px; background:#e9f4df; border-left:4px solid #77ad48; border-radius:10px; }.knowledge-article aside strong { font-family:Fraunces,Georgia,serif; font-size:1.35rem; }.knowledge-article aside p { color:#587062; }
.public-cta { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-bottom:90px; padding:52px 60px; background:#dff0bb; border-radius:20px; }.public-cta h2 { max-width:750px; margin:0 0 10px; font-size:clamp(1.9rem,3vw,2.8rem); }.public-cta p { margin:0; color:#4f6d5b; }.public-cta .button { flex:none; }.public-footer { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:24px; padding:38px max(24px,calc((100vw - 1320px)/2)); color:#bed0c5; background:#153b2d; }.public-footer .public-brand { color:#fff; }.public-footer p { margin:0; font-size:.82rem; }.public-footer div { display:flex; flex-wrap:wrap; gap:18px; }.public-footer a { color:#d3e2d8; font-size:.78rem; }.public-footer .public-seller-details { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px 18px; margin:0; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); color:#d3e2d8; font-size:.78rem; font-style:normal; }.public-footer .public-seller-details strong { color:#fff; }.public-footer small { grid-column:1/-1; padding-top:16px; border-top:1px solid rgba(255,255,255,.12); }
.legal-request-form { margin-top:22px; }.legal-document a { color:#137a4b; text-decoration:underline; text-underline-offset:2px; }.purchase-legal-summary { display:grid; gap:7px; margin:18px 0; padding:16px; border:1px solid #d8e5da; border-radius:10px; background:#f7faf7; font-size:.82rem; }.purchase-legal-summary p { margin:0; }.purchase-legal-summary a { color:#137a4b; text-decoration:underline; }
@media(max-width:1000px){.public-header{grid-template-columns:auto 1fr auto;gap:20px}.public-header nav{display:none}.public-menu-button{display:block}.public-header.menu-open nav{position:absolute;top:76px;right:18px;display:grid;min-width:220px;padding:17px;background:#fff;border:1px solid #dce7de;border-radius:11px;box-shadow:0 18px 40px rgba(26,60,42,.16)}.public-hero{grid-template-columns:1fr;min-height:auto;padding-top:65px}.public-hero-copy{max-width:760px}.product-preview{max-width:760px}.public-feature-grid{grid-template-columns:repeat(2,1fr)}.public-split{grid-template-columns:1fr;gap:25px}.article-grid{grid-template-columns:repeat(2,1fr)}.public-pricing-grid{grid-template-columns:1fr;max-width:680px}.public-pricing-grid ul{min-height:0}.public-footer{grid-template-columns:1fr}.public-footer div{flex-wrap:wrap}}
@media(max-width:650px){.public-header{min-height:66px;padding:10px 14px}.public-header .public-actions .public-login{display:none}.public-header .public-actions .button{padding:9px 11px;font-size:.75rem}.public-header.menu-open nav{top:66px}.public-main h1{font-size:clamp(2.35rem,12vw,3.3rem)}.public-hero{grid-template-columns:minmax(0,1fr);gap:42px;width:100%;padding:50px 18px 70px}.product-preview{padding:12px}.preview-grid{grid-template-columns:1fr}.preview-grid .preview-wide{grid-column:auto}.public-section,.public-split,.public-video-section,.public-page-head,.feature-detail-grid,.public-pricing-grid,.public-price-note,.article-grid-full,.knowledge-article,.public-cta{width:min(100% - 28px,1320px)}.public-section,.public-video-section{padding:70px 0}.public-feature-grid,.feature-detail-grid,.article-grid,.article-grid-full{grid-template-columns:1fr}.public-split{padding:45px 24px;border-radius:15px}.public-video-frame{padding:5px;border-radius:13px}.public-video-frame video{border-radius:9px}.section-heading{align-items:flex-start;flex-direction:column}.public-page-head{padding:70px 0 45px}.feature-detail-grid{padding-bottom:70px}.public-pricing-grid{padding-bottom:25px}.public-price-note{margin-bottom:70px}.knowledge-article{padding:50px 0 70px}.public-cta{align-items:flex-start;flex-direction:column;margin-bottom:60px;padding:35px 25px}.public-footer{padding:34px 18px}}

.photo-ai-form,.photo-ai-result{display:grid;gap:8px;margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f4f8f1}.photo-ai-form label{font-size:.75rem;line-height:1.4}.photo-ai-result p{margin:0}.admin-review-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(220px,2fr) auto;gap:8px;align-items:center}@media(max-width:760px){.admin-review-form{grid-template-columns:1fr}}
.sentinel-result{display:grid;gap:9px}.sentinel-result>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.sentinel-result p{margin:0;font-size:.82rem;line-height:1.5}.sentinel-action{display:grid!important;justify-content:normal!important;gap:3px;padding:10px 12px;border-radius:8px;background:#fff}.sentinel-result.medium{border-left:4px solid #bc7a24}.sentinel-result.high{border-left:4px solid #b84e43;background:#fff5f2}.sentinel-result.good{border-left:4px solid #31835a}

.ai-what-if input[type=number]{appearance:textfield;-moz-appearance:textfield}.ai-what-if input[type=number]::-webkit-inner-spin-button,.ai-what-if input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ai-what-if input[readonly]{background:#f2f5f1;color:#40574b;cursor:default}.cost-incomplete{color:#9a5e1e!important;font-weight:700}

.ai-blocked-guidance{margin:14px 0;padding:14px 16px;border:1px solid #ead8ac;border-left:4px solid #bc7a24;border-radius:9px;background:#fff9eb}.ai-blocked-guidance h4{margin:0 0 6px;color:#6d481c}.ai-blocked-guidance>p{margin:0 0 10px;color:#665945;font-size:.82rem;line-height:1.5}.ai-blocked-guidance ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.ai-blocked-guidance li{display:grid;grid-template-columns:minmax(120px,.45fr) 1fr 1.4fr;gap:10px;padding-top:9px;border-top:1px solid #eadfbe;font-size:.78rem;line-height:1.45}.ai-blocked-guidance li:first-child{border-top:0;padding-top:0}.ai-blocked-guidance li>b,.ai-blocked-guidance li>strong{color:#173e2d}@media(max-width:760px){.ai-blocked-guidance li{grid-template-columns:1fr}}
