: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}@font-face{font-family:KoPubDotum;src:url(/assets/KoPubDotumLight-BQPuMvvG.eot);src:url(/assets/KoPubDotumLight-BQPuMvvG.eot?#iefix) format("embedded-opentype"),url(/assets/KoPubDotumLight-Ddkr9fZ-.woff) format("woff"),url(/assets/KoPubDotumLight-CqBp-wf-.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:KoPubDotum;src:url(/assets/KoPubDotumBold-0kg4mNA9.eot);src:url(/assets/KoPubDotumBold-0kg4mNA9.eot?#iefix) format("embedded-opentype"),url(/assets/KoPubDotumBold-CR6BaOdd.woff) format("woff"),url(/assets/KoPubDotumBold-D76DMNUi.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}:root{font-family:KoPubDotum,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.wrap{display:flex;flex-direction:column;height:100vh;overflow:hidden}.page{display:grid;grid-template-columns:1fr 1fr;gap:0;flex:1;overflow:hidden;min-height:0;height:100%;width:100%}.page-left{display:flex;flex-direction:column;height:100%;overflow:hidden;min-height:0}.page-left-inner{display:grid;grid-template-columns:200px 1fr;gap:16px;height:100%;padding:16px;overflow:hidden;min-height:0}.page-left-map{height:100%;width:100%;overflow:hidden;min-height:0}.page-right{display:flex;flex-direction:column;height:100%;overflow:auto;padding:16px 8px;min-height:0}.header{width:100%;padding:16px 24px;box-sizing:border-box;flex-shrink:0}.header-content{width:100%;display:flex;align-items:center}.header-link{color:#fff;text-decoration:none}.header-title{color:#fff;margin:0;font-size:20px;font-weight:700}.sidebar{width:200px;height:100%;overflow-y:auto;border-right:1px solid #ddd;background-color:#f9f9f9;padding:0;box-sizing:border-box}.sidebar-header{font-size:18px;font-weight:700;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #ddd}.sidebar-section{margin-bottom:20px}.sidebar-label{font-size:12px;font-weight:700;margin-bottom:8px;color:#666}.sidebar-select{width:100%;padding:8px 28px 8px 16px;font-size:14px;border-left:1px solid #ddd;border-right:1px solid #ddd;border-top:none;border-bottom:1px solid #ddd;border-radius:0;margin-bottom:0;background-color:#fff;box-sizing:border-box;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath d='M2,3 L5,7 M5,7 L8,3' fill='none' stroke='%23333' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:10px}.sidebar-select:first-of-type{border-top:1px solid #ddd}.sidebar-button{padding:8px 16px;background-color:#fff;cursor:pointer;border-left:1px solid #ddd;border-right:1px solid #ddd;border-top:none;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:8px;color:#333;font-weight:400;font-size:12px;width:100%;box-sizing:border-box}.sidebar-button:first-of-type{border-top:1px solid #ddd}.sidebar-button.selected{border-left:2px solid #000;border-right:2px solid #000;border-top:2px solid #000;border-bottom:2px solid #000;color:#06c;font-weight:700}.sidebar-button.selected:first-of-type{border-top:2px solid #000}.sidebar-button-check{color:#06c;font-size:14px}.sidebar-empty{padding:8px 16px;background-color:#fff;color:#999;text-align:center;font-size:12px}.sidebar-section-header{padding:12px;text-align:center;font-weight:700;font-size:16px;margin-bottom:0}.sidebar-section-content{border:1px solid #ddd;border-top:none}.sidebar-section-content-inner{padding:0}.sidebar-ripening-select{padding:0;border-bottom:1px solid #ddd}.sidebar-empty-message{padding:8px 16px;background-color:#fff;color:#999;text-align:center;font-size:12px}.map-container,.map-viewport{height:100%;width:100%;position:relative}.map-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 24px;background-color:#ffffffe6;border-radius:4px;box-shadow:0 2px 8px #0000001a;z-index:1000}.date-picker{position:absolute;top:10px;left:10px;z-index:1000;background-color:#fffffff2;padding:8px;border-radius:4px;box-shadow:0 2px 8px #0003;display:flex;align-items:center;gap:8px;pointer-events:auto}.date-picker-label{font-size:14px;font-weight:700;font-family:KoPubDotum,sans-serif;white-space:nowrap}.date-picker-input{padding:6px 12px;font-size:14px;font-family:KoPubDotum,sans-serif;border:1px solid #ddd;border-radius:4px}.date-picker-info-wrapper{position:relative;display:flex;align-items:center}.legend{position:absolute;bottom:20px;left:20px;background-color:#fffffff2;padding:8px;border-radius:4px;box-shadow:0 2px 8px #0003;z-index:1000;width:auto;max-width:fit-content}.legend.legend-risk,.legend.legend-growth{max-width:fit-content}.legend-title{font-size:12px;font-weight:700;margin-bottom:8px;text-align:center}.legend-list{display:flex;flex-direction:column;gap:4px}.legend-item{display:flex;align-items:center;gap:8px}.legend-color-block{height:20px;width:20px;display:inline-block;border:1px solid #ddd;border-radius:2px}.legend-label{font-size:12px}.weather-legend{display:flex;flex-direction:row;gap:8px;align-items:flex-start}.weather-legend-bar{display:flex;flex-direction:column;height:120px;width:20px;border:1px solid #ddd;border-radius:2px;overflow:hidden}.weather-legend-bar-item{flex-shrink:0}.weather-legend-text-container{display:flex;flex-direction:column;height:120px}.weather-legend-text-item{font-size:10px;color:#666;display:flex;align-items:center;white-space:nowrap}.zoom-controls{position:absolute;top:10px;right:10px;z-index:1000;display:flex;flex-direction:column;background-color:#fffffff2;border-radius:4px;box-shadow:0 2px 8px #0003;overflow:hidden;pointer-events:auto}.zoom-button{width:40px;height:40px;border:none;background-color:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#333;padding:0;transition:background-color .2s;position:relative}.zoom-button:hover{background-color:#0000000d}.zoom-button:active{background-color:#0000001a}.zoom-button.zoom-in:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:30px;height:1px;background-color:#ddd}.info-button-wrapper{position:relative;display:flex;align-items:center}.info-button{width:24px;height:24px;border:none;background-color:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666;padding:0;border-radius:50%;transition:background-color .2s,color .2s;flex-shrink:0}.info-button:hover{background-color:#0000000d;color:#333}.info-tooltip{position:absolute;top:calc(100% + 10px);left:0;z-index:1001;background-color:#000000bf;color:#fff;padding:16px 20px;border-radius:8px;box-shadow:0 4px 12px #0000004d;min-width:280px;max-width:320px;font-family:KoPubDotum,sans-serif;font-size:14px;line-height:1.6}.info-tooltip-content{position:relative}.info-tooltip-content p{margin:0;color:#fff}.info-tooltip-region{margin-top:8px;font-weight:700}.info-tooltip-close{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background-color:transparent;color:#fff;font-size:20px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.info-tooltip-close:hover{background-color:#fff3}.panel-section{background-color:#fff}.panel-section.farm-panel{margin-bottom:8px}.panel-header{color:#333;padding:12px;font-weight:700;font-size:16px;display:flex;justify-content:flex-start;align-items:center;gap:12px}.panel-content{padding:8px;overflow-y:auto;max-height:calc(100vh - 200px)}.panel-content.farm-content{padding:6px;max-height:none}.date-controls{display:flex;align-items:center;gap:8px}.date-button{padding:6px 12px;font-size:14px;font-family:KoPubDotum,sans-serif;cursor:pointer;border:1px solid #ddd;border-radius:4px;background-color:#fff}.date-input{padding:6px 12px;font-size:14px;font-family:KoPubDotum,sans-serif;border:1px solid #ddd;border-radius:4px}.data-table{width:100%;border-collapse:collapse;font-size:12px;font-family:inherit;table-layout:fixed}.data-table.farm-table{font-size:14px}.table-header-row{background-color:#f5f5f5}.table-header-cell{padding:6px;border:1px solid #ddd;text-align:left;font-weight:700}.table-header-cell.center{text-align:center}.table-header-cell.merged{text-align:left}.table-cell{padding:6px;border:1px solid #ddd;text-align:center;font-weight:300}.table-cell.left{text-align:left}.table-cell.bold{font-weight:700}.table-cell.vertical-header{background-color:#f9f9f9;font-weight:700;vertical-align:middle;text-align:center;white-space:nowrap;writing-mode:horizontal-tb;width:60px}.table-cell.vertical-label{background-color:#f9f9f9;font-weight:700;white-space:nowrap;writing-mode:horizontal-tb;width:80px}.table-cell.merged-cell{background-color:#f9f9f9;font-weight:700;vertical-align:middle;text-align:center;white-space:nowrap;writing-mode:horizontal-tb}.risk-cell{padding:6px;border:1px solid #ddd;text-align:center;font-weight:300;transition:background-color .2s}.risk-cell.clickable{cursor:pointer}.risk-cell.period-none{background-color:#fff;color:#000}.risk-cell.safe{background-color:#7e9e7b;color:#fff}.risk-cell.caution{background-color:#f9c975;color:#000}.risk-cell.warning{background-color:#d8454a;color:#fff}.risk-cell-content{display:flex;align-items:center;justify-content:center;gap:4px}.risk-icon{flex-shrink:0}.growth-cell{padding:6px;border:1px solid #ddd;text-align:center;font-weight:300}.growth-color-block{height:20px;width:100%;border-radius:2px;display:flex;align-items:center;justify-content:center;color:#000;font-size:11px}.farm-select{width:100%;padding:8px;font-size:14px;border:1px solid #ddd;border-radius:4px;margin-bottom:16px}.farm-select-header{padding:6px 28px 6px 12px;font-size:15px;border:1px solid #ddd;border-radius:4px;background-color:#fff;min-width:200px;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath d='M2,3 L5,7 M5,7 L8,3' fill='none' stroke='%23333' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:10px}.table-loading,.table-empty{text-align:center;padding:20px;color:#999}
