:root,:host{--ol-background-color: white;--ol-accent-background-color: #F5F5F5;--ol-subtle-background-color: rgba(128, 128, 128, .25);--ol-partial-background-color: rgba(255, 255, 255, .75);--ol-foreground-color: #333333;--ol-subtle-foreground-color: #666666;--ol-brand-color: #00AAFF}.ol-box{box-sizing:border-box;border-radius:2px;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color)}.ol-mouse-position{top:8px;right:8px;position:absolute}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;bottom:8px;left:8px;padding:2px;position:absolute}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);border-top:none;color:var(--ol-foreground-color);font-size:10px;text-align:center;margin:1px;will-change:contents,width;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{width:1px;height:15px;background-color:var(--ol-foreground-color);float:right;z-index:10}.ol-scale-step-text{position:absolute;bottom:-5px;font-size:10px;z-index:11;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-text{position:absolute;font-size:12px;text-align:center;bottom:25px;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color)}.ol-scale-singlebar{position:relative;height:10px;z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color)}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-viewport,.ol-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;-moz-user-select:text;user-select:text}.ol-grabbing{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{position:absolute;background-color:var(--ol-subtle-background-color);border-radius:4px}.ol-zoom{top:.5em;left:.5em}.ol-rotate{top:.5em;right:.5em;transition:opacity .25s linear,visibility 0s linear}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{right:.5em;top:.5em}.ol-control button{display:block;margin:1px;padding:0;color:var(--ol-subtle-foreground-color);font-weight:700;text-decoration:none;font-size:inherit;text-align:center;height:1.375em;width:1.375em;line-height:.4em;background-color:var(--ol-background-color);border:none;border-radius:2px}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{display:block;font-weight:400;will-change:transform}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:hover,.ol-control button:focus{text-decoration:none;outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color)}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;bottom:.5em;right:.5em;max-width:calc(100% - 1.3em);display:flex;flex-flow:row-reverse;align-items:center}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{margin:0;padding:1px .5em;color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);font-size:12px}.ol-attribution li{display:inline;list-style:none}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{bottom:0;right:0;border-radius:4px 0 0}.ol-attribution.ol-uncollapsible img{margin-top:-.2em;max-height:1.6em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{top:4.5em;left:.5em;height:200px}.ol-zoomslider button{position:relative;height:10px}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{left:.5em;bottom:.5em}.ol-overviewmap.ol-uncollapsible{bottom:0;left:0;border-radius:0 4px 0 0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);height:150px;width:150px}.ol-overviewmap:not(.ol-collapsed) button{bottom:0;left:0;position:absolute}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}.farm-map-shell{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.farm-map-toolbar{display:flex;justify-content:space-between;align-items:center;background:#020617;border-radius:999px;padding:.35rem .5rem;border:1px solid #1f2937;box-shadow:0 0 0 1px #0b1120;gap:.5rem}.farm-map-tools-left{display:flex;gap:.25rem}.tool-btn,.primary-btn,.secondary-btn{font-size:.85rem;border-radius:999px;padding:.3rem .9rem;border:1px solid #1f2937;background:#020617;color:#e5e7eb;cursor:pointer;white-space:nowrap;transition:background .15s ease,border-color .15s ease,transform .05s ease}.tool-btn:hover,.primary-btn:hover,.secondary-btn:hover{background:#111827;border-color:#22c55e}.tool-btn.active{background:#16a34a;border-color:#22c55e;color:#020617;font-weight:600;transform:translateY(-1px)}.primary-btn{background:#22c55e;color:#020617;font-weight:600;border-color:#22c55e}.primary-btn:hover{background:#4ade80;border-color:#4ade80}.secondary-btn{font-size:.75rem;padding:.2rem .7rem}.farm-map-layout{display:block}.farm-map{width:100%;min-height:380px;height:440px;border-radius:1rem;overflow:hidden;border:1px solid #1f2937;box-shadow:0 10px 25px #00000059}.farm-map-sidebar{background:#020617;border-radius:1rem;padding:.75rem .9rem;border:1px solid #1f2937;box-shadow:0 10px 25px #00000059;display:flex;flex-direction:column;max-height:440px;overflow:hidden}.farm-map-sidebar h3{font-size:.95rem;font-weight:700;color:#e5e7eb;margin:0 0 .3rem}.farm-map-empty{font-size:.8rem;color:#9ca3af;margin:.25rem 0 .5rem}.farm-map-sidebar::-webkit-scrollbar{width:6px}.farm-map-sidebar:hover{overflow-y:auto}.farm-map-sidebar::-webkit-scrollbar-thumb{background:#111827;border-radius:999px}.farm-feature-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.4rem .5rem;padding:.55rem;margin-top:.4rem;border-radius:.75rem;background:#020617;border:1px solid #111827;cursor:pointer}.farm-feature-row.selected{border-color:#22c55e;background:radial-gradient(circle at top left,#022c22 0,#020617 55%)}.farm-feature-icon{display:flex;align-items:flex-start;padding-top:.35rem}.geom-dot{display:inline-block;width:14px;height:14px;border-radius:999px;box-shadow:0 0 0 2px #020617,0 0 0 3px #111827}.farm-feature-body{display:flex;flex-direction:column;gap:.25rem}.farm-feature-header{display:flex;justify-content:space-between;align-items:center}.geom-kind-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}.danger-link{background:none;border:none;color:#f97373;font-size:.75rem;cursor:pointer;padding:0;text-decoration:underline}.danger-link:hover{color:#fecaca}.farm-feature-input,.farm-feature-textarea{width:100%;border-radius:.5rem;border:1px solid #1f2937;background:#020617;color:#e5e7eb;font-size:.8rem;padding:.3rem .4rem;resize:vertical}.farm-feature-input::placeholder,.farm-feature-textarea::placeholder{color:#6b7280}.farm-feature-input:focus,.farm-feature-textarea:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e33}.farm-feature-textarea{min-height:45px}.farm-map-hint{margin-top:.5rem;font-size:.75rem;color:#9ca3af}.farm-zones-table-wrapper{margin-top:.35rem;border-radius:1rem;border:1px solid #111827;background:#020617;padding:.5rem .9rem .7rem;box-shadow:0 10px 25px #00000059;font-size:.8rem}.farm-zones-header-row,.farm-zones-row{display:grid;grid-template-columns:2fr 1.4fr 1.4fr minmax(320px,2fr);gap:.9rem;padding-left:.6rem;padding-right:.6rem}.farm-zones-header-row{padding-top:.25rem;padding-bottom:.4rem;border-bottom:1px solid #111827;color:#6b7280;text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.farm-zones-row{padding-top:.45rem;padding-bottom:.45rem;border-radius:.75rem;margin-top:.25rem;background:#020617;border:1px solid transparent;cursor:pointer}.farm-zones-row:hover{background:#020617;border-color:#111827}.farm-zones-row.selected{background:#020617;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e40}.farm-zones-row.hovered{background:#0f172ae6;border-color:#22c55e55}.farm-zones-row.selected.hovered{border-color:#22c55e}.zone-col{display:flex;align-items:center}.zone-col.zone-name{display:flex;align-items:center;gap:.5rem}.feature-color-pill{width:16px;height:4px;border-radius:999px;margin-right:.35rem;flex-shrink:0}.zone-type select,.zone-status select{width:100%;border-radius:999px;border:1px solid #1f2937;background:#020617;color:#e5e7eb;font-size:.75rem;padding:.15rem .6rem}.zone-type select:focus,.zone-status select:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e33}.zone-name-input{width:100%;border-radius:999px;border:1px solid #1f2937;background:#020617;color:#e5e7eb;font-size:.8rem;padding:.25rem .6rem}.zone-col.zone-components{justify-content:flex-end;gap:.6rem;flex-wrap:wrap}.components-summary{display:inline-flex;align-items:center;opacity:.9;white-space:nowrap;padding:.18rem .55rem;border:1px solid rgba(148,163,184,.18);background:#0f172aa6;border-radius:999px;font-size:.72rem}.zone-col.zone-components .secondary-btn{font-size:.72rem;padding:.22rem .65rem}.farm-map-summary{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem}.summary-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border-radius:999px;border:1px solid #1e293b;background:#0f172ae6;font-size:.82rem;color:#e5e7eb}.summary-btn{cursor:pointer;-webkit-user-select:none;user-select:none;appearance:none;border:1px solid #1e293b;background:#0f172ae6;transition:background .15s ease,border-color .15s ease,transform .05s ease,box-shadow .15s ease}.summary-btn:hover{background:#111827f2;border-color:#22c55eb3}.summary-btn:active{transform:translateY(1px)}.summary-btn.active{background:radial-gradient(circle at top left,#22c55e2e 0,#0f172ae6 55%);border-color:#22c55ee6;box-shadow:0 0 0 1px #22c55e59;font-weight:700}.summary-btn:focus-visible{outline:none;box-shadow:0 0 0 2px #22c55e59,0 0 0 4px #020617e6;border-color:#22c55ee6}.summary-chip-status{border-style:dashed;border-color:#374151}.summary-dot{width:10px;height:10px;border-radius:999px;box-shadow:0 0 6px #0f172acc}.dot-point{background:#f97316}.dot-line{background:#22c55e}.dot-zone{background:#a855f7}.summary-label{white-space:nowrap}.status-pill{width:14px;height:6px;border-radius:999px}.status-ok{background:#22c55e}.status-warning{background:#f97316}.status-info{background:#38bdf8}.farm-map-error{background:#450a0a;border-radius:.75rem;border:1px solid #7f1d1d;padding:.75rem;font-size:.85rem;color:#fee2e2}.agromind-modal-backdrop{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px}.agromind-modal-overlay{position:absolute;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.agromind-modal{position:relative;width:min(880px,100%);max-height:min(78vh,760px);background:#020617f5;border:1px solid rgba(148,163,184,.22);border-radius:18px;box-shadow:0 18px 60px #0000008c;overflow:hidden;display:flex;flex-direction:column}.agromind-modal-header{padding:14px;border-bottom:1px solid rgba(148,163,184,.18);display:flex;align-items:center;justify-content:space-between;gap:10px}.agromind-modal-header-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.agromind-modal-title{margin:0;font-size:.9rem;color:#e5e7eb}.agromind-modal-body{padding:14px;overflow:auto}.agromind-modal-body::-webkit-scrollbar{width:8px}.agromind-modal-body::-webkit-scrollbar-thumb{background:#94a3b82e;border-radius:999px}.agromind-modal-footer{padding:12px 14px;border-top:1px solid rgba(148,163,184,.18);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.agromind-modal-footer-left,.agromind-modal-footer-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.component-note-view{margin-top:8px;padding:10px 12px;border-radius:12px;border:1px solid rgba(148,163,184,.18);background:#02061759;color:#e5e7eb;white-space:pre-wrap}.component-note-view.is-empty{color:#e2e8f08c}.note-edit-btn.secondary-btn{font-size:.72rem;padding:.22rem .55rem}.farm-zone-components-panel{display:none}.farm-zone-component-row{background:linear-gradient(180deg,#061226eb,#030a18f5);border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:14px;margin-top:12px;box-shadow:0 12px 26px #0000003d}.farm-zone-component-header{padding-bottom:10px;margin-bottom:12px;border-bottom:1px dashed rgba(148,163,184,.18)}.component-kind-badge{display:none}.farm-zone-component-icon .geom-dot{width:10px;height:10px;opacity:.75}.agromind-modal .farm-feature-input,.agromind-modal .farm-feature-textarea,.agromind-modal .component-type-select{border-radius:12px;padding:.45rem .6rem}.agromind-modal .farm-feature-input,.agromind-modal .farm-feature-textarea{background:#020617e6;border:1px solid rgba(71,85,105,.7);color:#e5e7eb}.agromind-modal .farm-feature-input:focus,.agromind-modal .farm-feature-textarea:focus{border-color:#22c55e;box-shadow:0 0 0 1px #22c55e33,0 0 0 4px #22c55e14}.farm-zone-component-type-row{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.75rem}.component-type-label{font-size:.8rem;font-weight:600;color:#e2e8f0eb;letter-spacing:.01em}.component-type-select{width:100%;min-height:42px;border-radius:12px;border:1px solid rgba(71,85,105,.78);background-color:#020617f5;color:#e5e7eb;font-size:.84rem;font-weight:500;padding:.68rem 2.6rem .68rem .85rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;outline:none;box-shadow:inset 0 1px #ffffff05;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;background-image:linear-gradient(45deg,transparent 50%,#94a3b8 50%),linear-gradient(135deg,#94a3b8 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.component-type-select:hover{border-color:#22c55e73;background-color:#030b1bfa}.component-type-select:focus{border-color:#22c55e;box-shadow:0 0 0 1px #22c55e3d,0 0 0 4px #22c55e14}.component-type-select option{background:#020617;color:#e5e7eb}.component-note-view{background:#0206178c;border:1px solid rgba(148,163,184,.22)}.agromind-modal .danger-link{text-decoration:none;border-bottom:1px solid rgba(248,113,113,.55)}.agromind-modal .danger-link:hover{border-bottom-color:#fecacae6}@media(max-width:900px){.farm-map-toolbar{flex-direction:column;align-items:stretch}.farm-map-tools-left{justify-content:center}.primary-btn{width:100%;text-align:center}.farm-zones-header-row,.farm-zones-row{grid-template-columns:1.8fr 1.4fr 1.4fr minmax(240px,1.8fr);gap:.75rem}.zone-col.zone-components{justify-content:flex-start}}@media(max-width:640px){.agromind-modal-backdrop{padding:10px}.agromind-modal{width:100%;max-height:86vh;border-radius:16px}.agromind-modal-header,.agromind-modal-body,.agromind-modal-footer{padding-left:12px;padding-right:12px}.farm-zones-header-row{display:none}.farm-zones-row{grid-template-columns:1fr 1fr;row-gap:.6rem;padding:.7rem}.zone-col.zone-name{grid-column:1 / -1}.zone-col.zone-components{grid-column:1 / -1;justify-content:flex-start}.zone-type select,.zone-status select{font-size:.78rem}.component-type-select{min-height:44px;font-size:.83rem}}.card{background:#0f172afa;border-radius:.9rem;padding:1rem 1.2rem;border:1px solid rgba(30,64,175,.6);box-shadow:0 18px 40px #0f172ae6}.tasks-weather-card{margin-bottom:1rem}.weather-operational-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.weather-operational-main{flex:1 1 520px;min-width:280px}.weather-operational-title{margin:0 0 .4rem;font-size:1.05rem;font-weight:700;color:#e5e7eb}.weather-operational-state{margin:0 0 .4rem;font-size:1rem;font-weight:700;color:#f8fafc}.weather-operational-summary{margin:0 0 .5rem;color:#e2e8f0eb;line-height:1.45}.weather-operational-location{margin:0 0 .75rem;color:#94a3b8;font-size:.92rem}.weather-metrics{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.9rem}.weather-tips{display:grid;gap:.45rem}.weather-tip{margin:0;color:#e2e8f0e6;line-height:1.45}.weather-task-impact{margin-top:1rem;padding-top:.8rem;border-top:1px solid rgba(148,163,184,.18)}.weather-task-impact-title{margin:0 0 .55rem;font-weight:700;color:#f8fafc}.weather-task-tags{display:flex;flex-wrap:wrap;gap:.45rem}.weather-refresh-box{flex:0 0 auto}.weather-banner-alert{border:1px solid rgba(220,38,38,.35);background:linear-gradient(135deg,#7f1d1d2e,#ef44441f),#0f172af5}.weather-banner-warning{border:1px solid rgba(245,158,11,.35);background:linear-gradient(135deg,#78350f2e,#f59e0b1f),#0f172af5}.weather-banner-info{border:1px solid rgba(34,197,94,.28);background:linear-gradient(135deg,#14532d29,#22c55e1a),#0f172af5}.weather-banner-neutral{border:1px solid rgba(148,163,184,.18);background:#0f172af5}.tasks-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:#0f172af2;border-radius:.75rem;padding:.9rem 1rem;border:1px solid rgba(148,163,184,.35);box-shadow:0 12px 30px #0f172aa6;display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.summary-value{font-size:1.4rem;font-weight:600;color:#e5e7eb}.summary-value-warning{color:#fbbf24}.summary-value-info{color:#38bdf8}.summary-value-ok{color:#22c55e}.filters-bar{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.35rem;min-width:150px}.filter-group-wide{flex:1;min-width:220px}.filter-group label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.filter-group select,.filter-group input{background:#020617;border-radius:.5rem;border:1px solid rgba(148,163,184,.4);padding:.45rem .6rem;color:#e5e7eb;font-size:.9rem}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e66}.priority-badge,.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:.82rem;font-weight:500;line-height:1;letter-spacing:.2px;white-space:nowrap}.priority-high{background:#f8717129;color:#fecaca;border:1px solid rgba(248,113,113,.6)}.priority-medium{background:#fbbf241f;color:#fde68a;border:1px solid rgba(250,204,21,.6)}.priority-low{background:#22c55e24;color:#bbf7d0;border:1px solid rgba(34,197,94,.7)}.status-pending{background:#3b82f629;color:#bfdbfe;border:1px solid rgba(59,130,246,.7)}.status-progress{background:#38bdf829;color:#bae6fd;border:1px solid rgba(56,189,248,.7)}.status-done{background:#10b9812e;color:#a7f3d0;border:1px solid rgba(16,185,129,.8)}.task-zone-cell{display:flex;flex-direction:column;gap:6px}.task-zone-actions{display:flex;gap:.4rem}.link-button{align-self:flex-start;padding:0;font-size:.85rem;color:#38bdf8;cursor:pointer;background:transparent;border:none;text-decoration:none;opacity:.75}.link-button:hover{color:#0ea5e9;opacity:1;text-decoration:underline}.task-editor h3{margin:0 0 .8rem;font-size:1rem;font-weight:600}.task-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem 1rem;margin-bottom:.9rem}.task-field{display:flex;flex-direction:column;gap:.3rem}.task-field label{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#3364b8}.task-field input,.task-field select{background:#020617;border-radius:.5rem;border:1px solid rgba(148,163,184,.4);padding:.45rem .6rem;color:#e5e7eb;font-size:.9rem}.task-field input:focus,.task-field select:focus{outline:none;border-color:#22c55e;box-shadow:0 0 0 1px #22c55e66}.task-editor-actions{display:flex;gap:.6rem;margin-top:.3rem}.task-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.small-btn{border-radius:999px;border:1px solid rgba(148,163,184,.7);background:transparent;padding:6px 10px;font-size:.85rem;color:#e5e7eb;cursor:pointer;opacity:.92;transition:transform .14s ease,opacity .14s ease,background .14s ease}.small-btn:hover{background:#0f172ae6;opacity:1;transform:translateY(-1px)}.small-btn-danger{border-color:#f87171cc;color:#fecaca;opacity:.85}.small-btn-danger:hover{background:#7f1d1db3;opacity:1}.task-zone-input-row{display:flex;gap:.4rem;align-items:center}.task-zone-input-row select{min-width:170px}.task-hint{margin-top:.2rem;font-size:.75rem;color:#9ca3af}.ia-placeholder{margin-bottom:24px}.ai-suggestions-list{display:flex;flex-direction:column;gap:.9rem;margin-top:.75rem}.ai-suggestion-card{position:relative;padding:1rem 1.1rem;border-radius:18px;background:#0206178c;border:1px solid rgba(148,163,184,.18);box-shadow:0 12px 30px #00000059,inset 0 1px #ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .16s ease,border-color .16s ease}.ai-suggestion-card:hover{transform:translateY(-1px);border-color:#38bdf840}.ai-suggestion-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.ai-suggestion-title{font-weight:800;font-size:1.05rem;letter-spacing:.2px;color:#e2e8f0f5}.ai-suggestion-chip{padding:.25rem .6rem;border-radius:999px;font-size:.78rem;border:1px solid rgba(148,163,184,.18);background:#0f172a8c;color:#e2e8f0eb;white-space:nowrap}.ai-suggestion-message{color:#e2e8f0e6;line-height:1.35rem;margin-bottom:.9rem}.ai-suggestion-actions{display:flex;gap:.6rem;flex-wrap:wrap}.ai-suggestion-btn-primary,.ai-suggestion-btn-ghost{border-radius:999px;padding:.55rem .9rem;font-weight:700;font-size:.9rem;border:1px solid rgba(148,163,184,.18);background:#02061759;color:#e2e8f0f2;cursor:pointer;transition:transform .14s ease,border-color .14s ease,opacity .14s ease}.ai-suggestion-btn-primary:hover,.ai-suggestion-btn-ghost:hover{transform:translateY(-1px);border-color:#22c55e59}.ai-suggestion-btn-primary:disabled,.ai-suggestion-btn-ghost:disabled{cursor:not-allowed;opacity:.55}.ia-info.ai-suggestion-card{box-shadow:0 12px 30px #00000059,inset 0 1px #ffffff0d,inset 0 0 0 1px #38bdf814}.ia-warning.ai-suggestion-card{box-shadow:0 12px 30px #00000059,inset 0 1px #ffffff0d,inset 0 0 0 1px #fbbf241a}.ia-alert.ai-suggestion-card{box-shadow:0 12px 30px #00000059,inset 0 1px #ffffff0d,inset 0 0 0 1px #f871711a}.tasks-calendar{margin-top:40px;padding:24px;border-radius:16px;background:linear-gradient(180deg,#0b1220,#05080f);box-shadow:0 0 0 1px #ffffff0f}.tasks-calendar h3{margin-bottom:16px;font-weight:600}.ai-suggestions-row{display:flex;gap:.8rem;overflow-x:auto;overflow-y:hidden;padding:.25rem 0 .75rem;margin-top:.75rem;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.ai-suggestions-row::-webkit-scrollbar{height:10px}.ai-suggestions-row::-webkit-scrollbar-track{background:transparent}.ai-suggestions-row::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}.ai-suggestion-card-h{flex:0 0 320px;max-width:320px;scroll-snap-align:start}.ai-suggestions-list.ai-suggestions-row{flex-direction:row;align-items:stretch}.ai-suggestions-list.ai-suggestions-row .ai-suggestion-card{height:100%}.ai-suggestions-list.ai-suggestions-row .ai-suggestion-actions{justify-content:flex-end}.data-table{width:100%;border-collapse:separate;border-spacing:0 10px}.card .data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table thead th{position:sticky;top:0;z-index:2;padding:12px;text-align:left;font-weight:600;letter-spacing:.2px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12);font-size:.95rem}.data-table th,.data-table td{font-size:.95rem}.data-table tbody tr{background:#ffffff08;border-radius:14px}.data-table tbody tr:hover{background:#ffffff0d}.data-table td{padding:12px;vertical-align:middle;line-height:1.25;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(0,0,0,.15)}.data-table tbody tr td:first-child,.data-table tbody tr td:last-child{border-top:none;border-bottom:none}.data-table tbody tr td:first-child{border-top-left-radius:14px;border-bottom-left-radius:14px}.data-table tbody tr td:last-child{border-top-right-radius:14px;border-bottom-right-radius:14px}.data-table td:nth-child(2){max-width:360px;font-weight:600;letter-spacing:.1px}.data-table td:nth-child(2),.data-table td:nth-child(3){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-table td:nth-child(3) span{opacity:.95}.data-table td:nth-child(4),.data-table td:nth-child(5),.data-table td:nth-child(6),.data-table td:nth-child(7){white-space:nowrap}.data-table td:nth-child(5),.data-table td:nth-child(6){font-variant-numeric:tabular-nums;opacity:.9;white-space:nowrap}.tasks-calendar .fc{color:#e5e7eb}.tasks-calendar .fc .fc-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.tasks-calendar .fc .fc-toolbar-title{font-size:2rem;line-height:1.05;font-weight:700;color:#e5e7eb}.tasks-calendar .fc .fc-button{border-radius:12px;border:1px solid rgba(148,163,184,.22);background:#334155eb;color:#e5e7eb;box-shadow:none;text-transform:none}.tasks-calendar .fc .fc-button:hover{background:#475569fa}.tasks-calendar .fc .fc-button:focus,.tasks-calendar .fc .fc-button:active{box-shadow:none}.tasks-calendar .fc .fc-button-primary:not(:disabled).fc-button-active,.tasks-calendar .fc .fc-button-primary:not(:disabled):active{background:#64748bfa;border-color:#94a3b84d}.tasks-calendar .fc .fc-toolbar-chunk{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.tasks-calendar .fc .fc-button-group{display:inline-flex;flex-wrap:wrap;border-radius:12px;overflow:hidden}.tasks-calendar .fc .fc-daygrid-event{border:none;border-radius:8px}.tasks-calendar .fc .fc-event{font-size:.8rem}@media(max-width:1100px){.data-table thead{display:none}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block;width:100%}.data-table tbody tr{padding:12px}.data-table td{display:flex;justify-content:space-between;gap:14px;padding:10px 6px;border-bottom:1px solid rgba(255,255,255,.08)}.data-table td:last-child{border-bottom:none}.data-table td:nth-child(2),.data-table td:nth-child(3){max-width:none;white-space:normal}.task-actions{justify-content:flex-start}}@media(max-width:768px){.tasks-calendar{margin-top:28px;padding:16px;border-radius:14px;overflow:hidden}.weather-operational-header{flex-direction:column;align-items:stretch}.weather-refresh-box,.weather-refresh-box .secondary-btn{width:100%}.tasks-calendar .fc .fc-toolbar{flex-direction:column;align-items:stretch;gap:.9rem}.tasks-calendar .fc .fc-toolbar-chunk{width:100%;justify-content:flex-start}.tasks-calendar .fc .fc-toolbar-title{font-size:1.45rem;line-height:1.1;word-break:break-word}.tasks-calendar .fc .fc-button-group{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;overflow:visible;border-radius:0}.tasks-calendar .fc .fc-button-group .fc-button{border-radius:12px!important}.tasks-calendar .fc .fc-button{min-height:42px;padding:.55rem .7rem;font-size:.9rem}.tasks-calendar .fc .fc-prev-button,.tasks-calendar .fc .fc-next-button,.tasks-calendar .fc .fc-today-button{min-width:64px}.tasks-calendar .fc .fc-daygrid-day-number{font-size:.85rem}.tasks-calendar .fc .fc-col-header-cell-cushion{font-size:.78rem}}@media(max-width:520px){.ai-suggestion-card-h{flex-basis:85%;max-width:85%}.tasks-calendar{padding:14px 10px}.tasks-calendar .fc .fc-toolbar-title{font-size:1.2rem}.tasks-calendar .fc .fc-toolbar-chunk:first-child{order:1}.tasks-calendar .fc .fc-toolbar-chunk:nth-child(2){order:2}.tasks-calendar .fc .fc-toolbar-chunk:last-child{order:3}.tasks-calendar .fc .fc-button-group{grid-template-columns:repeat(2,minmax(0,1fr))}.tasks-calendar .fc .fc-button{font-size:.82rem;min-height:40px;padding:.5rem .55rem}.tasks-calendar .fc .fc-view-harness{min-height:520px}.tasks-calendar .fc .fc-daygrid-event-harness{margin-top:2px}.tasks-calendar .fc .fc-event{font-size:.72rem}.weather-metrics{gap:.4rem}.weather-operational-title{font-size:1rem}.weather-operational-state{font-size:.95rem}}.finance-page{background:radial-gradient(circle at top,#020617,#000 65%);padding:2.5rem 1.5rem}.finance-container{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:2.5rem}.finance-ia-section{background:linear-gradient(145deg,#0f172ae6,#020617f2);border:1px solid rgba(56,189,248,.25);border-radius:1.25rem;padding:1.75rem;box-shadow:0 30px 80px #020617d9}.finance-real-section{display:flex;flex-direction:column;gap:1.75rem}.page-header h2{font-size:1.35rem;font-weight:600;color:#e5e7eb;margin-bottom:.25rem}.page-subtitle{font-size:.85rem;color:#9ca3af}.finance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem}.finance-card{background:radial-gradient(circle at top left,#022c22 0,#020617 60%);border-radius:1rem;padding:1rem 1.1rem;border:1px solid rgba(30,64,175,.55);box-shadow:0 18px 45px #0f172ae6;display:flex;flex-direction:column;gap:.35rem}.finance-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.finance-value{font-size:1.35rem;font-weight:600;color:#e5e7eb}.finance-value-pos{color:#4ade80}.finance-value-neg{color:#f87171}.filters-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:.5rem}.finance-table{background:linear-gradient(160deg,#0f172ad9,#020617f2);border-radius:1.25rem;padding:1.25rem;border:1px solid rgba(30,64,175,.4);box-shadow:0 25px 70px #020617d9}.type-pill{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .6rem;border-radius:999px;font-size:.72rem;font-weight:500;letter-spacing:.04em;white-space:nowrap}.type-pill-income{background:#22c55e2e;color:#bbf7d0;border:1px solid rgba(34,197,94,.6)}.type-pill-expense{background:#f871712e;color:#fecaca;border:1px solid rgba(248,113,113,.6)}.amount{font-weight:600}.amount-income{color:#22c55e}.amount-expense{color:#f97316}.page-header-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem}.modal-overlay{position:fixed;inset:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:50;padding:16px}.modal-card{background:linear-gradient(160deg,#0a1223f7,#020617fa);color:#e5e7eb;padding:1.5rem;border-radius:18px;width:100%;max-width:420px;border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 70px #00000073}.modal-form label{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem;color:#cbd5e1;font-size:.85rem}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.finance-page input,.finance-page select,.finance-page textarea,.modal-card input,.modal-card select,.modal-card textarea{width:100%;background:#020617eb;color:#e5e7eb;border:1px solid rgba(100,116,139,.65);border-radius:12px;padding:.72rem .85rem;font-size:.92rem;line-height:1.25;box-sizing:border-box;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none}.finance-page input::placeholder,.finance-page textarea::placeholder,.modal-card input::placeholder,.modal-card textarea::placeholder{color:#94a3b8}.finance-page input:hover,.finance-page select:hover,.finance-page textarea:hover,.modal-card input:hover,.modal-card select:hover,.modal-card textarea:hover{border-color:#22c55e61;background:#030b1bf5}.finance-page input:focus,.finance-page select:focus,.finance-page textarea:focus,.modal-card input:focus,.modal-card select:focus,.modal-card textarea:focus{border-color:#22c55e;box-shadow:0 0 0 1px #22c55e3d,0 0 0 4px #22c55e14}.finance-page select,.modal-card select{padding-right:2.5rem;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#94a3b8 50%),linear-gradient(135deg,#94a3b8 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.finance-page select option,.modal-card select option{background:#020617;color:#e5e7eb}.assets-section,.finance-assets-section{background:linear-gradient(160deg,#0f172adb,#020617f5);border-radius:1.25rem;padding:1.25rem;border:1px solid rgba(30,64,175,.35);box-shadow:0 25px 70px #020617cc}.assets-section h3,.finance-assets-section h3{margin:0 0 .35rem;color:#e5e7eb}.assets-section p,.finance-assets-section p{margin:0 0 1rem;color:#9ca3af}.assets-form,.finance-assets-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem;align-items:end}.asset-card,.finance-asset-card{background:linear-gradient(180deg,#161f37eb,#0b1120f5);border:1px solid rgba(148,163,184,.14);border-radius:16px;padding:1rem 1.1rem;box-shadow:0 12px 28px #00000038;color:#e5e7eb}.finance-page button:not(.type-pill),.modal-card button{transition:transform .12s ease,opacity .12s ease}.finance-page button:not(.type-pill):hover,.modal-card button:hover{transform:translateY(-1px)}@media(max-width:900px){.finance-page{padding:2rem 1rem}.finance-container{gap:2rem}.page-header-actions{flex-direction:column;align-items:stretch}.finance-summary,.filters-bar{grid-template-columns:1fr}.finance-table,.finance-ia-section,.assets-section,.finance-assets-section{padding:1rem}}@media(max-width:640px){.finance-page{padding:1.25rem .85rem}.modal-overlay{align-items:flex-end;padding:10px}.modal-card{max-width:100%;border-radius:18px 18px 14px 14px;padding:1rem}.assets-form,.finance-assets-form{grid-template-columns:1fr}.finance-page input,.finance-page select,.finance-page textarea,.modal-card input,.modal-card select,.modal-card textarea{min-height:44px;font-size:.9rem}}:root{--bg-main: #0b1220;--bg-card: #111827;--bg-active: #1f2937;--text-main: #e5e7eb;--text-muted: #9ca3af;--text-soft: #d1d5db;--info: #38bdf8;--warn: #facc15;--ok: #22c55e;--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px;--transition-fast: .2s cubic-bezier(.4,0,.2,1);--transition-med: .35s cubic-bezier(.4,0,.2,1)}.finance-ia-shell{background:var(--bg-main);border-radius:var(--radius-lg);padding:1.2rem;color:var(--text-main);animation:fadeInUp .5s ease both}.finance-ia-header h3{margin:0;font-size:1.05rem}.finance-ia-sub{font-size:.8rem;color:var(--text-muted)}.finance-ia-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem;margin:1rem 0}.finance-card{background:var(--bg-card);padding:.8rem;border-radius:var(--radius-md);transform:translateY(6px);opacity:0;animation:cardIn .45s ease forwards;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.finance-card:nth-child(1){animation-delay:.05s}.finance-card:nth-child(2){animation-delay:.1s}.finance-card:nth-child(3){animation-delay:.15s}.finance-card:nth-child(4){animation-delay:.2s}.finance-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0006}.finance-card .label{font-size:.75rem;color:var(--text-muted)}.finance-card .value{font-size:1.15rem;font-weight:600;margin-top:.25rem;transition:color var(--transition-fast)}.finance-card:hover .value{color:var(--info)}.finance-card .meta{font-size:.75rem;margin-top:.15rem;color:var(--info)}.finance-card.warning .meta{color:var(--warn)}.finance-card.success .meta{color:var(--ok)}.finance-ia-suggestions{display:flex;gap:.8rem;overflow-x:auto;overflow-y:hidden;padding:.2rem 0 .6rem;margin:.75rem 0 1rem;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.finance-ia-suggestions::-webkit-scrollbar{height:10px}.finance-ia-suggestions::-webkit-scrollbar-track{background:transparent}.finance-ia-suggestions::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}.finance-ia-suggestion-card{flex:0 0 320px;max-width:320px;scroll-snap-align:start;background:var(--bg-card);border-radius:var(--radius-md);padding:.9rem;border:1px solid rgba(255,255,255,.06);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.finance-ia-suggestion-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px #00000059;border-color:#38bdf840}.finance-ia-suggestion-title{font-size:.9rem;font-weight:650;margin:0 0 .35rem}.finance-ia-suggestion-text{font-size:.82rem;color:var(--text-soft);line-height:1.45;margin:0 0 .75rem}.finance-ia-suggestion-actions{display:flex;gap:.5rem;justify-content:flex-end}@media(max-width:520px){.finance-ia-suggestion-card{flex-basis:85%;max-width:85%}}.finance-ia-tabs{display:flex;gap:.4rem;margin-bottom:.8rem}.tab{background:var(--bg-card);border:none;padding:.45rem .85rem;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;position:relative;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.tab:hover{color:var(--text-main);transform:translateY(-1px)}.tab.active{background:var(--bg-active);color:var(--text-main)}.tab.active:after{content:"";position:absolute;bottom:-4px;left:20%;width:60%;height:2px;background:var(--info);border-radius:2px;animation:tabLine .3s ease}.finance-ia-content{font-size:.85rem;color:var(--text-soft);line-height:1.5;animation:fadeIn .35s ease both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes cardIn{to{opacity:1;transform:translateY(0)}}@keyframes tabLine{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}[data-theme=light]{--bg-main: #f8fafc;--bg-card: #ffffff;--bg-active: #e5e7eb;--text-main: #0f172a;--text-muted: #475569;--text-soft: #334155;--info: #0284c7;--warn: #ca8a04;--ok: #16a34a}.devices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem}.device-card{background:var(--bg-card);border:1px solid var(--bg-active);border-radius:14px;padding:1rem;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:.6rem}.device-card-header{display:flex;justify-content:space-between;align-items:center}.device-name{font-weight:600}.device-status{font-size:.75rem;padding:.2rem .6rem;border-radius:999px}.device-status.online{background:#00c87826;color:#00c878}.device-status.offline{background:#dc505026;color:#dc5050}.device-meta{font-size:.85rem;opacity:.85}.investigador-page{display:grid;gap:1rem}.investigador-header{display:grid;gap:.35rem}.investigador-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.investigador-header h1{margin:0;font-size:1.65rem;letter-spacing:.2px}.investigador-subtitle{margin:0;opacity:.82}.investigador-pill{font-size:.8rem;padding:.25rem .6rem;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#0206178c;opacity:.9}.investigador-shell{padding:.9rem}.investigador-grid{display:grid;grid-template-columns:1fr;gap:.9rem}@media(min-width:980px){.investigador-grid{grid-template-columns:420px 1fr;align-items:start}}.investigador-left,.investigador-right{display:grid;gap:.9rem}.investigador-panel{border:1px solid rgba(255,255,255,.1);background:#0206178c;border-radius:1rem;padding:.85rem;box-shadow:0 0 0 1px #0b112073}.investigador-panel-head{display:grid;gap:.15rem;margin-bottom:.75rem}.investigador-panel-title{font-weight:700;letter-spacing:.2px}.investigador-panel-sub{font-size:.85rem;opacity:.75}.investigador-field{display:grid;gap:.35rem;margin-bottom:.7rem}.investigador-field label{font-size:.9rem;opacity:.9}.investigador-input,.investigador-textarea{width:100%;padding:.65rem .8rem;border-radius:.85rem;border:1px solid rgba(255,255,255,.12);background:#02061799;color:#fff;outline:none}.investigador-textarea{resize:vertical;min-height:92px}.investigador-help{font-size:.85rem;opacity:.72}.investigador-health{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.investigador-health span{font-size:.82rem;padding:.22rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#02061773}.investigador-health span.ok{border-color:#22c55e59;background:#22c55e1a}.investigador-health span.warn{border-color:#f59e0b59;background:#f59e0b1a}.investigador-link{appearance:none;border:none;background:transparent;color:#ffffffd1;text-decoration:underline;cursor:pointer;font-size:.85rem;opacity:.9}.investigador-link:disabled{opacity:.5;cursor:not-allowed}.investigador-actions{display:grid;gap:.55rem}@media(min-width:520px){.investigador-actions{grid-template-columns:1fr 1fr}.investigador-actions .investigador-btn-ghost{grid-column:1 / -1}}.investigador-btn{border-radius:999px;padding:.55rem .9rem;border:1px solid rgba(255,255,255,.12);background:#0206178c;color:#fff;cursor:pointer;transition:transform .12s ease,opacity .12s ease}.investigador-btn:hover{transform:translateY(-1px)}.investigador-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.investigador-btn-primary{border-color:#22c55e47;background:#22c55e1a}.investigador-btn-secondary{border-color:#3b82f647;background:#3b82f61a}.investigador-btn-ghost{border-style:dashed;opacity:.92}.investigador-details{margin-top:.6rem;opacity:.92}.investigador-details summary{cursor:pointer;font-size:.9rem;opacity:.9}.investigador-pre{margin-top:.6rem;white-space:pre-wrap;padding:.75rem;border-radius:.9rem;border:1px solid rgba(255,255,255,.12);background:#020617a6;font-size:.85rem;opacity:.92}.investigador-error{margin-top:.6rem;padding:.75rem;border-radius:.9rem;border:1px solid rgba(239,68,68,.35);background:#ef44441a}.investigador-preview-wrap{border-radius:1rem;border:1px solid rgba(255,255,255,.1);overflow:hidden;background:#02061780}.investigador-preview-img{width:100%;display:block;max-height:520px;object-fit:cover}.investigador-preview-empty{padding:1.1rem;display:grid;place-items:center;text-align:center;gap:.35rem;min-height:260px;opacity:.86}.investigador-empty-icon{font-size:1.6rem}.investigador-empty-title{font-weight:700}.investigador-empty-sub{font-size:.9rem;opacity:.78}.investigador-result-empty{display:grid;gap:.65rem;padding:.2rem .1rem}.investigador-result-kpi{display:flex;align-items:baseline;justify-content:space-between;border:1px solid rgba(255,255,255,.1);background:#02061773;padding:.65rem .75rem;border-radius:.9rem}.kpi-label{font-size:.85rem;opacity:.75}.kpi-value{font-weight:700}.investigador-result-note{opacity:.8;font-size:.92rem}.investigador-result-card{display:grid;gap:.75rem}.investigador-result-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.investigador-result-title{font-size:1.1rem;font-weight:800}.investigador-result-chip{font-size:.75rem;padding:.25rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#0206178c;opacity:.9}.investigador-result-line{display:grid;gap:.25rem}.investigador-result-block{border:1px solid rgba(255,255,255,.1);background:#02061773;padding:.65rem .75rem;border-radius:.9rem}.investigador-ul{margin:.25rem 0 0 1.1rem}.muted{opacity:.78}.productos-page{padding:2rem;max-width:1200px;margin:0 auto}.productos-header h2{font-size:1.8rem;margin-bottom:.3rem}.productos-header p{opacity:.8}.productos-intro{margin:1.5rem 0 2rem;line-height:1.6}.productos-note{margin-top:.5rem;font-size:.9rem;opacity:.6}.productos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.producto-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.2rem;transition:transform .2s ease,box-shadow .2s ease}.producto-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0003}.producto-header{display:flex;justify-content:space-between;align-items:center}.producto-header h3{font-size:1.1rem}.producto-tipo{font-size:.75rem;padding:.2rem .5rem;border-radius:6px;background:#22c55e26;color:#22c55e}.producto-body{margin:1rem 0;font-size:.9rem;line-height:1.5}.producto-meta{font-size:.85rem;opacity:.85}.stock.ok{color:#22c55e}.stock.warn{color:#f59e0b}.productos-footer{margin-top:3rem;text-align:center}.productos-cta{font-size:.85rem;opacity:.6;line-height:1.5}.productos-cta span{display:block;margin-top:.3rem;font-size:.8rem;letter-spacing:.5px}.clima-page{display:flex;flex-direction:column;gap:24px;padding:24px;color:#1f2937;background:radial-gradient(circle at top left,rgba(34,197,94,.08),transparent 22%),radial-gradient(circle at top right,rgba(59,130,246,.08),transparent 24%),linear-gradient(180deg,#f8fafc,#f1f5f9);min-height:100%;box-sizing:border-box}.clima-hero{display:grid;grid-template-columns:1.3fr .9fr;gap:20px;align-items:stretch}.clima-hero-copy,.clima-current-card,.clima-metric-card,.clima-panel{background:#ffffffeb;border:1px solid rgba(148,163,184,.18);border-radius:22px;box-shadow:0 18px 45px #0f172a14;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.clima-hero-copy{padding:28px;display:flex;flex-direction:column;justify-content:center;min-height:250px}.clima-badge{display:inline-flex;align-items:center;width:fit-content;padding:8px 14px;border-radius:999px;background:linear-gradient(135deg,#dcfce7,#dbeafe);color:#166534;font-size:.82rem;font-weight:700;letter-spacing:.02em;margin-bottom:16px}.clima-title{margin:0 0 14px;font-size:clamp(1.9rem,4vw,3rem);line-height:1.05;font-weight:800;color:#0f172a}.clima-subtitle{margin:0 0 18px;font-size:1rem;line-height:1.7;color:#475569;max-width:65ch}.clima-search-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.clima-search-input{flex:1 1 260px;min-width:0;height:46px;border-radius:14px;border:1px solid #cbd5e1;padding:0 14px;font-size:.96rem;color:#0f172a;background:#fff;outline:none}.clima-search-input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf824}.clima-search-btn,.clima-location-btn{height:46px;border:none;border-radius:14px;padding:0 16px;font-size:.92rem;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.clima-search-btn{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff}.clima-location-btn{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.clima-search-btn:hover,.clima-location-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px #0f172a1f}.clima-search-btn:disabled,.clima-location-btn:disabled{opacity:.7;cursor:wait;transform:none;box-shadow:none}.clima-location-meta{display:flex;flex-direction:column;gap:8px;color:#475569;font-size:.95rem;line-height:1.5}.clima-error-box,.clima-empty-box{margin-top:10px;padding:14px 16px;border-radius:16px;font-weight:600}.clima-error-box{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.clima-empty-box{background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.clima-current-card{padding:24px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#0ea5e924,#22c55e1f),#fffffff0}.clima-current-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px}.clima-current-label{margin:0 0 6px;font-size:.84rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b}.clima-current-location{margin:0;font-size:1.5rem;font-weight:800;color:#0f172a}.clima-current-status{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#ffffffe6;color:#0f766e;font-size:.88rem;font-weight:700;white-space:nowrap}.clima-current-main{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap}.clima-current-temp{font-size:clamp(3rem,6vw,4.6rem);line-height:.95;font-weight:800;color:#0f172a}.clima-current-details{display:flex;flex-direction:column;gap:8px;font-size:.97rem;color:#334155;font-weight:600}.clima-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.clima-metric-card{padding:20px;transition:transform .18s ease,box-shadow .18s ease}.clima-metric-card:hover{transform:translateY(-2px);box-shadow:0 22px 50px #0f172a1a}.clima-metric-label{display:block;margin-bottom:10px;font-size:.88rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.clima-metric-value{display:block;margin-bottom:10px;font-size:2rem;line-height:1;font-weight:800;color:#0f172a}.clima-metric-note{margin:0;font-size:.95rem;line-height:1.6;color:#475569}.clima-sections-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.clima-panel{padding:22px}.clima-panel-head{margin-bottom:18px}.clima-panel-head h3{margin:0 0 6px;font-size:1.28rem;font-weight:800;color:#0f172a}.clima-panel-head p{margin:0;color:#64748b;font-size:.96rem;line-height:1.6}.clima-hourly-list,.clima-alerts-list,.clima-daily-list,.clima-future-points{display:flex;flex-direction:column;gap:12px}.clima-hourly-item{display:grid;grid-template-columns:90px 100px 1fr 1fr;gap:12px;align-items:center;padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}.clima-hour{font-weight:800;color:#0f172a}.clima-hour-temp{font-weight:700;color:#0369a1}.clima-hour-rain,.clima-hour-wind{color:#475569;font-size:.95rem;font-weight:600}.clima-alert-item{padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px solid #dbeafe;color:#1e3a8a;line-height:1.6;font-weight:600}.clima-daily-item{display:grid;grid-template-columns:120px 1.6fr 1fr 120px;gap:14px;align-items:center;padding:16px 18px;border-radius:18px;background:#f8fafc;border:1px solid #e2e8f0}.clima-daily-day{font-weight:800;color:#0f172a;text-transform:capitalize}.clima-daily-summary{color:#475569;line-height:1.5;font-weight:600}.clima-daily-temps{display:flex;flex-direction:column;gap:5px;color:#0f172a;font-weight:700}.clima-daily-rain{justify-self:end;font-size:.94rem;font-weight:700;color:#0f766e}.clima-future-item{padding:16px 18px;border-radius:16px;background:linear-gradient(135deg,#ecfeff,#f8fafc);border:1px solid #cffafe;color:#134e4a;line-height:1.7;font-weight:600}.clima-daily-panel,.clima-future-panel{overflow:hidden}.clima-hourly-list,.clima-daily-list{overflow-x:auto}@media(max-width:1100px){.clima-hero,.clima-sections-grid{grid-template-columns:1fr}.clima-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clima-daily-item{grid-template-columns:1fr;justify-items:start}.clima-daily-rain{justify-self:start}}@media(max-width:768px){.clima-page{padding:16px;gap:18px}.clima-hero-copy,.clima-current-card,.clima-metric-card,.clima-panel{border-radius:18px}.clima-hero-copy,.clima-current-card,.clima-panel,.clima-metric-card{padding:18px}.clima-metrics-grid{grid-template-columns:1fr}.clima-current-top,.clima-current-main{flex-direction:column;align-items:flex-start}.clima-hourly-item{grid-template-columns:1fr;gap:8px}.clima-title{font-size:1.8rem}.clima-subtitle,.clima-metric-note,.clima-panel-head p,.clima-alert-item,.clima-future-item,.clima-daily-summary,.clima-location-meta{font-size:.94rem}.clima-search-bar{flex-direction:column}.clima-search-input,.clima-search-btn,.clima-location-btn{width:100%}}@media(max-width:480px){.clima-page{padding:12px}.clima-badge{font-size:.76rem;padding:7px 12px}.clima-current-temp{font-size:3rem}.clima-current-location{font-size:1.25rem}.clima-panel-head h3{font-size:1.08rem}}.app-footer{margin-top:1.25rem;padding:1rem 0;text-align:center;font-size:.9rem;opacity:.65}.farm-shell{min-height:100vh;min-height:100dvh;padding:calc(6.5rem + env(safe-area-inset-top,0px)) 3rem calc(3rem + env(safe-area-inset-bottom,0px));background:radial-gradient(circle at top,#022c22 0,#020617 45% 100%);color:#e5e7eb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-sizing:border-box}.farm-shell-header{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:calc(1rem + env(safe-area-inset-top,0px)) 3rem 1rem;background:#020617e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #1e293b;z-index:1000;box-sizing:border-box}.farm-shell-brand{display:flex;align-items:center;gap:.9rem;white-space:nowrap}.brand-logo-circle{width:42px;height:42px;border-radius:999px;background:linear-gradient(135deg,#22c55e,#14b8a6);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;color:#020617;box-shadow:0 0 18px #22c55e99}.brand-text{display:flex;flex-direction:column}.brand-name{font-size:1.2rem;font-weight:700;letter-spacing:.03em}.brand-tagline{font-size:.8rem;color:#9ca3af}.farm-shell-nav{display:flex;gap:.5rem;flex-wrap:wrap}.nav-tab{border-radius:999px;padding:.35rem .8rem;font-size:.8rem;border:1px solid #1e293b;background:#0f172a99;color:#e5e7eb;cursor:pointer;white-space:nowrap}.nav-tab-active{border-color:#22c55e;background:radial-gradient(circle at top,#22c55e,#16a34a);color:#020617;font-weight:600;box-shadow:0 0 12px #22c55e80}.farm-shell-right{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.farm-shell-right-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.farm-shell-badge{font-size:.7rem;padding:.3rem .75rem;border-radius:999px;border:1px solid #1e293b;background:#0f172ae6;color:#9ca3af}.farm-switcher{display:flex;align-items:center;gap:.4rem;background:#0f172ae6;border-radius:999px;padding:.25rem .6rem;border:1px solid #1e293b;flex-wrap:wrap}.farm-switcher-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.farm-switcher select{background:transparent;border:none;color:#e5e7eb;font-size:.75rem;max-width:140px}.farm-switcher select:focus{outline:none}.farm-switcher-add{border-radius:999px;border:1px solid rgba(148,163,184,.6);background:transparent;padding:.1rem .45rem;font-size:.65rem;color:#cbd5f5;cursor:pointer}.farm-switcher-add:hover{background:#0f172ae6}.farm-logout-btn{background:transparent;border-radius:999px;border:1px solid #1f2937;padding:.22rem .7rem;font-size:.7rem;color:#9ca3af;cursor:pointer}.farm-logout-btn:hover{background:#0f172ae6}.farm-shell-main{max-width:1200px;margin:0 auto}.farm-shell-map-card{margin-top:1rem;background:#0f172af2;border-radius:1.5rem;border:1px solid #1e293b;padding:1.25rem;box-shadow:0 24px 60px #0f172ae6}@media(max-width:900px){.farm-shell{padding:calc(9.2rem + env(safe-area-inset-top,0px)) 1.25rem calc(2rem + env(safe-area-inset-bottom,0px))}.farm-shell-header{flex-direction:column;align-items:flex-start;padding:calc(1rem + env(safe-area-inset-top,0px)) 1.25rem 1rem}.farm-shell-nav{width:100%;justify-content:flex-start}.farm-shell-right{width:100%;justify-content:space-between}}@media(max-width:600px){.farm-shell{padding-top:calc(10.5rem + env(safe-area-inset-top,0px))}.brand-tagline{display:none}.farm-shell-nav{gap:.35rem}.nav-tab{font-size:.75rem;padding:.3rem .7rem}.farm-shell-map-card{padding:1rem;border-radius:1.1rem}}.agromind-auth-shell{min-height:100vh;background:radial-gradient(circle at top,#020617 0 40%,#000);display:flex;align-items:center;justify-content:center;padding:1.5rem;color:#e5e7eb;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.agromind-auth-card{width:100%;max-width:420px;border-radius:1rem;border:1px solid rgba(15,23,42,.95);background:radial-gradient(circle at top left,#020617,#020617 40%,#000);padding:1.5rem 1.75rem;box-shadow:0 20px 45px #000000b3}.agromind-auth-logo{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}.auth-logo-mark{width:36px;height:36px;border-radius:999px;background:radial-gradient(circle at 30% 20%,#22c55e,#15803d 45%,#052e16);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:#e5e7eb;box-shadow:0 0 0 1px #16a34a99,0 8px 20px #000000b3}.auth-logo-text{display:flex;flex-direction:column;gap:.12rem}.auth-brand-name{font-size:1.05rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.auth-brand-tagline{font-size:.75rem;color:#9ca3af}.agromind-auth-header h1{font-size:1.25rem;margin-bottom:.25rem}.agromind-auth-header p{font-size:.8rem;color:#9ca3af}.agromind-auth-form{display:flex;flex-direction:column;gap:.7rem;margin-top:1rem}.auth-field{display:flex;flex-direction:column;gap:.25rem}.auth-field label{font-size:.8rem;color:#d1d5db}.auth-field input{border-radius:.6rem;border:1px solid rgba(31,41,55,.9);background:#020617;color:#e5e7eb;font-size:.85rem;padding:.45rem .55rem;outline:none}.auth-field input::placeholder{color:#6b7280}.auth-field input:focus{border-color:#22c55e;box-shadow:0 0 0 1px #22c55e59}.auth-hint{font-size:.7rem;color:#6b7280}.auth-primary-btn{margin-top:.4rem;width:100%;border-radius:999px;border:1px solid #16a34a;background:radial-gradient(circle at 30% 20%,#22c55e,#15803d 45%,#052e16);color:#e5e7eb;font-size:.9rem;font-weight:500;padding:.5rem .75rem;cursor:pointer;transition:transform .08s ease,box-shadow .08s ease,filter .08s ease}.auth-primary-btn:hover{filter:brightness(1.05);box-shadow:0 10px 25px #22c55e33;transform:translateY(-1px)}.auth-primary-btn:active{transform:translateY(0);box-shadow:none}.auth-switch-mode{margin-top:.8rem;display:flex;justify-content:center;gap:.4rem;font-size:.8rem;color:#9ca3af}.auth-switch-mode button{border:none;background:none;padding:0;color:#22c55e;cursor:pointer;font-size:.8rem}.auth-switch-mode button:hover{text-decoration:underline}.auth-footnote{margin-top:1rem;font-size:.7rem;color:#6b7280;text-align:center}@media(max-width:500px){.agromind-auth-card{padding:1.25rem 1.1rem}}:root{--bg-body: #020617;--bg-panel: #020617;--bg-panel-soft: #020617;--bg-panel-elevated: #020617;--bg-header: #020617;--bg-hero-card: #020617;--bg-pill: #020617;--border-soft: rgba(148, 163, 184, .3);--border-strong: rgba(15, 23, 42, .9);--text-main: #e5e7eb;--text-soft: #9ca3af;--text-muted: #6b7280;--text-strong: #f9fafb;--green: #22c55e;--green-soft: rgba(34, 197, 94, .08);--green-strong: #16a34a;--gold: #facc15;--gold-soft: rgba(250, 204, 21, .12);--danger: #f97373;--radius-lg: 18px;--radius-full: 999px;--shadow-soft: 0 18px 45px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{height:-webkit-fill-available;overflow-x:hidden}body{min-height:100vh;min-height:100dvh;height:auto;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top,#020617 0,#000 60%,#020617);color:var(--text-main);line-height:1.5}@media(max-width:768px){body{overscroll-behavior-y:none}}a{text-decoration:none;color:inherit}.page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow:visible;background:radial-gradient(circle at top,#020617 0,#000 55%,#020617)}.main{flex:1;min-height:0}.header{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translateZ(0)}.header-dark{background:linear-gradient(to bottom,#0f172af2,#0f172abf,#0f172a00);border-bottom:1px solid rgba(15,23,42,.9)}.nav{max-width:1120px;margin:0 auto;padding:.85rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.logo{display:flex;align-items:center;gap:.7rem}.logo-mark{width:40px;height:40px;border-radius:999px;border:1px solid rgba(250,204,21,.5);background:radial-gradient(circle at 30% 0,#facc15,#22c55e);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-shadow:0 0 35px #22c55e8c}.logo-brain,.logo-leaf{font-size:.9rem;position:absolute}.logo-brain{left:7px}.logo-leaf{right:6px}.logo-text-main{font-weight:700;font-size:1.1rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-strong)}.logo-text-sub{font-size:.8rem;color:var(--gold)}.nav-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}.btn{border-radius:var(--radius-full);padding:.55rem 1.1rem;font-size:.86rem;font-weight:600;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease,color .12s ease;white-space:nowrap}.btn-sm{padding:.45rem .9rem;font-size:.78rem}.btn-ghost{background:transparent;color:var(--text-soft);border-color:#94a3b866}.btn-ghost:hover{color:var(--text-main);border-color:#facc15b3;background:#0f172ad9;transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--gold),var(--green-strong));color:#020617;box-shadow:var(--shadow-soft)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 22px 52px #22c55ed9}.btn-outline{background:#0f172ad9;color:var(--text-main);border-color:#facc1599}.btn-outline:hover{background:#151e35f2;transform:translateY(-2px)}.page-inner{max-width:1120px;margin:0 auto;padding:2.4rem 1.4rem 3rem}.hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.1fr);gap:2.4rem;align-items:center}@media(max-width:880px){.hero{grid-template-columns:minmax(0,1fr)}}.hero-kicker{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--gold);margin-bottom:.9rem;display:inline-flex;align-items:center;gap:.5rem}.badge{font-size:.7rem;padding:.16rem .7rem;border-radius:var(--radius-full);background:#15803d33;border:1px solid rgba(34,197,94,.7);color:#bbf7d0}.hero-title{font-size:clamp(2.1rem,4vw,2.8rem);line-height:1.1;margin-bottom:.9rem;color:var(--text-strong)}.hero-title span{color:var(--gold)}.hero-subtitle{font-size:.98rem;color:var(--text-soft);max-width:34rem;margin-bottom:1.3rem}.hero-subtitle strong{color:var(--text-main)}.hero-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-bottom:.9rem}.hero-meta{font-size:.78rem;color:var(--text-muted);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.hero-meta-dot{width:6px;height:6px;border-radius:999px;background:var(--green);box-shadow:0 0 0 6px #22c55e59}.hero-card{background:radial-gradient(circle at top,#34d39929,#020617 70%),linear-gradient(to bottom right,#020617,#020617);border-radius:24px;padding:1.5rem 1.4rem;color:var(--text-main);box-shadow:var(--shadow-soft);border:1px solid rgba(15,23,42,1);position:relative;overflow:hidden}.hero-card-badge{position:absolute;top:1rem;right:1rem;background:#0f172aeb;padding:.22rem .75rem;border-radius:var(--radius-full);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;border:1px solid rgba(148,163,184,.6);color:var(--text-soft)}.hero-card-title{font-size:1.01rem;font-weight:600;margin-bottom:.4rem}.hero-card-text{font-size:.84rem;color:var(--text-soft);max-width:19rem}.hero-mini-map{margin-top:.9rem;margin-bottom:1rem;border-radius:16px;padding:.75rem;background:radial-gradient(circle at top left,#22c55e40,#0f172a);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.zone-pill{border-radius:.85rem;padding:.4rem .5rem;font-size:.72rem;display:flex;flex-direction:column;gap:.06rem;background:#0f172ae6;border:1px solid rgba(148,163,184,.6)}.zone-name{font-weight:600;color:var(--text-main)}.zone-tag{font-size:.7rem;color:var(--text-soft)}.hero-card-footer{display:flex;justify-content:space-between;align-items:center;gap:.6rem;font-size:.78rem;color:var(--text-soft);margin-top:.4rem}.hero-card-footer strong{color:var(--green)}.hero-card-chip{padding:.22rem .6rem;border-radius:var(--radius-full);border:1px solid rgba(148,163,184,.7);font-size:.7rem}.section{max-width:1120px;margin:0 auto;padding:0 1.4rem 2.8rem}.section-header{margin-bottom:1.4rem}.section-kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);margin-bottom:.35rem;font-weight:600}.section-title{font-size:1.35rem;margin-bottom:.3rem;color:var(--text-strong)}.section-subtitle{font-size:.9rem;color:var(--text-soft);max-width:34rem}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}@media(max-width:900px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.grid-3{grid-template-columns:minmax(0,1fr)}}.card{background:radial-gradient(circle at top,#020617,#020617);border-radius:var(--radius-lg);padding:1rem;border:1px solid rgba(31,41,55,.9);box-shadow:0 14px 35px #000c}.card-kicker{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:var(--green);margin-bottom:.3rem;font-weight:600}.card-title{font-size:.98rem;font-weight:600;margin-bottom:.3rem;color:var(--text-strong)}.card-text{font-size:.86rem;color:var(--text-soft)}.auth-section{min-height:calc(100vh - 130px);display:flex;align-items:center;justify-content:center;padding:2rem 1.4rem}.auth-card{width:100%;max-width:420px;background:radial-gradient(circle at top,#22c55e2e,#020617 70%);border-radius:22px;padding:1.8rem 1.6rem;box-shadow:0 20px 50px #000000d9;border:1px solid rgba(31,41,55,.9)}.auth-title{font-size:1.4rem;margin-bottom:.3rem;color:var(--text-strong)}.auth-subtitle{font-size:.88rem;color:var(--text-soft);margin-bottom:1.1rem}.auth-form{display:grid;gap:.85rem;margin-bottom:.9rem}.auth-label{font-size:.82rem;color:var(--text-main);display:grid;gap:.26rem}.auth-input{border-radius:999px;border:1px solid rgba(148,163,184,.6);padding:.55rem .95rem;font-size:.88rem;outline:none;background:#0f172af2;color:var(--text-main)}.auth-input::placeholder{color:var(--text-muted)}.auth-input:focus{border-color:var(--green);box-shadow:0 0 0 1px #22c55e59}.auth-btn{width:100%;justify-content:center;margin-top:.25rem}.auth-footer-text{font-size:.8rem;color:var(--text-soft);text-align:center}.auth-link{color:var(--gold);font-weight:600}.footer{padding:1rem 1.4rem 1.4rem;font-size:.78rem;color:var(--text-muted);text-align:center;border-top:1px solid rgba(15,23,42,.9);background:radial-gradient(circle at bottom,#0f172ae6,#020617)}.logo-img{height:52px;object-fit:contain;display:block}.dashboard-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:1.5rem;align-items:flex-start}.dashboard-sidebar{background:#050509;border-radius:1rem;border:1px solid #262633;padding:1.25rem;position:sticky;top:5.5rem}.dashboard-sidebar-header{margin-bottom:1rem}.sidebar-title{font-size:1.1rem;font-weight:600}.sidebar-subtitle{font-size:.85rem;opacity:.7}.dashboard-sidebar-nav{display:flex;flex-direction:column;gap:.35rem}.sidebar-item{text-align:left;border:none;outline:none;cursor:pointer;padding:.55rem .75rem;border-radius:.75rem;font-size:.9rem;background:transparent;color:inherit;opacity:.85}.sidebar-item:hover{background:#12121c;opacity:1}.sidebar-item-active{background:#1b1b29;border:1px solid #3a3a55;opacity:1}@media(max-width:900px){.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{position:static}}.dashboard-main{min-height:60vh}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(0,1fr);gap:1.25rem;align-items:flex-start}.dashboard-map-panel{min-height:320px}.map-placeholder{margin-top:.75rem;border-radius:1rem;border:1px solid #28283a;background:radial-gradient(circle at top left,#20203a 0,#0a0a10 55%,#050509);padding:.75rem;display:flex;flex-direction:column;gap:.75rem}.map-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem}.map-mode{padding:.3rem .6rem;border-radius:999px;border:1px solid #35354a;opacity:.8}.map-mode-active{background:#1f2937;border-color:#4b5563;opacity:1}.map-canvas{position:relative;border-radius:.9rem;background:#050509;border:1px solid #2b2b3d;height:220px;overflow:hidden}.map-grid{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(148,163,184,.08) 1px,transparent 1px),linear-gradient(to bottom,rgba(148,163,184,.08) 1px,transparent 1px);background-size:32px 32px;opacity:.8}.map-legend{position:absolute;bottom:.75rem;left:.75rem;display:flex;flex-wrap:wrap;gap:.35rem}.legend-pill{font-size:.7rem;padding:.25rem .55rem;border-radius:999px;border:1px solid rgba(148,163,184,.4);background:#0f172acc}.legend-animals{border-color:#f97316}.legend-crops{border-color:#22c55e}.legend-maintenance{border-color:#eab308}.legend-empty{border-color:#64748b}.dashboard-side-panels{display:flex;flex-direction:column;gap:.75rem}.small-card{padding:.85rem 1rem}@media(max-width:900px){.dashboard-main-grid{grid-template-columns:1fr}}.zones-list{margin-top:1rem;border-top:1px solid #272738;padding-top:.75rem;display:flex;flex-direction:column;gap:.35rem;font-size:.8rem}.zones-list-header{display:grid;grid-template-columns:1.4fr 1fr auto auto;gap:.5rem;opacity:.7;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.zone-row{display:grid;grid-template-columns:1.4fr 1fr auto auto;gap:.5rem;padding:.35rem .4rem;border-radius:.6rem;background:#0f172aa6;border:1px solid rgba(31,41,55,.8)}.zone-row-name{font-weight:500}.zone-row-type{opacity:.85}.zone-row-status{font-size:.72rem;justify-self:flex-start;padding:.15rem .5rem;border-radius:999px;border:1px solid transparent}.zone-row-actions{display:flex;justify-content:flex-end;align-items:center}.zone-status-ok{border-color:#22c55e;color:#bbf7d0}.zone-status-warning{border-color:#f97316;color:#fed7aa}.zone-status-info{border-color:#38bdf8;color:#bae6fd}.zone-status-empty{border-color:#64748b;color:#e5e7eb}.zone-components-link{background:transparent;border:1px solid #4b5563;border-radius:999px;padding:.18rem .7rem;font-size:.72rem;cursor:pointer;opacity:.9;color:#e5e7eb;white-space:nowrap}.zone-components-link:hover{opacity:1;background:#111827}@media(max-width:700px){.zones-list-header,.zone-row{grid-template-columns:1.4fr 1fr}.zone-row>div:nth-child(3),.zone-row>div:nth-child(4){margin-top:.15rem}.zone-row-actions{justify-content:flex-start}}.components-panel-overlay{position:fixed;inset:0;background:#0f172aa6;display:flex;justify-content:flex-end;align-items:stretch;z-index:50}.components-panel{width:380px;max-width:100%;background:#050509;border-left:1px solid #262633;padding:1.1rem 1.3rem;display:flex;flex-direction:column;gap:.9rem;box-shadow:-20px 0 40px #0000008c}.components-panel-header{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.components-panel-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;opacity:.7;margin-bottom:.1rem}.components-panel-title{font-size:1.1rem;font-weight:600}.components-panel-subtitle{font-size:.8rem;opacity:.8;margin-top:.1rem}.components-panel-close{background:transparent;border:1px solid #374151;border-radius:999px;padding:.25rem .7rem;font-size:.75rem;cursor:pointer;opacity:.85;color:#e5e7eb}.components-panel-close:hover{background:#111827;opacity:1}.components-panel-section{border-top:1px solid #1f2933;padding-top:.7rem;margin-top:.4rem;display:flex;flex-direction:column;gap:.55rem}.components-panel-section-title{font-size:.9rem;font-weight:600}.components-panel-section-text{font-size:.78rem;opacity:.8}.components-panel-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.components-panel-item{border-radius:.7rem;border:1px solid #272738;padding:.45rem .6rem;background:#0f172ae6}.components-item-main{display:flex;flex-direction:column;gap:.1rem}.components-item-name{font-size:.82rem;font-weight:500}.components-item-meta{font-size:.74rem;opacity:.8}.components-panel-form{display:flex;flex-direction:column;gap:.55rem;margin-top:.2rem}.components-field{display:flex;flex-direction:column;gap:.2rem;font-size:.78rem}.components-input{background:#020617;border-radius:.55rem;border:1px solid #272738;padding:.35rem .5rem;font-size:.8rem;color:inherit}.components-input:focus{outline:none;border-color:#4b5563}.components-textarea{min-height:70px;resize:vertical}.components-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.components-btn{margin-top:.2rem;width:100%;font-size:.82rem}@media(max-width:700px){.components-panel-overlay{justify-content:center;align-items:flex-end}.components-panel{width:100%;border-left:none;border-top:1px solid #262633;border-radius:1rem 1rem 0 0}}.farm-map-shell{border-radius:.9rem;overflow:hidden;border:1px solid rgba(31,41,55,.9);background:#020617;min-height:260px}.farm-map{width:100%;height:260px}@media(min-width:900px){.farm-map{height:320px}}.farm-map-error{padding:.75rem .9rem;font-size:.8rem;background:#7f1d1d4d;border:1px solid rgba(248,113,113,.7);color:#fecaca}.farm-map-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.35rem .75rem;font-size:.78rem;border-bottom:1px solid rgba(15,23,42,.9);background:#0f172af2}.farm-map-label{opacity:.8;color:#e5e7eb}.farm-map-save-btn{border-radius:999px;border:1px solid rgba(148,163,184,.9);background:#0f172a;padding:.25rem .7rem;font-size:.75rem;cursor:pointer;color:#e5e7eb}.farm-map-save-btn:hover{border-color:#facc15}
