:root{--bg:#06111d;--bg2:#081827;--panel:#0b1d2c;--panel2:#10283a;--line:#1d3a4e;--text:#edf7ff;--muted:#8da9bb;--cyan:#22d3ee;--blue:#3b82f6;--green:#22c55e;--amber:#f59e0b;--red:#f05252;--violet:#a78bfa;--shadow:0 16px 45px #02091480;--radius:16px}[data-theme=light]{--bg:#eef4f8;--bg2:#f7fafc;--panel:#fff;--panel2:#edf5fa;--line:#c8d9e4;--text:#102636;--muted:#5d7687;--cyan:#0891b2;--blue:#2563eb;--green:#15803d;--amber:#b45309;--red:#dc2626;--violet:#7c3aed;--shadow:0 14px 35px #45677f1f}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font:16px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}.app-shell{grid-template-columns:auto minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:linear-gradient(180deg,#071725 0%,var(--bg) 70%);border-right:1px solid var(--line);z-index:20;flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow:hidden auto}.brand{align-items:center;gap:12px;padding:4px 6px 20px;display:flex}.brand-mark{background:linear-gradient(145deg,var(--cyan),var(--blue));color:#04121c;border-radius:12px;place-items:center;width:40px;height:40px;font-weight:950;display:grid;box-shadow:0 0 28px #22d3ee3d}.brand strong{letter-spacing:.08em;font-size:.94rem}.brand span{color:var(--muted);margin-top:2px;font-size:.74rem;display:block}.nav-group{margin:8px 0 14px}.nav-title{color:var(--muted);letter-spacing:.12em;padding:0 10px 7px;font-size:.68rem;font-weight:800}.nav-btn{width:100%;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;margin:2px 0;padding:9px 10px;font-size:.84rem;display:flex}.nav-btn:hover{background:var(--panel);color:var(--text)}.nav-btn.active{background:linear-gradient(90deg,#0e749033,var(--panel));color:var(--text);border-color:#22d3ee55}.nav-icon{width:24px;color:var(--cyan);text-align:center}.side-foot{border:1px solid var(--line);background:var(--panel);border-radius:12px;align-items:center;gap:9px;margin-top:auto;padding:11px;display:flex}.side-foot b,.side-foot small{display:block}.side-foot b{font-size:.75rem}.side-foot small{color:var(--muted);font-size:.68rem}.pulse{background:var(--green);border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 5px #22c55e18}.workspace{min-width:0}.topbar{z-index:10;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);align-items:center;gap:18px;height:72px;padding:0 24px;display:flex;position:sticky;top:0}.campaign{flex:1;min-width:0}.campaign b,.campaign span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.campaign b{font-size:.94rem}.campaign span{color:var(--muted);font-size:.78rem}.top-actions{align-items:center;gap:10px;display:flex}.scenario-label{color:var(--muted);font-size:.72rem}select,input{color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:9px;outline:none;padding:8px 10px}select:focus,input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #22d3ee20}.scenario-label select{margin-left:6px;padding:7px 9px;font-size:.78rem}.live-badge{letter-spacing:.06em;color:var(--green);background:#22c55e12;border:1px solid #22c55e55;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:900}.icon-btn{border:1px solid var(--line);background:var(--panel);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:10px}.mobile-menu{place-items:center;display:inline-grid}main{max-width:1780px;margin:auto;padding:24px}.page-head{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:20px;display:flex}.eyebrow{color:var(--cyan);letter-spacing:.14em;margin:0 0 5px;font-size:.72rem;font-weight:900}.page-head h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.55rem,2.7vw,2.35rem);line-height:1.1}.page-head p{color:var(--muted);max-width:760px;margin:7px 0 0}.head-actions{flex-wrap:wrap;gap:8px;display:flex}.btn{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:10px;padding:9px 13px;font-size:.82rem;font-weight:750}.btn:hover{border-color:var(--cyan);transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,var(--cyan),var(--blue));color:#04121d;border:0}.btn.danger{color:var(--red)}.banner{background:linear-gradient(100deg,#0891b226,#2563eb12);border:1px solid #22d3ee50;border-radius:14px;margin-bottom:18px;padding:12px 15px;font-size:.86rem}.kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.kpi,.card{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),color-mix(in srgb,var(--panel) 88%,var(--panel2)));border-radius:var(--radius);box-shadow:var(--shadow)}.kpi{cursor:pointer;min-height:112px;padding:16px;position:relative;overflow:hidden}.kpi:after{content:"";background:var(--accent,var(--cyan));opacity:.08;border-radius:50%;width:90px;height:90px;position:absolute;bottom:-30px;right:-24px}.kpi small{color:var(--muted);font-size:.73rem;font-weight:750}.kpi strong{margin:8px 0 5px;font-size:1.8rem;line-height:1.05;display:block}.kpi span{color:var(--green);font-size:.72rem}.card{padding:17px}.card h3{margin:0 0 13px;font-size:.92rem}.card-sub{color:var(--muted);margin-top:-8px;margin-bottom:14px;font-size:.78rem}.grid-2{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:14px;margin-bottom:14px;display:grid}.grid-equal{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.loop{grid-template-columns:repeat(7,minmax(130px,1fr));gap:8px;padding-bottom:4px;display:grid;overflow:auto}.loop-step{border:1px solid var(--line);background:var(--bg2);cursor:pointer;border-radius:12px;min-height:118px;padding:12px;position:relative}.loop-step:hover{border-color:var(--cyan)}.loop-num{color:var(--cyan);font-size:.7rem;font-weight:900}.loop-step b{margin:13px 0 4px;font-size:.78rem;display:block}.loop-step span{color:var(--muted);font-size:.7rem;display:block}.loop-step.done:before{content:"✓";color:var(--green);font-weight:900;position:absolute;top:9px;right:10px}.loop-step.active{background:linear-gradient(145deg,#0e74902d,var(--bg2));border-color:var(--cyan)}.table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 12px;font-size:.78rem}th{color:var(--muted);background:var(--bg2);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem}tr:last-child td{border-bottom:0}tbody tr:hover{background:#22d3ee0a}.status{border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:4px 8px;font-size:.67rem;font-weight:800;display:inline-flex}.status.green{color:var(--green);background:#22c55e10}.status.amber{color:var(--amber);background:#f59e0b10}.status.red{color:var(--red);background:#ef444410}.status.blue{color:var(--blue);background:#3b82f610}.metric-row{grid-template-columns:140px 1fr 58px;align-items:center;gap:10px;margin:10px 0;font-size:.75rem;display:grid}.track,.progress{background:var(--bg);border-radius:99px;height:8px;overflow:hidden}.track i,.progress i{border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--blue));height:100%;display:block}.mini-list{gap:9px;display:grid}.mini-item{border:1px solid var(--line);background:var(--bg2);border-radius:11px;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px;display:flex}.mini-item b{font-size:.78rem}.mini-item p{color:var(--muted);margin:3px 0 0;font-size:.72rem}.alert-line{border-left:3px solid var(--amber)}.alert-line.critical{border-color:var(--red)}.scenario-card{position:relative}.scenario-card.recommended{border-color:var(--cyan);box-shadow:0 0 0 1px #22d3ee38,var(--shadow)}.scenario-card.recommended:after{content:"RECOMMENDED";color:var(--cyan);letter-spacing:.1em;font-size:.62rem;font-weight:950;position:absolute;top:12px;right:12px}.scenario-score{margin:7px 0;font-size:2rem;font-weight:950}.formula{background:var(--bg);border:1px solid var(--line);color:var(--cyan);border-radius:10px;padding:11px;font:500 .75rem/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.form-grid{grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;display:grid}.field label{color:var(--muted);margin-bottom:5px;font-size:.72rem;display:block}.field input,.field select{width:100%}.gantt-wrap{border:1px solid var(--line);background:var(--bg2);border-radius:13px;overflow:auto}.gantt{min-width:980px}.gantt-head,.gantt-row{grid-template-columns:135px 1fr;align-items:center;display:grid}.gantt-head{border-bottom:1px solid var(--line);height:42px}.gantt-row{border-bottom:1px solid var(--line);height:46px}.gantt-row:last-child{border:0}.gantt-label{padding:0 12px;font-size:.72rem}.gantt-label b,.gantt-label span{display:block}.gantt-label span{color:var(--muted);font-size:.64rem}.timeline{background-image:linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:10% 100%;height:100%;position:relative}.time-labels{height:100%;color:var(--muted);text-align:center;grid-template-columns:repeat(10,1fr);align-items:center;font-size:.62rem;display:grid}.gbar{background:linear-gradient(90deg,var(--blue),var(--cyan));color:#fff;white-space:nowrap;border-radius:7px;align-items:center;height:28px;padding:0 8px;font-size:.64rem;font-weight:800;display:flex;position:absolute;top:9px;overflow:hidden}.gbar.move{background:var(--amber)}.gbar.refurb{background:var(--violet)}.today-line{background:var(--red);z-index:2;width:2px;position:absolute;top:0;bottom:0;left:38%}.map-layout{grid-template-columns:minmax(0,1fr) 310px;gap:14px;display:grid}.ops-map{border:1px solid var(--line);background:radial-gradient(circle at 30% 30%,#0e749024,transparent 30%),linear-gradient(145deg,var(--bg2),var(--panel));border-radius:16px;min-height:570px;position:relative;overflow:hidden}.map-grid{background-image:linear-gradient(#1d3a4e40 1px,#0000 1px),linear-gradient(90deg,#1d3a4e40 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0}.field-zone{color:#7dd3fc;background:#22d3ee08;border:1px dashed #22d3ee55;border-radius:38% 55% 42% 58%;padding:14px;font-size:.7rem;font-weight:800;position:absolute}.rig-pin,.poi{z-index:3;position:absolute;transform:translate(-50%,-50%)}.rig-pin{border:1px solid var(--line);background:var(--panel);min-width:110px;box-shadow:var(--shadow);cursor:pointer;border-radius:10px;padding:8px 9px}.rig-pin:hover{border-color:var(--cyan);transform:translate(-50%,-52%)}.rig-pin b,.rig-pin span{font-size:.66rem;display:block}.rig-pin span{color:var(--muted)}.rig-pin i{background:var(--green);border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.rig-pin.warn i{background:var(--amber)}.rig-pin.bad i{background:var(--red)}.poi{border:1px solid var(--line);background:var(--bg);color:var(--muted);border-radius:8px;padding:7px;font-size:.62rem}.route{background:repeating-linear-gradient(90deg,var(--amber) 0 7px,transparent 7px 12px);transform-origin:0;opacity:.75;height:2px;position:absolute}.north{text-align:center;font-size:.65rem;font-weight:900;position:absolute;top:18px;right:18px}.north:before{content:"▲";color:var(--cyan);font-size:1.4rem;display:block}.scale{border-top:3px solid var(--text);width:130px;padding-top:4px;font-size:.62rem;position:absolute;bottom:16px;left:18px}.map-side{align-content:start;gap:12px;display:grid}.analytics-chart{width:100%;height:250px;display:block}.legend{color:var(--muted);flex-wrap:wrap;gap:10px;font-size:.7rem;display:flex}.legend span:before{content:"";background:var(--dot);border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.donut{background:conic-gradient(var(--green) 0 76%,var(--amber) 76% 91%,var(--red) 91%);border-radius:50%;place-items:center;width:145px;height:145px;margin:auto;display:grid}.donut:after{content:attr(data-value);background:var(--panel);border-radius:50%;place-items:center;width:95px;height:95px;font-size:1.4rem;font-weight:950;display:grid}.modal-backdrop{z-index:100;background:#01070dc2;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-backdrop[hidden]{display:none}.modal{background:var(--panel);border:1px solid var(--line);border-radius:20px;width:min(760px,96vw);max-height:88vh;padding:24px;position:relative;overflow:auto;box-shadow:0 25px 80px #000a}.modal h2{margin:0 0 15px}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.7rem;position:absolute;top:12px;right:14px}.modal-actions{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.toast{z-index:110;background:var(--text);color:var(--bg);box-shadow:var(--shadow);opacity:0;pointer-events:none;border-radius:10px;padding:11px 15px;font-size:.78rem;font-weight:800;transition:all .22s;position:fixed;bottom:20px;right:20px;transform:translateY(15px)}.toast.show{opacity:1;transform:translateY(0)}.empty{text-align:center;color:var(--muted);padding:45px}@media (width<=1200px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.loop{grid-template-columns:repeat(4,minmax(150px,1fr))}.map-layout{grid-template-columns:1fr}.map-side{grid-template-columns:repeat(3,1fr)}.grid-3,.form-grid{grid-template-columns:1fr 1fr}}@media (width<=880px){.app-shell{display:block}.sidebar{width:290px;box-shadow:var(--shadow);transition:left .3s cubic-bezier(.32,.72,.28,1);position:fixed;left:-310px}.sidebar.open{left:0}.mobile-menu{place-items:center;display:inline-grid}.topbar{padding:0 14px}.scenario-label{display:none}main{padding:16px}.grid-2,.grid-equal,.grid-3{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}.loop{grid-template-columns:repeat(3,minmax(150px,1fr))}.map-side{grid-template-columns:1fr}.top-actions{gap:6px}.campaign span{max-width:45vw}}@media (width<=560px){.topbar{height:64px}.campaign b{font-size:.8rem}.campaign span{font-size:.67rem}.live-badge{display:none}.kpi-grid{grid-template-columns:1fr 1fr}.kpi{min-height:98px;padding:13px}.kpi strong{font-size:1.42rem}.loop{grid-template-columns:repeat(2,minmax(145px,1fr))}.form-grid{grid-template-columns:1fr}.page-head{flex-direction:column;align-items:flex-start}.ops-map{min-height:660px}.top-actions .icon-btn{width:32px;height:32px}}.input-section-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;display:flex}.input-section-head .card-sub{max-width:780px}.required-table{min-width:880px}.required-table th,.required-table td{vertical-align:top;line-height:1.5}.required-table th:first-child{min-width:140px}.required-table th:nth-child(2){min-width:175px}.required-table th:nth-child(3){min-width:330px}.required-table th:nth-child(4){min-width:135px}.required-table th:nth-child(5){min-width:160px}.required-table td{font-size:.9rem}.input-rules{color:var(--text);margin:10px 0 15px;padding-left:21px;line-height:1.55}.input-rules li{margin-bottom:9px}@media (width<=880px){.input-section-head{flex-direction:column;align-items:flex-start}}.rig-entry{margin-top:14px;scroll-margin-top:85px}.rig-entry fieldset{border:1px solid var(--line);border-radius:12px;margin:16px 0;padding:18px}.rig-entry legend{padding:0 8px;font-size:1rem;font-weight:700}.rig-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.rig-field{color:var(--text);flex-direction:column;gap:7px;font-size:.9rem;font-weight:650;display:flex}.rig-field input,.rig-field select,.rig-field textarea{border:1px solid var(--line);background:var(--bg2);width:100%;min-height:42px;color:var(--text);font:inherit;border-radius:8px;padding:9px 11px}.rig-field textarea{resize:vertical}.rig-field :focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.rig-wide{margin-top:16px}.rig-submit{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.rig-submit span{color:var(--muted);font-size:.9rem}@media (width<=1000px){.rig-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.rig-form-grid{grid-template-columns:1fr}.rig-entry fieldset{padding:12px}}.hub-well{cursor:pointer}.hub-well:hover,.hub-well:focus-visible{background:color-mix(in srgb,var(--cyan) 10%,transparent);outline:2px solid var(--cyan);outline-offset:-2px}.hub-batch{text-align:left;cursor:pointer;width:100%;color:var(--text);font:inherit;border:1px solid var(--line);background:var(--bg2);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.hub-batch:hover,.hub-batch:focus-visible{border-color:var(--cyan);outline:2px solid var(--cyan);outline-offset:2px}.hub-batch .batch-meta{color:var(--muted);margin-top:4px;font-size:.85rem;display:block}.integration-flow{margin-bottom:20px}.integration-heading{align-items:end;margin:20px 0 14px}.integration-heading h2{margin:3px 0;font-size:1.35rem}.integration-card{flex-direction:column;gap:10px;display:flex}.integration-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.integration-card-head h3{margin:0}.integration-facts{gap:10px;margin:0;display:grid}.integration-facts div{border-top:1px solid var(--line);padding-top:8px}.integration-facts dt{color:var(--muted);font-size:.86rem;font-weight:700}.integration-facts dd{margin:4px 0 0;line-height:1.5}.integration-foot{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:12px;font-size:.86rem;display:flex}.integration-empty{border:1px dashed var(--line);color:var(--muted);border-radius:10px;padding:20px}.inline-link{color:var(--cyan);margin-left:8px;font-weight:800}.inline-link:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.conflict-purpose{margin:14px 0}[data-conflict]:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px;background:color-mix(in srgb,var(--cyan) 10%,transparent)}.crew-summary{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.crew-summary span{border:1px solid var(--line);background:var(--bg2);color:var(--muted);border-radius:9px;padding:9px 13px}.crew-summary b{color:var(--text);font-size:1.1rem}.crew-form-card{margin-top:14px}.crew-handover{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.crew-handover .btn{margin-top:14px}.crew-demo{margin-bottom:14px}.crew-demo-kpis{flex-wrap:wrap;gap:10px;margin:14px 0;display:flex}.crew-demo-kpis span{border:1px solid var(--line);background:var(--bg2);color:var(--muted);border-radius:10px;padding:12px 15px}.crew-demo-kpis b{color:var(--text);font-size:1.2rem}.crew-demo .banner{margin-bottom:14px}.crew-demo-controls{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.crew-demo-controls .rig-field{min-width:210px}.crew-periods{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.crew-period{border:1px solid var(--line);background:var(--bg2);color:var(--muted);border-radius:10px;gap:3px;padding:12px;display:grid}.crew-period b{color:var(--text)}.crew-period.current{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 9%,var(--panel))}.crew-scenario-result{border-top:1px solid var(--line);margin-top:18px;padding-top:6px}.lab-input{align-items:center;gap:8px;display:flex}.lab-input input{width:100%;min-width:0}.lab-input small{color:var(--muted);white-space:nowrap;font-size:.8rem}.lab-checks{flex-direction:column;gap:8px;margin:16px 0;display:flex}.lab-checks label{align-items:center;gap:8px;display:flex}.lab-checks input{flex:none;width:18px;height:18px}.npt-fact{border:1px solid var(--line);background:var(--bg2);border-radius:9px;min-height:62px;padding:8px 12px}.npt-fact small{color:var(--muted);font-size:.8rem;display:block}.npt-fact b{margin-top:4px;font-size:.95rem;line-height:1.3;display:block}.npt-picked{background:color-mix(in srgb,var(--cyan) 12%,transparent)}.depth-controls{flex-wrap:wrap;align-items:end;gap:9px;display:flex}.depth-controls .rig-field{min-width:205px}.depth-chart{border:1px solid var(--line);background:var(--bg2);border-radius:12px;width:100%;padding:10px;overflow-x:auto}.depth-chart svg{width:100%;min-width:620px;max-height:520px;display:block}.depth-legend{flex-wrap:wrap;gap:20px;margin:14px 0;display:flex}.depth-note{background:color-mix(in srgb,var(--amber) 9%,var(--panel));border:1px solid var(--line);border-radius:9px;margin:12px 0 20px;padding:10px 12px;font-size:.9rem}@media (width<=560px){.depth-controls{width:100%}.depth-controls .rig-field{min-width:100%}}.perf-winner{border-color:color-mix(in srgb,var(--cyan) 55%,var(--line))}.perf-winner h3{font-size:1.6rem}.perf-winner p{line-height:1.55}.perf-bars{gap:6px;display:grid}.perf-bar-row{border:1px solid var(--line);background:var(--bg2);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:9px;grid-template-columns:84px minmax(0,1fr) 50px;align-items:center;gap:12px;padding:8px 10px;font-size:.85rem;display:grid}.perf-bar-row:hover,.perf-bar-row.selected{border-color:var(--cyan)}.perf-bar-row .track{min-width:0}.perf-bar-row .track i{background:linear-gradient(90deg,var(--blue),var(--cyan))}.perf-bar-row strong{text-align:right}.perf-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.perf-facts span{border:1px solid var(--line);color:var(--muted);border-radius:9px;justify-content:space-between;gap:8px;padding:10px;font-size:.82rem;display:flex}.perf-facts b{color:var(--text)}.perf-wells{flex-wrap:wrap;gap:8px;display:flex}.perf-table-link{color:var(--cyan);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}@media (width<=560px){.perf-facts{grid-template-columns:1fr}.perf-bar-row{grid-template-columns:78px minmax(0,1fr) 40px;gap:6px}}.app-shell{grid-template-columns:auto minmax(0,1fr)}.sidebar{gap:4px;width:290px;padding:20px 15px;transition:width .32s cubic-bezier(.4,0,.2,1),padding .32s cubic-bezier(.4,0,.2,1),border-color .32s cubic-bezier(.4,0,.2,1)}.brand{border-bottom:1px solid var(--line);margin-bottom:6px;padding:3px 7px 17px}.brand-mark{flex:none}.nav-group{border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);margin:8px 0 12px;padding:0 0 10px}.nav-group:last-child{border-bottom:0}.nav-title{color:var(--muted);letter-spacing:.055em;align-items:center;gap:10px;padding:7px 8px;font-size:.76rem;font-weight:850;display:flex}.nav-step{border:1px solid var(--line);width:26px;height:26px;color:var(--cyan);letter-spacing:0;background:var(--bg2);border-radius:7px;flex:none;place-items:center;font-size:.72rem;display:grid}.current-group .nav-title{color:var(--text)}.current-group .nav-step{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 14%,var(--panel))}.nav-btn{gap:9px;min-height:40px;padding:9px 10px;font-size:.88rem;line-height:1.3}.nav-icon{flex:none;width:22px;font-size:1rem}.nav-btn span:last-child{min-width:0}.nav-btn.active{box-shadow:inset 3px 0 var(--cyan)}.nav-btn:focus-visible,.workflow-stage:focus-visible,.flow-link:focus-visible,.loop-step:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.page-head{border:1px solid var(--line);background:linear-gradient(115deg,color-mix(in srgb,var(--cyan) 9%,var(--panel)),var(--panel));border-radius:16px;align-items:center;margin-bottom:12px;padding:18px 21px}.page-head>div:first-child{min-width:0}.page-head h1{line-height:1.18}.page-head p{font-size:.94rem;line-height:1.5}.page-head .eyebrow{letter-spacing:.09em;font-size:.76rem}.page-head .head-actions{justify-content:flex-end}.workflow-rail{scrollbar-width:thin;grid-template-columns:repeat(5,minmax(162px,1fr));gap:8px;margin-bottom:3px;padding:2px 2px 7px;display:grid;overflow-x:auto}.workflow-stage{border:1px solid var(--line);background:var(--panel);min-height:69px;color:var(--text);text-align:left;cursor:pointer;border-radius:11px;align-items:center;gap:10px;min-width:0;padding:9px 11px;display:flex}.workflow-stage:hover,.workflow-stage.current{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 9%,var(--panel))}.workflow-stage-number{background:var(--bg2);width:30px;height:30px;color:var(--cyan);border-radius:8px;flex:none;place-items:center;font-size:.87rem;font-weight:850;display:grid}.workflow-stage b{font-size:.82rem;line-height:1.2;display:block}.workflow-stage small{color:var(--muted);margin-top:3px;font-size:.72rem;line-height:1.25;display:block}.flow-hint{border-bottom:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:9px 2px 13px;font-size:.84rem;display:flex}.flow-hint-actions{flex-wrap:wrap;gap:8px;display:flex}.flow-link{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:6px 9px;font-size:.79rem;font-weight:700}.flow-link.strong{border-color:color-mix(in srgb,var(--cyan) 55%,var(--line));color:var(--cyan)}.live-badge.demo{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 45%,var(--line));background:color-mix(in srgb,var(--amber) 9%,var(--panel))}.loop{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.loop-step{min-height:96px}.loop-step b{margin:12px 0 4px;font-size:.87rem}.loop-step span:last-child{font-size:.79rem;line-height:1.35}@media (width<=1150px){.workflow-rail{grid-template-columns:repeat(5,minmax(180px,1fr))}.loop{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=880px){.sidebar{width:290px;left:-310px}.sidebar.open{left:0}.workflow-rail{grid-template-columns:repeat(5,190px)}.page-head{align-items:flex-start}.loop{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.page-head{padding:15px}.page-head .head-actions{justify-content:flex-start}.workflow-stage{min-height:62px}.workflow-stage small{font-size:.73rem}.flow-hint-actions{width:100%}.flow-link{font-size:.76rem}.loop{grid-template-columns:1fr}.loop-step{min-height:80px}}@media (width<=900px){.crew-periods{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.crew-periods{grid-template-columns:1fr}.crew-demo-controls .rig-field{min-width:100%}}.sidebar{padding:16px 12px}.brand{padding-bottom:13px}.nav-group{margin:4px 0;padding:0 0 4px}.nav-title{width:100%;color:var(--muted);text-align:left;cursor:pointer;letter-spacing:.02em;background:0 0;border:0;align-items:center;gap:8px;min-height:39px;padding:5px 7px;font-family:inherit;font-size:.8rem;font-weight:800;line-height:1.25;display:flex}.nav-title:hover{color:var(--text)}.nav-title span:nth-child(2){flex:1}.nav-chevron{font-size:1.15rem;transition:transform .2s}.nav-group.expanded .nav-chevron{transform:rotate(180deg)}.nav-items{padding:1px 0 6px 34px;display:none}.nav-group.expanded .nav-items{display:block}.nav-btn{min-height:37px;margin:1px 0;padding:7px 8px;font-size:.85rem}.nav-order{width:22px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:.72rem}.nav-btn.active .nav-order{color:var(--cyan)}.nav-title:focus-visible,.stage-subitem:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.page-head{margin-bottom:10px;padding:15px 18px}.page-head h1{font-size:clamp(1.45rem,2.2vw,2rem)}.page-head p{margin-top:5px}.workflow-rail{grid-template-columns:repeat(5,minmax(142px,1fr));gap:6px;padding-bottom:4px}.workflow-stage{gap:8px;min-height:47px;padding:7px 9px}.workflow-stage-number{width:26px;height:26px;font-size:.75rem}.workflow-stage b{font-size:.79rem}.stage-submenu{scrollbar-width:thin;gap:6px;margin-bottom:2px;padding:5px 1px 9px;display:flex;overflow-x:auto}.stage-subitem{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--muted);cursor:pointer;border-radius:8px;flex:none;padding:6px 10px;font-size:.78rem;font-weight:700}.stage-subitem span{color:var(--cyan);margin-right:7px;font-size:.7rem}.stage-subitem:hover,.stage-subitem.active{border-color:var(--cyan);color:var(--text);background:color-mix(in srgb,var(--cyan) 9%,var(--panel))}.flow-hint{margin-bottom:14px;padding:6px 2px 10px}@media (width<=1150px){.workflow-rail{grid-template-columns:repeat(5,minmax(155px,1fr))}}@media (width<=880px){.sidebar{width:290px;left:-310px}.workflow-rail{grid-template-columns:repeat(5,minmax(155px,1fr))}}.triage-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.triage-overview>div{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:13px 16px}.triage-overview strong{font-size:1.45rem;line-height:1.2;display:block}.triage-overview span{color:var(--muted);font-size:.87rem}.triage-toolbar{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.triage-toolbar button{border:1px solid var(--line);background:var(--panel);color:var(--text);cursor:pointer;border-radius:9px;padding:8px 12px;font-size:.88rem}.triage-toolbar button[aria-pressed=true],.triage-toolbar button:hover{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 12%,var(--panel))}.triage-toolbar button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.triage-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.triage-card{flex-direction:column;gap:13px;min-width:0;display:flex}.triage-card-top{align-items:flex-start;gap:12px;display:flex}.triage-card-top>div{flex:1;min-width:0}.triage-card-top .eyebrow{letter-spacing:.04em;font-size:.72rem}.triage-card-top h3{margin:0;font-size:1.06rem;line-height:1.35}.triage-rank{color:var(--cyan);flex:none;font-size:.81rem;font-weight:800}.triage-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.triage-facts>div{background:var(--bg2);border:1px solid var(--line);border-radius:8px;min-width:0;padding:9px}.triage-facts small,.triage-next small{color:var(--muted);font-size:.76rem;display:block}.triage-facts b{overflow-wrap:anywhere;margin-top:3px;font-size:.86rem;display:block}.triage-next{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.triage-next p{margin:3px 0 0;font-size:.9rem;line-height:1.4}.triage-card>.btn{align-self:flex-start;margin-top:auto}.triage-gate p{max-width:800px;color:var(--muted);line-height:1.5}.triage-gate .head-actions{margin-top:12px}@media (width<=1050px){.triage-list{grid-template-columns:1fr}}@media (width<=600px){.triage-overview,.triage-facts{grid-template-columns:1fr 1fr}.triage-next{grid-template-columns:1fr}.triage-card-top{flex-wrap:wrap}.triage-card-top .status{margin-left:auto}}.triage-short{display:none}.triage-shortcut{border:1px solid color-mix(in srgb,var(--cyan) 60%,var(--line));background:color-mix(in srgb,var(--cyan) 11%,var(--panel));color:var(--text);white-space:nowrap;cursor:pointer;border-radius:9px;min-height:36px;padding:6px 11px;font-size:.83rem;font-weight:800}.triage-shortcut:hover,.triage-shortcut.active{background:color-mix(in srgb,var(--cyan) 22%,var(--panel));border-color:var(--cyan)}.triage-shortcut:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}@media (width<=1050px){.triage-shortcut .triage-full{display:none}.triage-shortcut .triage-short{display:inline}}@media (width<=560px){.topbar{gap:8px}.top-actions{gap:5px}.campaign span,.scenario-label{display:none}.triage-shortcut{padding:5px 8px;font-size:.78rem}}.marketing-controls,.marketing-results,.marketing-next{margin-bottom:14px}.marketing-controls .card-sub{margin-bottom:0}.marketing-controls .rig-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.marketing-summary{margin-top:14px}.marketing-table{min-width:1150px}.marketing-table th,.marketing-table td{white-space:normal;vertical-align:top;font-size:.86rem;line-height:1.45}.marketing-table th{font-size:.72rem}.marketing-table td:first-child{min-width:140px}.marketing-table td:nth-child(2){min-width:205px}.marketing-table td:nth-child(3){min-width:225px}.marketing-table td:nth-child(5){min-width:170px}.marketing-table td:nth-child(6){min-width:270px}.marketing-table small{color:var(--muted);margin-top:3px;font-size:.75rem;display:block}.marketing-table .status{white-space:normal;line-height:1.3}.marketing-next p{color:var(--text);max-width:930px;line-height:1.6}@media (width<=1050px){.marketing-controls .rig-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.marketing-controls .rig-form-grid{grid-template-columns:1fr}.marketing-summary{grid-template-columns:1fr 1fr}}.coordinate-note{border:1px solid var(--line);background:var(--bg2);border-radius:9px;margin-bottom:14px;padding:12px}.coordinate-note b{color:var(--cyan);font-size:.88rem}.coordinate-note p{color:var(--muted);margin:5px 0 8px;font-size:.9rem;line-height:1.5}.coordinate-map-card{margin-bottom:18px}.coordinate-map-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:15px;margin-bottom:18px;display:grid}.coordinate-overview,.coordinate-inset{border:1px solid var(--line);background:var(--bg2);border-radius:10px;min-width:0;padding:12px}.coordinate-overview svg,.coordinate-inset svg{width:100%;display:block}.coordinate-point{cursor:pointer}.coordinate-point:focus-visible{outline:none}.coordinate-point:focus-visible circle,.coordinate-point:hover circle{stroke:var(--text);stroke-width:3px}.coordinate-inset p{color:var(--muted);font-size:.9rem}.coordinate-map-card .rig-field{min-width:200px}.coordinate-map-card .card-sub{line-height:1.5}@media (width<=1000px){.coordinate-map-grid{grid-template-columns:1fr}.coordinate-inset svg{max-height:340px}.coordinate-overview{overflow-x:auto}.coordinate-overview svg{min-width:620px}}@media (width<=560px){.coordinate-map-card .rig-field{width:100%}}.trajectory-card{margin-bottom:18px}.trajectory-plots{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.trajectory-plots .coordinate-overview svg{min-width:0}.survey-details{border:1px solid var(--line);border-radius:10px;margin:14px 0;padding:12px}.survey-details summary{cursor:pointer;color:var(--text);font-size:.92rem;font-weight:750}.survey-details[open] summary{margin-bottom:12px}.survey-details p{font-size:.9rem;line-height:1.55}.trajectory-card .triage-overview strong{font-size:1.2rem}.coordinate-point:hover text,.coordinate-point:focus-visible text{fill:var(--cyan)}@media (width<=900px){.trajectory-plots{grid-template-columns:1fr}.trajectory-plots svg{max-height:470px}}.trajectory3d-modal{width:min(1140px,96vw);max-height:94vh;padding:24px}.trajectory3d-controls{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:12px;display:flex}.trajectory3d-controls label{color:var(--muted);align-items:center;gap:8px;font-size:.86rem;display:flex}.trajectory3d-controls input[type=range]{width:120px;accent-color:var(--cyan);padding:0}.trajectory3d-controls select{font-size:.8rem}.trajectory3d-stage{border:1px solid var(--line);background:var(--bg2);cursor:grab;touch-action:none;border-radius:12px;overflow:hidden}.trajectory3d-stage.dragging{cursor:grabbing}.trajectory3d-stage:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.trajectory3d-stage svg{-webkit-user-select:none;user-select:none;width:100%;min-height:340px;max-height:62vh;display:block}.trajectory3d-help{color:var(--muted);margin:10px 0;font-size:.86rem;line-height:1.5}.trajectory3d-help span{display:block}.trajectory3d-facts{flex-wrap:wrap;gap:12px;display:flex}.trajectory3d-facts span{background:var(--bg2);border:1px solid var(--line);color:var(--muted);border-radius:8px;padding:8px 11px;font-size:.85rem}.trajectory3d-facts b{color:var(--text)}@media (width<=600px){.trajectory3d-modal{padding:17px}.trajectory3d-controls label{flex-wrap:wrap}.trajectory3d-controls input[type=range]{width:100px}.trajectory3d-stage svg{min-height:280px}.trajectory3d-facts{gap:6px}}.coordinate-map-label:hover rect,.coordinate-map-label:focus-visible rect{stroke:var(--cyan);stroke-width:2px}.coordinate-map-label text{pointer-events:none}.well-schematic{border:1px solid var(--line);background:var(--bg2);border-radius:14px;margin:18px 0;padding:18px}.schematic-layout{grid-template-columns:minmax(300px,1fr) minmax(0,1.15fr);align-items:start;gap:18px;display:grid}.schematic-layout svg{width:100%;display:block}.schematic-layout table{min-width:510px}.schematic-layout th,.schematic-layout td{white-space:nowrap;font-size:.875rem}.schematic-note{color:var(--muted);margin:16px 0;font-size:.9rem;line-height:1.55}.well-schematic .card-sub{margin:0;font-size:.9rem;line-height:1.5}.well-schematic h3{font-size:1rem}@media (width<=1000px){.schematic-layout{grid-template-columns:1fr}.schematic-layout svg{max-width:650px;margin:auto}}@media (width<=560px){.well-schematic{padding:10px}.schematic-layout{gap:10px}}.construction-input{margin-bottom:18px}.construction-input .card-sub{margin:0;font-size:.9rem;line-height:1.5}.construction-editor input{width:100%;min-width:95px;font-size:.9rem}.construction-editor td,.construction-editor th{font-size:.9rem}.construction-editor input[readonly]{opacity:.7}.construction-input button:disabled{cursor:not-allowed;opacity:.5}.perf-interval{border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:18px}.perf-interval legend{color:var(--cyan);padding:0 8px;font-weight:700}.perf-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:14px;display:grid}#perforationCalculation{margin:16px 0}#perforationForm+h3{margin-top:28px}@media (width<=1000px){.perf-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.perf-fields{grid-template-columns:1fr}.perf-interval{padding:12px}}.perforation-legend{border:1px solid var(--line);border-radius:10px;margin-top:18px;padding:14px}.perforation-legend h4{margin:0 0 12px;font-size:1rem}.perforation-legend-row{border-bottom:1px solid var(--line);align-items:start;gap:12px;padding:10px 0;display:flex}.perforation-key{border:1px solid var(--red);min-width:44px;color:var(--red);border-radius:6px;justify-content:center;align-items:center;padding:4px 8px;font-size:.875rem;font-weight:700;display:inline-flex}.perforation-legend-row b{overflow-wrap:anywhere;font-size:1rem}.perforation-legend-row p{color:var(--muted);margin:4px 0 0;font-size:.9rem;line-height:1.5}.perforation-legend .schematic-note{margin-bottom:0}.delivery-context{justify-content:space-between;align-items:start;gap:20px;display:flex}.delivery-context .head-actions{margin-top:14px}.delivery-context .rig-field{min-width:240px}.delivery-context .card-sub{font-size:.9rem}.delivery-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0 20px;display:grid}.delivery-stats>div{border:1px solid var(--line);background:var(--bg2);border-radius:12px;padding:18px}.delivery-stats strong{color:var(--cyan);font-size:1.7rem;display:block}.delivery-stats span{color:var(--muted);margin-top:6px;font-size:.9rem;display:block}.delivery-tag{border:1px solid var(--line);border-radius:6px;padding:5px 9px;font-size:.875rem;line-height:1.4;display:inline-block}.delivery-tag.hold{color:var(--red);border-color:var(--red)}.delivery-tag.unknown{color:var(--amber)}.delivery-tag.pass{color:var(--cyan)}.delivery-table td,.delivery-table th{font-size:.9rem;line-height:1.5}.delivery-table small{color:var(--muted);font-size:.875rem}.delivery-auto,.delivery-phase-chips{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.delivery-auto span{border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:.9rem}.delivery-evidence{grid-column:1/-1}.delivery-gates{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.delivery-gates .perf-interval{margin:0 0 16px}.delivery-gates .perf-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.phase-strip{border:1px solid var(--line);border-radius:10px;gap:3px;min-height:42px;margin:18px 0;padding:5px;display:flex}.phase-strip>div{background:var(--phase);color:#102131;border-radius:5px;place-items:center;min-width:22px;font-weight:800;display:grid}.phase-number{background:var(--phase);color:#102131;border-radius:5px;place-items:center;width:25px;height:25px;margin-right:7px;font-size:.875rem;font-weight:800;display:inline-grid}.delivery-message{font-size:.9rem}.card #compatibilityResults h3{margin-top:24px}@media (width<=1000px){.delivery-context{flex-direction:column}.delivery-gates{grid-template-columns:1fr}}@media (width<=560px){.delivery-stats{grid-template-columns:1fr}.delivery-context .rig-field{width:100%;min-width:0}.delivery-gates .perf-fields{grid-template-columns:1fr}.phase-strip{overflow-x:auto}}.perforating-string-editor{border:1px solid var(--line);background:var(--bg2);border-radius:10px;margin:18px 0;padding:15px}.perforating-string-editor h4{margin:0 0 6px;font-size:1rem}.perforating-string-editor .card-sub{font-size:.9rem}.string-editor-table input{border:1px solid var(--line);background:var(--panel);width:100%;min-width:85px;color:var(--text);border-radius:6px;padding:8px;font-size:.9rem}.string-editor-table td:first-child{min-width:210px}.string-editor-table td:first-child input{margin-top:5px}.string-editor-table input[readonly]{opacity:.65}.perforating-string-summary{border:1px solid var(--line);border-radius:10px;margin:16px 0;padding:16px}.perforating-string-summary summary{cursor:pointer;color:var(--text);font-size:1rem;line-height:1.5}.string-tally-svg{width:100%;max-width:760px;margin:14px 0;display:block}.perforating-string-summary th,.perforating-string-summary td{font-size:.9rem}.perforating-string-editor .input-section-head{align-items:start;gap:14px}@media (width<=560px){.perforating-string-editor,.perforating-string-summary{padding:10px}.perforating-string-editor .input-section-head{flex-direction:column}.string-tally-svg{min-width:570px}.perforating-string-summary{overflow-x:auto}}.completion-key{color:var(--cyan);white-space:nowrap}.completion-legend{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}.modal:has(.completion-view){width:min(1120px,96vw)}.completion-view .well-schematic{border:0;padding:8px}.scenario-card.scenario-selected{outline:2px solid var(--cyan);outline-offset:-2px}tr.scenario-selected{background:var(--panel2)}.review-button{font:inherit;cursor:pointer;min-height:40px}.review-button:hover,.review-button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.review-link{text-align:left;white-space:normal}.sidebar-inner{flex-direction:column;flex:1;min-width:266px;display:flex}.nav-overlay{z-index:19;opacity:0;pointer-events:none;background:#020914ad;transition:opacity .3s cubic-bezier(.4,0,.2,1);position:fixed;inset:0}.nav-overlay.show{opacity:1;pointer-events:auto}@media (width>=881px){.app-shell.nav-closed .sidebar{border-right-color:#0000;width:0;padding-left:0;padding-right:0;overflow:hidden}.nav-overlay{display:none}}@media (prefers-reduced-motion:reduce){.sidebar,.nav-overlay{transition:none!important}}
