/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.contents{display:contents}.grid{display:grid}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#17343b;--muted:#6d858a;--line:#c8e3ea;--surface:#ffffffe0;--surface-strong:#fff;--emerald:#0faf83;--emerald-dark:#075b5f;--cyan:#28b8d5;--solar:#f4b71b;--danger:#dc5a45;--shadow:0 18px 50px #13515c17}*{box-sizing:border-box}html{background:#eaf7fc;min-width:320px}body{color:var(--ink);background:radial-gradient(circle at 88% 2%,#ffd56238,#0000 25rem),radial-gradient(circle at 8% 0,#28b8d52b,#0000 24rem),linear-gradient(145deg,#eefbff 0%,#f6fcfb 48%,#edf7f4 100%);min-height:100vh;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{color:inherit}.variable-tip-trigger{color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-align:left;cursor:help;background:0 0;border:0;align-items:center;gap:4px;margin:0;padding:0;display:inline-flex}.variable-tip-trigger b{opacity:.58;border:1px solid;border-radius:50%;flex:0 0 14px;place-items:center;width:14px;height:14px;font-size:.48rem;line-height:1;display:inline-grid}.variable-tip-trigger:hover b,.variable-tip-trigger:focus b{opacity:1;background:#0faf831a}.wind-mode .variable-tip-trigger:hover b,.wind-mode .variable-tip-trigger:focus b{background:#348bca1f}.variable-tooltip-balloon{z-index:10000;color:#fff;pointer-events:none;background:#173b40;border:1px solid #ffffff2e;border-radius:11px;gap:3px;width:max-content;max-width:min(300px,100vw - 24px);padding:10px 12px;font-size:.72rem;font-weight:500;line-height:1.42;display:grid;position:fixed;box-shadow:0 12px 30px #0d2f3540}.variable-tooltip-balloon strong{color:#8fe0c6;letter-spacing:.02em;font-size:.67rem}.variable-tooltip-balloon[data-side=top]{transform:translate(-50%,-100%)}.variable-tooltip-balloon[data-side=bottom]{transform:translate(-50%)}.variable-tooltip-balloon:after{content:"";background:#173b40;width:10px;height:10px;position:absolute;left:50%;transform:translate(-50%)rotate(45deg)}.variable-tooltip-balloon[data-side=top]:after{bottom:-5px}.variable-tooltip-balloon[data-side=bottom]:after{top:-5px}.app-shell{width:min(1540px,100%);min-height:100vh;margin:0 auto;padding:22px clamp(16px,2.5vw,38px) 38px}.topbar{grid-template-columns:auto minmax(320px,1fr) auto;align-items:center;gap:24px;margin-bottom:18px;display:grid}.brand-block{align-items:center;gap:13px;display:flex}.brand-mark{background:linear-gradient(145deg,#0faf83,#087177);border-radius:14px;width:44px;height:44px;position:relative;overflow:hidden;box-shadow:0 10px 24px #0faf8340}.brand-mark:before,.brand-mark:after,.brand-mark span{content:"";background:#fff;border-radius:8px;height:4px;position:absolute;left:9px;right:9px;transform:skew(-24deg)}.brand-mark:before{top:11px}.brand-mark span{top:20px}.brand-mark:after{top:29px}.brand-block h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.35rem,2vw,2rem);line-height:1}.brand-block h1 strong{color:var(--emerald);font-weight:800}.brand-block p{color:var(--muted);margin:6px 0 0;font-size:.77rem}.course-chip{color:var(--emerald-dark);background:#ffffff8c;border:1px solid #28b8d573;border-radius:12px;justify-self:center;align-items:center;gap:10px;padding:10px 15px;display:flex}.course-chip span{text-transform:uppercase;letter-spacing:.08em;background:#28b8d51f;border-radius:6px;padding:4px 7px;font-size:.65rem;font-weight:800}.course-chip strong{font-size:.78rem}.system-status{border:1px solid var(--line);background:#ffffffb3;border-radius:12px;align-items:center;gap:10px;padding:9px 12px;display:flex}.system-status div{flex-direction:column;display:flex}.system-status small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.62rem}.system-status strong{font-size:.78rem}.status-dot{background:#9eb4b8;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 5px #9eb4b821}.status-dot.is-running{background:var(--emerald);animation:1.5s infinite statusPulse;box-shadow:0 0 0 5px #0faf8324}.system-status.has-alarm{background:#fff6f3;border-color:#dc5a4559}.status-dot.has-alarm{background:var(--danger);animation:1.2s infinite statusPulse;box-shadow:0 0 0 5px #dc5a4521}.view-tabs{border:1px solid var(--line);background:#ffffff94;border-radius:16px;grid-template-columns:repeat(6,1fr);gap:7px;margin-bottom:12px;padding:5px;display:grid}.view-tabs button{color:#668188;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;min-height:46px;transition:all .2s;display:flex}.view-tabs button:hover{color:var(--ink);background:#ffffffc7}.view-tabs button>span{background:#e5f3f4;border-radius:8px;place-items:center;width:25px;height:25px;font-size:.58rem;font-weight:800;display:grid}.view-tabs button div{text-align:left}.view-tabs strong,.view-tabs small{display:block}.view-tabs strong{font-size:.74rem}.view-tabs small{margin-top:1px;font-size:.55rem}.view-tabs button.active{color:#fff;background:var(--emerald-dark);box-shadow:0 7px 18px #075b5f2b}.view-tabs button.active>span{color:var(--emerald-dark);background:#fff}.view-tabs button.active small{color:#ffffffad}.architecture-panel{border:1px solid var(--line);background:#ffffffa6;border-radius:18px;grid-template-columns:220px 1fr;align-items:center;gap:20px;padding:10px;display:grid;box-shadow:0 12px 30px #125f690d}.section-label{align-items:center;gap:11px;padding-left:8px;display:flex}.section-label>span{width:34px;height:34px;color:var(--emerald-dark);background:#def4f3;border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid}.section-label div{flex-direction:column;display:flex}.section-label small{color:var(--emerald);letter-spacing:.12em;font-size:.58rem;font-weight:800}.section-label strong{font-size:.83rem}.configuration-controls{grid-template-columns:minmax(260px,.72fr) minmax(420px,1fr);gap:8px;display:grid}.scale-switch{background:#eff8f9cc;border:1px solid #d8e9ed;border-radius:13px;grid-template-columns:repeat(2,1fr);gap:5px;padding:4px;display:grid}.scale-switch button{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:8px 10px}.scale-switch strong,.scale-switch small{display:block}.scale-switch strong{font-size:.66rem}.scale-switch small{color:var(--muted);margin-top:2px;font-size:.49rem}.scale-switch button.active{color:#fff;background:linear-gradient(135deg,#398fca,#21659d);box-shadow:0 8px 20px #205c9629}.scale-switch button.active small{color:#ffffffbd}.architecture-switch{background:#eff8f9cc;border:1px solid #d8e9ed;border-radius:13px;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;display:grid}.architecture-switch button{cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 14px;transition:all .2s}.architecture-switch button span,.architecture-switch button strong{display:block}.architecture-switch button span{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem;font-weight:700}.architecture-switch button strong{margin-top:2px;font-size:.82rem}.architecture-switch button:hover{background:#fffc}.architecture-switch button.active{color:#fff;background:linear-gradient(135deg,#0faf83,#0b8e7d);box-shadow:0 8px 20px #0faf8333}.architecture-switch button.active span{color:#ffffffb8}.architecture-switch button:disabled{opacity:.38;cursor:not-allowed}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin:16px 0;display:grid}.kpi-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;align-items:center;gap:14px;min-width:0;padding:17px;display:flex;box-shadow:0 10px 26px #1a5c650f}.kpi-icon{border-radius:15px;flex:none;place-items:center;width:48px;height:48px;display:grid}.kpi-icon svg{width:32px;height:32px}.kpi-card.solar .kpi-icon{color:#ca8a04;background:#fff7db}.kpi-card.load .kpi-icon{color:#168ca6;background:#e2f7fb}.kpi-card.battery .kpi-icon{color:#0b946f;background:#e3f7ef}.kpi-card.grid .kpi-icon{color:#3d65aa;background:#eaf0fb}.kpi-card>div:last-child{min-width:0}.kpi-card span,.kpi-card small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.kpi-card span{color:var(--muted);font-size:.7rem;font-weight:700}.kpi-card strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:2px 0 1px;font-size:clamp(1.35rem,2vw,2rem);line-height:1;display:block}.kpi-card small{color:#789095;font-size:.62rem}.workspace-grid{grid-template-columns:minmax(0,1fr) 370px;gap:16px;display:grid}.energy-card,.control-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:22px}.energy-card{min-width:0;padding:20px}.control-card{padding:20px}.card-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.card-heading.compact{align-items:center}.eyebrow{color:var(--emerald);letter-spacing:.13em;font-size:.58rem;font-weight:800}.card-heading h2{letter-spacing:-.025em;margin:2px 0 0;font-size:1.15rem}.sim-clock{text-align:right}.sim-clock span{color:var(--muted);font-size:.63rem;display:block}.sim-clock strong{font-variant-numeric:tabular-nums;font-size:1rem}.reset-button{border:1px solid var(--line);cursor:pointer;width:34px;height:34px;color:var(--emerald-dark);background:#fff;border-radius:10px;font-size:1.2rem}.solar-context{background:linear-gradient(#eaf9fd,#f8fcf8);border:1px solid #d7e9ec;border-radius:15px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:14px;margin-bottom:12px;padding:10px 12px;transition:background .3s;display:grid}.solar-context.is-night{background:linear-gradient(#e8eef5,#f5f8fa)}.sun-arc{border-bottom:1px solid #abcfd5;min-height:64px;position:relative;overflow:hidden}.sun-arc>i{border:1px dashed #1c8fa059;border-bottom:0;border-radius:50% 50% 0 0;height:94px;position:absolute;bottom:-47px;left:6%;right:6%}.sun-marker{z-index:2;color:#d89500;background:#fff6c9;border-radius:50%;place-items:center;width:26px;height:26px;margin:0 0 -13px -13px;font-size:1rem;transition:left .25s,bottom .25s,opacity .25s;display:grid;position:absolute;box-shadow:0 0 20px #f4b71b7a}.solar-context.is-night .sun-marker{opacity:.28;filter:grayscale()}.sun-arc small{color:#69858b;font-variant-numeric:tabular-nums;font-size:.53rem;font-weight:800;position:absolute;bottom:3px}.sun-arc small em{color:#9aadb1;margin-top:1px;font-size:.42rem;font-style:normal;font-weight:600;display:block}.sunrise-label{text-align:left;left:0}.noon-label{text-align:center;left:50%;transform:translate(-50%)}.sunset-label{text-align:right;right:0}.solar-readings{grid-template-columns:repeat(3,minmax(72px,1fr));gap:6px;display:grid}.solar-readings div{background:#ffffffad;border-radius:9px;flex-direction:column;justify-content:center;padding:7px 9px;display:flex}.solar-readings span{color:var(--muted);font-size:.49rem}.solar-readings strong{white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:2px;font-size:.66rem}.energy-map{background:radial-gradient(circle at 50% 45%,#0faf8314,#0000 30%),linear-gradient(#28b8d506 1px,#0000 1px) 0 0/26px 26px,linear-gradient(90deg,#28b8d506 1px,#0000 1px) 0 0/26px 26px,#f9fdfd;border:1px solid #d6ebef;border-radius:18px;min-height:390px;position:relative;overflow:hidden}.energy-map:after{content:"FLUXO EM TEMPO REAL";color:#97adb2;letter-spacing:.12em;font-size:.55rem;font-weight:800;position:absolute;bottom:14px;left:18px}.map-node{z-index:3;background:#fffffff0;border:1px solid #bfe0e7;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;width:116px;min-height:112px;padding:10px;transition:all .3s;display:flex;position:absolute;box-shadow:0 12px 28px #1a5c6514}.map-node .node-icon{width:42px;height:42px;color:var(--emerald-dark)}.map-node svg{width:100%;height:100%}.map-node span{color:var(--muted);margin-top:2px;font-size:.66rem;font-weight:700}.map-node strong{font-variant-numeric:tabular-nums;margin-top:1px;font-size:.82rem}.map-node.is-disabled{opacity:.34;filter:grayscale(.8)}.node-solar{top:33%;left:4%}.node-inverter{top:15%;left:42%}.node-load{top:15%;right:4%}.node-battery{bottom:8%;left:42%}.node-grid{bottom:8%;right:4%}.node-solar .node-icon{color:#d5980a}.node-grid .node-icon{color:#3d65aa}.flow{z-index:1;color:#178ea5;background:#b8dfe7;border-radius:10px;height:6px;transition:opacity .25s,background .25s;position:absolute}.flow i{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.flow i:after{content:"";opacity:0;will-change:left, top;background:#fff;border:4px solid;border-radius:50%;width:16px;height:16px;position:absolute;top:50%;left:-20px;transform:translateY(-50%);box-shadow:0 0 12px}.energy-map.is-running .flow:not(.is-disabled):not(.is-zero) i:after{opacity:1;animation:1.6s linear infinite energyTravel}.flow span{white-space:nowrap;background:#fff;border:1px solid #d6e8ec;border-radius:6px;padding:3px 7px;font-size:.62rem;font-weight:800;position:absolute;top:-25px;left:50%;transform:translate(-50%)}.flow.is-disabled{opacity:.12}.flow.is-reverse i:after{animation-direction:reverse!important}.flow-solar{color:#e5a813;background:linear-gradient(90deg,#f5c842,#f1ad13);top:calc(33% + 54px);left:calc(4% + 116px);right:52%}.flow-load{color:var(--emerald);background:linear-gradient(90deg,#35c195,#0faf83);top:calc(15% + 54px);left:calc(42% + 116px);right:calc(4% + 116px)}.flow-battery{width:6px;height:auto;color:var(--emerald);background:#51c99f;top:calc(15% + 112px);bottom:calc(8% + 112px);left:calc(42% + 55px)}.flow-battery i:after{top:-20px;left:50%;transform:translate(-50%)}.energy-map.is-running .flow-battery:not(.is-disabled):not(.is-zero) i:after{animation-name:energyTravelVertical}.flow-battery span{top:50%;left:14px;transform:translateY(-50%)}.flow-grid{width:6px;height:auto;color:var(--cyan);background:var(--cyan);top:calc(15% + 112px);bottom:calc(8% + 112px);right:calc(4% + 55px)}.flow-grid i:after{top:-20px;left:50%;transform:translate(-50%)}.energy-map.is-running .flow-grid:not(.is-disabled):not(.is-zero) i:after{animation-name:energyTravelVertical}.flow-grid span{top:50%;left:auto;right:14px;transform:translateY(-50%)}.flow.is-zero{color:#8aa0a5;background:#d8e4e6}.flow.is-zero i:after{opacity:0;animation:none}.flow.is-zero span{color:#61787d;border-color:#d8e4e6}.map-summary{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;display:grid}.map-summary>div{background:#edf8f8;border-radius:11px;padding:9px 12px}.map-summary span{color:var(--muted);font-size:.6rem;display:block}.map-summary strong{font-variant-numeric:tabular-nums;font-size:.78rem}.control-group{border-bottom:1px solid #dcebee;padding:15px 0;display:block}.control-group>div{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.control-group span{font-size:.73rem;font-weight:700}.control-group strong{font-variant-numeric:tabular-nums;font-size:.82rem}.control-group input[type=range]{--range:50%;appearance:none;background:linear-gradient(90deg, var(--emerald) var(--range), #d8e9ed var(--range));border-radius:10px;outline:none;width:100%;height:5px;margin:15px 0 4px}.control-group input[type=range]::-webkit-slider-thumb{appearance:none;border:4px solid var(--emerald);cursor:pointer;background:#fff;border-radius:50%;width:17px;height:17px;box-shadow:0 2px 8px #075b5f40}.control-group input[type=range]::-moz-range-thumb{border:4px solid var(--emerald);cursor:pointer;background:#fff;border-radius:50%;width:11px;height:11px;box-shadow:0 2px 8px #075b5f40}.control-group small{color:#90a4a8;justify-content:space-between;font-size:.56rem;display:flex}.control-group.compact-control{padding-bottom:10px}.date-control input[type=date]{width:100%;color:var(--ink);background:#fff;border:1px solid #cfe3e7;border-radius:9px;outline:0;margin-top:9px;padding:8px 10px;font-size:.68rem;font-weight:700}.date-control input[type=date]:focus{border-color:var(--emerald);box-shadow:0 0 0 3px #0faf831a}.weather-readout{grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0 0;display:grid}.weather-readout div{background:#edf8f8;border-radius:9px;padding:8px}.weather-readout span,.weather-readout strong{display:block}.weather-readout span{min-height:24px;color:var(--muted);font-size:.49rem;line-height:1.25}.weather-readout strong{font-variant-numeric:tabular-nums;margin-top:2px;font-size:.61rem}.operation-note{background:#eaf7f4;border-radius:12px;gap:10px;margin:14px 0;padding:11px;display:flex}.note-icon{background:var(--emerald);color:#fff;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:.68rem;font-weight:800;display:grid}.operation-note p{color:#53747a;margin:0;font-size:.64rem;line-height:1.45}.operation-note p strong{color:var(--emerald-dark);margin-bottom:2px;display:block}.solar-source{color:#8aa0a5;margin:-6px 0 12px;font-size:.5rem;line-height:1.4}.primary-action{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0faf83,#078a7a);border:0;border-radius:14px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:58px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 12px 24px #0faf8338}.primary-action:hover{transform:translateY(-1px);box-shadow:0 15px 30px #0faf8347}.primary-action.is-paused{background:linear-gradient(135deg,#168da0,#0a7080)}.action-icon{border:1px solid #ffffff8c;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.75rem;display:grid}.primary-action>span:last-child{text-align:left}.primary-action small,.primary-action strong{display:block}.primary-action small{color:#ffffffb8;letter-spacing:.11em;font-size:.52rem}.primary-action strong{font-size:.82rem}.primary-action:disabled{opacity:.56;cursor:not-allowed;box-shadow:none;transform:none}.panel-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:22px}.section-intro{color:var(--muted);margin:-2px 0 16px;font-size:.71rem;line-height:1.55}.learning-strip{background:linear-gradient(100deg,#e5f8f3e6,#eff9fcd9);border:1px solid #bfe3dd;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin:12px 0 0;padding:10px 14px;display:flex}.learning-strip>div{align-items:center;gap:11px;min-width:0;display:flex}.learning-strip p,.learning-strip strong,.learning-strip small{margin:0;display:block}.learning-strip strong{font-size:.72rem}.learning-strip small{color:var(--muted);margin-top:2px;font-size:.55rem}.learning-strip button{color:var(--emerald-dark);cursor:pointer;background:#fff;border:1px solid #a8d8d0;border-radius:9px;flex:none;padding:7px 10px;font-size:.59rem;font-weight:800}.level-badge{text-transform:uppercase;letter-spacing:.07em;border-radius:8px;justify-content:center;align-items:center;min-width:55px;padding:5px 8px;font-size:.55rem;font-weight:900;display:inline-flex}.level-sa1{color:#08765c;background:#dff6ec}.level-sa2{color:#886000;background:#fff0bd}.level-sa3{color:#a53b2c;background:#ffe2dc}.learning-workspace{grid-template-columns:310px minmax(0,1fr);gap:16px;display:grid}.scenario-catalog,.scenario-brief{padding:20px}.scenario-list{gap:9px;display:grid}.capacity-strip{flex-wrap:wrap;gap:7px;margin:12px 0;display:flex}.capacity-strip strong{width:100%;color:var(--ink);font-size:.66rem}.capacity-strip span{color:#35666c;background:#edf7f7;border-radius:999px;padding:6px 9px;font-size:.56rem;font-weight:700}.automatic-events{background:#f6fbfb;border:1px solid #d6e8e9;border-radius:13px;margin-top:12px;padding:12px}.automatic-events div{justify-content:space-between;gap:8px;display:flex}.automatic-events span,.automatic-events small{color:var(--muted);font-size:.54rem}.automatic-events strong{font-size:.63rem}.automatic-events p{border-top:1px solid #dceced;margin:7px 0 0;padding-top:7px;font-size:.59rem}.automatic-events b{color:var(--emerald-dark);margin-right:7px}.automatic-events p>span{color:#8b5c0a;text-transform:uppercase;background:#fff0c7;border-radius:999px;margin-right:6px;padding:2px 5px;font-weight:900}.checkpoint-callout{background:linear-gradient(135deg,#fff9e6,#fffdf5);border:1px solid #e4b84f;border-radius:13px;margin-top:12px;padding:13px}.checkpoint-callout span,.checkpoint-callout strong{display:block}.checkpoint-callout span{color:#95680e;letter-spacing:.08em;font-size:.51rem;font-weight:900}.checkpoint-callout strong{margin-top:4px;font-size:.7rem}.checkpoint-callout p{color:#776744;margin:4px 0 9px;font-size:.56rem;line-height:1.4}.checkpoint-callout button{color:#fff;cursor:pointer;background:#a77712;border:0;border-radius:9px;width:100%;padding:9px;font-size:.58rem;font-weight:900}.pace-control{margin:3px 0 12px}.pace-control>div:first-child{justify-content:space-between;margin-bottom:7px;font-size:.62rem;display:flex}.pace-control>div:first-child span{color:var(--muted)}.pace-buttons{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.pace-buttons button{color:var(--ink);cursor:pointer;background:#f8fbfb;border:1px solid #d4e5e7;border-radius:10px;padding:8px 5px}.pace-buttons button.active{border-color:var(--emerald);color:var(--emerald-dark);box-shadow:inset 0 0 0 1px var(--emerald);background:#eaf8f5}.pace-buttons b,.pace-buttons small{display:block}.pace-buttons b{font-size:.56rem}.pace-buttons small{color:var(--muted);margin-top:2px;font-size:.45rem;line-height:1.25}.pace-control>p{color:var(--muted);margin:6px 0 0;font-size:.52rem;line-height:1.35}.scenario-list button{width:100%;min-height:72px;color:var(--ink);text-align:left;cursor:pointer;background:#fbfefe;border:1px solid #d5e8eb;border-radius:13px;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:11px;display:grid}.scenario-list button>span{width:38px;height:38px;color:var(--emerald-dark);background:#e4f5f2;border-radius:11px;place-items:center;font-size:.67rem;font-weight:900;display:grid}.scenario-list button strong,.scenario-list button small{display:block}.scenario-list button strong{font-size:.68rem;line-height:1.25}.scenario-list button small{color:var(--muted);margin-top:3px;font-size:.55rem}.scenario-list button em{color:#82989d;font-size:.56rem;font-style:normal;font-weight:800}.scenario-list button.active{border-color:var(--emerald);background:#eefaf7;box-shadow:0 9px 22px #0faf831a}.scenario-list button.active>span{color:#fff;background:var(--emerald)}.scenario-title-row{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.scenario-title-row h2{margin:9px 0 2px;font-size:1.35rem}.scenario-title-row p{color:var(--muted);margin:0;font-size:.63rem}.scenario-start{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0faf83,#08746c);border:0;border-radius:12px;padding:12px 15px;font-size:.65rem;font-weight:800;box-shadow:0 9px 20px #0faf832e}.challenge-card{border-left:4px solid var(--solar);background:#fff9e7;border-radius:11px;margin:17px 0;padding:15px 17px}.challenge-card span{color:#9d7300;letter-spacing:.1em;font-size:.54rem;font-weight:900}.challenge-card p{color:#5c664f;margin:5px 0 0;font-size:.72rem;line-height:1.55}.scenario-columns{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:22px;display:grid}.scenario-columns h3{margin:0 0 10px;font-size:.78rem}.mission-checklist{gap:7px;display:grid}.mission-checklist label{cursor:pointer;background:#fbfefe;border:1px solid #dcebed;border-radius:10px;grid-template-columns:auto 25px 1fr;align-items:center;gap:8px;min-height:43px;padding:8px 10px;display:grid}.mission-checklist input{accent-color:var(--emerald)}.mission-checklist label>span{width:23px;height:23px;color:var(--emerald-dark);background:#e4f5f1;border-radius:50%;place-items:center;font-size:.57rem;font-weight:900;display:grid}.mission-checklist p{color:#55747a;margin:0;font-size:.62rem;line-height:1.35}.mission-checklist input:checked~p{color:#819599;text-decoration:line-through}.scenario-side{background:#eff8f8;border-radius:13px;padding:14px}.scenario-side>p{color:#58747a;margin:-3px 0 17px;font-size:.64rem;line-height:1.5}.scenario-side ul{margin:0 0 17px;padding-left:17px}.scenario-side li{color:#58747a;margin:7px 0;font-size:.61rem;line-height:1.35}.scenario-parameters{border-top:1px solid #d0e5e6;padding-top:12px}.scenario-parameters span,.scenario-parameters strong,.scenario-parameters small{display:block}.scenario-parameters span{color:var(--emerald);letter-spacing:.08em;text-transform:uppercase;font-size:.52rem;font-weight:900}.scenario-parameters strong{margin-top:5px;font-size:.66rem}.scenario-parameters small{color:var(--muted);margin-top:4px;font-size:.55rem;line-height:1.4}.material-downloads{border-top:1px solid #d0e5e6;gap:6px;margin-top:14px;padding-top:12px;display:grid}.material-downloads h3{margin-bottom:2px}.material-downloads a{color:#245f82;background:#fff;border:1px solid #cfe1e7;border-radius:9px;padding:8px 9px;text-decoration:none;display:block}.material-downloads a:hover{background:#f5fbff;border-color:#398fca}.material-downloads strong,.material-downloads small{display:block}.material-downloads strong{font-size:.59rem}.material-downloads small{color:var(--muted);margin-top:2px;font-size:.49rem}.material-word-downloads{flex-wrap:wrap;align-items:center;gap:5px;padding-top:3px;display:flex}.material-word-downloads>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-right:2px;font-size:.49rem;font-weight:800}.material-downloads .material-word-downloads a{border-radius:7px;padding:5px 7px;font-size:.49rem;font-weight:850;display:inline-flex}.fault-workspace{grid-template-columns:minmax(0,1.3fr) minmax(360px,.7fr);gap:16px;display:grid}.fault-catalog,.diagnostic-panel{padding:20px}.clear-fault{color:var(--emerald-dark);cursor:pointer;background:#fff;border:1px solid #b9dcd9;border-radius:10px;padding:8px 11px;font-size:.66rem;font-weight:800}.clear-fault:disabled{opacity:.42;cursor:not-allowed}.fault-list{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.fault-option{text-align:left;cursor:pointer;background:#fbfefe;border:1px solid #d6e9ec;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-width:0;min-height:66px;padding:11px;transition:all .2s;display:grid}.fault-option:hover:not(:disabled){border-color:#7fcfc6;transform:translateY(-1px)}.fault-option.active{background:#fff6f3;border-color:#db6c55;box-shadow:0 8px 20px #dc5a451a}.fault-option:disabled{opacity:.45;cursor:not-allowed}.fault-option .severity{border-radius:9px;place-items:center;width:30px;height:30px;font-size:.8rem;font-style:normal;font-weight:900;display:grid}.severity.warning{color:#9b6900;background:#fff3cd}.severity.critical{color:#b23b28;background:#ffe3dc}.fault-option strong,.fault-option small{display:block}.fault-option strong{font-size:.72rem}.fault-option small{color:var(--muted);margin-top:3px;font-size:.58rem}.fault-option em{color:#80979c;text-transform:uppercase;letter-spacing:.06em;font-size:.54rem;font-style:normal;font-weight:800}.diagnostic-panel{min-height:480px}.diagnostic-header{border-bottom:1px solid #e0ecee;padding-bottom:16px}.alarm-badge{text-transform:uppercase;letter-spacing:.09em;border-radius:7px;padding:5px 8px;font-size:.56rem;font-weight:900;display:inline-flex}.alarm-badge.warning{color:#875b00;background:#fff0bf}.alarm-badge.critical{color:#a53322;background:#ffe0d8}.diagnostic-header>small{color:#8ba0a4;letter-spacing:.07em;margin-left:8px;font-size:.56rem;font-weight:800}.diagnostic-header h2{margin:12px 0 2px;font-size:1.2rem}.diagnostic-header p{color:var(--muted);margin:0;font-size:.68rem}.diagnostic-metrics{grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0;display:grid}.diagnostic-metrics div{background:#eef7f7;border-radius:10px;padding:10px}.diagnostic-metrics span,.diagnostic-metrics strong{display:block}.diagnostic-metrics span{color:var(--muted);font-size:.55rem}.diagnostic-metrics strong{margin-top:2px;font-size:.75rem}.mission-diagnosis{gap:10px;display:grid}.mission-diagnosis label>span,.mission-diagnosis legend{color:#4f6f75;margin-bottom:5px;font-size:.57rem;font-weight:900;display:block}.mission-diagnosis textarea,.mission-diagnosis select{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #c9dfe5;border-radius:9px;padding:9px;font-size:.62rem}.mission-diagnosis textarea{resize:vertical;min-height:70px}.mission-diagnosis fieldset{border:0;grid-template-columns:repeat(2,1fr);gap:6px;margin:0;padding:0;display:grid}.mission-diagnosis fieldset legend{grid-column:1/-1}.mission-diagnosis fieldset button{color:#496d79;cursor:pointer;background:#f7fbfc;border:1px solid #c9dfe5;border-radius:9px;padding:8px;font-size:.58rem;font-weight:900}.mission-diagnosis fieldset button.active{color:#fff;background:#2f79ab;border-color:#2f79ab}.diagnosis-submit,.return-operation{color:#fff;cursor:pointer;background:linear-gradient(135deg,#398fca,#21659d);border:0;border-radius:10px;width:100%;padding:10px;font-size:.62rem;font-weight:900}.diagnosis-feedback{color:#2c6553;background:#eaf8f2;border-left:3px solid #2e9b74;border-radius:8px;margin:0;padding:9px;font-size:.58rem;line-height:1.45}.diagnosis-feedback.unsafe{color:#8e392c;background:#fff0ed;border-left-color:#c84e3a}.return-operation{margin-top:10px}.diagnostic-step{border-bottom:1px solid #e2edef;align-items:flex-start;gap:10px;padding:11px 0;display:flex}.diagnostic-step>span{width:24px;height:24px;color:var(--emerald-dark);background:#e0f4f0;border-radius:50%;flex:none;place-items:center;font-size:.6rem;font-weight:900;display:grid}.diagnostic-step small{color:var(--emerald);letter-spacing:.08em;font-size:.54rem;font-weight:900}.diagnostic-step p{color:#4f6f75;margin:4px 0 0;font-size:.65rem;line-height:1.5}.diagnostic-step.recommended{border:0}.safety-alert{background:#fff9e8;border-left:3px solid #edb925;border-radius:8px;margin-top:8px;padding:11px}.safety-alert strong{font-size:.65rem}.safety-alert p{color:#796b3f;margin:3px 0 0;font-size:.59rem;line-height:1.45}.diagnostic-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;display:flex}.diagnostic-empty>span{color:#fff;background:var(--emerald);border-radius:50%;place-items:center;width:58px;height:58px;font-size:1.4rem;display:grid;box-shadow:0 12px 30px #0faf8338}.diagnostic-empty h2{margin:18px 0 6px;font-size:1.15rem}.diagnostic-empty p{max-width:300px;color:var(--muted);margin:0;font-size:.7rem;line-height:1.55}.diagnostic-empty ul{text-align:left;margin:18px 0 0;padding:0;list-style:none}.diagnostic-empty li{color:#5f7f84;margin:6px 0;font-size:.65rem}.diagnostic-empty li:before{content:"✓";color:var(--emerald);margin-right:7px;font-weight:900}.prodist-workspace{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;display:grid}.prodist-live,.prodist-controls{padding:20px}.prodist-connection{background:#f1f6f6;border-left:4px solid #83999d;border-radius:12px;align-items:center;gap:12px;margin:12px 0;padding:13px 14px;display:flex}.prodist-connection>span{color:#fff;background:#82979b;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-weight:900;display:grid}.prodist-connection small,.prodist-connection strong{display:block}.prodist-connection small{color:#71888d;letter-spacing:.09em;font-size:.52rem;font-weight:900}.prodist-connection strong{margin-top:2px;font-size:.84rem}.prodist-connection p{color:#5e777c;margin:3px 0 0;font-size:.61rem;line-height:1.45}.prodist-connection.is-adequate{background:#e9f7f2;border-color:#159d78}.prodist-connection.is-adequate>span{background:#159d78}.prodist-connection.is-warning{background:#fff8e5;border-color:#d3a026}.prodist-connection.is-warning>span{background:#d3a026}.prodist-connection.is-critical{border-color:var(--danger);background:#fff1ee}.prodist-connection.is-critical>span{background:var(--danger)}.prodist-connection.is-not-applicable{background:#f0f4f5;border-color:#82979b}.prodist-quality-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.quality-card{background:#fbfefe;border:1px solid #dbe8ea;border-top:3px solid #8aa0a5;border-radius:12px;min-width:0;padding:12px}.quality-card>span,.quality-card strong,.quality-card em,.quality-card small{display:block}.quality-card>span{color:var(--muted);font-size:.56rem;font-weight:700}.quality-card strong{font-variant-numeric:tabular-nums;margin:5px 0 3px;font-size:1.05rem}.quality-card em{color:#567176;text-transform:uppercase;font-size:.57rem;font-style:normal;font-weight:900}.quality-card small{color:#84999d;min-height:2.5em;margin-top:4px;font-size:.5rem;line-height:1.35}.quality-card.is-adequate{border-top-color:#159d78}.quality-card.is-warning{background:#fffdf6;border-top-color:#d3a026}.quality-card.is-critical{border-top-color:var(--danger);background:#fff8f6}.bidirectional-meter{background:linear-gradient(135deg,#edf8f8,#f8fbfd);border:1px solid #d5e6e9;border-radius:14px;margin-top:12px;padding:14px}.meter-heading{align-items:center;gap:10px;display:flex}.meter-heading>span{width:34px;height:34px;color:var(--emerald-dark);background:#fff;border-radius:10px;place-items:center;font-size:1.15rem;display:grid}.meter-heading small,.meter-heading strong{display:block}.meter-heading small{color:var(--emerald);letter-spacing:.1em;font-size:.5rem;font-weight:900}.meter-heading strong{margin-top:2px;font-size:.72rem}.meter-values{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px;display:grid}.meter-values div{background:#fffc;border-radius:9px;padding:9px 10px}.meter-values span,.meter-values strong{display:block}.meter-values span{color:var(--muted);font-size:.52rem}.meter-values strong{font-variant-numeric:tabular-nums;margin-top:3px;font-size:.76rem}.bidirectional-meter>p{color:#71898e;margin:9px 0 0;font-size:.53rem;line-height:1.45}.prodist-reference{border-left:3px solid var(--emerald);background:#f0f8f7;border-radius:9px;margin-top:12px;padding:12px 14px}.prodist-reference>strong{font-size:.65rem}.prodist-reference ul{margin:7px 0;padding-left:17px}.prodist-reference li{color:#5b767b;margin:5px 0;font-size:.57rem;line-height:1.45}.prodist-reference a{color:var(--emerald-dark);font-size:.58rem;font-weight:800}.prodist-presets{grid-template-columns:repeat(2,1fr);gap:7px;margin:12px 0;display:grid}.prodist-presets button{min-height:38px;color:var(--emerald-dark);cursor:pointer;background:#f5fbfb;border:1px solid #c9e0e4;border-radius:10px;padding:8px;font-size:.56rem;font-weight:900}.prodist-presets button:hover:not(:disabled){color:#fff;border-color:var(--emerald);background:var(--emerald)}.prodist-presets button:disabled{opacity:.48;cursor:not-allowed}.prodist-controls .control-group{margin-top:12px}.prodist-mission{color:#5d4b20;background:#fff8df;border-radius:12px;margin-top:15px;padding:13px}.prodist-mission span,.prodist-mission strong{display:block}.prodist-mission span{color:#a4780b;letter-spacing:.1em;font-size:.49rem;font-weight:900}.prodist-mission strong{margin-top:5px;font-size:.67rem;line-height:1.4}.prodist-mission p{margin:5px 0 0;font-size:.56rem;line-height:1.48}.prodist-report-summary{margin-bottom:16px}.wind-mode .prodist-reference{background:#eef6fb}.wind-mode .prodist-mission{color:#315b75;background:#edf7fd}.analysis-workspace{grid-template-columns:330px minmax(0,1fr);gap:16px;display:grid}.analysis-inputs,.analysis-results{padding:20px}.number-field{border-bottom:1px solid #e1edef;padding:11px 0;display:block}.number-field>span{color:#58777d;margin-bottom:6px;font-size:.64rem;font-weight:700;display:block}.number-field>div{background:#fff;border:1px solid #cfe3e7;border-radius:10px;display:flex;overflow:hidden}.number-field input{width:100%;min-width:0;color:var(--ink);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;padding:8px 10px;font-weight:800}.number-field em{color:#708b90;white-space:nowrap;background:#f3f9f9;border-left:1px solid #dcebed;align-items:center;padding:0 9px;font-size:.58rem;font-style:normal;display:flex}.method-note{background:#e9f6f4;border-radius:11px;margin-top:14px;padding:11px}.method-note strong{color:var(--emerald-dark);font-size:.64rem}.method-note p{color:#5f7d82;margin:3px 0 0;font-size:.58rem;line-height:1.5}.architecture-pill{color:var(--emerald-dark);background:#e5f5f1;border-radius:8px;padding:6px 9px;font-size:.6rem;font-weight:800}.result-grid{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.result-grid>div{background:#fbfefe;border:1px solid #d9eaec;border-radius:13px;padding:13px}.result-grid span,.result-grid strong,.result-grid small{display:block}.result-grid span{color:var(--muted);font-size:.59rem}.result-grid strong{letter-spacing:-.03em;margin:5px 0 2px;font-size:clamp(.95rem,1.7vw,1.35rem)}.result-grid small{color:#8ba0a4;font-size:.53rem}.result-grid .highlight{color:#fff;background:linear-gradient(135deg,#0faf83,#087d74);border-color:#0000}.result-grid .highlight span,.result-grid .highlight small{color:#ffffffb8}.generation-chart{background:#eff8f8;border-radius:14px;margin-top:14px;padding:15px}.chart-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chart-heading div strong,.chart-heading div span{display:block}.chart-heading div strong{font-size:.73rem}.chart-heading div span{color:var(--muted);margin-top:2px;font-size:.58rem}.chart-heading>strong{color:var(--emerald-dark);font-size:.72rem}.bar-chart{border-bottom:1px solid #bad9dc;grid-template-columns:repeat(12,1fr);align-items:end;gap:8px;height:178px;margin-top:14px;padding-top:15px;display:grid}.bar-column{flex-direction:column;justify-content:flex-end;align-items:stretch;gap:5px;height:100%;display:flex}.bar-column>span{background:linear-gradient(#24c19a,#0c947c);border-radius:6px 6px 2px 2px;min-height:8px;box-shadow:0 4px 10px #0faf8321}.bar-column small{color:#6f888d;text-align:center;font-size:.46rem}.technical-strip{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.technical-strip div{background:#f6fbfb;border:1px solid #e0edef;border-radius:10px;padding:10px 12px}.technical-strip span,.technical-strip strong{display:block}.technical-strip span{color:var(--muted);font-size:.56rem}.technical-strip strong{margin-top:3px;font-size:.76rem}.chart-footnote{color:#8ba0a4;margin:8px 0 0;font-size:.5rem}.report-workspace{padding:24px}.report-toolbar{border-bottom:1px solid #d9e9ec;justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;display:flex}.report-toolbar h2{margin:3px 0 2px;font-size:1.25rem}.report-toolbar p{color:var(--muted);margin:0;font-size:.67rem}.report-toolbar button{color:#fff;background:var(--emerald-dark);cursor:pointer;border:0;border-radius:12px;align-items:center;gap:8px;padding:11px 14px;font-size:.68rem;font-weight:800;display:flex}.print-title{display:none}.report-meta{grid-template-columns:2fr .7fr 1.3fr .8fr;gap:9px;margin:16px 0;display:grid}.report-meta div,.report-table div{background:#eef8f8;border-radius:10px;padding:10px 12px}.report-meta span,.report-meta strong,.report-table span,.report-table strong{display:block}.report-meta span,.report-table span{color:var(--muted);font-size:.55rem}.report-meta strong,.report-table strong{margin-top:3px;font-size:.68rem}.report-section{border-top:1px solid #dfecee;padding:13px 0}.report-section h3{margin:0 0 10px;font-size:.78rem}.report-table{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.report-two-column{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.report-alarm{border-left:3px solid var(--danger);background:#fff4f1;border-radius:9px;padding:12px}.report-alarm strong{font-size:.7rem}.report-alarm p,.report-alarm span{color:#765f5b;margin:4px 0 0;font-size:.6rem;line-height:1.45;display:block}.report-ok{color:#16765f;background:#e7f7f1;border-radius:9px;padding:12px;font-size:.66rem;font-weight:700}.checklist{columns:2;margin:0;padding:0;list-style:none}.checklist li{break-inside:avoid;color:#58767c;margin:0 0 7px;font-size:.61rem}.checklist li:before{content:"□";color:var(--emerald);margin-right:6px;font-size:.8rem}.report-section textarea{resize:vertical;width:100%;min-height:90px;color:var(--ink);background:#fbfefe;border:1px solid #cedfe2;border-radius:11px;outline:0;padding:11px;font-size:.67rem;line-height:1.5}.report-section textarea:focus{border-color:var(--emerald);box-shadow:0 0 0 3px #0faf831a}.report-footer{color:#82999e;border-top:1px solid #dfecee;justify-content:space-between;gap:18px;padding-top:13px;font-size:.52rem;display:flex}.renewable-platform{min-height:100vh}.energy-source-selector{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #6f9faa47;border-top:0;border-radius:0 0 18px 18px;justify-content:space-between;align-items:center;gap:18px;width:min(1540px,100% - 32px);margin:0 auto;padding:12px clamp(12px,2vw,24px);display:flex;box-shadow:0 10px 28px #13515c0f}.energy-source-selector>div:first-child span,.energy-source-selector>div:first-child strong{display:block}.energy-source-selector>div:first-child span{color:#718b91;letter-spacing:.13em;font-size:.52rem;font-weight:900}.energy-source-selector>div:first-child strong{color:var(--ink);margin-top:3px;font-size:.74rem}.energy-source-buttons{background:#edf6f7;border:1px solid #d3e5e9;border-radius:14px;grid-template-columns:repeat(2,minmax(128px,1fr));gap:6px;padding:4px;display:grid}.energy-source-buttons button{color:#648087;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:9px;min-width:0;padding:8px 12px;display:flex}.energy-source-buttons button>span{background:#ffffffbf;border-radius:8px;place-items:center;width:27px;height:27px;font-size:1rem;display:grid}.energy-source-buttons button small,.energy-source-buttons button strong{display:block}.energy-source-buttons button small{letter-spacing:.1em;font-size:.46rem}.energy-source-buttons button strong{margin-top:1px;font-size:.68rem}.energy-source-buttons button:first-child.active{color:#fff;background:linear-gradient(135deg,#0faf83,#08746c);box-shadow:0 7px 16px #0faf832e}.energy-source-buttons button:last-child.active{color:#fff;background:linear-gradient(135deg,#398dca,#205c96);box-shadow:0 7px 16px #205c9633}.energy-source-buttons button.active>span{color:currentColor;background:#ffffff29}.renewable-platform>.app-shell{min-height:calc(100vh - 70px);padding-top:14px}.wind-mode{--emerald:#348bca;--emerald-dark:#1f5f98;--cyan:#5aa7d8;--solar:#77b7dd;--line:#c9dfec}.wind-brand-mark{color:#fff;background:linear-gradient(145deg,#4aa0d3,#225c96);place-items:center;display:grid;box-shadow:0 10px 24px #225c9640}.wind-brand-mark:before,.wind-brand-mark:after,.wind-brand-mark>span{display:none}.wind-brand-mark .wind-turbine-icon{width:36px;height:36px}.wind-mode .view-tabs button.active{background:linear-gradient(135deg,#245f96,#174972);box-shadow:0 7px 18px #1f5f982e}.wind-mode .architecture-switch button.active,.wind-mode .scenario-start,.wind-mode .primary-action{background:linear-gradient(135deg,#398fca,#21659d);box-shadow:0 10px 22px #205c9633}.wind-mode .primary-action.is-paused{background:linear-gradient(135deg,#377aab,#214f79)}.wind-mode .challenge-card{background:#edf7fd;border-left-color:#5aa7d8}.wind-mode .challenge-card span{color:#286f9f}.wind-mode .challenge-card p{color:#456a80}.wind-mode .generation-chart{background:#edf6fb}.wind-mode .bar-column>span{background:linear-gradient(#62add9,#2d78b4);box-shadow:0 4px 10px #1f5f9826}.wind-mode .result-grid .highlight{background:linear-gradient(135deg,#398fca,#215d94)}.wind-mode .print-title{border-bottom-color:#348bca}.wind-mode .print-title h1{color:#1f5f98}.kpi-card.wind .kpi-icon{color:#286ea6;background:#e7f3fb}.kpi-card.generation .kpi-icon{color:#347fb5;background:#e8f5fc}.kpi-card.rotor .kpi-icon{color:#5a7590;background:#edf2f7}.wind-turbine-icon{overflow:visible}.wind-turbine-icon .rotor{transform-box:view-box;transform-origin:29px 28.5px;will-change:transform}.wind-turbine-icon .rotor.is-rotating{animation:rotorSpin var(--rotor-duration,1.8s) linear infinite;animation-play-state:running}.wind-context{grid-template-columns:112px minmax(0,1fr) auto;align-items:stretch;gap:12px;margin-bottom:12px;display:grid}.wind-compass{background:radial-gradient(circle,#fff 31%,#e9f4fa 32%,#f7fbfd 67%);border:1px solid #cfe2ed;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;min-height:112px;display:flex;position:relative;overflow:hidden}.wind-compass>span{color:#7c96a5;font-size:.52rem;font-weight:900;position:absolute;top:7px}.wind-compass>i{color:#2e7fb8;place-items:center;width:42px;height:42px;font-size:1.45rem;font-style:normal;transition:transform .3s;display:grid}.wind-compass>strong{font-size:.7rem}.wind-compass>small{color:var(--muted);margin-top:2px;font-size:.49rem}.wind-profile-chart{background:linear-gradient(#f7fbfd,#edf6fb);border:1px solid #cfe2ed;border-radius:15px;min-width:0;padding:10px 12px 6px}.wind-profile-chart>div{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.wind-profile-chart strong{font-size:.66rem}.wind-profile-chart span{color:var(--muted);font-size:.5rem}.wind-profile-chart svg{width:100%;height:72px;margin-top:2px;overflow:visible}.wind-profile-chart polyline{fill:none;stroke:#2f83bb;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.wind-profile-chart circle{fill:#fff;stroke:#1f5f98;stroke-width:4px}.wind-profile-chart .cutin-line{stroke:#d19a2b;stroke-width:1px;stroke-dasharray:6 5}.wind-profile-chart text{fill:#79929f;font-size:10px}.wind-readings{grid-template-columns:repeat(3,minmax(76px,1fr));gap:6px;display:grid}.wind-readings div{background:#ffffffc2;border:1px solid #d6e6ee;border-radius:11px;flex-direction:column;justify-content:center;min-width:0;padding:8px 10px;display:flex}.wind-readings span{color:var(--muted);font-size:.49rem}.wind-readings strong{white-space:nowrap;margin-top:3px;font-size:.66rem}.digital-status-grid{grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:12px;display:grid}.digital-status-grid>div{background:#f8fbfd;border:1px solid #d5e5ed;border-radius:10px;min-width:0;padding:8px 9px}.digital-status-grid span,.digital-status-grid strong{display:block}.digital-status-grid span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.48rem;overflow:hidden}.digital-status-grid strong{white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:.59rem;overflow:hidden}.digital-status-grid .is-ok{color:#16825e}.digital-status-grid .is-warning{color:#a36b00}.digital-status-grid .is-trip{color:#b33d2c}.digital-status-grid .is-idle{color:#71868b}.fleet-panel{background:#f8fbfd;border:1px solid #cfe1eb;border-radius:14px;margin-bottom:12px;overflow:hidden}.fleet-heading{border-bottom:1px solid #d7e6ed;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.fleet-heading h3{margin:2px 0 0;font-size:.76rem}.fleet-heading>strong{color:#2a6d99;font-size:.62rem}.fleet-table{min-width:690px}.fleet-row{color:#52717f;border-bottom:1px solid #e3edf1;grid-template-columns:.65fr 1fr .8fr .8fr .55fr 1.25fr;align-items:center;min-height:34px;padding:0 12px;font-size:.54rem;display:grid}.fleet-row:last-child{border:0}.fleet-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fleet-row strong{color:#294f64}.fleet-header{color:#77909b;text-transform:uppercase;letter-spacing:.04em;background:#eef5f8;min-height:30px;font-weight:900}.fleet-row.is-warning{background:#fffaf0;border-left:3px solid #d6a21d}.fleet-row.is-trip{background:#fff5f2;border-left:3px solid #c94f3e}.fleet-row.is-ok{border-left:3px solid #0000}.wind-map{background:radial-gradient(circle at 24% 74%,#4594c726,#0000 27%),linear-gradient(#3e88b608 1px,#0000 1px) 0 0/26px 26px,linear-gradient(90deg,#3e88b608 1px,#0000 1px) 0 0/26px 26px,#f9fcfe}.wind-scene{z-index:0;color:#5a91b6;opacity:.3;pointer-events:none;justify-content:center;align-items:center;width:220px;height:210px;display:flex;position:absolute;bottom:3%;left:7%}.wind-scene:after{content:"";background:#cde5ef;border-radius:50%;height:30px;position:absolute;bottom:10px;left:0;right:0}.tower-visual{z-index:2;width:150px;height:150px;position:relative}.tower-visual svg{width:100%;height:100%}.wind-scene>small{z-index:3;color:#356d92;text-align:center;font-size:.53rem;font-weight:900;position:absolute;bottom:0;left:0;right:0}.wind-streak{opacity:0;will-change:transform, opacity;background:#5a9cc8;border-radius:2px;width:70px;height:2px;position:absolute;right:0}.streak-one{top:44px}.streak-two{width:98px;top:82px}.streak-three{width:54px;top:121px}.energy-map.is-running .wind-streak{animation:2s linear infinite windStreak}.energy-map.is-running .streak-two{animation-delay:.5s}.energy-map.is-running .streak-three{animation-delay:1.1s}.node-wind{top:33%;left:4%}.node-wind .node-icon{color:#2f7eae}.flow-wind{color:#3e8dbd;background:linear-gradient(90deg,#71b7dc,#3d8abb)}.team-roles{flex-wrap:wrap;align-items:center;gap:7px;margin:-4px 0 13px;display:flex}.team-roles strong{margin-right:3px;font-size:.62rem}.team-roles span{color:#416c83;background:#f4f9fc;border:1px solid #d3e5ed;border-radius:999px;padding:5px 8px;font-size:.53rem;font-weight:800}.mission-mystery{background:#fff9e9;border:1px dashed #d6a63d;border-radius:10px;margin-top:13px;padding:10px}.mission-mystery strong{color:#8c650f;font-size:.6rem}.mission-mystery p{color:#766c4e;margin:4px 0 0;font-size:.55rem;line-height:1.4}.yaw-control{background:#f3f9fc;border:1px solid #d2e5ee;border-radius:12px;margin:10px 0;padding:11px}.yaw-control>div{justify-content:space-between;gap:8px;margin-bottom:7px;font-size:.62rem;display:flex}.yaw-control>div span{color:var(--muted)}.yaw-control>button{color:#285f83;cursor:pointer;background:#fff;border:1px solid #bdd9e8;border-radius:9px;width:100%;padding:8px;font-size:.57rem;font-weight:800}.yaw-control>button.active{color:#fff;background:#348bca;border-color:#348bca}.yaw-control label{color:#5a7889;margin-top:8px;font-size:.55rem;display:block}.yaw-control label input{accent-color:#348bca;width:100%;margin-top:6px}.active-alarm-chips{flex-wrap:wrap;gap:5px;margin:12px 0;display:flex}.active-alarm-chips button{color:#9b4636;cursor:pointer;background:#fff8f6;border:1px solid #ecc1b7;border-radius:8px;padding:5px 8px;font-size:.52rem;font-weight:800}.active-alarm-chips button.active{color:#fff;background:#c8513d;border-color:#c8513d}.report-alarm+.report-alarm{margin-top:7px}.mission-log-table{border:1px solid #d8e6e9;border-radius:10px;overflow-x:auto}.mission-log-row{color:#527078;border-bottom:1px solid #e4edef;grid-template-columns:.6fr .9fr .9fr .9fr .9fr .7fr .7fr;min-width:720px;padding:7px 9px;font-size:.56rem;display:grid}.mission-log-row:last-child{border-bottom:0}.mission-log-header{color:#71898e;text-transform:uppercase;background:#f0f6f7;font-weight:900}.operator-log-entry{background:#fffaf0;border-left:3px solid #cf9d24;border-radius:8px;margin-top:7px;padding:10px}.operator-log-entry.is-correct{background:#f0faf6;border-left-color:#26906b}.operator-log-entry strong,.operator-log-entry span{font-size:.6rem;display:block}.operator-log-entry p{color:#587279;margin:5px 0 0;font-size:.57rem;line-height:1.4}.operator-log-entry span{color:#71878c;margin-top:6px;font-weight:900}@keyframes rotorSpin{to{transform:rotate(360deg)}}@keyframes windStreak{0%{opacity:0;transform:translate(0)}20%{opacity:.65}80%{opacity:.65}to{opacity:0;transform:translate(-160px)}}@keyframes energyTravel{0%{left:-20px}to{left:calc(100% + 20px)}}@keyframes energyTravelVertical{0%{top:-20px}to{top:calc(100% + 20px)}}@keyframes statusPulse{0%,to{box-shadow:0 0 0 5px #0faf831f}50%{box-shadow:0 0 0 8px #0faf830a}}@media (width<=1100px){.topbar{grid-template-columns:1fr auto}.course-chip{grid-area:2/1/auto/-1;justify-content:center;justify-self:stretch}.kpi-grid{grid-template-columns:repeat(2,1fr)}.workspace-grid{grid-template-columns:1fr}.control-card{grid-template-columns:repeat(3,1fr);gap:0 18px;display:grid}.control-card .card-heading,.control-card .weather-readout,.control-card .operation-note,.control-card .solar-source,.control-card .primary-action{grid-column:1/-1}.fault-workspace,.prodist-workspace{grid-template-columns:1fr}.prodist-quality-grid{grid-template-columns:repeat(2,1fr)}.analysis-workspace{grid-template-columns:1fr}.analysis-inputs{grid-template-columns:repeat(2,1fr);gap:0 16px;display:grid}.analysis-inputs .card-heading,.analysis-inputs .section-intro,.analysis-inputs .method-note{grid-column:1/-1}.report-table{grid-template-columns:repeat(2,1fr)}.learning-workspace{grid-template-columns:1fr}.scenario-list{grid-template-columns:repeat(5,1fr)}.wind-context{grid-template-columns:112px minmax(0,1fr)}.wind-readings{grid-column:1/-1}.wind-mode .control-card .yaw-control{grid-column:span 2}.architecture-panel{grid-template-columns:180px 1fr}.configuration-controls{grid-template-columns:1fr}.digital-status-grid{grid-template-columns:repeat(3,1fr)}.control-card .checkpoint-callout,.control-card .automatic-events{grid-column:1/-1}}@media (width<=720px){.energy-source-selector{flex-direction:column;align-items:stretch;width:calc(100% - 20px)}.energy-source-buttons{grid-template-columns:repeat(2,1fr)}.app-shell{padding-inline:12px}.topbar{grid-template-columns:1fr}.system-status{grid-row:auto;width:100%}.course-chip{flex-direction:column;grid-column:auto;align-items:flex-start;gap:5px}.architecture-panel{grid-template-columns:1fr}.view-tabs{grid-template-columns:repeat(2,1fr)}.learning-strip{flex-direction:column;align-items:flex-start}.learning-strip button{width:100%}.scenario-list,.scenario-columns{grid-template-columns:1fr}.scenario-title-row{flex-direction:column}.scenario-start{width:100%}.architecture-switch{grid-template-columns:1fr}.architecture-switch button{text-align:left}.configuration-controls,.scale-switch{grid-template-columns:1fr}.kpi-grid{scroll-snap-type:x mandatory;padding-bottom:5px;display:flex;overflow-x:auto}.kpi-card{scroll-snap-align:start;min-width:255px}.energy-card{padding:12px;overflow:hidden}.solar-context,.wind-context{grid-template-columns:1fr}.wind-compass{min-height:104px}.wind-profile-chart{min-height:116px}.wind-readings{grid-column:auto;grid-template-columns:repeat(3,1fr)}.digital-status-grid{grid-template-columns:repeat(2,1fr)}.fleet-panel{overflow-x:auto}.solar-readings{grid-template-columns:repeat(3,1fr)}.energy-map{min-height:500px;overflow-x:auto}.map-node{width:94px;min-height:94px}.map-node .node-icon{width:34px;height:34px}.node-solar,.node-wind{top:8%;left:4%}.node-inverter{top:8%;left:calc(50% - 47px)}.node-load{top:8%;right:4%}.node-battery{bottom:12%;left:12%}.node-grid{bottom:12%;right:12%}.flow-solar{top:calc(8% + 47px);left:calc(4% + 94px);right:calc(50% + 47px)}.flow-load{top:calc(8% + 47px);left:calc(50% + 47px);right:calc(4% + 94px)}.flow-battery{top:calc(8% + 94px);bottom:calc(12% + 94px);left:30%}.flow-grid{top:calc(8% + 94px);bottom:calc(12% + 94px);right:30%}.map-summary{grid-template-columns:1fr}.control-card{display:block}.fault-list,.result-grid,.technical-strip,.report-two-column,.prodist-quality-grid,.meter-values,.prodist-presets{grid-template-columns:1fr}.analysis-inputs{display:block}.bar-chart{gap:4px}.report-toolbar{flex-direction:column;align-items:flex-start}.report-meta,.report-table{grid-template-columns:1fr}.checklist{columns:1}.report-footer{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media print{@page{size:A4 portrait;margin:14mm}body{color:#172f35;background:#fff!important}.app-shell{width:100%;padding:0}.energy-source-selector,.topbar,.view-tabs,.learning-strip,.architecture-panel,.kpi-grid,.no-print{display:none!important}.report-workspace{box-shadow:none;background:#fff;border:0;border-radius:0;padding:0;display:block!important}.print-title{border-bottom:3px solid #0faf83;padding-bottom:12px;display:block}.print-title h1{color:#075b5f;margin:0;font-size:22pt}.print-title p{color:#58767c;margin:4px 0 0;font-size:9pt}.report-meta{grid-template-columns:2fr .7fr 1.3fr .8fr;margin:12px 0}.report-table{grid-template-columns:repeat(4,1fr)}.report-two-column{grid-template-columns:repeat(2,1fr)}.report-section{break-inside:avoid}.report-section textarea{border-color:#aebfc2;min-height:100px}.report-footer{margin-top:12px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
