@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;color:#18332d;background:#ebe9e2;font-synthesis:none;--green-950: #123d34;--green-800: #1b5749;--green-600: #2a826b;--green-100: #dbece4;--cream: #f7f5ef;--orange: #ed8a45;--muted: #718079;--border: #dfe4df;--shadow: 0 12px 35px rgba(31, 57, 48, .09)}*{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 25% -10%,rgba(69,143,118,.16),transparent 30rem),#ebe9e2}body.modal-open{overflow:hidden}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:3px solid rgba(237,138,69,.35);outline-offset:2px}.login-shell{display:grid;min-height:100vh;padding:max(24px,env(safe-area-inset-top)) 18px max(24px,env(safe-area-inset-bottom));place-items:center;background:radial-gradient(circle at 50% 0%,rgba(80,157,130,.28),transparent 36rem),linear-gradient(155deg,#10382f,#1b5749 52%,#123d34)}.login-card{width:min(100%,410px);padding:32px 26px 27px;background:#fbfaf6;border:1px solid rgba(255,255,255,.3);border-radius:24px;box-shadow:0 28px 70px #061b164d}.login-brand{display:grid;width:58px;height:58px;margin-bottom:22px;color:#dff4e9;place-items:center;background:linear-gradient(135deg,var(--green-600),var(--green-950));border-radius:17px;box-shadow:0 10px 22px #123d3438}.login-eyebrow{color:var(--green-600);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.login-card h1{margin:5px 0 8px;font:800 27px/1.15 Manrope,sans-serif;letter-spacing:-.045em}.login-intro{margin:0 0 25px;color:var(--muted);font-size:13px;line-height:1.55}.login-form{display:grid;gap:16px}.login-form>label{display:grid;gap:7px;color:#496058;font-size:12px;font-weight:700}.login-input{display:flex;align-items:center;gap:10px;padding:0 12px;color:#82918b;background:#fff;border:1px solid #d8ded9;border-radius:12px;transition:.2s ease}.login-input:focus-within{color:var(--green-600);border-color:var(--green-600);box-shadow:0 0 0 3px #2a826b1a}.login-input input{flex:1;min-width:0;padding:13px 0;color:#18332d;border:0;outline:0;background:transparent}.login-input button{display:grid;padding:7px;color:#718079;place-items:center;border:0;background:transparent;cursor:pointer}.login-error{display:flex;align-items:flex-start;gap:8px;margin:-2px 0 0;padding:10px 11px;color:#964a39;font-size:11px;line-height:1.4;background:#fff0eb;border:1px solid #f2d1c7;border-radius:10px}.login-error svg{flex:0 0 auto}.login-button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;margin-top:4px;padding:13px;color:#fff;font-weight:800;border:0;border-radius:12px;background:var(--green-800);box-shadow:0 8px 18px #1b574938;cursor:pointer}.login-button:disabled{color:#96a39e;background:#dce1de;box-shadow:none;cursor:not-allowed}.login-button{text-decoration:none}.login-brand.warning{color:#9a5800;background:#fff2d8}.auth-status-card{text-align:center}.auth-status-actions{display:grid;gap:10px;margin-top:22px}.secondary-auth-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 14px;color:var(--green-800);font-weight:800;border:1px solid #b8cdc5;border-radius:12px;background:#f3f8f6;cursor:pointer}.secondary-auth-button:disabled{opacity:.6;cursor:wait}.button-loader{width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite}.auth-loading{display:grid;justify-items:center;padding:42px 26px;text-align:center}.auth-loading .login-brand{margin-bottom:24px}.auth-loading p{margin:9px 0 0;color:var(--muted);font-size:13px}.app-shell{position:relative;width:100%;min-height:100vh;max-width:740px;margin:0 auto;background:var(--cream);box-shadow:0 0 80px #123d341f}.app-header{position:-webkit-sticky;position:sticky;z-index:30;top:0;isolation:isolate;padding:max(18px,env(safe-area-inset-top)) 20px 16px;color:#fff;background:linear-gradient(135deg,#123d34,#1e594b);border-radius:0 0 26px 26px;box-shadow:0 10px 30px #123d3438}.brand-row{display:flex;align-items:center;gap:11px;margin-bottom:12px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;color:#dff4e9;background:#ffffff1f;border:1px solid rgba(255,255,255,.13);border-radius:13px}.brand-row p{overflow:hidden;max-width:235px;margin:0 0 1px;font-size:11px;font-weight:700;letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;color:#a8cec1}.brand-row h1{margin:0;font:800 22px/1 Manrope,sans-serif;letter-spacing:-.03em}.header-actions{display:flex;gap:7px;margin-left:auto}.settings-button,.notification-button{display:grid;place-items:center;width:42px;height:42px;color:#fff;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:#ffffff14}.notification-button{cursor:pointer}.notification-button.enabled{color:#173f36;background:#dff4e9}.notification-button:disabled{opacity:.65;cursor:wait}.app-page-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:13px;padding:4px;background:#041d1740;border-radius:12px}.app-page-nav button{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;color:#b9d7cd;font-size:11px;font-weight:800;border:0;border-radius:9px;background:transparent;cursor:pointer}.app-page-nav button.active{color:var(--green-950);background:#f4f1e8;box-shadow:0 3px 9px #08262033}.week-nav{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week-nav button{position:relative;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;padding:7px 2px 6px;color:#a9ccc1;border:0;border-radius:12px;background:transparent;cursor:pointer;transition:.2s ease}.week-nav button span{font-weight:700;font-size:10px;text-transform:uppercase}.week-nav button strong{color:#fff;font:800 16px/1.2 Manrope,sans-serif}.week-nav button small{position:absolute;top:3px;right:3px;display:grid;place-items:center;width:15px;height:15px;font-size:8px;font-weight:700;color:#cfe5dc;background:#ffffff1a;border-radius:50%}.week-nav button.active{color:var(--green-950);background:#f4f1e8;transform:translateY(-2px);box-shadow:0 5px 12px #08262040}.week-nav button.active strong{color:var(--green-950)}.week-nav button.active small{color:#fff;background:var(--orange)}.week-nav button.next-week:not(.active){background:#ffffff0e}.week-nav button.week-boundary:before{position:absolute;top:5px;bottom:5px;left:-4px;width:2px;content:"";background:#edaa74;border-radius:3px;box-shadow:0 0 0 1px #123d3433}main{padding:24px 18px 100px}.day-summary{display:flex;align-items:center;justify-content:space-between;padding:5px 3px 20px}.eyebrow{color:var(--green-600);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.day-summary h2{margin:3px 0 2px;font:800 27px/1.2 Manrope,sans-serif;letter-spacing:-.045em}.day-summary p{margin:0;color:var(--muted);font-size:13px}.progress-ring{position:relative;display:grid;place-content:center;width:66px;height:66px;text-align:center;border-radius:50%;background:conic-gradient(var(--orange) var(--progress),#e2e5df 0)}.progress-ring:after{position:absolute;inset:6px;content:"";border-radius:50%;background:var(--cream)}.progress-ring strong,.progress-ring span{position:relative;z-index:1}.progress-ring strong{font:800 17px/1 Manrope,sans-serif}.progress-ring span{margin-top:2px;font-size:9px;font-weight:700;color:var(--muted);text-transform:uppercase}.demo-notice{display:flex;align-items:center;gap:9px;margin-bottom:16px;padding:11px 13px;color:#6e522a;font-size:12px;background:#fff1d9;border:1px solid #f3d9ab;border-radius:12px}.demo-notice svg{flex:0 0 auto}.demo-notice code{font-size:11px}.pipe-overview{margin-bottom:22px}.pipe-cart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pipe-cart-card{display:flex;align-items:center;gap:9px;min-width:0;padding:11px;color:#31584d;text-align:left;border:1px solid #d8e3dd;border-radius:13px;background:#f0f7f3;box-shadow:0 5px 13px #1a43390d;cursor:pointer}.pipe-cart-icon{display:grid;flex:0 0 auto;width:35px;height:35px;color:var(--green-600);place-items:center;background:#d8ebe2;border-radius:9px}.pipe-cart-content{display:flex;flex:1;min-width:0;flex-direction:column}.pipe-cart-content strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.pipe-cart-content>span{margin-top:2px;color:#70817a;font-size:9px}.pipe-cart-content>span b{color:var(--green-800);font-size:12px}.pipe-cart-content small{display:flex;align-items:center;gap:3px;overflow:hidden;margin-top:4px;color:#4e7065;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.pipe-cart-card>svg{flex:0 0 auto;color:#789087}.equipment-page{display:grid;gap:25px}.movement-list,.equipment-grid{display:grid;gap:10px}.movement-section .section-heading h2{font-size:19px}.movement-card{padding:14px;background:linear-gradient(135deg,#173f36,#246452);border-radius:15px;box-shadow:0 8px 20px #123d3429}.movement-time{display:flex;align-items:center;gap:6px;margin-bottom:12px;color:#c0ddd3;font-size:12px}.movement-time strong{color:#fff;font-size:14px}.movement-route{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:center;gap:7px;color:#fff}.movement-route>div{display:flex;min-width:0;flex-direction:column}.movement-route>div:last-child{text-align:right}.movement-route strong{overflow:hidden;font:800 14px/1.25 Manrope,sans-serif;text-overflow:ellipsis;white-space:nowrap}.movement-route small{overflow:hidden;margin-top:4px;color:#acd0c3;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.movement-route>svg{color:#edaa74}.movement-note{margin:11px 0 0;padding:9px 10px;color:#e2f0eb;font-size:11px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;background:#ffffff17;border-radius:9px}.movement-assignee{display:flex;align-items:center;gap:7px;width:100%;margin-top:12px;padding:9px 2px 1px;color:#d1e7df;text-align:left;border:0;border-top:1px solid rgba(255,255,255,.14);background:transparent;cursor:pointer}.movement-assignee strong{font-size:11px}.movement-assignee>svg:last-child{margin-left:auto;color:#edaa74}.movement-assignee.assigned strong{color:#fff;font-size:12px}.worker-avatar{display:grid;flex:0 0 auto;width:27px;height:27px;color:#fff;font-size:11px;font-weight:800;place-items:center;background:var(--green-600);border-radius:50%}.movement-assignee .worker-avatar{color:#173f36;background:#cfe8de}.assignee-options{display:grid;gap:8px}.assignee-options>button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 11px;color:#456058;text-align:left;border:1px solid #dbe1dd;border-radius:11px;background:#fff;cursor:pointer}.assignee-options>button>strong{flex:1;font-size:13px}.assignee-options>button.selected{color:var(--green-800);border-color:#73a493;background:#edf6f1}.assignee-options>button.clear-assignee{margin-top:4px;color:#945343;border-color:#efd5cd;background:#fff5f2}.equipment-empty{padding:18px;color:#7c8c86;font-size:12px;text-align:center;background:#fff;border:1px dashed #ccd5d0;border-radius:13px}.equipment-card{display:flex;align-items:center;gap:10px;padding:12px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 5px 15px #1f39300d}.equipment-card.active{border-color:#8fc3ae;box-shadow:inset 3px 0 0 var(--green-600),0 5px 15px #1f39300f}.equipment-icon{display:grid;flex:0 0 auto;width:38px;height:38px;color:var(--green-600);place-items:center;background:#e3f1ea;border-radius:10px}.equipment-card-content{display:flex;flex:1;min-width:0;flex-direction:column}.equipment-card-content>strong{font:800 12px/1.2 Manrope,sans-serif}.equipment-card-content>span,.equipment-card-content>small{display:flex;align-items:center;gap:4px;overflow:hidden;margin-top:4px;color:#557068;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.equipment-card-content>small{color:#82908b}.equipment-active-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px 14px;margin-top:7px}.equipment-active-meta>span{display:inline-flex;align-items:center;gap:5px;min-width:0;color:#557068;font-size:12px;font-weight:600;white-space:nowrap}.equipment-active-meta>span strong{color:#234f43;font-size:13px;font-weight:800}.equipment-active-meta svg{flex:0 0 auto}.equipment-card-actions{display:flex;flex:0 0 92px;max-width:92px;flex-direction:column;gap:5px}.equipment-card-actions button{display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 6px;font-size:9px;font-weight:800;line-height:1.2;text-align:center;border-radius:8px;cursor:pointer}.change-location-button{color:#315d55;border:1px solid #cfe0d8;background:#edf5f1}.return-yard-button{color:#79552c;border:1px solid #ead7b4;background:#fff4df}.watering-export-section{display:grid;gap:12px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 5px 15px #1f39300d}.watering-export-section>div{display:grid;gap:3px}.watering-export-section strong{color:#274e44;font:800 15px/1.25 Manrope,sans-serif}.watering-export-section small{color:#718079;font-size:11px;line-height:1.4}.watering-export-section button{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;padding:13px;color:#fff;font-size:12px;font-weight:800;border:0;border-radius:11px;background:var(--green-800);box-shadow:0 7px 16px #1b57492e;cursor:pointer}.location-list-empty{margin:0;padding:16px;color:#7d8e87;font-size:12px;text-align:center}.toolbar{display:flex;gap:9px;margin-bottom:25px}.plot-picker-toolbar{position:relative}.plot-search-results{position:absolute;z-index:25;top:calc(100% + 7px);right:0;left:0;overflow-y:auto;max-height:min(55vh,430px);padding:7px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 15px 35px #123d342e}.plot-search-row{display:flex;align-items:stretch;border-bottom:1px solid #edf0ed}.plot-search-main{display:flex;flex:1;min-width:0;align-items:center;justify-content:space-between;gap:14px;padding:12px 10px;color:#18332d;text-align:left;border:0;background:transparent;cursor:pointer}.archive-plot-button{display:grid;flex:0 0 42px;place-items:center;color:#987047;border:0;background:transparent;cursor:pointer}.archive-plot-button:active{color:#fff;background:#987047}.plot-search-results span{display:grid;min-width:0;gap:2px}.plot-search-results strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.plot-search-results small{color:#77847e;font-size:12px}.plot-search-results b{flex:0 0 auto;color:#84918b;font-size:11px}.plot-search-results .hidden-plot b{padding:6px 9px;color:#fff;background:var(--green-800);border-radius:8px}.plot-search-results>p{padding:15px 10px;color:#77847e;text-align:center}.archived-plots{margin-top:6px;padding-top:6px;border-top:1px solid #dfe6e1}.archived-plots-toggle{display:flex;width:100%;align-items:center;gap:7px;padding:10px;color:#755d42;font-size:12px;font-weight:800;border:0;background:#faf5ec;border-radius:9px;cursor:pointer}.archived-plots-toggle svg:last-child{margin-left:auto;transition:transform .2s ease}.archived-plots-toggle svg.open{transform:rotate(90deg)}.archived-plot-row{display:flex;align-items:center;gap:10px;padding:9px 7px 9px 11px;border-bottom:1px solid #edf0ed}.archived-plot-row span{flex:1;color:#556660;font-size:12px}.archived-plot-row button{padding:6px 8px;color:var(--green-800);font-size:11px;font-weight:800;border:0;background:#e9f3ee;border-radius:7px;cursor:pointer}.plot-search-results .close-plot-search{width:100%;margin-top:5px;padding:10px;color:var(--green-800);font-weight:700;border:0;background:#edf5f1;border-radius:9px;cursor:pointer}.plot-list-button{display:flex;width:100%;align-items:center;gap:9px;padding:13px;color:#284f44;font-size:14px;font-weight:800;text-align:left;background:#fff;border:1px solid var(--border);border-radius:13px;box-shadow:0 4px 12px #1a43390a;cursor:pointer}.plot-list-button span{flex:1}.plot-list-button svg:last-child{transition:transform .2s ease}.plot-list-button svg.open{transform:rotate(90deg)}.add-plot-button{display:flex;align-items:center;gap:6px;padding:0 15px;color:#fff;font-size:13px;font-weight:700;border:0;border-radius:13px;background:var(--green-800);box-shadow:0 6px 14px #1b574933;cursor:pointer}.section-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px}.section-heading h2{margin:0;font:800 17px/1 Manrope,sans-serif}.section-heading span{display:grid;place-items:center;min-width:23px;height:23px;padding:0 7px;color:var(--green-800);font-size:11px;font-weight:700;background:var(--green-100);border-radius:20px}.plot-list{display:grid;gap:12px}.plot-card{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}.plot-card-top{display:flex;align-items:flex-start;gap:11px;padding:16px 16px 13px}.plot-icon{display:grid;flex:0 0 auto;place-items:center;width:42px;height:42px;color:var(--green-600);background:#e7f2ec;border-radius:12px}.plot-heading{min-width:0;flex:1}.plot-heading h3{overflow:hidden;margin:1px 0 5px;font:800 16px/1.2 Manrope,sans-serif;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.plot-heading p{display:flex;flex-wrap:wrap;align-items:center;gap:4px 9px;margin:0;color:var(--muted);font-size:11px}.plot-heading p span{display:inline-flex;align-items:center;gap:3px}.plot-heading p span+span:before{content:"•";margin-right:5px;color:#bcc5c1}.delete-button{display:grid;flex:0 0 auto;place-items:center;width:36px;height:36px;color:#ad786b;border:0;border-radius:10px;background:#fbf2ef;cursor:pointer}.delete-button:active{color:#fff;background:#b55542}.last-watering{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:-3px 16px 12px;padding:10px 11px;color:#477266;font-size:12px;background:#edf5f1;border-radius:9px}.last-watering strong{font-weight:800}.last-watering span{color:#75857f}.last-watering>svg{width:17px;height:17px}.last-watering .last-watering-equipment{width:100%;padding-left:22px;color:#657c74;font-size:11px}.last-watering-equipment b{color:#477266;font-weight:800}.plot-pipe-status{display:flex;align-items:center;gap:7px;width:calc(100% - 32px);margin:-3px 16px 12px;padding:8px 10px;color:#79552c;text-align:left;border:1px solid #eddbb9;border-radius:9px;background:#fff4df;cursor:pointer}.plot-pipe-status>span{display:flex;flex:1;min-width:0;flex-direction:column;font-size:11px}.plot-pipe-status strong{margin-bottom:3px;font-size:12px}.plot-pipe-status>svg{flex:0 0 auto}.plot-pipe-status.planned{color:#47675d;border-color:#cfe0d8;background:#edf6f1;cursor:default}.assignment-list{display:grid;gap:7px;margin:0 15px 12px}.assignment-row{display:flex;align-items:stretch;gap:2px;padding:4px;background:#f0f7f3;border:1px solid #d9eae1;border-radius:12px}.assignment-details-button{display:flex;flex:1;align-items:center;gap:10px;min-width:0;padding:6px;color:inherit;text-align:left;border:0;border-radius:9px;background:transparent;cursor:pointer}.assignment-details-button:active{background:#e3f0e9}.reel-badge{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;color:#19775f;background:#d5ebe1;border-radius:10px}.assignment-content{display:flex;flex:1;min-width:0;overflow:hidden;flex-direction:column}.assignment-title{display:flex;flex-wrap:wrap;align-items:center;gap:5px;min-width:0}.assignment-title strong{flex:0 0 auto;font-size:15px}.finish-time,.reel-speed{display:inline-flex;align-items:center;gap:3px;padding:3px 5px;color:#1f6c58;font-size:11px;font-weight:800;line-height:1;background:#d9ebe3;border-radius:6px}.finish-time.finished{color:#fff;background:#29725f}.reel-speed{color:#65736e;background:#e4e8e5}.assignment-part{margin-top:4px;color:var(--green-600);font-size:13px;font-weight:600}.new-run-hint{margin-top:4px;color:#a0612f;font-size:11px;font-weight:800}.assignment-row.finished{border-color:#c9d9d1;background:#f5f7f4}.assignment-row.finished .reel-badge{color:#647971;background:#e4ebe7}.assignment-materials{display:block;width:100%;margin-top:4px;color:#788780;font-size:11px;font-weight:600;line-height:1.45;overflow-wrap:anywhere;white-space:normal}.assignment-note{display:block;width:100%;margin-top:6px;padding:7px 8px;color:#4e665e;font-size:10px;font-weight:600;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere;background:#ffffffa6;border-radius:7px}.assignment-chevron{flex:0 0 auto;color:#7b928a}.assignment-remove-button{display:grid;flex:0 0 36px;width:36px;place-items:center;padding:8px;color:#6f8880;border:0;border-radius:8px;background:transparent;cursor:pointer}.assignment-remove-button:active{color:#a14f3e;background:#f8e8e3}.empty-assignment{margin:0 16px 13px;color:#86928e;font-size:12px;font-style:italic}.plan-page{display:grid;width:100%;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr);gap:16px}.plan-page>*{min-width:0;max-width:100%}.plan-summary{display:flex;width:100%;min-width:0;align-items:center;gap:12px;padding:17px;background:#fff;border:1px solid var(--border);border-radius:17px;box-shadow:var(--shadow)}.plan-summary>div:first-child{flex:1;min-width:0}.plan-summary h2{margin:3px 0 5px;font:800 20px/1.15 Manrope,sans-serif;letter-spacing:-.03em}.plan-summary p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.plan-attention-count{display:grid;flex:0 0 65px;height:65px;place-items:center;align-content:center;color:#86542c;background:#fff0d9;border-radius:50%}.plan-attention-count strong{font:800 21px/1 Manrope,sans-serif}.plan-attention-count span{margin-top:3px;font-size:8px;font-weight:800}.plan-status-legend{display:flex;flex-wrap:wrap;gap:6px}.plan-status-legend span,.plan-status{padding:5px 8px;font-size:9px;font-weight:800;border-radius:20px}.plan-status{border:0;cursor:pointer}.plan-status-legend .active,.plan-status.active{color:#17634f;background:#d9f1e7}.plan-status-legend .recent,.plan-status.recent{color:#3e6f61;background:#e9f2ee}.plan-status-legend .check,.plan-status.check{color:#8a4b20;background:#ffe3bd}.plan-status-legend .good,.plan-status.good{color:#326b58;background:#dff1e9}.plan-status-legend .soon,.plan-status.soon{color:#315d86;background:#dcecff}.plan-status-legend .water,.plan-status.water{color:#fff;background:#b75947}.plan-status.empty{color:#6e7975;background:#ecefed}.plan-status-help{margin:-8px 2px 0;color:#718079;font-size:10px}.plan-list{display:grid;width:100%;min-width:0;grid-template-columns:minmax(0,1fr);gap:10px}.plan-card{width:100%;min-width:0;max-width:100%;padding:15px;background:#fff;border:1px solid var(--border);border-left:4px solid #cbd4d0;border-radius:14px;box-shadow:0 5px 16px #143b310f}.plan-card.active{border-left-color:#2d9277}.plan-card.check{border-left-color:#db9b42}.plan-card.soon{border-left-color:#6094c5}.plan-card.water{border-left-color:#b75947}.plan-card.good{border-left-color:#64a18c}.plan-card-top{display:flex;align-items:flex-start;gap:10px}.plan-card-top>div{flex:1;min-width:0}.plan-card h3{margin:0;font:800 16px/1.2 Manrope,sans-serif;overflow-wrap:anywhere}.plan-card-top>.plan-status{flex:0 0 auto;max-width:42%;text-align:center;white-space:normal}.plan-card-top p{margin:3px 0 0;color:var(--muted);font-size:10px}.plan-day-button{display:flex;width:100%;min-width:0;align-items:center;gap:7px;margin-top:11px;padding:9px 10px;color:#315d55;font-size:11px;font-weight:800;text-align:left;border:1px solid #d8e4de;border-radius:9px;background:#edf5f1;cursor:pointer}.plan-day-button span{flex:1;min-width:0;overflow-wrap:anywhere}.plan-day-button svg{flex:0 0 auto}.plan-last-date{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:12px 0 0;color:#44675e;font-size:12px;font-weight:700}.plan-last-date svg{flex:0 0 auto;color:var(--green-600)}.plan-run-details{display:flex;flex-wrap:wrap;gap:5px 12px;margin:7px 0 0 23px;color:#73837d;font-size:10px}.plan-run-details strong{color:#385d53}.plan-no-history{margin:12px 0 0;color:#85918d;font-size:11px;font-style:italic}.plan-status-options{display:grid;gap:9px}.plan-status-option{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;padding:12px;color:#40564f;text-align:left;border:1px solid #dce3df;border-radius:12px;background:#fff;cursor:pointer}.plan-status-option small{font-size:11px;line-height:1.35}.plan-status-option>svg{color:var(--green-600)}.plan-status-auto{padding:12px;color:var(--green-800);font-size:11px;font-weight:800;border:0;border-radius:10px;background:#eaf3ee;cursor:pointer}.plot-day-form{display:grid;gap:16px}.plot-day-form>p{margin:0;color:#65766f;font-size:12px;line-height:1.45}.plot-action-row{display:grid;grid-template-columns:.7fr 1.3fr;border-top:1px solid #e8ebe7}.pipe-manage-button,.assign-button{display:flex;align-items:center;gap:6px;padding:12px;color:var(--green-800);font-size:11px;font-weight:800;border:0;background:#fafbf9;cursor:pointer}.pipe-manage-button{justify-content:center;border-right:1px solid #e8ebe7}.assign-button{width:100%}.assign-button svg:last-child{margin-left:auto}.empty-state{display:grid;min-height:190px;place-items:center;align-content:center;gap:7px;padding:25px;color:#7d8e87;text-align:center;background:#fff;border:1px dashed #ccd5d0;border-radius:18px}.empty-state h3,.empty-state p{margin:0}.empty-state h3{color:#425d54;font-size:15px}.empty-state p{max-width:280px;font-size:12px}.loader{width:28px;height:28px;border:3px solid #d6e6df;border-top-color:var(--green-600);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;z-index:50;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:max(10px,env(safe-area-inset-top));background:#091e1994;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .2s ease}.modal-sheet{overflow-y:auto;width:min(100%,680px);max-height:calc(100dvh - 10px - env(safe-area-inset-top));padding:9px 19px max(22px,env(safe-area-inset-bottom));scroll-padding-bottom:120px;overscroll-behavior:contain;background:#fbfaf6;border-radius:0 0 24px 24px;box-shadow:0 20px 50px #091e1933;animation:slide-up .25s ease}.sheet-handle{width:40px;height:4px;margin:0 auto 14px;background:#cbd2ce;border-radius:8px}.modal-header{display:flex;align-items:flex-start;gap:15px;margin-bottom:20px}.modal-header>div{flex:1}.modal-header h2{margin:0 0 3px;font:800 21px/1.2 Manrope,sans-serif;letter-spacing:-.035em}.modal-header p{margin:0;color:var(--muted);font-size:13px}.icon-button{display:grid;place-items:center;width:37px;height:37px;color:#5e6f69;border:0;border-radius:11px;background:#ecefeb;cursor:pointer}.form-stack{display:grid;gap:15px}.form-stack label{display:grid;gap:6px;color:#496058;font-size:12px;font-weight:700}.form-stack label span{color:var(--orange)}.form-stack input{width:100%;padding:13px;color:#18332d;border:1px solid #d8ded9;border-radius:11px;background:#fff;outline:0}.form-stack input:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #2a826b1a}.form-row{display:grid;grid-template-columns:1.25fr .75fr;gap:10px}.primary-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:5px;padding:14px;color:#fff;font-weight:800;border:0;border-radius:12px;background:var(--green-800);box-shadow:0 8px 18px #1b574933;cursor:pointer}.primary-button:disabled{color:#93a19c;background:#dce1de;box-shadow:none;cursor:not-allowed}.close-confirmation{display:grid;gap:18px}.close-confirmation>p{margin:0;color:#536a62;font-size:14px;line-height:1.5}.close-confirmation>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.close-confirmation button{padding:13px 10px;font-weight:800;border-radius:11px;cursor:pointer}.confirmation-cancel-button{color:#536a62;border:1px solid #d8ded9;background:#fff}.confirmation-close-button{color:#fff;border:1px solid #a85f50;background:#a85f50}.timing-form{display:grid;gap:17px}.timing-note-field{position:relative;display:grid;gap:6px;color:#496058;font-size:12px;font-weight:700}.timing-note-field>span{display:flex;align-items:center}.timing-note-field em{margin-left:auto;color:#8b9893;font-size:9px;font-style:normal;font-weight:600}.timing-note-field textarea{width:100%;min-height:82px;padding:11px 12px 22px;color:#18332d;font-family:inherit;font-size:16px;line-height:1.45;resize:vertical;border:1px solid #d8ded9;border-radius:11px;background:#fff;outline:0}.timing-note-field textarea:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #2a826b1a}.timing-note-field>small{position:absolute;right:9px;bottom:7px;color:#8d9994;font-size:8px;font-weight:600}.timing-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.timing-fields label{display:grid;gap:6px;color:#496058;font-size:12px;font-weight:700}.timing-fields label>span:first-child{display:flex;align-items:center;gap:5px}.timing-fields em{margin-left:auto;color:#8b9893;font-size:9px;font-style:normal;font-weight:600}.unit-input{display:flex;align-items:center;overflow:hidden;background:#fff;border:1px solid #d8ded9;border-radius:11px}.unit-input:focus-within{border-color:var(--green-600);box-shadow:0 0 0 3px #2a826b1a}.unit-input input{width:100%;min-width:0;padding:12px;color:#18332d;font-size:16px;border:0;outline:0;background:transparent}.unit-input small{flex:0 0 auto;padding-right:10px;color:#84918c;font-size:9px;font-weight:700}.finish-preview{display:flex;align-items:center;gap:10px;padding:13px;color:#7d8b86;background:#eef0ed;border:1px solid #dce1de;border-radius:12px}.finish-preview.ready{color:var(--green-800);background:#e6f2eb;border-color:#c9e1d5}.finish-preview>div{display:flex;flex-direction:column}.finish-preview span{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.finish-preview strong{margin-top:1px;font:800 20px/1 Manrope,sans-serif}.finish-preview>small{margin-left:auto;color:#718079;font-size:9px}.location-list{display:grid;gap:7px}.location-list>button:not(.primary-button){display:flex;align-items:center;gap:9px;width:100%;padding:11px;color:#536a62;text-align:left;border:1px solid #dbe1dd;border-radius:10px;background:#fff;cursor:pointer}.location-list>button:not(.primary-button) span{flex:1}.location-list>button.selected{color:var(--green-800);border-color:var(--green-600);background:#eaf5ef}.custom-location-field{display:grid;gap:6px;margin:4px 0 5px;padding:11px;color:#536a62;font-size:12px;font-weight:800;border:1px solid #dbe1dd;border-radius:10px;background:#fff}.custom-location-field.selected{color:var(--green-800);border-color:var(--green-600);background:#eaf5ef}.custom-location-field input{width:100%;min-width:0;padding:10px 11px;color:#18332d;font-size:16px;border:1px solid #d8ded9;border-radius:9px;background:#fff;outline:0}.custom-location-field input:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #2a826b1a}.plot-pipes-form{display:grid;gap:11px}.plot-pipes-form>p{margin:-5px 0 4px;color:#718079;font-size:11px;line-height:1.45}.pipe-counter{display:flex;align-items:center;gap:12px;padding:11px;background:#fff;border:1px solid #dbe1dd;border-radius:11px}.pipe-counter>div:first-child{display:flex;flex:1;min-width:0;flex-direction:column}.pipe-counter strong{color:#405b52;font-size:12px}.pipe-counter small{margin-top:2px;color:#89958f;font-size:8px}.counter-controls{display:flex;align-items:center;overflow:hidden;border:1px solid #d4ddd8;border-radius:9px}.counter-controls button{display:grid;width:34px;height:34px;color:var(--green-800);place-items:center;border:0;background:#edf5f1;cursor:pointer}.counter-controls button:disabled{color:#aab3af;background:#f0f1f0}.counter-controls input{width:38px;height:34px;padding:0;color:#18332d;font-weight:800;text-align:center;border:0;border-right:1px solid #d4ddd8;border-left:1px solid #d4ddd8;outline:0;background:#fff;appearance:textfield}.counter-controls input::-webkit-inner-spin-button,.counter-controls input::-webkit-outer-spin-button{margin:0;appearance:none}.assignment-form{display:grid;gap:22px}.assignment-form fieldset{min-width:0;margin:0;padding:0;border:0}.assignment-form legend{margin-bottom:10px;color:#3b544b;font:800 13px/1 Manrope,sans-serif}.reel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.choice-card{display:flex;align-items:center;gap:8px;min-height:49px;padding:10px 11px;color:#466159;font-size:12px;font-weight:700;text-align:left;border:1px solid #dbe1dd;border-radius:11px;background:#fff;cursor:pointer}.choice-card.selected{color:var(--green-800);border-color:var(--green-600);background:#eaf5ef;box-shadow:inset 0 0 0 1px var(--green-600)}.choice-card:disabled{opacity:.5;cursor:not-allowed}.choice-card small{margin-left:auto;color:#a66150;font-size:9px;text-transform:uppercase}.choice-check{margin-left:auto}.conflict-message{display:flex;align-items:center;gap:6px;margin:8px 0 0;padding:8px;color:#9b4d3b;font-size:11px;background:#fff0eb;border-radius:8px}.linked-equipment-note{display:flex;align-items:center;gap:6px;margin:8px 0 0;padding:8px;color:#356658;font-size:10px;background:#e9f4ee;border-radius:8px}.setup-fieldset{padding-top:17px!important;border-top:1px solid #e1e5e2!important}.setup-fieldset legend{display:flex;align-items:center;gap:7px}.setup-fieldset legend small{color:#87948f;font:600 9px/1 DM Sans,sans-serif;text-transform:uppercase}.setup-intro{margin:-3px 0 13px;color:#718079;font-size:10px;line-height:1.45}.setup-label{display:flex;align-items:center;gap:6px;margin-bottom:7px;color:#4c635b;font-size:10px;font-weight:800;text-transform:uppercase}.setup-label small{color:#8c9994;font-size:8px;font-weight:600;text-transform:none}.setup-label.pipe-label{margin-top:15px}.pump-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pipe-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.setup-choice{display:flex;align-items:center;gap:8px;min-width:0;min-height:47px;padding:9px;color:#536a62;text-align:left;border:1px solid #dbe1dd;border-radius:10px;background:#fff;cursor:pointer}.setup-choice>span:last-child{display:flex;min-width:0;flex-direction:column}.setup-choice strong{font-size:10px}.setup-choice small{overflow:hidden;margin-top:2px;color:#7f8f89;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.setup-choice.selected{color:var(--green-800);border-color:#73a493;background:#edf6f1}.setup-choice.unavailable,.setup-choice:disabled{color:#8d9692;border-color:#d9ddda;background:#eff1ef;box-shadow:none;cursor:not-allowed}.setup-choice.unavailable small{color:#9a746b}.radio-dot{display:grid;flex:0 0 auto;width:18px;height:18px;place-items:center;border:1px solid #bdc8c3;border-radius:50%}.radio-dot>span{width:9px;height:9px;background:var(--green-600);border-radius:50%}.setup-choice.selected .radio-dot{border-color:var(--green-600)}.pipe-setup-details{display:grid;gap:8px;margin-top:9px;padding:10px;background:#f5f8f6;border:1px solid #e0e7e3;border-radius:12px}.pipe-source-summary{display:flex;align-items:center;gap:5px;margin:0;color:#718079;font-size:9px}.pipe-source-summary span{color:#b1bbb7}.leave-pipes-choice{display:flex;align-items:center;gap:9px;width:100%;padding:9px;color:#536a62;text-align:left;border:1px solid #dbe1dd;border-radius:10px;background:#fff;cursor:pointer}.leave-pipes-choice>span:last-child{display:flex;flex-direction:column}.leave-pipes-choice strong{font-size:11px}.leave-pipes-choice small{margin-top:2px;color:#83928c;font-size:8px}.leave-pipes-choice.selected{color:#79552c;border-color:#e0c692;background:#fff4df}.setup-warning{display:flex;align-items:center;gap:6px;margin:8px 0 0;color:#8b672c;font-size:10px}.day-choice-row{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day-choice-row button{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;padding:8px 2px;color:#687b74;font-size:11px;font-weight:800;border:1px solid #dbe1dd;border-radius:9px;background:#fff;cursor:pointer}.day-choice-row button small{font-size:9px;font-weight:600;opacity:.75}.day-choice-row button.selected{color:#fff;border-color:var(--green-800);background:var(--green-800)}.day-choice-row button.next-week:not(.selected){background:#f2f4f1}.day-choice-row button.week-boundary:before{position:absolute;top:3px;bottom:3px;left:-5px;width:2px;content:"";background:var(--orange);border-radius:3px}.whole-day-choice,.part-grid button{display:flex;align-items:center;gap:9px;width:100%;padding:11px;color:#536a62;text-align:left;border:1px solid #dbe1dd;border-radius:11px;background:#fff;cursor:pointer}.whole-day-choice{margin-bottom:8px}.whole-day-choice.selected,.part-grid button.selected{color:var(--green-800);border-color:#73a493;background:#edf6f1}.whole-day-choice.unavailable,.part-grid button.unavailable{color:#8d9692;border-color:#d9ddda;background:#eff1ef;box-shadow:none;cursor:not-allowed}.whole-day-choice.unavailable small,.part-grid button.unavailable small{color:#9a746b}.check-box{display:grid;flex:0 0 auto;place-items:center;width:20px;height:20px;color:#fff;border:1px solid #bdc8c3;border-radius:6px}.selected>.check-box{border-color:var(--green-600);background:var(--green-600)}.unavailable>.check-box,.unavailable.selected>.check-box{color:#89938f;border-color:#c7cdca;background:#d9dddb}.whole-day-choice>span:last-child,.part-grid button>span:last-child{display:flex;flex-direction:column}.whole-day-choice strong,.part-grid strong{font-size:12px}.whole-day-choice small,.part-grid small{margin-top:2px;color:#83928c;font-size:9px}.part-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.part-grid button{min-width:0}.toast{position:fixed;z-index:100;right:16px;bottom:max(18px,env(safe-area-inset-bottom));left:16px;display:flex;align-items:center;justify-content:center;gap:8px;max-width:510px;margin:auto;padding:12px 16px;color:#fff;font-size:12px;font-weight:700;text-align:center;background:#173f36;border:1px solid rgba(255,255,255,.16);border-radius:12px;box-shadow:0 12px 30px #0a231d4d;animation:toast-in .25s ease}.unit-input.invalid{border-color:#b65e52}.change-distance-field{grid-column:1 / -1}.field-error{color:#a14b42;font-size:9px;line-height:1.35}.timing-previews{display:grid;gap:8px}@keyframes fade-in{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(-18px);opacity:.6}}@keyframes toast-in{0%{transform:translateY(12px);opacity:0}}@media(min-width:620px){main{padding-right:28px;padding-left:28px}.app-header{padding-right:30px;padding-left:30px}.plot-list{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-backdrop{align-items:center;padding:28px}.modal-sheet{max-height:min(91dvh,820px);border-radius:24px}.reel-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:390px){.plan-summary{padding:14px}.plan-summary h2{font-size:18px}.plan-attention-count{flex-basis:56px;height:56px}.plan-card{padding:13px}.add-plot-button{padding:0 12px}.add-plot-button span{display:none}.pipe-cart-grid,.form-row,.timing-fields,.pump-grid,.part-grid{grid-template-columns:1fr}}
