/* CULTYRA · Sistema visual del espacio de trabajo. */
#app{--ws-bg:#f4f5ef;--ws-paper:#fff;--ws-text:#213c32;--ws-muted:#748279;--ws-line:#e2e7dc;--ws-green:#27694f;--ws-sage:#edf2e5;--ws-gold:#a5803d;--ink:var(--ws-text);--ink-soft:var(--ws-muted);--muted:var(--ws-muted);--line-soft:var(--ws-line);--accent:var(--ws-green);font-family:var(--body);grid-template-columns:224px minmax(0,1fr)!important;grid-template-rows:72px minmax(0,1fr)!important}
body:not(.theme-dark) #app .main,body:not(.theme-dark) #app .content{background:var(--ws-bg)!important}#app .main{padding:32px clamp(22px,3.3vw,52px) 64px!important;min-width:0}#app .content{max-width:1240px!important;margin:0 auto;min-width:0}#app *,#app *:before,#app *:after{box-sizing:border-box}
body:not(.theme-dark) #app .sidebar,body:not(.theme-dark) #app .sidebar .sb-logo{background:#13382e!important}#app .sidebar{width:224px!important;padding:28px 14px 18px!important;border-right:0!important}#app .sidebar .sb-logo{min-height:80px!important;margin:0 5px 23px!important;padding:0 9px 22px!important;border-bottom:1px solid #ffffff16!important;text-align:left}#app .sidebar .sb-logo img{width:156px!important;max-width:156px!important;mix-blend-mode:normal!important;opacity:1!important;display:block}#app .sb-logo>span{display:block;color:#90b1a1;font-size:8px;letter-spacing:.17em;margin-top:13px}
#app #nav{display:block;flex:1}#app .nav-group{margin:0 0 14px!important}#app .nav-group-label{display:block!important;font:500 9px var(--body)!important;color:#799e8b!important;letter-spacing:.1em;padding:9px 12px!important}#app summary.nav-group-label{display:list-item!important;list-style-position:inside;margin-left:0!important;color:#adbfad!important;cursor:pointer}#app .nav-item{font:500 13px var(--body)!important;min-height:43px!important;padding:10px 12px!important;gap:12px!important;border:0!important;border-radius:9px!important;margin:3px 0!important;transition:background .18s,color .18s,transform .18s!important}body:not(.theme-dark) #app .nav-item{color:#c4d4c8!important}body:not(.theme-dark) #app .nav-item:hover{background:#ffffff09!important;color:white!important;transform:translateX(2px)}body:not(.theme-dark) #app .nav-item.active{background:#e1edcf!important;color:#224732!important;box-shadow:none!important}#app .nav-item svg{width:18px;height:18px;stroke-width:1.65}#app .sb-foot{border-top:1px solid #ffffff14!important;padding:16px 4px 0!important}#app .sb-foot .btn{background:transparent!important;color:#b9cdbe!important;border-color:#ffffff1c!important;font-size:12px!important}
#app .topbar{height:72px!important;min-height:72px!important;padding:0 clamp(22px,3.3vw,52px)!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-paper)!important}#app .topbar .view-title{display:block!important;font:550 14px var(--body)!important;color:var(--ws-text)!important}#app .view-title:before{content:'Mi espacio / ';font-weight:400;color:#99a399}#app .usermenu{gap:15px!important}#app .uname{display:block!important;font:500 12px var(--body)!important;color:var(--ws-text)!important;max-width:160px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#app .uname small,#app .plan-tag{display:none!important}#app .theme-toggle{display:grid!important;place-items:center;border:1px solid var(--ws-line)!important;background:transparent!important;width:34px;height:34px;border-radius:50%!important;color:#718676!important;font-size:16px}#app .profile-avatar{width:37px!important;height:37px!important}#app .avatar{font:600 13px var(--body)!important;background:#e9eddd!important;color:#62784b!important}
#app h1,#app h2,#app h3{font-family:var(--body)!important;color:var(--ws-text)!important;letter-spacing:-.035em}#app h1,#app .production-hero h2,#app .farm-page>.section-head h2,#app .farm-page>div>.section-head h2,#app .admin-hero h2,#app .weather-hero h2,#app .alerts-hero h2,#app .market-hero h2{font-size:clamp(26px,2.5vw,33px)!important;font-weight:600!important;line-height:1.16!important}#app h2{font-size:21px!important;font-weight:600!important}#app h3{font-size:16px!important;font-weight:600!important}#app .eyebrow,#app .pro-kicker{font:500 10px var(--body)!important;letter-spacing:.1em!important;color:#7d8d74!important;text-transform:uppercase}#app p{line-height:1.65}#app .section-head{border:0!important;gap:16px;align-items:center;margin-bottom:19px!important}
#app .production-hero,#app .admin-hero,#app .live-head,#app .pro-page-head,#app .weather-hero,#app .alerts-hero,#app .market-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 25px!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}#app .production-hero h2,#app .admin-hero h2,#app .live-head h1,#app .pro-page-head h1{margin:8px 0 10px!important}#app .production-hero p,#app .admin-hero p,#app .live-head p,#app .pro-page-head p,#app .farm-intro{font-size:13px!important;line-height:1.6!important;color:var(--ws-muted)!important;margin:0!important;max-width:62ch}
#app .btn{font:550 12px var(--body)!important;line-height:1.2!important;min-height:40px!important;border-radius:9px!important;padding:11px 15px!important;white-space:normal;transition:background .18s,box-shadow .18s,transform .18s!important;flex-shrink:0}#app .btn-primary{background:var(--ws-green)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 3px 8px #214f3910!important}#app .btn-primary:hover{background:#1d533e!important;box-shadow:0 5px 14px #214f3920!important;transform:translateY(-1px)}#app .btn-ghost{background:var(--ws-paper)!important;border:1px solid var(--ws-line)!important;color:#56705b!important}#app .btn-ghost:hover{border-color:#b4c6aa!important;background:#f8faf5!important}#app .btn-danger{background:transparent!important;border:1px solid #eedad3!important;color:#b36853!important;box-shadow:none!important}#app .btn:disabled{opacity:.45;transform:none!important;cursor:not-allowed}
#app .panel,#app .live-card,#app .live-sensor-grid article,#app .farm-overview,#app .farm-list>.row-item,#app .production-row,#app .admin-module-nav{background:var(--ws-paper)!important;border:1px solid var(--ws-line)!important;box-shadow:0 3px 12px #203b2303!important;border-radius:15px!important}#app .panel{padding:22px!important}#app .grid{gap:16px!important}#app .grid.g-3,#app .grid.g-4{border:0!important;background:transparent!important}#app .stat .k{font:500 10px var(--body)!important;letter-spacing:.06em!important;color:#7d8d76!important}#app .stat .v{font:550 clamp(24px,2.5vw,32px) var(--body)!important;color:#274d38!important;letter-spacing:-1px!important;margin:16px 0 10px!important}#app .stat .v small{font-size:12px!important;font-weight:400;color:#87927d;letter-spacing:0}#app .production-stat-note{font-size:11px!important;color:#96a08e!important}#app .production-stats>.panel:nth-child(3){background:#f5efdf!important;border-color:#e8dfca!important}#app .production-stats>.panel:nth-child(3) .v{color:#93743d!important}
#app .production-related{margin:0 0 20px!important;border-bottom:1px solid var(--ws-line);padding:0 0 15px}#app .production-related>summary{cursor:pointer;font:500 12px var(--body);color:#819078;width:fit-content}#app .production-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 0!important}#app .production-links button{padding:13px!important;border-radius:10px!important;background:#ffffffa8!important;border:1px solid var(--ws-line)!important}#app .production-links b{font-size:12px!important}#app .production-links small{font-size:10px!important}#app .production-links i{display:none}#app .production-stats{margin:0 0 30px!important}#app .production-history-head{margin:0 0 16px!important;gap:16px}#app .production-history-head h2{margin:7px 0 0!important;font-size:20px!important}#app .production-filter{display:flex;gap:3px;background:#e9eddf;padding:4px;border-radius:9px}#app .chip{font:500 11px var(--body)!important;padding:8px 12px!important;min-height:32px!important;background:transparent!important;color:#85907d!important;border:0!important;border-radius:6px!important}#app .chip.active{background:#fff!important;color:#3e6547!important;box-shadow:0 1px 5px #253b2110}
#app .production-row{display:flex;gap:18px;padding:18px!important;align-items:center;margin-bottom:11px!important}#app .production-row-date{background:#eef3e7!important;color:#7b9166!important;min-width:54px!important;width:54px!important;border-radius:10px!important;padding:10px 6px!important}#app .production-row-date b{font:600 12px var(--body)!important}#app .production-row-date span{font-size:10px!important}#app .production-row-main{flex:1;min-width:0}#app .production-row-main h3{font:600 14px var(--body)!important;margin:7px 0!important}#app .production-row-main p{font-size:11px!important;color:#92a08a!important;margin:0!important}#app .production-row-value b{font:600 17px var(--body)!important;color:#3e674b!important}#app .production-row-value span{font-size:10px!important;color:#9aa58f!important}#app .tag{font:500 9px var(--body)!important;padding:4px 7px!important;letter-spacing:.04em!important;border:0!important;background:#edf3e8!important;color:#7b9467!important;border-radius:5px!important}
#app .record-options{position:relative;align-self:center}#app .record-options summary{display:grid;place-items:center;width:30px;height:32px;cursor:pointer;list-style:none;letter-spacing:2px;color:#899780;border-radius:6px}#app .record-options summary:hover{background:#f0f4e9}#app .record-options .btn{position:absolute;z-index:20;right:0;top:35px;background:#fff!important;box-shadow:0 6px 24px #19362116!important;white-space:nowrap}#app .record-options summary::-webkit-details-marker{display:none}
#app .field label,#app label{font-size:12px}#app .field input,#app .field select,#app .field textarea,#app .production-form input,#app .production-form select{font:400 14px var(--body)!important;color:var(--ws-text)!important;background:#fbfcf8!important;border:1px solid #dce4d4!important;border-radius:9px!important;min-height:43px;padding:11px 12px!important;max-width:100%}#app input:focus,#app select:focus,#app textarea:focus{outline:none;border-color:#8eab79!important;box-shadow:0 0 0 3px #a5ba8a15!important}#app input[type=checkbox]{min-height:0!important;accent-color:#3f7755}#app .production-total-preview{background:#f3f6e9!important;border:0!important;border-radius:10px!important}#content:has(.production-form:not(.hidden))>.production-stats,#content:has(.production-form:not(.hidden))>.production-history,#content:has(.production-form:not(.hidden))>.production-related{display:none!important}
#app .live-banner{background:linear-gradient(110deg,#dfe9d4,#edf2e3)!important;border-color:#d9e2ca!important;border-radius:17px!important;padding:28px!important}#app .live-banner h2{font-size:26px!important}#app .live-banner .eyebrow{color:#799066!important}#app .live-kpis article{border:1px solid var(--ws-line)!important;border-radius:14px!important;box-shadow:none!important}#app .live-kpis article:last-child{background:#f5f0e2!important}#app .live-kpis strong{font:550 25px var(--body)!important}#app .live-links{gap:12px!important}#app .live-links button{border-radius:13px!important;border-color:var(--ws-line)!important;transition:transform .2s,box-shadow .2s,border-color .2s}#app .live-links button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #23462309;border-color:#b5c7a4!important}#app .live-links span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#edf3e6;font:500 10px var(--body);color:#8da477}#app .live-links button:nth-child(3) span{background:#f4ecd8;color:#ad945b}#app .live-sensor-grid article{border-top:3px solid #ceddbf!important;padding:22px!important}#app .live-sensor-grid article:nth-child(2n){border-top-color:#e6d6b3!important}#app .live-sensor-grid strong{font:500 32px var(--body)!important}#app .live-reading-status{font-size:12px!important}#app .live-reading-status span{font-size:11px!important}
#app .farm-empty{background:#eaf0df!important;border-color:#d0dcc1!important;padding:28px!important}#app .farm-map-title h3{font-size:16px!important}#app .farm-list .ri-title{font-size:16px!important}#app .map{border-radius:11px!important;overflow:hidden}#app .farm-editor .section-head h2{font-size:21px!important}
#app .admin-module-nav{padding:20px!important}#app .admin-work-areas{gap:7px!important}#app .admin-work-area{background:#f4f6ed!important;border-radius:9px!important;padding:14px!important}#app .admin-work-area.active{background:#dfe9d0!important;box-shadow:none!important}#app .admin-work-area b{font-size:12px!important}#app .admin-work-area span{font-size:10px!important}#app .admin-content-tools button{font-size:10px!important;border-radius:7px!important}#app .admin-summary-stats article{border-color:var(--ws-line)!important;padding:22px!important}#app .admin-summary-stats article:nth-child(2){background:#f5efdf!important}#app .admin-summary-stats b{font-size:27px!important}#app .admin-summary-stats span{font-size:10px!important}#app .admin-summary-stats small{font-size:11px!important}
#app .cal-grid{gap:5px!important;border:0!important}#app .cal-cell{background:#fff!important;border:1px solid var(--ws-line)!important;border-radius:8px!important;min-height:74px!important;transition:background .15s,border-color .15s}#app .cal-cell:hover{background:#f4f7ec!important;border-color:#b6c7a6!important}#app .cal-cell.sel,#app .cal-cell.today{background:#e5efda!important;border-color:#a9be91!important}#app .cal-num{font-size:12px!important}#app .task-day-panel{margin-top:24px!important}#app .row-item{border-color:var(--ws-line)!important}#app .market-empty,#app .empty,#app .sensors-empty{font-size:13px!important;line-height:1.6}
#app .weather-pro-main,#app .forecast-pro,#app .recommend-pro,#app .alerts-farm-card,#app .settings-panel{border-radius:15px!important;border-color:var(--ws-line)!important}#app .forecast-days article{background:#ffffffa3;border-radius:10px;padding:16px 8px!important}#app .weather-pro-temp b{font-weight:500!important}#app .weather-pro-main aside{background:#ecf1e3!important}#app table{font-size:12px!important}#app th{font-weight:550!important;color:#7c8c73!important}#app td,#app th{padding:13px 12px!important;border-color:var(--ws-line)!important}
@keyframes workspaceEnter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}#app .view-enter{animation:workspaceEnter .28s ease-out!important}#app .view-enter>.live-dashboard>.live-kpis,#app .view-enter>.production-stats{animation:workspaceEnter .38s ease-out!important}#app details[open]>div{animation:workspaceEnter .2s ease-out}#app button:focus-visible,#app summary:focus-visible{outline:2px solid #8cae72!important;outline-offset:3px}
body.theme-dark #app{--ws-bg:#14251f;--ws-paper:#1d3027;--ws-text:#dde8d5;--ws-muted:#9cae9b;--ws-line:#334a37;--ws-green:#477d57}body.theme-dark #app .main,body.theme-dark #app .content{background:var(--ws-bg)!important}body.theme-dark #app .production-hero,body.theme-dark #app .admin-hero{background:transparent!important}body.theme-dark #app .live-banner{background:linear-gradient(110deg,#29472f,#243a2a)!important;border-color:#3a5336!important}body.theme-dark #app .live-kpis article,body.theme-dark #app .live-links button,body.theme-dark #app .live-setup,body.theme-dark #app .cal-cell{background:var(--ws-paper)!important;color:var(--ws-text)!important}body.theme-dark #app .production-stats>.panel:nth-child(3),body.theme-dark #app .admin-summary-stats article:nth-child(2){background:#383c29!important;border-color:#51543b!important}body.theme-dark #app .stat .v,body.theme-dark #app .production-row-value b{color:#b8d39f!important}body.theme-dark #app .admin-work-area{background:#23392b!important}body.theme-dark #app .admin-work-area.active{background:#395231!important}body.theme-dark #app .field input,body.theme-dark #app .field select,body.theme-dark #app .field textarea{background:#18291f!important;color:#dbe7d1!important;border-color:#3c5237!important}
@media(max-width:960px){#app .uname{display:none!important}#app .main{padding:26px 24px 60px!important}#app .live-kpis strong{font-size:21px!important}}
@media(max-width:760px){#app{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:60px minmax(0,1fr)!important}#app .topbar{height:60px!important;min-height:60px!important;padding:0 17px!important}#app .sidebar{width:260px!important;max-width:86vw;z-index:120}#app .view-title:before{display:none}#app .hamb{display:grid!important;place-items:center}#app .main{padding:24px 17px 70px!important}#app .production-hero,#app .admin-hero,#app .live-head,#app .pro-page-head{align-items:flex-start!important;gap:16px!important;padding-bottom:22px!important;flex-direction:column!important}#app .production-hero>.btn{width:auto!important}#app h1,#app .production-hero h2,#app .admin-hero h2{font-size:28px!important}#app .production-hero p{font-size:12px!important}#app .production-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}#app .production-stats>.panel:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:center}#app .production-stats>.panel:last-child .v{grid-column:2;grid-row:1/3;margin:0!important}#app .stat .v{font-size:26px!important}#app .panel{padding:18px!important}#app .production-links{grid-template-columns:1fr!important}#app .production-row{gap:12px!important;flex-wrap:wrap}#app .production-row-main{flex:1 1 calc(100% - 90px)}#app .production-row-value{margin-left:66px;flex:1;text-align:left}#app .record-options{margin-left:auto}#app .production-history-head h2{font-size:18px!important}#app .live-banner{padding:23px!important}#app .live-banner h2{font-size:23px!important}#app .live-links{grid-template-columns:repeat(2,minmax(0,1fr))}#app .live-sensor-grid{gap:10px!important}#app .live-sensor-grid article{padding:17px!important}#app .cal-cell{min-height:52px!important}#app .calendar-actions{flex-wrap:wrap;gap:6px}#app .admin-work-areas{grid-template-columns:repeat(2,minmax(0,1fr))!important}#app .production-form-grid{grid-template-columns:1fr!important}#app .production-finance{font-size:11px!important}#app .table-wrap{overflow:auto}}
@media(prefers-reduced-motion:reduce){#app *,#app *:before,#app *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#app .sidebar .sb-logo{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important;min-height:65px!important;margin-bottom:12px!important;padding-bottom:15px!important}#app .sidebar{padding-top:22px!important}#app .nav-item{min-height:39px!important;padding-top:8px!important;padding-bottom:8px!important}#app .production-row-date{min-width:58px!important;flex-shrink:0}#app .production-row-date b{white-space:nowrap;font-size:11px!important}

#app .sidebar .sb-logo{align-items:center!important;padding:0 4px 17px!important;flex-shrink:0}#app .sidebar .sb-logo img{width:148px!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important}#app .nav-group{margin-bottom:8px!important}#app .nav-item{min-height:35px!important;padding:7px 12px!important;margin:1px 0!important}

#app .workspace-welcome{padding:28px;margin-bottom:22px;border:1px solid #d3dfc9;border-radius:17px;background:linear-gradient(120deg,#e4edda,#f4f4e6)}#app .workspace-welcome h2{font-size:26px!important;margin:10px 0}#app .workspace-welcome p{max-width:620px;color:#657960;font-size:14px;margin:0 0 20px}#app .workspace-empty{text-align:center;padding:38px 24px;border:1px dashed #ccd8c1;border-radius:15px;background:var(--ws-paper)}#app .workspace-empty h3{margin:14px 0 8px!important}#app .workspace-empty p{font-size:13px;color:var(--ws-muted);max-width:400px;margin:0 auto 20px}#app .empty-symbol{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#edf2e5;color:#6e8c54;font-size:25px}#app .live-row{gap:14px;flex-wrap:wrap}#app .btn,#app summary{touch-action:manipulation}#app .production-stat-note,#app .production-row-main p{color:#74836b!important}
body.theme-dark #app .workspace-welcome{background:#243a2a;border-color:#3a5336}body.theme-dark #app .workspace-welcome p{color:#adbea4}

#app .live-dashboard:has(.workspace-welcome)>.live-banner{display:none!important}
