:root{
  --bg:#061522;
  --bg-2:#092238;
  --panel:#0a2236;
  --panel-2:#0d2b43;
  --line:#1f4f6a;
  --line-soft:#173e55;
  --text:#eaf3fb;
  --muted:#8fa8bd;
  --hot:#ff8a3d;
  --hot-2:#ff4d2e;
  --cold:#49e7ff;
  --cold-2:#00b8ff;
  --accent:#00f0b5;
  --accent-2:#00c998;
  --warn:#ffca3a;
  --danger:#ff5364;
  --good:#3ff3a5;
  --shadow:0 22px 60px rgba(0,0,0,.28);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 10% 0%,#0b3652 0,#061522 38%,#030b12 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.017) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.017) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 76%)}
button,input,select{font:inherit}
button,a{transition:.18s ease}
.hidden{display:none!important}
.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px clamp(18px,4vw,56px);background:rgba(5,12,21,.88);border-bottom:1px solid rgba(255,255,255,.07);backdrop-filter:blur(18px)}
.brand-lockup{display:flex;align-items:center;gap:13px;text-decoration:none;color:inherit}.rr-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#061522;box-shadow:0 8px 30px rgba(0,217,255,.22);overflow:hidden}.rr-mark img{width:100%;height:100%;display:block}
.brand-family{font-size:.73rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:800}.brand-product{font-size:1.02rem;font-weight:760;margin-top:2px}.topbar-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.pill,.support-badge,.example-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:800;letter-spacing:.04em;border:1px solid var(--line)}.pill--quiet{color:#b8cada;background:#0b1826}.pill--safe{color:var(--good);background:rgba(104,225,164,.08);border-color:rgba(104,225,164,.25)}.support-badge{color:var(--accent);background:rgba(91,224,193,.08);border-color:rgba(91,224,193,.22)}.example-badge{color:var(--warn);background:rgba(255,209,102,.08);border-color:rgba(255,209,102,.22)}
main{width:min(1600px,100%);margin:0 auto;padding:0 clamp(16px,3.5vw,54px) 56px}.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr);gap:34px;padding:58px 0 34px;align-items:end}.eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.2em;color:var(--accent);text-transform:uppercase}.hero h1{font-size:clamp(2rem,4vw,4rem);line-height:1.03;letter-spacing:-.045em;margin:12px 0 18px;max-width:1050px}.hero p{font-size:clamp(1rem,1.5vw,1.18rem);line-height:1.65;color:#adc1d1;max-width:900px;margin:0}.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.hero-tags span{padding:8px 11px;border-radius:10px;background:#0c1b2a;border:1px solid var(--line);font-size:.78rem;color:#bcd0df}.hero-side{display:grid;gap:12px}.signal-card{padding:17px 18px;border-radius:16px;background:linear-gradient(145deg,rgba(18,37,57,.9),rgba(10,23,37,.9));border:1px solid var(--line);box-shadow:var(--shadow)}.signal-card__label{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);font-weight:800}.signal-card__value{font-size:1.15rem;font-weight:820;margin-top:5px}.signal-card__meta{font-size:.78rem;color:#8ea7ba;margin-top:4px}
.workspace{display:grid;grid-template-columns:minmax(520px,.95fr) minmax(480px,1.05fr);gap:20px;align-items:start}.control-panel,.visual-panel,.results{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(155deg,rgba(14,29,45,.97),rgba(8,20,32,.97));box-shadow:var(--shadow)}.control-panel{padding:24px}.visual-panel{padding:22px;position:sticky;top:86px}.panel-heading,.visual-header,.results-header,.card-title{display:flex;align-items:center;justify-content:space-between;gap:18px}.panel-heading h2,.visual-header h2{margin:0;font-size:1.05rem}.panel-heading--compact{margin-top:2px}.section-index{display:inline-block;color:var(--accent);font-size:.66rem;font-weight:900;letter-spacing:.16em;margin-right:8px}.geometry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);margin:24px 0}.field{display:grid;gap:7px;min-width:0}.field>span{font-size:.73rem;color:#9cb2c4;font-weight:700}.field--wide{margin-top:18px}.field input,.field select{width:100%;min-height:42px;color:var(--text);background:#091522;border:1px solid #274057;border-radius:10px;padding:9px 11px;outline:none}.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(91,224,193,.08)}.field input::placeholder{color:#50687c}.field-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:8px}.field-pair--cp{grid-template-columns:.9fr 1.1fr}.stream-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.stream-card{margin:0;border:1px solid var(--line);border-radius:15px;padding:16px;background:#091725;display:grid;gap:11px}.stream-card legend{font-size:.84rem;font-weight:900;padding:0 6px}.stream-card--hot{box-shadow:inset 3px 0 0 rgba(255,107,74,.8)}.stream-card--hot legend{color:#ffb18b}.stream-card--cold{box-shadow:inset 3px 0 0 rgba(42,167,255,.8)}.stream-card--cold legend{color:#9fdcff}.advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.microcopy{color:var(--muted);font-size:.78rem;line-height:1.55;margin:9px 0 14px}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.button{border:1px solid transparent;border-radius:11px;padding:10px 15px;font-weight:820;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.button--primary{background:linear-gradient(135deg,#00f0b5,#00c7ff);color:#031018;box-shadow:0 10px 28px rgba(0,217,255,.15)}.button--primary:hover{transform:translateY(-1px);filter:brightness(1.06)}.button--secondary{background:#132b40;color:#d8e7f2;border-color:#28475f}.button--ghost{background:transparent;color:#bdd0de;border-color:#2a4053}.button--ghost:hover,.button--secondary:hover{border-color:#4f738f}.form-error{color:#ffd3d8;background:rgba(255,107,122,.08);border:1px solid rgba(255,107,122,.23);border-radius:10px;padding:0 12px;max-height:0;overflow:hidden;margin-top:0;transition:.2s}.form-error:not(:empty){padding:10px 12px;max-height:160px;margin-top:14px}
.schematic-shell{margin-top:14px;background:linear-gradient(180deg,#07121e,#081725);border:1px solid var(--line-soft);border-radius:16px;padding:8px;overflow:hidden}.schematic-shell svg{display:block;width:100%;height:auto}.visual-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.visual-summary div{background:#091622;border:1px solid var(--line-soft);border-radius:10px;padding:10px}.visual-summary span{display:block;font-size:.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.visual-summary strong{display:block;font-size:.83rem;margin-top:4px}.thermal-chart-card{margin-top:12px;border:1px solid var(--line-soft);background:#091622;border-radius:14px;padding:12px}.chart-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.chart-title span{font-size:.82rem;font-weight:850}.chart-title small{font-size:.67rem;color:var(--muted)}.thermal-chart-card svg{width:100%;display:block}.privacy-card{display:grid;gap:5px;margin-top:12px;padding:13px 14px;border-radius:12px;background:rgba(91,224,193,.055);border:1px solid rgba(91,224,193,.16)}.privacy-card strong{font-size:.76rem;color:var(--accent)}.privacy-card span{font-size:.74rem;color:#9db4c6;line-height:1.5}
.results{margin-top:24px;padding:28px}.results-header{align-items:flex-end}.results-header h2{font-size:1.65rem;margin:7px 0 4px}.results-header p{margin:0;color:var(--muted);font-size:.83rem}.confidence-block{display:grid;text-align:right}.confidence-block span{font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.confidence-block strong{font-size:1.3rem;color:var(--accent);margin-top:3px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}.kpi{min-height:118px;padding:16px;border-radius:14px;background:#091725;border:1px solid var(--line-soft);display:grid;align-content:space-between}.kpi--accent{background:linear-gradient(145deg,rgba(91,224,193,.09),rgba(9,23,37,.95));border-color:rgba(91,224,193,.22)}.kpi span{font-size:.68rem;text-transform:uppercase;letter-spacing:.09em;color:#8fa6b8;font-weight:800}.kpi strong{font-size:1.3rem;line-height:1.1}.kpi small{font-size:.7rem;color:#7f99ad}.analysis-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;margin-top:12px}.analysis-card{background:#091725;border:1px solid var(--line-soft);border-radius:15px;padding:18px}.analysis-card--diagnostic{background:linear-gradient(145deg,#0c1c2c,#091522)}.card-title{padding-bottom:13px;border-bottom:1px solid var(--line-soft)}.card-title span{font-size:.9rem;font-weight:900}.card-title small{font-size:.68rem;color:var(--muted)}.diagnostics{display:grid;gap:10px;margin-top:13px}.diagnostic{border-left:3px solid #4d687d;background:#0b1a28;padding:12px 13px;border-radius:0 10px 10px 0}.diagnostic--good{border-color:var(--good)}.diagnostic--watch{border-color:var(--warn)}.diagnostic--critical{border-color:var(--danger)}.diagnostic h4{margin:0 0 5px;font-size:.79rem}.diagnostic p{margin:0;color:#a8bdcd;font-size:.77rem;line-height:1.58}.data-table{display:grid;margin-top:10px}.data-row{display:grid;grid-template-columns:1fr auto;gap:16px;padding:9px 0;border-bottom:1px dashed #1e3345;font-size:.77rem}.data-row span{color:#8ea6b8}.data-row strong{text-align:right}.messages{display:grid;gap:8px;list-style:none;padding:0;margin:12px 0 0}.message{padding:10px 11px;border-radius:9px;background:#0b1a29;border:1px solid var(--line-soft);font-size:.75rem;line-height:1.5}.message__tag{font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-right:7px}.message--warning{border-color:rgba(255,209,102,.24)}.message--warning .message__tag{color:var(--warn)}.message--error{border-color:rgba(255,107,122,.28)}.message--error .message__tag{color:var(--danger)}.message--info .message__tag{color:var(--accent)}.empty-state{color:#7f99ad;font-size:.78rem;line-height:1.55;padding:16px 0}.prediction-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.prediction-grid div{background:#0c1d2c;border:1px solid var(--line-soft);border-radius:10px;padding:11px}.prediction-grid span{display:block;font-size:.65rem;color:var(--muted)}.prediction-grid strong{display:block;font-size:.93rem;margin-top:4px}.methodology{margin-top:12px}.methodology>p{color:#9eb5c6;font-size:.78rem;line-height:1.6}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.method-grid div{padding:11px;border-radius:10px;background:#0b1a29;border:1px solid var(--line-soft)}.method-grid strong,.method-grid span{display:block}.method-grid strong{font-size:.72rem;color:var(--accent)}.method-grid span{font-size:.68rem;line-height:1.45;color:#8fa7ba;margin-top:5px}.report-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.report-meta div{padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px;background:#071522}.report-meta strong,.report-meta span{display:block}.report-meta strong{font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.report-meta span{font-size:.7rem;margin-top:4px}.cta-card{margin-top:18px;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:22px;border:1px solid rgba(91,224,193,.22);border-radius:15px;background:linear-gradient(135deg,rgba(91,224,193,.08),rgba(60,182,255,.05))}.cta-card h3{margin:7px 0 5px;font-size:1.2rem}.cta-card p{margin:0;color:#9cb2c3;font-size:.78rem;line-height:1.55;max-width:820px}.disclaimer,.owner-notice{font-size:.69rem;color:#71899c;line-height:1.55;margin:16px 0 0}.owner-notice{margin-top:4px}
@media(max-width:1180px){.workspace{grid-template-columns:1fr}.visual-panel{position:relative;top:auto}.kpi-grid{grid-template-columns:repeat(2,1fr)}.analysis-grid{grid-template-columns:1fr}.method-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{align-items:flex-start}.topbar-actions .pill{display:none}.hero{grid-template-columns:1fr;padding-top:36px}.hero-side{grid-template-columns:1fr 1fr}.control-panel,.visual-panel,.results{padding:16px}.stream-grid,.advanced-grid,.geometry-fields{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr 1fr}.report-meta{grid-template-columns:1fr 1fr}.cta-card{align-items:flex-start;flex-direction:column}.method-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){main{padding-left:10px;padding-right:10px}.brand-product{font-size:.86rem}.rr-mark{width:42px;height:42px}.topbar{padding:10px}.hero h1{font-size:2rem}.hero-side{grid-template-columns:1fr}.stream-grid,.field-pair,.field-pair--cp,.kpi-grid,.prediction-grid,.method-grid,.report-meta{grid-template-columns:1fr}.visual-summary{grid-template-columns:1fr}.results-header{align-items:flex-start;flex-direction:column}.confidence-block{text-align:left}.topbar-actions .button{padding:8px 10px;font-size:.72rem}}
@media print{body{background:white;color:#101820}.topbar,.hero,.control-panel,.visual-panel,.form-actions,.cta-card{display:none!important}main{padding:0;max-width:none}.results{display:block!important;background:white;border:0;box-shadow:none;color:#101820;padding:0}.analysis-card,.kpi,.report-meta div,.method-grid div{background:white;color:#101820;border-color:#cdd7df}.kpi span,.kpi small,.data-row span,.analysis-card p,.diagnostic p,.report-meta strong,.disclaimer,.owner-notice{color:#405466}.diagnostic{background:#f7fafc}.messages .message{background:#f7fafc;color:#101820}.results-header{margin-bottom:12px}.button{display:none!important}}

/* v0.3.0 commercial access + TEMA enhancements */
.stream-card--phase{border-color:#6d5a2f;background:linear-gradient(180deg,rgba(126,90,24,.12),rgba(7,17,29,.18))}.tema-code-preview{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #28465b;border-radius:10px;background:#091823}.tema-code-preview span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#7e9aad}.tema-code-preview strong{font-size:24px;color:#eaf4f9}.tema-code-preview small{color:#7892a5;line-height:1.35}.license-upsell{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:24px 0;padding:22px;border:1px solid #4d765f;border-radius:16px;background:linear-gradient(120deg,rgba(29,103,76,.22),rgba(8,26,37,.92))}.license-upsell h3{margin:5px 0 6px;font-size:20px}.license-upsell p{margin:0;color:#a8bdca}.license-upsell__actions{display:flex;gap:10px;flex-wrap:wrap;min-width:max-content}.modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal.hidden{display:none}.modal__backdrop{position:absolute;inset:0;background:rgba(0,7,12,.82);backdrop-filter:blur(5px)}.modal__panel{position:relative;z-index:1;width:min(560px,100%);max-height:90vh;overflow:auto;background:#0b1925;border:1px solid #36546a;border-radius:18px;padding:26px;box-shadow:0 28px 90px rgba(0,0,0,.55)}.modal__panel h2{margin:8px 0 8px}.modal__panel>p{color:#9fb5c4}.modal__close{position:absolute;right:13px;top:10px;border:0;background:transparent;color:#b8cbd7;font-size:30px;cursor:pointer}.license-steps{display:grid;gap:8px;margin:18px 0}.license-step{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;border:1px solid #263f52;border-radius:10px;padding:10px}.license-step>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#173347;color:#9fdcff;font-weight:800}.license-step strong{display:block}.license-step p{margin:2px 0 0;color:#8fa7b6;font-size:12px}.button--block{display:block;width:100%;text-align:center;margin:9px 0}.license-status{min-height:24px;margin-top:10px;color:#9fdcff;font-size:13px}.pill--safe{background:rgba(39,180,126,.15);border-color:#2a835e;color:#77e5b5}
@media(max-width:800px){.license-upsell{align-items:flex-start;flex-direction:column}.license-upsell__actions{min-width:0}.topbar-actions{gap:6px}.topbar-actions .button{padding:8px 10px;font-size:12px}.tema-code-preview{align-items:flex-start;flex-direction:column}}

/* v0.4.0 fouling, maintenance and help */
.fouling-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.fouling-card{min-width:0;border:1px solid var(--line-soft);background:#091725;border-radius:14px;padding:14px}.fouling-card legend{padding:0 8px;font-size:.78rem;font-weight:900;color:#cfe0ed}.fouling-card--hot{border-color:rgba(255,123,85,.22)}.fouling-card--cold{border-color:rgba(75,188,255,.22)}.fouling-preview{display:grid;gap:4px;margin-top:10px;padding:10px 11px;border-radius:10px;background:#07131f;border:1px solid #1b3245;color:#92aabc;font-size:.7rem;line-height:1.45}.fouling-preview strong{color:#e8f1f7;font-size:.74rem}.fouling-preview span{display:block}.analogy-box{margin-top:10px;padding:11px;border-radius:10px;border:1px dashed #36576e;background:rgba(44,165,195,.04)}.analogy-box>strong{font-size:.72rem;color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.hydraulic-details{margin-top:12px;border:1px solid var(--line-soft);border-radius:12px;background:#081624;padding:12px 14px}.hydraulic-details summary{cursor:pointer;font-size:.78rem;font-weight:850;color:#cfe1ee}.maintenance-card{margin-top:14px;border:1px solid rgba(91,224,193,.22);border-radius:16px;background:linear-gradient(135deg,rgba(17,55,62,.55),rgba(8,23,36,.98));padding:18px}.maintenance-card__header{display:flex;justify-content:space-between;gap:16px;align-items:center}.maintenance-card__header h3{margin:5px 0 0;font-size:1.15rem}.maintenance-status{display:inline-flex;border-radius:999px;padding:8px 11px;font-size:.68rem;font-weight:950;letter-spacing:.07em;border:1px solid #39546a}.maintenance-status--na,.maintenance-status--not-available{color:#9db1c0;background:#101d28}.maintenance-status--normal{color:var(--good);border-color:rgba(104,225,164,.38);background:rgba(104,225,164,.08)}.maintenance-status--watch{color:var(--warn);border-color:rgba(255,209,102,.38);background:rgba(255,209,102,.08)}.maintenance-status--near-maintenance{color:#ffae71;border-color:rgba(255,174,113,.4);background:rgba(255,174,113,.08)}.maintenance-status--maintenance-recommended{color:var(--danger);border-color:rgba(255,107,122,.4);background:rgba(255,107,122,.08)}.maintenance-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.maintenance-kpis div{border:1px solid #244052;border-radius:10px;background:#081622;padding:10px}.maintenance-kpis span{display:block;color:#849db0;font-size:.63rem;text-transform:uppercase;letter-spacing:.07em}.maintenance-kpis strong{display:block;margin-top:4px;font-size:.92rem}.maintenance-details{margin-top:12px;color:#9fb5c5;font-size:.75rem;line-height:1.55}.maintenance-details strong{color:#dceaf3}.maintenance-details p{margin:6px 0}.maintenance-details small{display:block;color:#728da1;line-height:1.5}.modal__panel--wide{width:min(980px,100%)}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.help-grid article{padding:12px;border:1px solid #244054;border-radius:11px;background:#081622}.help-grid h3{margin:0 0 6px;font-size:.82rem}.help-grid p,.help-grid li{font-size:.73rem;color:#9fb5c5;line-height:1.55}.help-grid ol{margin:0;padding-left:18px}.help-table-wrap{max-height:360px;overflow:auto;border:1px solid #263f52;border-radius:10px}.help-table{width:100%;border-collapse:collapse;font-size:.7rem}.help-table th{position:sticky;top:0;background:#102333;color:#d7e6ef;text-align:left;padding:9px;border-bottom:1px solid #365167}.help-table td{padding:8px 9px;border-bottom:1px solid #1b3041;color:#9fb5c5}.help-table td strong,.help-table td small{display:block}.help-table td strong{color:#d6e5ee}.help-table td small{margin-top:2px;color:#6f8a9d}.help-table th:nth-child(n+2),.help-table td:nth-child(n+2){text-align:right;white-space:nowrap}
@media(max-width:900px){.fouling-grid,.help-grid{grid-template-columns:1fr}.maintenance-kpis{grid-template-columns:1fr 1fr}.maintenance-card__header{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.maintenance-kpis{grid-template-columns:1fr}.help-table{font-size:.64rem}}


/* v0.6.0 base visual system + PWA + private admin */
.button--danger{background:rgba(255,83,100,.14);color:#ffd9de;border-color:rgba(255,83,100,.45)}
.admin-body{background:radial-gradient(circle at 12% 0%,#0a3a57 0,#061522 42%,#030a11 100%)}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;padding:14px clamp(18px,4vw,56px);background:rgba(3,11,18,.9);border-bottom:1px solid rgba(0,217,255,.18);backdrop-filter:blur(18px)}
.admin-main{width:min(1280px,100%);margin:0 auto;padding:42px clamp(16px,4vw,52px) 70px}.admin-hero h1{font-size:clamp(2rem,4vw,3.7rem);margin:10px 0 12px;letter-spacing:-.04em}.admin-hero p{max-width:850px;color:#a9c4d7;line-height:1.65}.admin-card{margin-top:20px;padding:22px;border-radius:18px;border:1px solid rgba(0,217,255,.2);background:linear-gradient(150deg,rgba(8,34,52,.97),rgba(5,20,31,.98));box-shadow:0 24px 70px rgba(0,0,0,.25)}.admin-grid{display:grid;grid-template-columns:1.4fr .7fr .55fr 1fr;gap:12px}.admin-grid .field--wide{grid-column:1/-1;margin-top:0}.admin-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.admin-status{margin-top:16px;padding:11px 13px;border-radius:10px;background:#071925;border:1px solid #1d465e;color:#9fc4d6}.admin-status--ok{color:#65efb2;border-color:rgba(63,243,165,.35)}.admin-status--error{color:#ffadb7;border-color:rgba(255,83,100,.4)}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.78rem}.admin-table th{color:#bcd8e7;text-align:left;padding:10px;border-bottom:1px solid #2a5870;white-space:nowrap}.admin-table td{padding:11px 10px;border-bottom:1px solid #16384c;color:#a9c1d1;vertical-align:top}.admin-table td strong,.admin-table td small{display:block}.admin-table td strong{color:#eef7fb}.admin-table td small{margin-top:4px;color:#718fa2}.type-badge{display:inline-flex;padding:5px 8px;border-radius:999px;border:1px solid #315b72;font-size:.67rem;font-weight:900}.type-badge--owner{color:#00f0b5;border-color:rgba(0,240,181,.4);background:rgba(0,240,181,.08)}.type-badge--customer{color:#49e7ff;border-color:rgba(73,231,255,.35);background:rgba(73,231,255,.07)}.type-badge--courtesy{color:#ffca3a;border-color:rgba(255,202,58,.35);background:rgba(255,202,58,.07)}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr 1fr}.admin-grid .field--wide{grid-column:1/-1}}
@media(max-width:580px){.admin-topbar{align-items:flex-start;gap:12px}.admin-grid{grid-template-columns:1fr}.admin-grid .field--wide{grid-column:auto}.admin-actions .button{width:100%}}

/* v0.6.0 Industrial Engineering Cockpit */
:root{
  --instrument:#07111b;
  --instrument-2:#0a1b29;
  --cyan:#00d9ff;
  --orange:#ff7417;
  --turquoise:#00e0c7;
}
.hero{position:relative}.hero:after{content:"RR / THERMAL SYSTEMS / HX ANALYTICS";position:absolute;right:0;top:26px;color:rgba(108,197,226,.16);font:900 .68rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.22em}
.unit-deck{margin:16px 0 20px;border:1px solid rgba(0,217,255,.28);border-radius:14px;background:linear-gradient(125deg,rgba(0,217,255,.075),rgba(0,240,181,.035) 55%,rgba(255,116,23,.035));overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.unit-deck__main{display:grid;grid-template-columns:1fr minmax(210px,.36fr);gap:18px;padding:15px 16px;align-items:end}.unit-deck__main h3{margin:4px 0 4px;font-size:1rem}.unit-deck__main p{margin:0;color:#87a6b8;font-size:.72rem;line-height:1.45}.unit-profile-field{margin:0}.output-unit-details{border-top:1px solid rgba(0,217,255,.14);background:rgba(4,15,24,.44)}.output-unit-details summary{cursor:pointer;padding:10px 16px;color:#acd2e4;font-size:.72rem;font-weight:850;letter-spacing:.04em}.output-unit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 16px 15px}.output-unit-grid .field span{font-size:.64rem;text-transform:uppercase;letter-spacing:.08em}
.field>span{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.field-info{display:inline-grid;place-items:center;width:18px;height:18px;padding:0;border-radius:50%;border:1px solid rgba(0,217,255,.44);background:rgba(0,217,255,.07);color:#8eeaff;font-size:.66rem;font-weight:900;cursor:pointer}.field-info:hover{background:rgba(0,217,255,.18);border-color:var(--cyan)}
.field-state{font-style:normal;font-size:.56rem;border-radius:4px;padding:2px 5px;text-transform:uppercase;letter-spacing:.06em;font-weight:900}.field-state--required{color:#ffc2a3;background:rgba(255,116,23,.09);border:1px solid rgba(255,116,23,.25)}.field-state--recommended{color:#ffe194;background:rgba(255,202,58,.08);border:1px solid rgba(255,202,58,.25)}.field-state--optional{color:#9bb3c3;background:rgba(155,179,195,.07);border:1px solid rgba(155,179,195,.16)}
.unknown-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:8px}.unknown-row>span{font-size:.66rem;color:#66889e}.unknown-button{border:1px dashed #35566b;background:#081621;color:#88a6b8;border-radius:7px;padding:6px 8px;font-size:.64rem;font-weight:750;cursor:pointer}.unknown-button:hover{border-color:#638aa3;color:#c1d9e7}.unknown-button--active{border-style:solid;border-color:rgba(255,202,58,.45);background:rgba(255,202,58,.07);color:#ffdb6d}.field-pair--unknown{opacity:.62}
.cockpit-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:13px;border:1px solid #1d4054;border-radius:10px;overflow:hidden;background:#1d4054}.cockpit-strip>div{background:#07131e;padding:8px 9px;min-width:0}.cockpit-strip span{display:block;font:800 .52rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;color:#65899d}.cockpit-strip strong{display:block;margin-top:5px;font:800 .62rem/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;color:#caeafa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cockpit-strip>div:nth-child(3) strong{color:#65edbd}
.schematic-shell{box-shadow:inset 0 0 70px rgba(0,217,255,.025)}.visual-panel:before{content:"LIVE EQUIPMENT VIEW";display:block;position:absolute;right:22px;top:15px;font:800 .52rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.15em;color:rgba(0,217,255,.35)}
.visual-summary{grid-template-columns:repeat(4,1fr)}.visual-summary div{position:relative;overflow:hidden}.visual-summary div:after{content:"";position:absolute;left:0;bottom:0;width:36%;height:2px;background:linear-gradient(90deg,var(--cyan),transparent)}
.engineering-conclusion-card{margin-top:14px;border:1px solid rgba(0,217,255,.25);border-radius:16px;background:linear-gradient(140deg,rgba(5,26,39,.98),rgba(6,18,28,.98));padding:20px;box-shadow:inset 4px 0 0 rgba(0,217,255,.65)}.conclusion-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.conclusion-head h3{margin:5px 0 0;font-size:1.2rem}.data-quality-chip{display:grid;text-align:right;border-left:1px solid #214359;padding-left:16px}.data-quality-chip span{font-size:.6rem;color:#7393a6;text-transform:uppercase;letter-spacing:.09em}.data-quality-value{font:900 1rem/1.15 ui-monospace,SFMono-Regular,Consolas,monospace;margin-top:4px}.data-quality-value--alta{color:#54efb1}.data-quality-value--media{color:#ffcc5c}.data-quality-value--limitada{color:#ff8d7a}.executive-summary{font-size:1.02rem;line-height:1.55;color:#d6e9f3;margin:18px 0 8px;font-weight:680}.engineering-conclusion{margin:0;color:#9fb9c8;line-height:1.7;font-size:.8rem}.conclusion-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;margin-top:16px}.conclusion-grid>div{border-top:1px solid #1c3c50;padding-top:12px}.conclusion-grid h4{margin:0 0 9px;font-size:.7rem;text-transform:uppercase;letter-spacing:.11em;color:#a8ccdc}.engineering-actions{list-style:none;margin:0;padding:0;display:grid;gap:7px}.engineering-actions li{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:start;background:#071722;border:1px solid #16364a;border-radius:8px;padding:8px}.engineering-actions li>span{font:900 .64rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;color:#00d9ff;padding-top:3px}.engineering-actions p{margin:0;color:#a4becc;font-size:.72rem;line-height:1.5}.data-quality-detail{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.data-quality-detail>div{background:#071722;border:1px solid #16364a;border-radius:8px;padding:8px}.data-quality-detail strong{font-size:.59rem;text-transform:uppercase;color:#88a8b9;letter-spacing:.07em}.data-quality-detail ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}.data-quality-detail li{font-size:.64rem;line-height:1.35}.quality-ok{color:#6bdbaa}.quality-missing{color:#ffb088}.quality-assumption{color:#ffd063}
.variable-dictionary{margin:18px 0;padding:15px;border:1px solid #254a60;border-radius:12px;background:#071723}.dictionary-head{display:grid;grid-template-columns:1fr minmax(230px,.45fr);gap:12px;align-items:end}.dictionary-head h3{margin:0 0 3px}.dictionary-head input{width:100%;min-height:40px;border:1px solid #31566d;background:#06131d;color:#e6f6ff;border-radius:9px;padding:9px 11px;outline:none}.dictionary-head input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,217,255,.08)}.variable-glossary-results{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;max-height:460px;overflow:auto;padding-right:4px}.glossary-item{display:grid;grid-template-columns:48px 1fr;gap:10px;border:1px solid #18384c;background:#081a27;border-radius:10px;padding:10px}.glossary-symbol{width:46px;height:46px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(0,217,255,.13),rgba(0,240,181,.06));border:1px solid rgba(0,217,255,.25);color:#79eaff;font:900 .92rem/1 ui-monospace,SFMono-Regular,Consolas,monospace}.glossary-item h4{margin:1px 0 4px;font-size:.76rem}.glossary-item p{margin:0;color:#98b2c1;font-size:.69rem;line-height:1.45}.glossary-meta{display:flex;gap:7px;flex-wrap:wrap;margin:7px 0}.glossary-meta span{font-size:.61rem;border:1px solid #203e51;border-radius:5px;padding:3px 5px;color:#8dafc2}.glossary-item small{display:block;color:#708fa2;font-size:.61rem;line-height:1.45}
.results .kpi strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:-.025em}.data-row strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.tema-code-preview strong{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}.field input[type=number]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
@media(max-width:1100px){.output-unit-grid{grid-template-columns:repeat(2,1fr)}.conclusion-grid{grid-template-columns:1fr}.data-quality-detail{grid-template-columns:1fr 1fr}.variable-glossary-results{grid-template-columns:1fr}.cockpit-strip{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.unit-deck__main{grid-template-columns:1fr}.output-unit-grid{grid-template-columns:1fr}.conclusion-head{flex-direction:column}.data-quality-chip{text-align:left;border-left:0;border-top:1px solid #214359;padding-left:0;padding-top:10px;width:100%}.data-quality-detail{grid-template-columns:1fr}.dictionary-head{grid-template-columns:1fr}.cockpit-strip{grid-template-columns:1fr 1fr}.visual-summary{grid-template-columns:1fr 1fr}}
.activation-code-panel{margin-top:18px;padding:16px;border-radius:14px;border:1px solid rgba(73,231,255,.3);background:rgba(7,27,40,.9)}
.activation-code-row{display:flex;gap:10px;align-items:center;margin-top:10px}
.activation-code-row input{flex:1;min-width:260px;padding:13px 14px;border-radius:10px;border:1px solid #2e637c;background:#04111b;color:#eaf8ff;font:800 1rem/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.04em}
.activation-code-panel p{margin:10px 0 0;color:#90adbd;font-size:.8rem;line-height:1.5}
.button--tiny{padding:5px 8px;font-size:.68rem;min-height:auto}
.device-summary{display:grid;gap:7px;min-width:220px}.device-summary>strong{color:#eaf7fb}.device-summary>small{color:#7894a7}.device-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px;border:1px solid #173e52;border-radius:9px;background:#071722}.device-item div{min-width:0}.device-item strong,.device-item small{display:block}.device-item small{margin-top:3px;color:#7894a7;white-space:nowrap}.status-chip{display:inline-flex;padding:4px 7px;border:1px solid #315b72;border-radius:999px;color:#9bb7c8;font-size:.67rem;font-weight:800}.status-chip--ok{color:#69e9b1;border-color:rgba(63,243,165,.35);background:rgba(63,243,165,.07)}
@media(max-width:700px){.activation-code-row{align-items:stretch;flex-direction:column}.activation-code-row input{min-width:0;width:100%}.device-item{align-items:flex-start;flex-direction:column}.device-item .button{width:100%}}
