:root{--paper: #f3f1ea;--panel: #fbfaf6;--panel-2: #efece3;--panel-3: #e6e2d6;--line: #dcd7ca;--line-2: #c6bfae;--ink: #1b1e23;--ink-2: #4a4f57;--ink-3: #777b82;--accent: #c94b16;--accent-ink: #ffffff;--accent-soft: #f6e2d6;--traj: #12579b;--target: #c94b16;--teach: #0d7466;--teach-soft: #dcefe9;--warn: #a66a12;--warn-soft: #f7ead3;--err: #b8322a;--err-soft: #f6dcd8;--ok: #2c7a4b;--canvas-bg: #fdfcf8;--grid: #ebe7dc;--grid-3d: #cbc4b2;--ground-3d: #e7e1d1;--shadow: 0 1px 0 rgba(27, 30, 35, .04), 0 8px 24px -12px rgba(27, 30, 35, .18);--sans: "IBM Plex Sans", "IBM Plex Sans Arabic", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;--ctl: 34px;--fs: 14px;--fs-s: 12.5px;color-scheme:light}:root[data-theme=dark]{--paper: #121417;--panel: #181b1f;--panel-2: #1f2328;--panel-3: #262b31;--line: #2a2f35;--line-2: #3b4148;--ink: #e9e6de;--ink-2: #b7b4ab;--ink-3: #85837b;--accent: #ee7a3f;--accent-ink: #1b1e23;--accent-soft: #3a2519;--traj: #6db3ff;--target: #ee7a3f;--teach: #3fc6ae;--teach-soft: #15322d;--warn: #e0a64a;--warn-soft: #3a2d16;--err: #f0766b;--err-soft: #3d1c1a;--ok: #6cc78f;--canvas-bg: #0f1114;--grid: #1d2126;--grid-3d: #353b42;--ground-3d: #1a1e23;--shadow: 0 1px 0 rgba(0, 0, 0, .3), 0 10px 30px -12px rgba(0, 0, 0, .6);color-scheme:dark}:root[lang=ar]{--sans: "IBM Plex Sans Arabic", "IBM Plex Sans", system-ui, sans-serif}:root[data-layout=tablet],:root[data-layout=portrait]{--ctl: 44px;--fs: 15px;--fs-s: 14px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font:400 var(--fs) / 1.4 var(--sans);-webkit-font-smoothing:antialiased;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}[dir=rtl] .flip-rtl{transform:scaleX(-1)}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;unicode-bidi:isolate;direction:ltr;white-space:nowrap}.num-u{color:var(--ink-3);margin-inline-start:.3em;font-size:.86em}.num-teach{border:0;background:transparent;padding:0 2px;margin:0 -2px;border-radius:3px;text-decoration:underline dotted var(--teach);text-decoration-thickness:1.5px;text-underline-offset:3px;color:inherit;font-size:inherit;text-align:inherit}.num-teach:hover,.num-teach:focus-visible{background:var(--teach-soft);color:var(--teach)}.unit-dim{color:var(--ink-3);font-size:var(--fs-s);margin-inline-start:4px}.eyebrow{display:block;margin:0 0 8px;font:600 11.5px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}:root[lang=ar] .eyebrow{letter-spacing:0;font-size:13px}:root[data-layout=tablet] .eyebrow,:root[data-layout=portrait] .eyebrow{font-size:13px}.eyebrow-name{color:var(--target);letter-spacing:0;text-transform:none;margin-inline-start:6px}.icon-btn{display:inline-grid;place-items:center;inline-size:var(--ctl);block-size:var(--ctl);padding:0;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink-2)}.icon-btn:hover:not(:disabled){background:var(--panel-2);color:var(--ink)}.chip{display:inline-flex;align-items:center;gap:6px;block-size:var(--ctl);padding-inline:12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink-2);white-space:nowrap}.chip:hover{border-color:var(--line-2);color:var(--ink)}.chip.lang{font-family:"IBM Plex Sans Arabic",var(--sans);min-inline-size:72px;justify-content:center}.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;block-size:var(--ctl);padding-inline:14px;border:1px solid var(--ink);border-radius:7px;background:var(--ink);color:var(--paper);font-weight:500;white-space:nowrap}.primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.primary.big{block-size:48px;padding-inline:22px;font-size:16px}.divider{inline-size:1px;block-size:22px;background:var(--line);margin-inline:2px}.segmented{display:inline-flex;padding:2px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2);gap:2px;flex-wrap:wrap}.segmented button{min-block-size:calc(var(--ctl) - 6px);padding-inline:10px;border:0;border-radius:6px;background:transparent;color:var(--ink-2)}.segmented button.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 2px #0000001f;font-weight:500}.toggle{display:inline-flex;align-items:center;gap:8px;block-size:var(--ctl);padding-inline:8px 12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink-2)}.toggle-track{inline-size:30px;block-size:18px;border-radius:9px;background:var(--line-2);position:relative;transition:background .15s}.toggle-knob{position:absolute;inset-block-start:2px;inset-inline-start:2px;inline-size:14px;block-size:14px;border-radius:50%;background:var(--panel);transition:inset-inline-start .15s}.toggle.on{border-color:var(--teach);color:var(--teach);background:var(--teach-soft)}.toggle.on .toggle-track{background:var(--teach)}.toggle.on .toggle-knob{inset-inline-start:14px}.field{display:flex;flex-direction:column;gap:5px;min-inline-size:0}.field-label{font-size:var(--fs-s);color:var(--ink-2)}.field-box{display:flex;align-items:center;block-size:var(--ctl);border:1px solid var(--line);border-radius:7px;background:var(--panel);transition:border-color .12s,box-shadow .12s}.field-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field-box input{flex:1;min-inline-size:0;block-size:100%;border:0;outline:0;background:transparent;padding-inline:10px;font-family:var(--mono);font-size:var(--fs)}.field-box input[type=date]{font-family:var(--mono)}.field-unit{padding-inline:4px 10px;color:var(--ink-3);font:12.5px var(--mono);white-space:nowrap}.field-hint{font-size:var(--fs-s);color:var(--ink-3)}.check{display:flex;align-items:center;gap:10px;min-block-size:var(--ctl);color:var(--ink-2)}.check input{inline-size:18px;block-size:18px;accent-color:var(--accent)}.app{display:flex;flex-direction:column;block-size:100dvh}.app>.body{flex:1;min-block-size:0}.app>.topbar,.app>.statusbar,.app>.issues-strip{flex:none}.loading{block-size:100dvh;background:var(--paper)}.topbar{display:flex;align-items:center;gap:14px;block-size:52px;padding-inline:12px 10px;background:var(--panel);border-block-end:1px solid var(--line)}:root[data-layout=tablet] .topbar,:root[data-layout=portrait] .topbar{block-size:60px}.brand{display:flex;align-items:center;gap:10px}.brand-bg{fill:var(--ink)}.brand-path{fill:none;stroke:var(--paper);stroke-width:2.5;stroke-linecap:round}.brand-dot{fill:var(--accent)}.brand-name{font-weight:600;letter-spacing:-.01em;white-space:nowrap}.crumbs{display:flex;align-items:center;gap:6px;min-inline-size:0;color:var(--ink-2);white-space:nowrap;overflow:hidden}.crumb.strong{color:var(--ink);font-weight:600}.crumbs .sep{color:var(--line-2)}.rev{font-family:var(--mono);font-size:12.5px;color:var(--ink-3)}.status-pill{font-size:12px;padding:2px 8px;border-radius:99px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2)}.top-actions{display:flex;align-items:center;gap:6px;margin-inline-start:auto}.issues-badge{display:inline-flex;align-items:center;gap:6px;block-size:var(--ctl);padding-inline:10px;border-radius:7px;border:1px solid var(--line);background:var(--panel);color:var(--ink-2)}.issues-badge .count{font:600 13px var(--mono);min-inline-size:18px;block-size:20px;padding-inline:5px;border-radius:10px;display:inline-grid;place-items:center;background:var(--panel-3)}.issues-badge.sev-error{border-color:var(--err);color:var(--err)}.issues-badge.sev-error .count{background:var(--err);color:#fff}.issues-badge.sev-warning{border-color:var(--warn);color:var(--warn)}.issues-badge.sev-warning .count{background:var(--warn);color:#fff}.issues-badge.sev-info .count{background:var(--teach);color:#fff}.report-btn{display:flex;flex-direction:column;align-items:stretch;position:relative}.report-status{display:none}.report-btn.full .report-status{display:block;font-size:13px;margin-block-start:4px;white-space:normal}.report-status.st-stale,.report-status.st-building{color:var(--warn)}.report-status.st-ready{color:var(--ok)}.report-status.st-error{color:var(--err)}.issues-strip{display:flex;align-items:center;gap:12px;padding:6px 12px;min-block-size:46px;background:var(--warn-soft);border-block-end:1px solid var(--line);animation:drop .18s ease-out}.issue-msg{font-weight:500}.issue-meta{color:var(--ink-3);font-size:var(--fs-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-inline-size:0;flex:1}.issue-nav{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:13px}.issue-none{flex:1;color:var(--ok)}.sev-dot{inline-size:10px;block-size:10px;border-radius:50%;flex:none}.sev-dot.sev-error{background:var(--err)}.sev-dot.sev-warning{background:var(--warn)}.sev-dot.sev-info{background:var(--teach)}.statusbar{display:flex;align-items:center;gap:8px;block-size:28px;padding-inline:12px;background:var(--panel);border-block-start:1px solid var(--line);color:var(--ink-3);font-size:12px;white-space:nowrap;overflow:hidden}:root[data-layout=portrait] .statusbar{font-size:13px}.statusbar .spacer{flex:1}.statusbar .dot{inline-size:8px;block-size:8px;border-radius:50%;background:var(--ok)}.statusbar .dot.bad{background:var(--err)}.warn-text{color:var(--warn)}.err-text{color:var(--err)}.report-mini.st-stale,.report-mini.st-building{color:var(--warn)}.report-mini.st-ready{color:var(--ok)}.rail{display:flex;flex-direction:column;gap:4px;padding:8px 6px;background:var(--panel);border-inline-end:1px solid var(--line)}.rail-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 2px;border:0;border-radius:8px;background:transparent;color:var(--ink-3);font-size:11px}.rail-btn:hover{background:var(--panel-2);color:var(--ink)}.rail-btn.on{background:var(--ink);color:var(--paper)}:root[data-layout=tablet] .rail{padding:8px 6px;inline-size:56px}:root[data-layout=tablet] .rail-btn{min-block-size:44px;padding:10px 0}:root[data-layout=tablet] .rail-btn span{display:none}.body{min-block-size:0}.layout-desktop .body{display:grid;grid-template-columns:64px minmax(0,1fr) 344px}.main{display:flex;flex-direction:column;min-block-size:0;min-inline-size:0;position:relative}.layout-desktop .main{display:grid;grid-template-rows:minmax(0,1fr) minmax(250px,38%)}.inspector-col{border-inline-start:1px solid var(--line);background:var(--panel);overflow:auto;min-block-size:0}.canvas{display:flex;flex-direction:column;min-block-size:0;flex:1;background:var(--canvas-bg)}.canvas-head{display:flex;align-items:center;gap:12px;padding:6px 10px;border-block-end:1px solid var(--line);background:var(--panel)}.canvas-tabs{display:inline-flex;gap:2px;padding:2px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line)}.canvas-tabs button{block-size:calc(var(--ctl) - 6px);padding-inline:12px;border:0;border-radius:6px;background:transparent;color:var(--ink-2);white-space:nowrap}.canvas-tabs button.on{background:var(--panel);color:var(--ink);font-weight:500;box-shadow:0 1px 2px #0000001a}.canvas-hint{color:var(--ink-3);font-size:var(--fs-s);margin-inline-start:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-body{flex:1;min-block-size:0;display:grid;position:relative}.canvas-body.tab-split{grid-template-columns:1fr 1fr}.pane{position:relative;min-inline-size:0;min-block-size:0}.pane+.pane{border-inline-start:1px solid var(--line)}.plot-host{position:absolute;inset:0;overflow:hidden}.plot{display:block;touch-action:none;user-select:none;font-family:var(--mono)}.plot .grid line{stroke:var(--grid);stroke-width:1}.plot .axis-band{fill:var(--canvas-bg);opacity:.92}.plot .tick-labels text{fill:var(--ink-3);font-size:11.5px}:root[data-layout=tablet] .plot .tick-labels text,:root[data-layout=portrait] .plot .tick-labels text{font-size:13px}.plot .axis-title{fill:var(--ink-2);font:600 11px var(--sans);letter-spacing:.06em}.plot .datum{stroke:var(--line-2);stroke-dasharray:4 4}.plot .datum-label{fill:var(--ink-3);font-size:11px}.plot .traj{fill:none;stroke:var(--traj);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}.plot .traj.unsolved{stroke:var(--err);stroke-dasharray:6 5}.plot .traj-halo{fill:none;stroke:var(--canvas-bg);stroke-width:7;stroke-linejoin:round}.plot .target-mark line,.plot .target-mark circle{stroke:var(--target);stroke-width:2;fill:color-mix(in srgb,var(--target) 14%,transparent)}.plot .seg-label circle{fill:var(--canvas-bg);stroke:var(--traj);stroke-width:2}.plot .seg-label text{fill:var(--ink-2);font-size:11.5px;font-weight:500;paint-order:stroke;stroke:var(--canvas-bg);stroke-width:3px}.plot .handle{cursor:grab}.plot .handle:active{cursor:grabbing}.plot .handle .hit{fill:transparent;pointer-events:all}.plot .handle:hover .hit{fill:color-mix(in srgb,var(--accent) 12%,transparent)}.plot .handle-kop .glyph{fill:var(--canvas-bg);stroke:var(--accent);stroke-width:3}.plot .handle-target .glyph{fill:var(--target);stroke:var(--canvas-bg);stroke-width:1.5}.plot .handle text{fill:var(--accent);font-size:12px;font-weight:600;paint-order:stroke;stroke:var(--canvas-bg);stroke-width:3px;pointer-events:none}.plot .construction circle{fill:none;stroke:var(--teach);stroke-width:1.2;stroke-dasharray:5 5;opacity:.8}.plot .construction line{stroke:var(--teach);stroke-width:1;opacity:.8}.plot .construction .centre{fill:var(--teach);stroke:none;opacity:1}.plot .construction text{fill:var(--teach);font-size:12px;paint-order:stroke;stroke:var(--canvas-bg);stroke-width:3px}.plot .vs-line{stroke:var(--ink-3);stroke-dasharray:2 5}.plot .wellhead circle{fill:var(--canvas-bg);stroke:var(--ink);stroke-width:2}.plot .wellhead path{stroke:var(--ink);stroke-width:1.5}.plot .wellhead text{fill:var(--ink);font-size:12px;font-weight:600}.plot .north-arrow path{fill:var(--ink)}.plot .north-arrow text{fill:var(--ink);font-size:11px;font-weight:600}.scene-host{position:absolute;inset:0}.scene-canvas{position:absolute;inset:0;touch-action:none}.scene-canvas canvas{display:block}.scene-labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.scene-label{position:absolute;left:0;top:0;visibility:hidden;white-space:nowrap;display:flex;align-items:center;gap:5px;font:500 12px/1.25 var(--sans);color:var(--ink-2);padding:1px 6px;border-radius:4px;background:color-mix(in srgb,var(--canvas-bg) 80%,transparent);will-change:transform;unicode-bidi:plaintext}.scene-label i{inline-size:9px;block-size:9px;border-radius:2px;flex:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 25%,transparent)}.scene-label[data-kind=seg]{color:var(--ink);font-weight:600;font-family:var(--mono)}.scene-label[data-kind=target]{color:var(--target);font-weight:700;font-family:var(--mono)}.scene-label[data-kind=tick]{color:var(--ink-3);font-family:var(--mono);font-size:11px;background:transparent}.scene-label[data-kind=north]{color:var(--ink);font-weight:700;background:transparent}.scene-label[data-kind=fm]{color:var(--ink-2);font-size:11.5px}:root[data-layout=tablet] .scene-label,:root[data-layout=portrait] .scene-label{font-size:13px}.scene-host{container-type:size}.scene-legends{position:absolute;inset-block-end:10px;inset-inline-start:10px;display:flex;flex-direction:column;gap:6px;pointer-events:none;max-inline-size:calc(100% - 20px)}.scene-legends>*{pointer-events:auto}.scene-reset{position:absolute;inset-block-end:10px;inset-inline-end:10px;background:color-mix(in srgb,var(--panel) 88%,transparent);backdrop-filter:blur(4px)}.bottom{display:flex;flex-direction:column;min-block-size:0;background:var(--panel);border-block-start:1px solid var(--line-2)}.bottom-tabs{display:flex;gap:0;padding-inline:10px;border-block-end:1px solid var(--line);flex:none}.bottom-tabs button{block-size:40px;padding-inline:14px;border:0;border-block-end:2px solid transparent;background:transparent;color:var(--ink-3);font-weight:500;white-space:nowrap}.bottom-tabs button.on{color:var(--ink);border-block-end-color:var(--accent)}.bottom-body{flex:1;min-block-size:0;overflow:auto}.stack{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.7fr) minmax(0,1.25fr);min-block-size:100%}.stack-col{padding:14px 16px;min-inline-size:0}.stack-col+.stack-col{border-inline-start:1px solid var(--line)}.profile-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-block-end:14px}.profile-card{display:flex;align-items:center;gap:6px;padding:6px 10px 6px 4px;border:1px solid var(--line);border-radius:9px;background:var(--panel);text-align:start;min-block-size:56px}.profile-card:hover{border-color:var(--line-2)}.profile-card.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--canvas-bg)}.profile-glyph{flex:none}.profile-glyph path{fill:none;stroke:var(--traj);stroke-width:3;stroke-linecap:round}.profile-glyph .pg-datum{stroke:var(--line-2);stroke-width:2}.profile-card:not(.on) .profile-glyph path{stroke:var(--ink-3)}.pc-text{display:flex;flex-direction:column;gap:2px;min-inline-size:0}.pc-title{font-weight:600;font-size:13.5px}.pc-desc{display:none}:root[data-layout=tablet] .pc-desc,:root[data-layout=portrait] .pc-desc{display:none}:root[data-layout=tablet] .pc-title,:root[data-layout=portrait] .pc-title{font-size:14px}.param-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 12px}.param-grid.one{grid-template-columns:1fr}.solved{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.solved-row{display:grid;grid-template-columns:18px minmax(0,1fr) auto;grid-template-areas:"idx kind dls" "idx md inc";row-gap:2px;column-gap:10px;align-items:baseline;gap:8px;padding:7px 0;border-block-end:1px dashed var(--line);font-size:13px}.solved-idx{font:600 12px var(--mono);color:var(--ink-3)}.solved-kind{font-weight:600}.solved-kind em{font-style:normal;font-weight:400;color:var(--ink-3);font-size:12px}.solved-row.kind-build .solved-kind,.solved-row.kind-drop .solved-kind{color:var(--traj)}.solved-row.unsolved{color:var(--err);display:block}.solved-idx{grid-area:idx}.solved-kind{grid-area:kind}.solved-dls{grid-area:dls;text-align:end}.solved-md{grid-area:md;color:var(--ink-2);font-size:12.5px}.solved-inc{grid-area:inc;text-align:end;color:var(--ink-2);font-size:12.5px}:root[data-layout=tablet] .solved-md,:root[data-layout=tablet] .solved-inc,:root[data-layout=portrait] .solved-md,:root[data-layout=portrait] .solved-inc{font-size:14px}.survey-wrap{--survey-head: 48px;block-size:100%;overflow:auto;scroll-padding-block-start:var(--survey-head);scroll-snap-type:y mandatory}.survey tbody tr{scroll-snap-align:start}.survey thead th{block-size:var(--survey-head)}.survey{inline-size:100%;border-collapse:separate;border-spacing:0;font:13px var(--mono);font-variant-numeric:tabular-nums}:root[data-layout=tablet] .survey,:root[data-layout=portrait] .survey{font-size:14px}.survey th{position:sticky;inset-block-start:0;z-index:2;background:var(--panel-2);box-shadow:0 1px 0 var(--line-2);text-align:end;padding:8px 12px;font:600 12.5px var(--sans);color:var(--ink-2);border-block-end:1px solid var(--line-2);white-space:nowrap}.survey th .th-unit{display:block;font:400 11px var(--mono);color:var(--ink-3)}.survey td{text-align:end;padding:5px 12px;border-block-end:1px solid var(--grid);white-space:nowrap}:root[data-layout=tablet] .survey td,:root[data-layout=portrait] .survey td{padding-block:9px}.survey tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--panel-2) 45%,transparent)}.survey tbody tr:hover td{background:var(--accent-soft)}.survey tr.boundary td{border-block-end:1.5px solid var(--traj)}.inspector{padding:14px 16px 24px;display:flex;flex-direction:column;gap:18px}.insp-sec{display:flex;flex-direction:column}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden}.tile{display:flex;flex-direction:column;gap:3px;padding:9px 11px;background:var(--panel);min-inline-size:0}.tile-label{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root[data-layout=tablet] .tile-label,:root[data-layout=portrait] .tile-label{font-size:13.5px}.tile-value{font-size:17px;font-weight:500}.tile.warn{background:var(--warn-soft)}.tile.warn .tile-value{color:var(--warn)}.kv{margin:0;display:flex;flex-direction:column}.kv-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:6px 0;border-block-end:1px solid var(--grid)}.kv-row dt{color:var(--ink-2);font-size:13px}:root[data-layout=tablet] .kv-row dt,:root[data-layout=portrait] .kv-row dt{font-size:14px}.kv-row dd{margin:0;text-align:end}.kv-row dd.crs{font-size:12.5px;color:var(--ink-2)}.hit-flag{margin:8px 0 0;font-size:13px;font-weight:500}.hit-flag.ok{color:var(--ok)}.hit-flag.bad{color:var(--err)}.teach-hint{margin:0;padding:8px 10px;border-radius:8px;font-size:13px;color:var(--ink-3);background:var(--panel-2)}.teach-hint.on{color:var(--teach);background:var(--teach-soft)}.engine-note{margin:0;font-size:12px;color:var(--ink-3)}.engine-note strong{color:var(--warn);font-weight:500}.deriv{border:1px solid color-mix(in srgb,var(--teach) 50%,var(--line));border-inline-start:4px solid var(--teach);border-radius:10px;background:var(--canvas-bg);padding:12px 14px 14px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow);animation:rise .18s ease-out}.deriv-head{display:flex;align-items:flex-start;gap:6px}.deriv-title{flex:1;min-inline-size:0}.deriv-title .eyebrow{color:var(--teach);margin-block-end:2px}.deriv-title h3{margin:0;font-size:16px;font-weight:600}.deriv-value{font:500 26px var(--mono);letter-spacing:-.01em;text-align:start}[dir=rtl] .deriv-value{text-align:end}.deriv-unit{font-size:15px;color:var(--ink-3);margin-inline-start:6px}.deriv-block{display:flex;flex-direction:column}.deriv-block .eyebrow{margin-block-end:5px}.equation{font:14px/1.55 var(--mono);padding:9px 11px;border-radius:7px;overflow-x:auto;text-align:left;background-color:var(--panel-2);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:12px 12px}.equation.subst{color:var(--teach);background-image:none}.deriv-note{margin:0;color:var(--ink-2);font-size:13.5px}.deriv-inputs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.deriv-input{display:grid;grid-template-columns:minmax(42px,auto) 1fr auto 16px;align-items:center;gap:10px;inline-size:100%;padding:6px 8px;border-radius:6px;border:0;background:transparent;text-align:start;min-block-size:36px}:root[data-layout=tablet] .deriv-input,:root[data-layout=portrait] .deriv-input{min-block-size:44px}.deriv-input.link{cursor:pointer}.deriv-input.link:hover{background:var(--teach-soft)}.deriv-input .sym{font:600 13.5px var(--mono);color:var(--teach)}.deriv-input .lbl{font-size:13px;color:var(--ink-2);min-inline-size:0}.deriv-input .val{font:13.5px var(--mono)}.deriv-input .u{color:var(--ink-3);margin-inline-start:4px}.deriv-input .go{color:var(--teach)}.deriv-source{display:flex;flex-direction:column;gap:2px;padding-block-start:10px;border-block-start:1px dashed var(--line)}.deriv-source cite{font-style:normal;font-weight:500;font-size:13.5px}.deriv-source cite a{color:inherit}.deriv-source .ref{font-size:12.5px;color:var(--ink-3)}.layout-tablet .body{display:grid;grid-template-columns:56px minmax(0,1fr)}.layout-tablet .main,.layout-portrait .main{display:flex;flex-direction:column;overflow:hidden}.sheet{flex:none;display:flex;flex-direction:column;background:var(--panel);border-block-start:1px solid var(--line-2);box-shadow:0 -10px 30px -18px #00000059;border-start-start-radius:14px;border-start-end-radius:14px;margin-block-start:-14px;position:relative;z-index:2;transition:block-size .22s cubic-bezier(.2,.8,.2,1)}.sheet.dragging{transition:none}.sheet.size-peek{block-size:116px}.sheet.size-half{block-size:46%}.sheet.size-full{block-size:88%}.layout-portrait .sheet.size-half{block-size:45%}.sheet-grab{display:grid;place-items:center;block-size:22px;cursor:ns-resize;touch-action:none;flex:none}.grabber{inline-size:44px;block-size:5px;border-radius:3px;background:var(--line-2)}.sheet-head{display:flex;align-items:center;gap:8px;padding-inline:10px;border-block-end:1px solid var(--line);flex:none}.sheet-head .bottom-tabs{border:0;padding:0;flex:1}.sheet-head .bottom-tabs button{block-size:48px}.sheet-sizes{display:inline-flex;gap:2px}.size-btn{inline-size:44px;block-size:44px;border:0;border-radius:7px;background:transparent;display:grid;place-items:center}.size-btn.on{background:var(--panel-2)}.size-ico{inline-size:18px;block-size:14px;border:1.5px solid var(--ink-3);border-radius:2px;position:relative;overflow:hidden}.size-ico:after{content:"";position:absolute;inset-inline:0;inset-block-end:0;background:var(--ink-3)}.size-ico.peek:after{block-size:3px}.size-ico.half:after{block-size:6px}.size-ico.full:after{block-size:11px}.sheet-body{flex:1;min-block-size:0;overflow:hidden;display:flex;flex-direction:column}.sheet-body>*{flex:1;min-block-size:0;overflow:auto}.sheet.size-peek .sheet-body{overflow:hidden}.sheet-cycle{display:flex;flex:1;gap:4px}.sheet-cycle button{block-size:48px;padding-inline:14px;border:0;border-block-end:2px solid transparent;background:transparent;color:var(--ink-3);font-weight:500}.sheet-cycle button.on{color:var(--ink);border-block-end-color:var(--accent)}.drawer{position:absolute;inset-block:0;inset-inline-end:0;inline-size:320px;z-index:5;background:var(--panel);border-inline-start:1px solid var(--line-2);box-shadow:-18px 0 40px -24px #0006;overflow:auto;transform:translate(105%);transition:transform .22s ease;visibility:hidden}[dir=rtl] .drawer{transform:translate(-105%);box-shadow:18px 0 40px -24px #0006}.drawer.open,[dir=rtl] .drawer.open{transform:none;visibility:visible}.drawer-head{position:sticky;inset-block-start:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:6px 8px 6px 16px;background:var(--panel);border-block-end:1px solid var(--line);font-weight:600}.layout-tablet .stack{grid-template-columns:minmax(0,1.4fr) minmax(0,.75fr) minmax(0,1.2fr)}.layout-portrait .stack{grid-template-columns:1fr 1fr}.layout-portrait .stack-profile{grid-column:1 / -1;border-block-end:1px solid var(--line)}.layout-portrait .stack-col+.stack-col{border-inline-start:0}.layout-portrait .stack-solved{border-inline-start:1px solid var(--line)!important}.layout-portrait .body{display:flex}.layout-portrait .main{flex:1}.layout-portrait .canvas-hint{display:none}.fab-wrap{position:absolute;inset-inline-end:16px;inset-block-end:30px;z-index:4;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.fab{inline-size:58px;block-size:58px;border-radius:18px;border:0;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;box-shadow:0 10px 24px -8px color-mix(in srgb,var(--accent) 70%,transparent)}.fab-menu{display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:12px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);min-inline-size:230px}.aim{display:flex;flex-direction:column;gap:5px;margin-block-end:10px}.fab-menu>button{display:flex;align-items:center;gap:8px;min-block-size:44px;border:0;border-radius:8px;background:transparent;text-align:start;padding-inline:12px}.fab-menu>button:hover{background:var(--panel-2)}.newwell{block-size:100dvh;overflow:auto;background-color:var(--paper);background-image:linear-gradient(color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--line) 55%,transparent) 1px,transparent 1px);background-size:32px 32px}.nw-top{display:flex;align-items:center;padding:12px 24px}.nw-main{max-inline-size:1180px;margin-inline:auto;padding:8px 24px 48px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:28px;grid-template-areas:"intro intro" "form derived"}.nw-intro{grid-area:intro;animation:rise .3s ease-out}.nw-intro h1{margin:12px 0 4px;font-size:34px;font-weight:600;letter-spacing:-.02em}.nw-intro p{margin:0;color:var(--ink-2);max-inline-size:60ch}.nw-form{grid-area:form;display:flex;flex-direction:column;gap:14px;animation:rise .35s ease-out}.nw-form fieldset{margin:0;border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}.nw-form legend{padding-inline:6px;font:600 12px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}:root[lang=ar] .nw-form legend{letter-spacing:0;font-size:13.5px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.row2.tight{align-items:end}.nw-inherit{margin:0;color:var(--ink-3);font-size:13px;line-height:1.5}.nw-form>.primary{align-self:flex-start}.nw-derived{grid-area:derived;align-self:start;position:sticky;inset-block-start:16px;padding:18px;border-radius:14px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px;animation:rise .4s ease-out}.nw-zone{display:flex;flex-direction:column;gap:2px;padding-block-end:12px;border-block-end:1px solid var(--line)}.nw-zone-v{font:500 44px/1.05 var(--mono);letter-spacing:-.02em;color:var(--ink)}.nw-crs{font-size:13px;color:var(--ink-2)}.nw-datum svg{display:block;font-family:var(--mono)}.dd-earth{fill:var(--panel-3)}.dd-rig{fill:none;stroke:var(--ink-2);stroke-width:1.5}.dd-well{stroke:var(--traj);stroke-width:2.5}.dd-row line{stroke:var(--line-2);stroke-dasharray:3 4}.dd-row text{fill:var(--ink-2);font-size:11.5px}@media(max-width:900px){.nw-main{grid-template-columns:1fr;grid-template-areas:"intro" "form" "derived"}.nw-derived{position:static}.row3{grid-template-columns:1fr 1fr}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes drop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.layout-portrait .scene-reset{inset-inline-end:auto;inset-inline-start:10px}.plot .target-other circle{fill:none;stroke:var(--ink-3);stroke-width:1.5;stroke-dasharray:3 3}.plot .target-other text{fill:var(--ink-3);font-size:12px}.sr-only{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.geo{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);min-block-size:100%}.geo-col{padding:14px 16px;min-inline-size:0;display:flex;flex-direction:column;gap:10px}.geo-col+.geo-col{border-inline-start:1px solid var(--line)}.layout-portrait .geo{grid-template-columns:1fr}.layout-portrait .geo-col+.geo-col{border-inline-start:0;border-block-start:1px solid var(--line)}.geo-empty{margin:0;color:var(--ink);font-weight:500}.geo-hint{margin:0;color:var(--ink-3);font-size:var(--fs-s);max-inline-size:60ch}.geo-col>.primary{align-self:flex-start}.geo-approx{padding:8px 12px;border-radius:7px;background:var(--warn-soft);color:var(--ink);border-inline-start:3px solid var(--warn);font-size:var(--fs-s);font-weight:500}.geo-table{inline-size:100%;border-collapse:collapse;font-size:var(--fs-s)}.geo-table th{text-align:start;font-weight:500;color:var(--ink-3);padding:4px 6px;border-block-end:1px solid var(--line);line-height:1.25;vertical-align:bottom}.geo-table th:nth-child(n+3){text-align:end}.geo-table th .th-unit{font:400 11px var(--mono)}.geo-table td{padding:3px 6px;border-block-end:1px solid var(--line);vertical-align:middle}.geo-table td.num{font-family:var(--mono);text-align:end;white-space:nowrap}.geo-table td.derived{color:var(--ink-2)}.geo-table .field{gap:0}.geo-table .field-box{inline-size:92px;block-size:30px}.geo-table-wrap{overflow-x:auto}.geo-fm{display:flex;align-items:center;gap:8px}.geo-name{border:1px solid transparent;background:transparent;color:var(--ink);font:500 var(--fs) var(--sans);padding:4px 6px;border-radius:6px;inline-size:100%;min-inline-size:110px}.geo-name:hover,.geo-name:focus{border-color:var(--line-2);background:var(--panel);outline:none}.geo-note{color:var(--ink-3);font-size:11px;line-height:1.3;padding-inline-start:34px;max-inline-size:34ch}.geo-lith{block-size:30px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--ink);padding-inline:6px}.geo-del{inline-size:30px;block-size:30px;font-size:18px}.geo-actions{display:flex;gap:8px;flex-wrap:wrap}.lith-swatch{display:inline-block;inline-size:18px;block-size:18px;border-radius:4px;flex:none;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 22%,transparent)}.lith-swatch.pat-dots{background-image:radial-gradient(circle,rgba(0,0,0,.35) 1px,transparent 1.4px)!important;background-size:5px 5px!important}.geo-kp{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.geo-kp li{display:grid;grid-template-columns:minmax(64px,auto) auto 1fr;align-items:center;gap:10px;padding:5px 0;border-block-end:1px solid var(--line)}.geo-kp .kp-label{font:600 13px var(--mono);color:var(--ink)}.geo-kp li.target .kp-label{color:var(--target)}.geo-kp .kp-md{font:400 12px var(--mono);color:var(--ink-3)}.geo-kp .kp-fm{display:flex;align-items:center;gap:8px;justify-content:flex-end;font-weight:500}.geo-kp .kp-fm em{color:var(--ink-3);font-weight:400}.geo-sources{font-size:var(--fs-s);color:var(--ink-2)}.geo-sources summary{cursor:pointer;color:var(--ink-2);font-weight:500}.geo-sources ol{margin:6px 0 0;padding-inline-start:20px;display:flex;flex-direction:column;gap:4px}.geo-sources .cite-title{color:var(--ink)}.geo-sources a{color:var(--teach)}.legend-card{background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(4px);border:1px solid var(--line);border-radius:8px;padding:6px 10px 4px;font-size:11.5px;color:var(--ink-2);box-shadow:var(--shadow);inline-size:max-content;max-inline-size:100%}.lg-title{font-weight:600;color:var(--ink);margin-block-end:4px;white-space:nowrap}.lg-title bdi{font:400 11px var(--mono);color:var(--ink-3)}.lg-scale{position:relative;inline-size:190px}.lg-bar{position:relative;block-size:10px;border-radius:3px}.lg-limit{position:absolute;inset-block:-3px;inline-size:2px;margin-left:-1px;background:var(--ink);border-radius:1px}.lg-ticks{position:relative;block-size:16px;font:400 10.5px/16px var(--mono);color:var(--ink-3)}.lg-ticks span{position:absolute;top:0;transform:translate(-50%);white-space:nowrap}.lg-ticks span:first-child{transform:none}.lg-ticks span:last-child{transform:translate(-100%)}.lg-ticks .lim{color:var(--ink)}.lg-ticks .over{color:var(--err);font-weight:600}.lith-key ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,max-content);gap:3px 12px}.lith-key li{display:flex;align-items:center;gap:6px;white-space:nowrap}.lith-key svg{flex:none;border-radius:2px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 20%,transparent)}@container (max-width: 560px){.lith-key{display:none}}@container (max-height: 420px){.lith-key{display:none}}.plot .geo-bands .fm-top{stroke:color-mix(in srgb,var(--ink) 45%,transparent);stroke-width:1}.plot .geo-bands .ground{stroke:var(--ink-2);stroke-width:1.5}.plot .geo-bands .seabed{stroke:color-mix(in srgb,#8a6d3b 80%,var(--ink));stroke-width:2}.plot .geo-bands .msl{stroke:#3d84bf;stroke-width:1.5;stroke-dasharray:6 4}.plot .fm-label{fill:var(--ink);font:500 11px var(--sans);paint-order:stroke;stroke:color-mix(in srgb,var(--canvas-bg) 85%,transparent);stroke-width:3px}:root[data-layout=tablet] .plot .fm-label,:root[data-layout=portrait] .plot .fm-label{font-size:12.5px}.plot .geo-crossings line{stroke:var(--ink);stroke-width:2;stroke-linecap:round}.layer-menu{position:relative;flex:none}.layer-menu>.chip{block-size:30px;padding-inline:10px;font-size:var(--fs-s)}.layer-pop{position:absolute;inset-block-start:calc(100% + 6px);inset-inline-end:0;z-index:30;min-inline-size:220px;padding:6px;background:var(--panel);border:1px solid var(--line-2);border-radius:9px;box-shadow:var(--shadow);display:flex;flex-direction:column}.layer-item{display:flex;align-items:center;gap:10px;min-block-size:36px;padding-inline:8px;border-radius:6px;color:var(--ink);cursor:pointer}.layer-item:hover{background:var(--panel-2)}.layer-item input{inline-size:18px;block-size:18px;accent-color:var(--accent)}:root[data-layout=tablet] .layer-item,:root[data-layout=portrait] .layer-item{min-block-size:44px}.layout-portrait .scene-legends{inset-block-end:auto;inset-block-start:10px}
