:root{--bg:#05070a;--bg2:#0a0e14;--solid:#0e131a;--panel:#ffffff0a;--panel2:#ffffff12;--line:#ffffff17;--line2:#ffffff26;--ink:#eaf0f7;--dim:#8b97a8;--accent:#4da3ff;--app:#4da3ff;--err:#ff7b72;--ok:#34d399;--field:#0a0f16;--shadow:0 24px 60px #000a;--fg:var(--ink);--bg-card:var(--solid);--g-bg:#0a0f16;--g-grid:#18212c;--g-axis:#4a5a6e;--g-text:#7f8da0;--g-label:#e6edf5;--kh:clamp(34px,5.1vh,46px);color-scheme:dark}:root[data-theme=light]{--bg:#e7ecf2;--bg2:#f3f6fa;--solid:#ffffff;--panel:#00000007;--panel2:#0000000d;--line:#0000001a;--line2:#00000030;--ink:#141c27;--dim:#5f6b7a;--accent:#0b62d6;--err:#c4281f;--ok:#0b8f64;--field:#f4f7fb;--shadow:0 20px 50px #2a3a5233;--fg:var(--ink);--bg-card:var(--solid);--g-bg:#ffffff;--g-grid:#e8edf3;--g-axis:#8a97a6;--g-text:#667384;--g-label:#141c27;color-scheme:light}@media (prefers-color-scheme:light){:root:not([data-theme]){--bg:#e7ecf2;--bg2:#f3f6fa;--solid:#ffffff;--panel:#00000007;--panel2:#0000000d;--line:#0000001a;--line2:#00000030;--ink:#141c27;--dim:#5f6b7a;--accent:#0b62d6;--err:#c4281f;--ok:#0b8f64;--field:#f4f7fb;--shadow:0 20px 50px #2a3a5233;--fg:var(--ink);--bg-card:var(--solid);--g-bg:#ffffff;--g-grid:#e8edf3;--g-axis:#8a97a6;--g-text:#667384;--g-label:#141c27;color-scheme:light}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:radial-gradient(90% 70% at 15% -10%,color-mix(in srgb,var(--app) 22%,transparent),transparent 60%),radial-gradient(70% 60% at 100% 110%,color-mix(in srgb,var(--app) 14%,transparent),transparent 60%),var(--bg);color:var(--ink);font:14px/1.5 Inter,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden;font-feature-settings:"tnum","cv11"}button{font:inherit;color:inherit;cursor:pointer;-webkit-user-select:none;user-select:none}code,textarea,.mono,.fld{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}#app{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr;height:100%;overflow:hidden}#stage{display:flex;padding:14px 22px;min-height:0;overflow:auto}#main{display:flex;flex-direction:column;min-height:0;margin:14px 18px 14px 0;background:linear-gradient(180deg,color-mix(in srgb,var(--solid) 92%,var(--app)) 0%,var(--solid) 40%);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);position:relative}#work{flex:1;min-height:0;position:relative}.appview{position:absolute;inset:0;overflow-y:auto;padding:18px 22px 28px;display:flex;flex-direction:column;gap:14px}.appview[hidden]{display:none}.appview.calcview{flex-direction:row;padding:0;gap:0;overflow:hidden}#dock{display:flex;align-items:center;gap:14px;padding:10px 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),transparent)}.dockbrand{font-size:15px;letter-spacing:.14em;cursor:pointer;white-space:nowrap;padding:0 4px}.dockbrand b{color:var(--app)}.tiles{display:flex;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none;padding:4px 2px}.tiles::-webkit-scrollbar{display:none}.tile{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:0;padding:3px 6px;border-radius:12px;min-width:64px;transition:transform .15s}.tile .gl{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;color:#fff;letter-spacing:-.02em;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 100%,#fff 18%),color-mix(in srgb,var(--c) 70%,#000));box-shadow:0 6px 14px color-mix(in srgb,var(--c) 40%,transparent),inset 0 1px #fff5;text-shadow:0 1px 2px #0006}.tile .nm{font-size:10.5px;color:var(--dim);white-space:nowrap;font-weight:600}.tile:hover{transform:translateY(-2px)}.tile.on .nm{color:var(--ink)}.tile.on .gl{box-shadow:0 0 0 2px var(--solid),0 0 0 4px var(--c),0 8px 22px color-mix(in srgb,var(--c) 55%,transparent)}.themebtn{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:12px;color:var(--dim);white-space:nowrap}.themebtn:hover{color:var(--ink);border-color:var(--line2)}.home{position:absolute;inset:0;z-index:30;background:color-mix(in srgb,var(--solid) 94%,transparent);backdrop-filter:blur(14px);padding:26px 30px;overflow:auto}.home h2{margin:0 0 18px;font-size:22px;letter-spacing:-.01em}.homegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}.hometile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:16px;transition:transform .15s,border-color .15s}.hometile:hover{transform:translateY(-3px);border-color:var(--c)}.hometile .gl{width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;color:#fff;background:linear-gradient(145deg,color-mix(in srgb,var(--c) 100%,#fff 18%),color-mix(in srgb,var(--c) 70%,#000));box-shadow:0 8px 18px color-mix(in srgb,var(--c) 40%,transparent)}.hometile b{font-size:15px}.hometile small{color:var(--dim);font-size:12px;line-height:1.4}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 16px}.panel>h3{margin:0 0 10px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);font-weight:700}.panel.answer{border-color:color-mix(in srgb,var(--app) 40%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--app) 9%,transparent),var(--panel))}.fld{background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:8px 11px;font-size:14px;outline:none;min-width:0;width:100%;transition:border-color .12s,box-shadow .12s}.fld:focus{border-color:var(--app);box-shadow:0 0 0 3px color-mix(in srgb,var(--app) 25%,transparent)}.fld.wide{width:100%;font-size:15px}.fld.bad{border-color:var(--err)}.lab{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--dim);font-weight:600;min-width:0;flex:1}.frow{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.btn{border-radius:10px;padding:7px 14px;font-size:13px;font-weight:600;border:1px solid var(--line)}.btn.sm{padding:4px 10px;font-size:12px;border-radius:8px}.btn.mini{padding:3px 9px;font-size:11.5px;border-radius:7px;line-height:1.2;height:26px;display:inline-flex;align-items:center}.btn.primary{background:var(--app);border-color:transparent;color:#fff;box-shadow:0 6px 16px color-mix(in srgb,var(--app) 40%,transparent)}.btn.primary:hover{filter:brightness(1.1)}.btn.ghost{background:var(--panel);color:var(--dim)}.btn.ghost:hover{color:var(--ink);border-color:var(--line2)}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}.toolbar .fld{width:auto;flex:1;min-width:120px}.lbl{color:var(--dim);font-size:12px;font-weight:600}.hint{color:var(--dim);font-size:12px}.dim{color:var(--dim)}.err{color:var(--err);font:600 13px ui-monospace,Menlo,monospace;padding:4px 0}.empty{color:var(--dim);padding:10px 4px}.seg{display:inline-flex;flex-wrap:wrap;gap:2px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:3px}.seg button{background:none;border:0;border-radius:9px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--dim)}.seg button.on{background:var(--app);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--app) 45%,transparent)}.check{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;color:var(--dim)}.check input{accent-color:var(--app)}.chipbar{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.chip{background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:3px 11px;font-size:12px;font-family:ui-monospace,Menlo,monospace}.chip:hover{border-color:var(--app);color:var(--app)}.tabs{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.tab{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:5px 13px;font-weight:700;font-size:12.5px;color:var(--dim)}.tab.on{background:var(--app);color:#fff;border-color:transparent}.mini-tabs{display:flex;border-bottom:1px solid var(--line)}.mini-tabs button{flex:1;background:none;border:0;border-bottom:2px solid transparent;padding:10px 6px;color:var(--dim);font-weight:600;font-size:12.5px}.mini-tabs button.on{color:var(--ink);border-bottom-color:var(--app)}.rv{display:flex;flex-direction:column;gap:6px;margin-top:4px}.rv-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.rv-l{font-size:1.1em;color:var(--dim)}.rv-m{font-size:1.9em;overflow-x:auto;max-width:100%}.rv-t{font:600 15px ui-monospace,Menlo,monospace;word-break:break-all}.rv-t.big{font-size:14px;line-height:1.5}.rv-d{color:var(--dim);font:13px ui-monospace,Menlo,monospace;word-break:break-all}.qtitle{color:var(--dim);margin-bottom:2px}.stat{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 12px;min-width:0}.stat .sk{font-size:11px;color:var(--dim);font-weight:700;letter-spacing:.02em}.stat .sv{font-size:1.25em;margin-top:2px;overflow-x:auto;word-break:break-all}.stat .sd{font:11.5px ui-monospace,Menlo,monospace;color:var(--dim)}.statgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:6px}.mgrid{display:grid;gap:7px;margin:6px 0}.fld.cell{text-align:center;padding:8px 4px}.mhead{display:grid;gap:7px;text-align:center;color:var(--dim);font-size:13px}.preview{margin-top:8px;color:var(--ink);font-size:1.2em;overflow-x:auto}.steps{display:flex;flex-direction:column;gap:8px}.step{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-left:3px solid var(--app);background:var(--panel);border-radius:0 10px 10px 0;overflow-x:auto}.step .note{font-size:11px;color:var(--dim);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.log{flex:1;overflow-y:auto;padding:18px 24px;scroll-behavior:smooth;min-width:0}.cside{width:300px;border-left:1px solid var(--line);display:flex;flex-direction:column;min-height:0;background:var(--panel)}.cside .list{flex:1;overflow-y:auto;padding:10px}.welcome{color:var(--dim);max-width:640px;margin:6px 0 18px}.welcome h2{color:var(--ink);font-size:22px;margin:0 0 6px;letter-spacing:-.01em}.welcome .ex{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.entry{margin:0 0 14px;padding:0 0 12px;border-bottom:1px solid var(--line)}.entry .in{display:flex;gap:8px;color:var(--dim);font-size:13px;cursor:pointer}.entry .in:hover{color:var(--ink)}.entry .in .pr{color:var(--app)}.entry .in code{white-space:pre-wrap;word-break:break-all}.entry .out{margin:6px 0 0 16px}.row{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;padding:3px 0}.row .main{font-size:1.3em;overflow-x:auto;max-width:100%}.row .alt{color:var(--dim);font:13px ui-monospace,Menlo,monospace;word-break:break-all}.row .big{font:13px ui-monospace,Menlo,monospace;word-break:break-all}.acts{display:flex;gap:6px;margin:6px 0 0 16px}.acts button{background:none;border:1px solid var(--line);border-radius:7px;font-size:11px;padding:1px 9px;color:var(--dim)}.acts button:hover{color:var(--ink);border-color:var(--line2)}.vrow{display:flex;gap:10px;align-items:baseline;padding:6px 8px;border-radius:9px;cursor:pointer}.vrow:hover{background:var(--panel2)}.vrow .n{font-family:ui-monospace,Menlo,monospace;color:var(--app);min-width:60px}.search{width:100%;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:7px 10px;outline:none;margin-bottom:8px}.hgroup h4{margin:12px 0 4px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}.hrow{display:flex;flex-direction:column;gap:1px;padding:5px 8px;border-radius:8px;cursor:pointer}.hrow:hover{background:var(--panel2)}.hrow code{color:var(--app);font-size:12.5px}.hrow span{color:var(--dim);font-size:11.5px}.graphview{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:14px;flex:1;min-height:0;height:100%}.gcol{display:flex;flex-direction:column;gap:10px;min-height:0;min-width:250px}.gpanel{display:flex;flex-direction:column;flex:1;min-height:0;padding:12px 14px;gap:8px}.ghead{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.ghead h3{margin:0;font-size:13.5px;font-weight:700;color:var(--dim)}.graphview .curves{display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1;min-height:60px;padding-right:3px}.crow{display:flex;align-items:center;gap:6px;background:var(--field);border:1px solid var(--line);border-radius:10px;padding:3px 8px;transition:border-color .15s,box-shadow .15s}.crow:focus-within{border-color:var(--app);box-shadow:0 0 0 2px color-mix(in srgb,var(--app) 25%,transparent)}.crow input[type=checkbox]{accent-color:var(--app);cursor:pointer;width:15px;height:15px;flex:none;margin:0}.crow .dot{width:10px;height:10px;border-radius:50%;flex:none}.crow .clab{font:600 12px ui-monospace,monospace;color:var(--dim);flex:none;user-select:none}.crow .clab sub{font-size:9.5px}.crow .fld{padding:5px 6px;font-size:13.5px;border:none;background:transparent;border-radius:0;flex:1;min-width:0;box-shadow:none}.crow .fld:focus{border:none;box-shadow:none}.crow .x{background:none;border:0;color:var(--dim);font-size:16px;line-height:1;padding:2px 4px;cursor:pointer;border-radius:4px;flex:none}.crow .x:hover{color:var(--err);background:color-mix(in srgb,var(--err) 12%,transparent)}.gtools{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-top:6px;border-top:1px solid var(--line)}.gtools .btn{padding:5px 10px;font-size:12.5px}.greadout-hint{font-size:12px;color:var(--dim);min-height:18px;display:block}.gwrap{flex:1;min-height:360px;position:relative;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--g-bg)}.gwrap canvas{width:100%;height:100%;display:block;cursor:crosshair;touch-action:none}.greadout{position:absolute;left:10px;bottom:8px;font:12px ui-monospace,Menlo,monospace;color:var(--dim);pointer-events:none;background:color-mix(in srgb,var(--g-bg) 80%,transparent);padding:1px 6px;border-radius:4px}.ghint{position:absolute;right:10px;top:8px;font-size:11px;color:var(--dim);pointer-events:none}.tableview{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:14px;flex:1;min-height:0}.tcol{display:flex;flex-direction:column;gap:12px;min-height:0}.tablepanel{flex:1;overflow:auto;padding:0}.tgraph{border:1px solid var(--line);border-radius:18px;overflow:hidden;min-height:320px}.tgraph canvas{width:100%;height:100%;display:block}.tbl,.dtbl{border-collapse:collapse;width:100%}.tbl th,.tbl td{padding:6px 12px;text-align:right;border-bottom:1px solid var(--line)}.tbl th{position:sticky;top:0;background:var(--solid);font-size:12px;color:var(--dim);z-index:2}.tbl td.idx,.dtbl td.idx{color:var(--dim);font-size:11px;text-align:center;width:36px}.tbl tr:hover td{background:var(--panel)}.tbl .sub{font:10.5px ui-monospace,Menlo,monospace;color:var(--dim)}.dtbl th{font-size:11px;color:var(--dim);padding:4px;text-transform:uppercase;letter-spacing:.06em}.dtbl td{padding:3px}.eqview,.ineqview{display:flex;flex-direction:column;gap:14px;max-width:880px}.eqout,.ineqout{display:flex;flex-direction:column;gap:14px}.matview{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:14px;align-items:start}.mright,.mout{display:flex;flex-direction:column;gap:12px}.vecview{display:flex;flex-direction:column;gap:14px}.vinputs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:10px}.vname{font-size:1.3em;margin-bottom:2px;color:var(--app)}.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.vcard{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:12px 14px}.vtitle{display:flex;justify-content:space-between;gap:8px;font-size:12px;font-weight:700;color:var(--dim);margin-bottom:4px}.vtitle em{font-weight:500;font-style:normal;opacity:.8}.vcard .rv-m{font-size:1.5em}.badges{display:flex;gap:10px;margin-bottom:12px}.badge{padding:5px 14px;border-radius:999px;background:var(--panel);border:1px solid var(--line);color:var(--dim)}.badge.yes{background:color-mix(in srgb,var(--ok) 18%,transparent);border-color:var(--ok);color:var(--ink)}.statview,.distview{display:grid;grid-template-columns:minmax(340px,460px) 1fr;gap:16px;align-items:start}.scol,.dcol{display:flex;flex-direction:column;gap:14px;min-width:0}.databox{max-height:440px;overflow:auto}.sresults,.dout{display:flex;flex-direction:column;gap:14px}.chartbox{height:300px;position:relative;background:var(--solid);border:1px solid var(--line);border-radius:14px;overflow:hidden}.chartbox.big{height:380px}.chart{width:100%;height:100%;display:block}.fitline{font-size:1.4em;margin:8px 0;font-family:ui-monospace,Menlo,monospace}.predict{display:flex;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap}.predict .fld{width:140px}.predout{font-size:1.2em;color:var(--app);font-weight:700}.statgrid-pro{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:8px}.st-card{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:5px;transition:border-color .15s,transform .15s}.st-card:hover{border-color:var(--line2);transform:translateY(-1px);background:color-mix(in srgb,var(--panel2) 90%,var(--app))}.st-head{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.st-name{font-size:12px;font-weight:700;color:var(--ink)}.st-sym{font-size:12px;color:var(--app);font-weight:600;font-family:KaTeX_Math,serif}.st-formula{background:var(--panel);border-radius:6px;padding:3px 6px;font-size:11.5px;color:var(--dim);margin:2px 0;overflow-x:auto;white-space:nowrap}.st-val{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.st-num{font-size:16px;font-weight:800;color:var(--ink);font-family:ui-monospace,Menlo,monospace}.st-frac{font-size:12px;color:var(--dim)}.st-desc{font-size:11px;color:var(--dim);line-height:1.35}.st-detail-box{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:8px}.st-detail-head{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;font-weight:700;font-size:13px;color:var(--app)}.st-detail-head:hover{filter:brightness(1.15)}.st-detail-body{margin-top:10px;display:flex;flex-direction:column;gap:10px;font-size:12.5px}.st-step-item{background:var(--solid);border:1px solid var(--line);border-radius:10px;padding:10px 12px;border-left:4px solid var(--app)}.st-step-title{font-weight:700;font-size:12px;color:var(--ink);margin-bottom:4px}.st-step-math{overflow-x:auto;padding:3px 0}.st-paste-box{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:8px 0;display:flex;flex-direction:column;gap:8px}.st-paste-box[hidden]{display:none!important}.st-paste-box textarea{width:100%;height:68px;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;resize:vertical}.st-paste-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.st-presets{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.st-preset-chip{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:11.5px;color:var(--dim);cursor:pointer;transition:all .15s}.st-preset-chip:hover{background:var(--app);color:#fff;border-color:transparent}.st-field-group{display:flex;flex-direction:column;gap:4px}.st-field-label{font-size:11.5px;font-weight:600;color:var(--dim);display:flex;justify-content:space-between}.st-field-hint{font-size:11px;color:var(--dim);font-weight:400}.gtbl{width:100%;border-collapse:collapse;font-size:12.5px}.gtbl th,.gtbl td{padding:5px 6px;text-align:center;border-bottom:1px solid var(--line)}.gtbl th{color:var(--dim);font-weight:600;font-size:11px;text-transform:uppercase}.gtbl .fld{padding:4px 6px;font-size:12.5px;text-align:center}.gtbl .idx{width:28px;color:var(--dim);font-size:11px}.gtbl .btn-del{background:none;border:0;color:var(--dim);cursor:pointer;padding:2px 6px;border-radius:4px;font-size:13px}.gtbl .btn-del:hover{color:var(--err);background:#ff00001a}.chart-controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.chart-controls .seg button{padding:3px 9px;font-size:11.5px}.baseview,.numview{display:flex;flex-direction:column;gap:14px;max-width:900px}.basefields{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}.bitsbox{display:flex;flex-wrap:wrap;gap:3px;margin:14px 0 6px}.bitcell{display:flex;flex-direction:column;align-items:center;gap:2px}.bitcell.gap{margin-right:9px}.bitcell .bi{font-size:9px;color:var(--dim)}.bit{width:26px;height:32px;border-radius:7px;border:1px solid var(--line);background:var(--field);font:700 13px ui-monospace,Menlo,monospace;color:var(--dim)}.bit.on{background:var(--app);color:#fff;border-color:transparent;box-shadow:0 4px 10px color-mix(in srgb,var(--app) 45%,transparent)}.logline{font:12.5px ui-monospace,Menlo,monospace;color:var(--dim);padding:2px 0}.divs{margin-top:12px}.divs .sk{font-size:11px;color:var(--dim);font-weight:700;margin-bottom:6px}.pill{display:inline-block;margin:2px 4px 2px 0;padding:1px 9px;border-radius:999px;background:var(--panel2);font:12px ui-monospace,Menlo,monospace}.nlwrap{position:relative;margin-top:14px}.nline{width:100%;height:auto;display:block}.nline .ax{stroke:var(--line2);stroke-width:2}.nline .sol{stroke:var(--app);stroke-width:6;stroke-linecap:round}.nline .arr{stroke:var(--app);stroke-width:3;fill:none;stroke-linecap:round}.nline .cl{fill:var(--app);stroke:var(--solid);stroke-width:2}.nline .op{fill:var(--solid);stroke:var(--app);stroke-width:3}.nlabels{position:relative;height:26px}.nlabels span{position:absolute;transform:translate(-50%);font-size:12px;top:0}@media (max-width:1280px){.cside{display:none}}@media (max-width:1100px){#app{grid-template-columns:1fr;grid-template-rows:1fr;overflow:hidden}body{overflow:hidden}#main{margin:6px 8px;flex:1;min-height:0;border-radius:14px}.tableview,.statview,.distview,.matview,.graphview{grid-template-columns:1fr}}.katex{font-size:1.06em}.device{width:min(450px,100%);background:linear-gradient(155deg,#2c3541,#1a2029 55%,#14191f);border-radius:30px 30px 46px 46px;padding:16px 18px 22px;box-shadow:0 30px 70px #000a,0 2px #ffffff1f inset,0 -4px #0008 inset,0 0 0 1px #000a;position:relative;transition:all .25s ease}.device.model-fx580{background:radial-gradient(circle at 50% 0%,#2b3543,#161c24 60%,#0e1218),repeating-linear-gradient(45deg,#00000014 0 2px,#ffffff05 2px 4px);border-radius:28px 28px 44px 44px}.device.model-fx880{background:linear-gradient(160deg,#202936,#131922 55%,#0a0e13);border-radius:38px 38px 52px 52px;box-shadow:0 32px 75px #000d,0 2px #fff2 inset,0 -4px #0008 inset,0 0 0 1px #000}.top{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 10px;gap:8px}.logo{font-weight:800;letter-spacing:.08em;font-size:14px;color:#e9eef4;display:flex;flex-direction:column}.logo .casio-brand{font-family:Arial,Helvetica Neue,sans-serif;font-weight:900;letter-spacing:.12em;font-size:15px;color:#fff}.logo .mname{font-weight:800;color:#60a5fa}.logo small{display:block;font-weight:600;letter-spacing:.1em;font-size:8px;color:#94a3b8;margin-top:2px}.model-picker{display:flex;background:#090d12;border:1px solid #ffffff24;border-radius:999px;padding:2px;gap:2px}.mp-btn{background:none;border:0;border-radius:999px;color:#94a3b8;font-size:9.5px;font-weight:750;padding:2px 8px;transition:all .15s}.mp-btn:hover{color:#fff}.mp-btn.on{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 6px #2563eb66}.solar{width:100px;height:24px;border-radius:5px;background:repeating-linear-gradient(90deg,#1c1612 0 24px,#2c211a 24px 26px);box-shadow:inset 0 0 0 1px #000,inset 0 2px 5px #000b,0 1px #fff2;position:relative;flex-shrink:0}.solar:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff1c 48%,transparent 62%)}.bezel{background:#06090c;border-radius:14px;padding:9px;box-shadow:inset 0 3px 8px #000,0 1px #ffffff18}.lcd{height:clamp(190px,30vh,280px);border-radius:8px;background:linear-gradient(180deg,#d7e3c6,#c5d4b0);color:#1a2314;display:flex;flex-direction:column;position:relative;overflow:hidden;box-shadow:inset 0 0 22px #5a6b4955,inset 0 2px #fff6}.lcd:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,#0000 0 2px,#1a23140a 2px 3px);pointer-events:none}.st{display:flex;gap:10px;align-items:center;font-size:10px;font-weight:800;padding:4px 10px 3px;border-bottom:1px solid #1a231422;letter-spacing:.03em}.st span{color:#1a23142e;transition:color .12s}.st span.on{color:#1a2314}.st .sp{flex:1}.st button.tg{background:none;border:0;padding:0;font:inherit;color:#1a23142e;cursor:pointer}.st button.tg.on{color:#1a2314}.st button.tg:hover{text-decoration:underline}.lscr{flex:1;display:flex;flex-direction:column;min-height:0;padding:4px 12px 8px}#inp{width:100%;resize:none;background:transparent;border:0;outline:none;color:#1a2314;font-size:20px;line-height:1.35;padding:2px 0;caret-color:#1a2314;min-height:30px;max-height:84px;overflow-y:auto}#inp::placeholder{color:#1a231455;font-size:13px}.nat{min-height:22px;font-size:.92em;opacity:.62;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none}.nat::-webkit-scrollbar{display:none}.lres{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end;text-align:right;scrollbar-width:none;padding-top:2px}.lres::-webkit-scrollbar{display:none}.rrow{display:flex;gap:10px;align-items:baseline;justify-content:flex-end;max-width:100%}.rrow .main{font-size:1.65em;overflow-x:auto;max-width:100%;scrollbar-width:none}.rrow .main::-webkit-scrollbar{display:none}.rrow.sm .main{font-size:1.25em}.lres .alt{font:12px ui-monospace,Menlo,monospace;opacity:.65;word-break:break-all}.lres .lerr{font:600 14px ui-monospace,Menlo,monospace;color:#7a1d12}.lres .big{font:600 15px ui-monospace,Menlo,monospace;word-break:break-all}.lcd .katex{color:inherit}.chips{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;padding-top:5px}.chips button{background:#1a231414;border:1px solid #1a231433;border-radius:999px;font-size:11px;font-weight:700;padding:1px 9px;color:#1a2314}.chips button:hover{background:#1a2314;color:#d7e3c6}#suggest{position:absolute;left:12px;bottom:6px;background:#1a2314;color:#d7e3c6;border-radius:6px;z-index:6;overflow:hidden;box-shadow:0 6px 18px #0008}#suggest div{padding:3px 12px;font:12.5px ui-monospace,Menlo,monospace;cursor:pointer}#suggest div.on,#suggest div:hover{background:#d7e3c6;color:#1a2314}.toast{position:absolute;right:10px;top:26px;font-size:11px;font-weight:700;background:#1a2314;color:#d7e3c6;padding:2px 9px;border-radius:99px;opacity:0;transition:opacity .2s;pointer-events:none}.toast.on{opacity:1}.keys{margin-top:16px;display:flex;flex-direction:column;gap:calc(var(--kh)*.22)}.krow{display:grid;gap:calc(var(--kh)*.16) calc(var(--kh)*.17)}.c6{grid-template-columns:repeat(6,1fr)}.c5{grid-template-columns:repeat(5,1fr)}.k{position:relative;height:var(--kh);border:0;border-radius:9px 9px 14px 14px;color:#eef2f6;font-weight:650;font-size:calc(var(--kh)*.33);background:linear-gradient(180deg,#505b68 0,#38414c);box-shadow:0 3px #0a0d11,0 5px 8px #0009,inset 0 1px #ffffff30,inset 0 -2px 3px #0004;transition:transform .05s,box-shadow .05s,filter .1s;display:flex;align-items:flex-end;justify-content:center;padding-bottom:calc(var(--kh)*.14)}.k:hover{filter:brightness(1.12)}.k:active,.k.dn{transform:translateY(2px);box-shadow:0 1px #0a0d11,0 2px 4px #0009,inset 0 1px #ffffff30,inset 0 -2px 3px #0004}.k b{font-weight:inherit;pointer-events:none;line-height:1}.k i{position:absolute;top:calc(var(--kh)*.07);font-style:normal;font-size:calc(var(--kh)*.215);font-weight:800;pointer-events:none;line-height:1;letter-spacing:.01em}.k .sl{left:6px;color:#f4c63a}.k .al{right:6px;color:#ff6a5c}.k.fn{background:linear-gradient(180deg,#3c4551,#2a313a);font-size:calc(var(--kh)*.3)}.k.cas{background:linear-gradient(180deg,#2f5d8c,#1f4469);font-size:calc(var(--kh)*.29)}.k.num{background:linear-gradient(180deg,#f6f7f8,#d8dbde);color:#12171d;font-size:calc(var(--kh)*.5);height:calc(var(--kh)*1.14);align-items:center;padding-bottom:0}.k.num b{padding-top:calc(var(--kh)*.06)}.k.op{background:linear-gradient(180deg,#5d6875,#444d59);font-size:calc(var(--kh)*.52);height:calc(var(--kh)*1.14);align-items:center;padding-bottom:0}.k.op b{padding-top:calc(var(--kh)*.06)}.k.del{background:linear-gradient(180deg,#4a8fd6,#2f6fb2);height:calc(var(--kh)*1.14);font-size:calc(var(--kh)*.34);align-items:center;padding-bottom:0}.k.ac{background:linear-gradient(180deg,#f08a3a,#d06a1c);height:calc(var(--kh)*1.14);font-size:calc(var(--kh)*.34);align-items:center;padding-bottom:0}.k.eq{background:linear-gradient(180deg,#e96f55,#c4492f);height:calc(var(--kh)*1.14);font-size:calc(var(--kh)*.55);align-items:center;padding-bottom:0}.k.shift{background:linear-gradient(180deg,#f8d247,#d3a317);color:#2b2100;height:calc(var(--kh)*.82);font-size:calc(var(--kh)*.27);align-items:center;padding-bottom:0}.k.alpha{background:linear-gradient(180deg,#f7786a,#c3402f);color:#fff;height:calc(var(--kh)*.82);font-size:calc(var(--kh)*.27);align-items:center;padding-bottom:0}.k.mode{background:linear-gradient(180deg,#59636f,#3d4651);height:calc(var(--kh)*.82);font-size:calc(var(--kh)*.26);align-items:center;padding-bottom:0}.k.mode i{top:calc(var(--kh)*.04)}.k.mode b{padding-top:calc(var(--kh)*.12)}.k.on{box-shadow:0 0 0 2px #fff9,0 3px #0a0d11,0 0 16px #fff6;filter:brightness(1.2)}.k.sto-on{box-shadow:0 0 0 2px #ff6a5c,0 3px #0a0d11}.device.model-fx880 .k{border-radius:999px!important;padding-bottom:0;align-items:center;box-shadow:0 3px #090c10,0 4px 8px #0008,inset 0 1px #ffffff2a}.device.model-fx880 .k b{padding-top:0}.device.model-fx880 .k.num{border-radius:999px!important;background:linear-gradient(180deg,#fff,#d8dde4)}.device.model-fx880 .k-home,.device.model-fx880 .k-settings{background:linear-gradient(180deg,#475569,#334155);color:#fff}.device.model-fx880 .k-tools,.device.model-fx880 .k-catalog,.device.model-fx880 .k-var{font-size:calc(var(--kh)*.26)}.dpad{grid-column:span 2;height:calc(var(--kh)*1.5);position:relative;margin-top:calc(var(--kh)*-.1)}.dpad .ring{position:absolute;inset:0;margin:auto;aspect-ratio:1;height:100%;border-radius:50%;background:radial-gradient(circle at 50% 35%,#59636f,#2d343d 70%);box-shadow:0 3px #0a0d11,0 6px 10px #000a,inset 0 1px #fff3}.dpad .hub{position:absolute;inset:0;margin:auto;width:34%;aspect-ratio:1;border-radius:50%;background:linear-gradient(180deg,#232a32,#171c22);box-shadow:inset 0 1px 4px #000c;display:flex;align-items:center;justify-content:center;font-size:7.5px;color:#6b7785;font-weight:800;letter-spacing:.08em}.dpad .hub-ok{position:absolute;inset:0;margin:auto;width:36%;aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#3b82f6,#1d4ed8);color:#fff;font-weight:900;font-size:11px;border:2px solid #ffffff40;box-shadow:0 3px 8px #000a,inset 0 1px #fff6;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .08s,filter .12s;z-index:5}.dpad .hub-ok:hover{filter:brightness(1.2);transform:scale(1.05)}.dpad .hub-ok:active{transform:scale(.95)}.dpad button{position:absolute;width:30%;height:30%;background:none;border:0;color:#d5dbe3;font-size:calc(var(--kh)*.28);display:flex;align-items:center;justify-content:center;border-radius:6px;padding:0}.dpad button:hover{color:#fff;background:#ffffff14}.dpad button:active{background:#ffffff26}.dpad .u{left:35%;top:6%}.dpad .d{left:35%;bottom:6%}.dpad .l{left:6%;top:35%}.dpad .r{right:6%;top:35%}.casolbl{font-size:8.5px;letter-spacing:.2em;color:#6f9fd0;font-weight:800;margin:2px 4px -2px;text-align:center}.mline{font:600 17px ui-monospace,Menlo,monospace;min-height:30px;padding:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mline .lbl{opacity:.55;font-size:12px;margin-right:8px;letter-spacing:.02em}.mline .mtxt{border-right:2px solid #1a2314}.st .app{margin-left:6px;padding:0 6px;border-radius:3px;background:#1a2314;color:#d7e3c6!important;font-size:9px}.studyview{display:grid;grid-template-columns:minmax(380px,1.05fr) minmax(320px,1fr);gap:16px;align-items:start;flex:1}.stcol{display:flex;flex-direction:column;gap:14px;min-width:0}.stout{display:flex;flex-direction:column;gap:12px}.stgraph{position:sticky;top:0;height:calc(100vh - 190px);min-height:380px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--g-bg)}.stgraph canvas{width:100%;height:100%;display:block;cursor:crosshair}.study-sec{padding:12px 16px 10px}.sec-title{display:flex;align-items:center;gap:10px;font-weight:700;font-size:14.5px;margin-bottom:8px}.sec-title .no{width:22px;height:22px;border-radius:7px;background:var(--app);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px color-mix(in srgb,var(--app) 40%,transparent)}.srow{display:flex;gap:12px;align-items:baseline;padding:4px 0;border-top:1px dashed var(--line);flex-wrap:wrap}.srow:first-of-type{border-top:0}.srow .sl{color:var(--dim);font-size:12.5px;min-width:136px;font-weight:600}.srow .sv{flex:1;min-width:0;overflow-x:auto}.sub{margin-top:4px}.vbt-scroll{overflow-x:auto;padding-bottom:4px}.vbt{display:grid;border:1.5px solid var(--ink);border-radius:6px;margin:6px 0 4px;overflow:hidden;font-size:14px;background:var(--panel);min-width:max-content}.vc{border-bottom:1px solid var(--line2);position:relative;display:flex;align-items:center;justify-content:center;min-width:0}.vc.lab{background:var(--panel2);border-right:1.5px solid var(--ink);font-weight:700}.vc.x{height:40px}.vc.d{height:36px}.vc.y{height:122px}.vc.ky.x{background:var(--panel2)}.vc.sg.d{border-left:0}.vc:nth-last-child(-n){border-bottom:0}.vc.hatch{background:repeating-linear-gradient(135deg,transparent 0 6px,var(--line2) 6px 7px)}.vc.pole .dbar,.vc .dbar{width:6px;height:100%;border-left:1.5px solid var(--ink);border-right:1.5px solid var(--ink);display:block}.vc.y.ky{flex-direction:column;justify-content:center;align-items:center}.vc.y.ky .yv{position:absolute;white-space:nowrap;font-size:13.5px;background:color-mix(in srgb,var(--panel) 85%,transparent);padding:0 2px;z-index:2}.yv.top{top:6px}.yv.bot{bottom:6px}.yv.mid{top:50%;transform:translateY(-50%)}.yv.left{right:calc(50% + 4px)}.yv.right{left:calc(50% + 4px)}.yv.top.left,.yv.bot.left,.yv.mid.left{text-align:right}.ybar{position:absolute;top:0;bottom:0;left:50%;width:0;border-left:1.5px solid var(--ink);border-right:1.5px solid var(--ink);margin-left:-3px;padding:0 2px}.vc.y.sg{align-items:stretch;justify-content:stretch}.arrow{width:100%;height:100%;overflow:visible}.arrow line,.arrow path{stroke:var(--app);stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}@media (max-width:1100px){.studyview{grid-template-columns:1fr}.stgraph{position:relative;height:420px}}.calcview2{display:grid;grid-template-columns:minmax(380px,1.05fr) minmax(320px,1fr);gap:16px;align-items:start;flex:1}@media (max-width:1100px){.calcview2{grid-template-columns:1fr}}.big-tex{font-size:1.7em;padding:6px 0;overflow-x:auto}.cform .lab.wide{flex-basis:100%}.cform{margin-top:12px}.valbox{margin-top:8px}.slider{width:100%;accent-color:var(--app);margin:10px 0 2px}.verdict{padding:8px 12px;border-radius:12px;font-weight:600;margin-bottom:6px}.verdict.yes{background:color-mix(in srgb,var(--ok) 16%,transparent);border:1px solid var(--ok)}.verdict.no{background:color-mix(in srgb,var(--err) 14%,transparent);border:1px solid var(--err)}.fgroup{margin-bottom:12px}.fg-t{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-weight:700;margin:6px 0 4px}.fform{padding:3px 6px;border-radius:8px}.fform:hover{background:var(--panel2)}.terms{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.tcell{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px 10px;overflow-x:auto}.tcell .ti{display:block;font-size:10.5px;color:var(--dim);font-weight:700}.pascal{display:flex;flex-direction:column;align-items:center;gap:3px;overflow-x:auto;padding:4px}.prow{display:flex;gap:4px;justify-content:center}.pc{min-width:34px;padding:2px 6px;text-align:center;font:12px ui-monospace,Menlo,monospace;background:var(--panel);border:1px solid var(--line);border-radius:7px}.pc.hit{background:var(--app);color:#fff;border-color:transparent}.rootlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.rl{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:6px 10px;overflow-x:auto}#app{transition:grid-template-columns .25s ease}#app.nodev{grid-template-columns:0 minmax(0,1fr)}#app.nodev #stage{width:0;padding:0;overflow:hidden;visibility:hidden}#app.nodev #main{margin-left:18px}.appview{animation:viewin .28s cubic-bezier(.2,.8,.2,1)}@keyframes viewin{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}#dock{gap:10px;padding:8px 14px 6px;align-items:center}.tiles{gap:4px;align-items:center;flex:1;overflow-x:auto;scrollbar-width:none;padding:2px 4px}.tsep{width:1px;height:38px;align-self:center;margin:0 7px;background:var(--line2);opacity:.6;flex-shrink:0}.tile{min-width:62px;max-width:78px;padding:4px 3px 5px;gap:4px;border-radius:12px;transition:transform .15s,background .15s;flex-shrink:0}.tile:hover{transform:translateY(-2px);background:var(--panel)}.tile .gl{width:42px;height:42px;border-radius:13px;padding:9.5px;box-shadow:0 6px 14px color-mix(in srgb,var(--c) 38%,transparent),inset 0 1px #fff5,inset 0 -2px 4px #0003;transition:box-shadow .15s,transform .15s}.tile .gl svg{width:100%;height:100%;stroke-width:1.9}.tile .nm{font-size:10.5px;max-width:74px;line-height:1.15;text-align:center;font-weight:600;color:var(--dim);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.tile.on .nm{color:var(--ink);font-weight:700}.tile.on .gl{transform:translateY(-2px);box-shadow:0 0 0 2px var(--solid),0 0 0 4px var(--c),0 8px 20px color-mix(in srgb,var(--c) 55%,transparent)}.unified-app{display:flex;flex-direction:column;flex:1;min-height:0;height:100%}.subapp-bar{display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--panel2) 75%,var(--solid));border:1px solid var(--line2);border-radius:16px;padding:6px 10px;margin-bottom:12px;backdrop-filter:blur(12px);box-shadow:0 4px 18px #00000015;flex-wrap:wrap}.subapp-btn{flex:1;min-width:210px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:9px 18px;border-radius:12px;font-size:13px;font-weight:700;color:var(--dim);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .18s cubic-bezier(.2,.8,.2,1);user-select:none}.subapp-btn:hover{color:var(--ink);background:var(--panel2)}.subapp-btn.on{color:#fff;background:var(--app);border-color:color-mix(in srgb,#fff 25%,transparent);box-shadow:0 4px 16px color-mix(in srgb,var(--app) 45%,transparent),inset 0 1px #ffffff40}.subapp-btn .s-ico{font-size:15px;font-weight:800;opacity:.95}.subapp-btn .s-txt{font-size:13px;letter-spacing:-.01em}.subapp-btn .s-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:6px;background:color-mix(in srgb,var(--panel) 80%,transparent);color:var(--dim);border:1px solid var(--line)}.subapp-btn.on .s-badge{background:#ffffff25;color:#fff;border-color:#ffffff35}.subapp-view{display:flex;flex-direction:column;flex:1;min-height:0;height:100%}.subapp-view[hidden]{display:none!important}.dtools{display:flex;gap:6px;align-items:center}.tbtn{display:flex;align-items:center;gap:7px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:7px 11px;color:var(--dim);font-size:12.5px;white-space:nowrap}.tbtn svg{width:16px;height:16px}.tbtn.icon{padding:7px 9px}.tbtn:hover{color:var(--ink);border-color:var(--line2);background:var(--panel2)}.tbtn kbd{font:600 10.5px ui-monospace,Menlo,monospace;background:var(--panel2);border:1px solid var(--line);border-radius:5px;padding:0 5px;color:var(--dim)}.install-tbtn{background:linear-gradient(135deg,#f9731629,#ea580c1a);border:1px solid rgba(249,115,22,.45);color:#f97316;font-weight:600;box-shadow:0 0 10px #f973161f;transition:all .18s ease}.install-tbtn:hover{background:linear-gradient(135deg,#f9731647,#ea580c38);border-color:#f97316;color:#fff;box-shadow:0 0 16px #f9731659;transform:translateY(-1px)}.updatebar{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--solid);border:1px solid var(--line2);border-radius:14px;box-shadow:0 10px 30px #00000080;font-size:13.5px;color:var(--ink);animation:viewin .2s ease}.updatebar[hidden]{display:none!important}.themebtn{display:none}.hometile .gl{width:48px;height:48px;padding:11px}.hometile .gl svg{width:100%;height:100%}.home{padding:22px 28px}.home-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.home-head h2{margin:0}.home-head .search{max-width:280px;margin:0}.home-body h4{margin:18px 0 8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.hometile{backdrop-filter:blur(6px)}.palette-bg{position:fixed;inset:0;background:#0007;backdrop-filter:blur(3px);display:flex;justify-content:center;padding-top:12vh;z-index:100;animation:viewin .15s}.palette{width:min(640px,92vw);max-height:68vh;display:flex;flex-direction:column;background:var(--solid);border:1px solid var(--line2);border-radius:18px;box-shadow:0 30px 80px #000a;overflow:hidden;align-self:flex-start}.palette .search{margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 18px;font-size:15px;background:transparent}.plist{overflow-y:auto;padding:6px}.prow2{display:flex;justify-content:space-between;gap:16px;padding:8px 12px;border-radius:10px;cursor:pointer;align-items:baseline}.prow2 b{font-weight:600;font-size:13.5px;white-space:nowrap}.prow2 span{color:var(--dim);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.prow2.on,.prow2:hover{background:color-mix(in srgb,var(--app) 22%,transparent)}.panel{box-shadow:0 1px #ffffff0d inset}.panel>h3{display:flex;align-items:center;gap:8px}.panel>h3:before{content:"";width:3px;height:11px;border-radius:2px;background:var(--app)}.btn.primary,.fld{border-radius:11px}::selection{background:color-mix(in srgb,var(--app) 40%,transparent)}*{scrollbar-width:thin;scrollbar-color:var(--line2) transparent}.entry{animation:viewin .25s}.sec-title{letter-spacing:-.005em}.stat .sv,.rv-m{font-feature-settings:"tnum"}.areaview{display:grid;grid-template-columns:minmax(360px,.85fr) minmax(480px,1.3fr);gap:16px;align-items:start;flex:1;min-height:0}.avis{position:sticky;top:0;display:flex;flex-direction:column;gap:10px;height:calc(100vh - 150px);min-height:520px}.avis .toolbar{margin:0}.abox{position:relative;border:1px solid var(--line);border-radius:18px;overflow:hidden;flex:1;min-height:200px}.abox.a2d{background:var(--g-bg)}.abox.a2d canvas{width:100%;height:100%;display:block;cursor:crosshair}.abox.a3d{background:radial-gradient(120% 120% at 30% 10%,#26405f 0,#101a2b 55%,#070b14);display:flex;flex-direction:column}.solid-canvas{flex:1;width:100%;min-height:0;display:block;cursor:grab}.solid-canvas:active{cursor:grabbing}.avis[data-view="2d"] .a3d,.avis[data-view="3d"] .a2d{display:none}.a3ctl{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;padding:10px 12px;border-radius:14px;background:#0b1424cc;backdrop-filter:blur(10px);border:1px solid #ffffff22;color:#dbe6f5;z-index:3}.a3ctl .mini{display:flex;align-items:center;gap:8px;font-size:11.5px;color:#9fb2cc}.a3ctl .mini .slider{width:110px;margin:0}.a3ctl .check{color:#c4d3e8}.a3ctl .btn.ghost{background:#ffffff14;color:#dbe6f5;border-color:#fff2}.sliceout{position:absolute;left:14px;top:12px;color:#dbe6f5;font-size:12.5px;z-index:3;background:#0b1424aa;padding:4px 10px;border-radius:10px}.sliceout .katex{color:#fff}.tpl{margin-top:10px}.chip.drag{cursor:grab}.chip.drag:active{cursor:grabbing}.params{margin-top:10px}.prm{display:flex;align-items:center;gap:12px;margin:4px 0}.prm .pv{min-width:92px;font:13px ui-monospace,Menlo,monospace}.prm .slider{flex:1;margin:0}.grow{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:12px;border:1px solid var(--line);margin:5px 0;cursor:pointer;transition:opacity .15s,transform .1s}.grow:hover{border-color:var(--app);transform:translate(2px)}.grow.off{opacity:.38}.grow .swatch{width:12px;height:12px;border-radius:4px;flex:none}.grow .gname{flex:1;min-width:0;overflow-x:auto;font-size:.95em}.grow .gval{white-space:nowrap}.grow .gval em{font-style:normal;color:var(--dim);font:12px ui-monospace,Menlo,monospace}.total{margin-top:10px;padding:10px 14px;border-radius:14px;background:color-mix(in srgb,var(--app) 14%,transparent);border:1px solid color-mix(in srgb,var(--app) 40%,transparent);font-size:1.45em;overflow-x:auto}.hint.warn{color:#f59e0b;margin-top:6px}@media (max-width:1180px){.areaview{grid-template-columns:1fr}.avis{position:relative;height:640px}}#app{grid-template-columns:minmax(0,1fr);grid-template-rows:1fr;width:100%;height:100%;overflow:hidden}#main{margin:14px 18px;flex:1;min-width:0;min-height:0;height:calc(100% - 28px)}#stage{position:fixed;left:0;top:0;bottom:0;width:min(500px,96vw);z-index:70;padding:14px 18px 22px;background:linear-gradient(160deg,color-mix(in srgb,var(--bg2) 90%,transparent),var(--bg));backdrop-filter:blur(18px);transform:translate(-104%);transition:transform .32s cubic-bezier(.2,.8,.2,1);box-shadow:30px 0 80px #000a;overflow-y:auto}#app.devopen #stage{transform:none}#stage .device{margin:auto}#app.pinned{grid-template-columns:auto minmax(0,1fr)}#app.pinned #stage{position:static;transform:none;width:auto;box-shadow:none;background:none;backdrop-filter:none;overflow:auto;z-index:auto}#app.pinned #main{margin-left:0}.scrim{position:fixed;inset:0;background:#0006;backdrop-filter:blur(2px);z-index:65;opacity:0;pointer-events:none;transition:opacity .25s}.scrim.on{opacity:1;pointer-events:auto}.pinbtn{margin-left:8px;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;color:#cdd8e6;font-size:11px;padding:3px 9px}.pinbtn:hover{background:#ffffff26}.device .top{flex-wrap:wrap;gap:6px}.calcview{flex-direction:row}.cmain{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.composer{position:relative;border-top:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),var(--panel));padding:10px 22px 14px;display:flex;flex-direction:column;gap:6px}.cp-nat{min-height:26px;color:var(--dim);font-size:1.05em;overflow-x:auto;white-space:nowrap}.cp-res{min-height:48px;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:2px;max-height:34vh;overflow-y:auto}.cp-res .rrow{display:flex;justify-content:flex-end;gap:12px;align-items:baseline}.cp-res .rrow .main{font-size:2.15em;overflow-x:auto;max-width:100%}.cp-res .rrow.sm .main{font-size:1.45em}.cp-res .alt{font:13px ui-monospace,Menlo,monospace;color:var(--dim)}.cp-res .big{font:600 15px ui-monospace,Menlo,monospace;word-break:break-all}.cp-res .lerr{color:var(--err);font:600 14px ui-monospace,Menlo,monospace}.cp-res .chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;padding-top:6px}.cp-res .chips button{background:var(--panel2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:600;padding:3px 12px;color:var(--ink)}.cp-res .chips button:hover{background:var(--app);color:#fff;border-color:transparent}.cp-bar{display:flex;align-items:flex-end;gap:10px}.cp-pr{color:var(--app);font-size:24px;font-weight:800;line-height:40px}.cp-bar textarea{flex:1;resize:none;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:10px 14px;font-size:16px;line-height:1.4;outline:none;min-height:44px;max-height:120px}.cp-bar textarea:focus{border-color:var(--app);box-shadow:0 0 0 3px color-mix(in srgb,var(--app) 25%,transparent)}.cp-btn{width:44px;height:44px;border-radius:14px;background:var(--panel2);border:1px solid var(--line);color:var(--dim)}.cp-btn svg{width:20px;height:20px}.cp-btn:hover{color:var(--ink);border-color:var(--line2)}.cp-run{width:56px;height:44px;border-radius:14px;background:var(--app);border:0;color:#fff;font-size:24px;font-weight:700;box-shadow:0 6px 16px color-mix(in srgb,var(--app) 40%,transparent)}.composer #suggest{position:absolute;left:54px;bottom:62px;background:var(--solid);color:var(--ink);border:1px solid var(--line2);border-radius:10px;box-shadow:0 12px 30px #0008;z-index:8;overflow:hidden}.composer #suggest div{padding:5px 14px;font:13px ui-monospace,Menlo,monospace;cursor:pointer}.composer #suggest div.on,.composer #suggest div:hover{background:var(--app);color:#fff}.log{padding-bottom:6px}.ineqview{max-width:1000px}.ineqone{display:flex;flex-direction:column;gap:14px}.ineqone[hidden],.lpview[hidden]{display:none}.modeseg{align-self:flex-start}.lparea{width:100%;font:15px ui-monospace,Menlo,monospace;resize:vertical;margin:8px 0}.lprow{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.lprow .fld{flex:1;min-width:160px}.lplab{font-weight:700;color:var(--dim);font-size:13px}.chk{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--dim)}.lpout{display:flex;flex-direction:column;gap:14px;margin-top:14px}.lpkind{font-weight:700;margin-bottom:8px}.lpbad,.lpr.bad{color:var(--err)}.lptab{border-collapse:collapse;margin:6px 0 10px}.lptab th,.lptab td{padding:5px 18px;border-bottom:1px solid var(--line);text-align:left}.lptab th{font-size:12px;color:var(--dim);text-transform:uppercase}.lpf{margin:6px 0;font-size:1.1em}.lpr{padding:8px 12px;border-radius:10px;background:var(--panel2);margin:6px 0;line-height:2}.lpr.good{border-left:4px solid var(--app)}.lpcons{margin-top:8px;color:var(--dim);font-size:.9em}.lpcons .sep{opacity:.4}.lpplot{padding:10px}.lpsvg{width:100%;height:auto;display:block;background:var(--field);border-radius:12px}.lpsvg .gl{stroke:var(--line);stroke-width:1}.lpsvg .axl{stroke:var(--dim);stroke-width:1.6}.lpsvg .tk{fill:var(--dim);font-size:10px}.lpsvg .feas{fill:color-mix(in srgb,var(--app) 30%,transparent);stroke:none}.lpsvg .bd{stroke:var(--app);stroke-width:2.2}.lpsvg .bd.strict{stroke-dasharray:7 5}.lpsvg .seg{fill:none;stroke:var(--app);stroke-width:5;stroke-linecap:round}.lpsvg .ip{fill:var(--ink);opacity:.55}.lpsvg .lvl{stroke:#f97316;stroke-width:2.6;stroke-dasharray:9 5}.lpsvg .vt{fill:var(--solid);stroke:var(--app);stroke-width:2.5}.lpsvg .vt.open{fill:var(--solid);stroke-dasharray:3 2}.lpsvg .vt.alt{fill:#60a5fa;stroke:var(--solid)}.lpsvg .vt.best{fill:#f97316;stroke:var(--solid);stroke-width:3}.lpsvg .vl{fill:var(--ink);font-weight:800;font-size:15px}.lpctl{display:flex;align-items:center;gap:14px;padding:10px 6px 0}.lpctl input[type=range]{flex:1}.lpt{min-width:120px}.ineqview.lpview{max-width:1280px}.lpout{display:grid;grid-template-columns:minmax(300px,5fr) minmax(420px,7fr);align-items:start}.lpout>.err{grid-column:1/-1}.lpplot{position:sticky;top:8px}@media (max-width:1100px){.lpout{grid-template-columns:1fr}}.ntworld{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start;max-width:1500px}.ntside{position:sticky;top:8px;max-height:calc(100vh - 110px);overflow-y:auto;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:10px}.ntsearch{width:100%;border:1px solid var(--line);background:var(--field);color:var(--ink);border-radius:10px;padding:8px 10px;margin-bottom:6px;outline:none}.ntsearch:focus{border-color:var(--app)}.ntcat{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--app);padding:10px 8px 3px}.ntnav button{display:block;width:100%;text-align:left;border:0;background:none;color:var(--ink);padding:6px 10px;border-radius:9px;font-size:13px;cursor:pointer}.ntnav button:hover{background:var(--panel2)}.ntnav button.on{background:var(--app);color:#fff;font-weight:700}.ntmain{min-width:0;display:flex;flex-direction:column;gap:12px}.nthead{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 18px}.nthead h2{margin:0 0 4px;font-size:20px}.ntdesc{margin:0;color:var(--dim);font-size:13px;line-height:1.5}.nttime{position:absolute;right:16px;top:14px;font:11px ui-monospace,Menlo,monospace;color:var(--dim)}.ntinputs{display:flex;gap:12px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:12px 16px}.ntinputs .lab{flex:0 1 190px}.ntinputs .ntwide{flex:1 1 420px}.ntinputs select.fld{padding:8px;border-radius:10px}.ntinputs .lparea{width:100%;margin:0}.ntout{display:flex;flex-direction:column;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 18px;min-height:120px}.nth{margin:14px 0 4px;font-size:13px;color:var(--app);text-transform:none;letter-spacing:0}.ntline{padding:4px 0;line-height:2}.ntnote{color:var(--dim);font-size:13px;padding:6px 10px;border-left:3px solid var(--line2);margin:6px 0;line-height:1.55}.nm{font-family:ui-monospace,Menlo,monospace;word-break:break-all}.yes{color:#22c55e;font-weight:700}.no{color:var(--err);font-weight:700}.stat.wide2{grid-column:span 2}.pill.dim{opacity:.6}.ntscroll{overflow-x:auto}.nttab{border-collapse:collapse;font-size:13.5px;margin:4px 0}.nttab th,.nttab td{padding:5px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:baseline}.nttab th{font-size:11px;color:var(--dim);text-transform:uppercase;letter-spacing:.04em}.nttab.center td,.nttab.center th{text-align:center}.ladder{display:inline-flex;flex-direction:column;font:600 17px ui-monospace,Menlo,monospace;margin:6px 0}.ladder div{display:flex}.ladder .lc{min-width:110px;text-align:right;padding:2px 12px 2px 4px;border-right:2px solid var(--ink)}.ladder .lp{padding:2px 12px;color:var(--app)}.sievegrid{display:grid;gap:3px;margin-top:10px}.sievegrid span{font:11px ui-monospace,Menlo,monospace;text-align:center;padding:4px 0;border-radius:5px;background:var(--panel2);color:var(--ink)}.sievegrid span.cmp{background:hsl(var(--h,200) 55% 55% / .35);color:var(--dim);text-decoration:line-through}.sievegrid span.pr{background:var(--app);color:#fff;font-weight:800}.sievegrid span.one{opacity:.4}.ntcanvas{border-radius:14px;border:1px solid var(--line);display:block}.pascalbox{overflow-x:auto;text-align:center;font:12px ui-monospace,Menlo,monospace}.pascal{white-space:nowrap}.pascal span{display:inline-block;padding:2px 7px;min-width:28px}.pascal span.hit{background:var(--app);color:#fff;border-radius:6px}.ntout code{background:var(--panel2);padding:2px 7px;border-radius:6px;word-break:break-all}@media (max-width:1050px){.ntworld{grid-template-columns:1fr}.ntside{position:static;max-height:260px}}.fmworld{max-width:1600px}.fmworld .ntmain{position:relative}.fmcount{position:absolute;right:6px;top:-6px;font:12px ui-monospace,Menlo,monospace;color:var(--dim)}.fmmain{display:flex;flex-direction:column;gap:6px}.fmhead h2{margin:0 0 6px;font-size:22px}.fmchap{margin:26px 0 2px;font-size:18px;color:var(--app)}.fmchap small{font-size:12px;color:var(--dim);font-weight:500;margin-left:8px}.fmsec{margin:16px 0 4px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.fmgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:12px}.fmcard{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;min-width:0;transition:border-color .15s,box-shadow .15s}.fmcard:hover{border-color:var(--app);box-shadow:0 6px 24px color-mix(in srgb,var(--app) 14%,transparent)}.fmtop{display:flex;align-items:center;gap:8px}.fmtop h4{margin:0;font-size:13.5px;flex:1;line-height:1.35}.fmbadge{font-size:10.5px;background:var(--panel2);color:var(--dim);border-radius:999px;padding:2px 9px;white-space:nowrap}.fmbtn{border:1px solid var(--line);background:var(--panel2);color:var(--dim);border-radius:8px;font-size:11px;padding:2px 8px;cursor:pointer}.fmbtn:hover{color:var(--ink);border-color:var(--line2)}.fmbtn.star.on{color:#f59e0b;border-color:#f59e0b;background:#f59e0b22}.fmmath{overflow-x:auto;overflow-y:hidden;min-height:44px;padding:2px 0}.fmmath .katex-display{margin:.4em 0}.fmmath:not(.done){background:linear-gradient(90deg,var(--panel2),transparent,var(--panel2));background-size:200% 100%;animation:fmsk 1.2s infinite linear;border-radius:8px;min-height:48px}@keyframes fmsk{to{background-position:-200% 0}}.fmnote{font-size:12px;color:var(--dim);line-height:1.5}.fmcalcbtn{align-self:flex-start;border:1px dashed var(--line2);background:none;color:var(--app);border-radius:8px;font-size:12px;padding:3px 10px;cursor:pointer}.fmcalcbtn:hover{background:var(--panel2)}.fmcalc{background:var(--field);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px}.fmcalc[hidden]{display:none}.fmin{display:flex;gap:8px;flex-wrap:wrap}.fmin .lab{flex:1 1 90px}.fmres{padding:2px 4px}.fmlab{color:var(--dim);margin-right:4px}.fmdec{color:var(--dim);font:12px ui-monospace,Menlo,monospace}.fmgrades{display:flex;gap:4px;margin:2px 0 6px;flex-wrap:wrap}.fmgrades button{flex:1;border:1px solid var(--line);background:var(--panel2);color:var(--dim);border-radius:8px;font-size:11px;padding:4px 0;cursor:pointer}.fmgrades button.on{background:var(--app);color:#fff;border-color:transparent}.ntnav em{float:right;font-style:normal;font-size:11px;opacity:.55}.ntnav button.on em{opacity:.9}@media (max-width:1300px){.fmgrid{grid-template-columns:1fr}}body{background:var(--solid)}#main{margin:0;border:0;border-radius:0;box-shadow:none;background:var(--solid)}#app.pinned #main{border-left:1px solid var(--line)}#stage{box-shadow:none;visibility:hidden;transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s .32s,box-shadow .32s}#app.devopen #stage{box-shadow:30px 0 80px #000a;visibility:visible;transition:transform .32s cubic-bezier(.2,.8,.2,1),visibility 0s,box-shadow .32s}#app.pinned #stage{box-shadow:none;visibility:visible}.scrim{backdrop-filter:none;visibility:hidden}.scrim.on{visibility:visible}.areaview{display:flex;gap:0;align-items:stretch;height:calc(100vh - 118px);min-height:560px;padding:0 14px}.areaview>.stcol{overflow-y:auto;overflow-x:hidden;padding-right:8px;min-width:240px;max-width:330px;flex:0 0 280px}.areaview>.stcol .panel{padding:8px 10px;margin-bottom:8px;border-radius:12px}.areaview>.stcol .panel>h3{font-size:12px;margin-bottom:6px;letter-spacing:.02em;color:var(--dim)}.areaview>.stcol .crow{gap:6px;margin:3px 0}.areaview>.stcol .crow .fld{padding:4px 8px;font-size:13px}.areaview>.stcol .tpl{margin-top:6px}.areaview>.stcol .tpl .lbl{font-size:11px;margin-bottom:3px}.areaview>.stcol .chipbar{gap:4px}.areaview>.stcol .chip{padding:2px 7px;font-size:11px;border-radius:6px}.areaview>.stcol .frow{gap:6px;margin:3px 0}.areaview>.stcol .lab{font-size:11px}.areaview>.stcol .lab span{font-size:11px;margin-bottom:2px}.areaview>.stcol .seg{gap:2px;padding:2px}.areaview>.stcol .seg button{font-size:11.5px;padding:4px 7px}.areaview>.stcol .grow{padding:5px 8px;margin:3px 0;gap:8px;border-radius:9px;font-size:.9em}.areaview>.stcol .total{padding:8px 10px;font-size:1.25em;border-radius:10px;margin-top:6px}.areaview>.avis{position:relative;top:auto;height:auto;min-height:0;min-width:300px;flex:1 1 0;display:flex;flex-direction:column;gap:8px}.avis .toolbar{margin:0;flex-wrap:wrap;gap:6px}.avis-boxes{display:flex;flex-direction:row;align-items:stretch;flex:1 1 0;min-height:0;width:100%;height:100%;position:relative;gap:0}.avis-boxes>.abox{position:relative;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0;min-height:0}.avis-boxes>.abox.a2d{flex:1 1 0;background:var(--g-bg)}.avis-boxes>.abox.a2d canvas{width:100%;height:100%;display:block;cursor:crosshair}.avis-boxes>.abox.a3d{flex:1 1 0;background:linear-gradient(180deg,color-mix(in srgb,var(--g-bg) 70%,#cfe3ff) 0%,var(--g-bg) 60%);display:flex;flex-direction:column}.avis[data-view="2d"] .avis-boxes>.abox.a3d,.avis[data-view="2d"] .avis-boxes>.split{display:none!important}.avis[data-view="2d"] .avis-boxes>.abox.a2d{flex:1 1 100%!important;width:100%!important}.avis[data-view="3d"] .avis-boxes>.abox.a2d,.avis[data-view="3d"] .avis-boxes>.split{display:none!important}.avis[data-view="3d"] .avis-boxes>.abox.a3d{flex:1 1 100%!important;width:100%!important}.split{flex:0 0 14px;position:relative;cursor:col-resize;touch-action:none;z-index:5}.split:after{content:"";position:absolute;left:50%;top:50%;width:4px;height:44px;margin:-22px 0 0 -2px;border-radius:4px;background:var(--line2);transition:background .15s,height .15s}.split:hover:after,.split.on:after{background:var(--app);height:64px;margin-top:-32px}.split-row{flex:0 0 14px;cursor:row-resize}.split-row:after{width:44px;height:4px;margin:-2px 0 0 -22px}.split-row:hover:after,.split-row.on:after{width:64px;height:4px;margin:-2px 0 0 -32px}.solid-canvas{flex:1 1 0;min-height:0;width:100%}.a3ctl{position:static;margin:0;border-radius:0;border:0;border-top:1px solid var(--line);background:var(--panel);backdrop-filter:none;color:var(--ink);padding:6px 10px;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;flex:0 0 auto}.a3ctl .mini{color:var(--dim);display:flex;align-items:center;gap:6px;font-size:11.5px}.a3ctl .mini .slider{width:90px;margin:0}.a3ctl .check{color:var(--ink);font-size:11.5px}.a3ctl .btn.ghost{background:var(--panel2);color:var(--ink);border-color:var(--line)}.val-badge{display:inline-block;padding:1px 5px;font-size:11px;font-weight:700;border-radius:5px;background:color-mix(in srgb,var(--app) 16%,transparent);color:var(--app);border:1px solid color-mix(in srgb,var(--app) 32%,transparent);min-width:32px;text-align:center}.sliceout{position:absolute;left:12px;top:10px;z-index:2;background:color-mix(in srgb,var(--panel) 88%,transparent);border:1px solid var(--line);border-radius:10px;padding:4px 8px;font-size:11.5px}.ghint{position:absolute;left:12px;top:8px}.slabopts{display:none;flex-direction:column;gap:8px;margin-top:10px}[data-mode=slab].slabopts,.panel[data-mode=slab] .slabopts{display:flex}.areaview[data-mode=slab] .revonly,.lineopts{display:none}.panel[data-axis=line] .lineopts{display:flex}@media (max-width:1180px){.areaview{flex-direction:column!important;height:auto!important;overflow-y:auto}.areaview>.stcol{flex:none!important;width:100%!important;max-height:500px}.areaview>.avis{flex:none!important;width:100%!important;height:680px}.areaview .split-col{display:none!important}.shape3dview{flex-direction:column!important;height:auto!important;overflow-y:auto}.shape3dview>.s3d-col{flex:none!important;width:100%!important}.shape3dview .split-col{display:none!important}.shape3dview .s3d-gl{height:480px!important}}.splitflex{display:flex!important;gap:0!important;align-items:stretch!important;height:calc(100vh - 118px);min-height:520px;padding:0 14px}.splitflex>*:not(.split){min-width:260px;overflow-y:auto}.splitflex>.stgraph{position:relative;top:auto;height:auto}.splitflex>.gwrap{position:relative;top:auto;height:auto;overflow:hidden!important}.splitflex>.gcol{overflow-y:auto;overflow-x:hidden;padding-right:6px}.splitflex>.stcol,.splitflex>div:first-child{padding-right:6px}@media (max-width:1100px){.splitflex{flex-direction:column;height:auto}.splitflex>.split{display:none}.graphview{grid-template-columns:1fr;height:auto}.graphview .gwrap{min-height:420px}.graphview .curves{max-height:220px}}.geoency{grid-template-columns:240px minmax(0,1fr)}.geomain{min-width:0;display:flex;flex-direction:column;gap:10px;height:calc(100vh - 120px)}.geotitle{display:flex;align-items:center;gap:12px}.geotitle h2{margin:0;font-size:22px}.geobody{display:flex;flex:1;min-height:0}.geoleft{overflow-y:auto;min-width:300px;display:flex;flex-direction:column;gap:10px;padding-right:6px}.geofm{overflow-y:auto;min-width:300px;flex:1 1 0;padding-left:4px}.geofm .fmgrid{grid-template-columns:1fr}.geofig{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--g-bg) 70%,#cfe3ff),var(--g-bg));min-height:300px;position:relative;overflow:hidden;flex:0 0 auto}.fig2dbox{padding:8px}.fig2dbox[hidden],.fig3dbox[hidden]{display:none}.fig3dbox{height:340px;position:relative}.mini3d{width:100%;height:100%;display:block;cursor:grab}.geotools{display:flex;gap:10px 16px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--dim)}.geotools[hidden]{display:none}.geoin{display:flex;gap:10px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 12px}.geoin .lab{flex:1 1 130px}.geoout{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:2px 18px}.geoout .fmres{padding:3px 2px}.fig2d{width:100%;height:auto;max-height:340px;display:block}.fig2d .ff{fill:color-mix(in srgb,var(--app) 22%,transparent)}.fig2d .fs,.fig2d polygon,.fig2d .ff{stroke:var(--app);stroke-width:2.4;stroke-linejoin:round}.fig2d .fh{stroke:#e65100;stroke-width:1.6;stroke-dasharray:6 4}.fig2d .fc{fill:none;stroke:#43a047;stroke-width:1.8}.fig2d .fc2{fill:none;stroke:#1e88e5;stroke-width:1.8}.fig2d .fr{fill:none;stroke:var(--ink);stroke-width:1.4}.fig2d .fd{fill:var(--ink)}.fig2d .fl{fill:#b3261e;font:700 14px ui-sans-serif,system-ui}.fig2d .fv{fill:var(--ink);font:700 15px ui-sans-serif,system-ui}@media (max-width:1100px){.geoency{grid-template-columns:1fr}.geomain{height:auto}.geobody{flex-direction:column}}.polyview{display:flex;height:calc(100vh - 118px);min-height:520px;padding:0 14px}.polyleft{overflow-y:auto;min-width:340px;display:flex;flex-direction:column;gap:12px;padding-right:6px}.polyright{overflow-y:auto;min-width:300px;flex:1 1 0;display:flex;flex-direction:column;gap:10px}.polybody{display:flex;flex-direction:column;gap:10px}@media (max-width:1100px){.polyview{flex-direction:column;height:auto}}.oxyzview{display:flex;height:calc(100vh - 118px);min-height:560px;padding:0 14px}.oxleft{overflow-y:auto;min-width:360px;display:flex;flex-direction:column;gap:12px;padding-right:6px}.oxright{flex:1 1 0;min-width:300px;display:flex;flex-direction:column;gap:8px}.oxbox{flex:1;height:auto;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--g-bg) 70%,#cfe3ff),var(--g-bg))}.oxpts{display:flex;flex-direction:column;gap:6px;margin:6px 0}.oxrow{display:flex;align-items:center;gap:6px}.oxname{width:22px;font-size:15px;color:var(--app)}.oxfld{flex:1;min-width:0}.oxopts{display:flex;gap:16px;flex-wrap:wrap;font-size:12.5px;color:var(--dim)}.oxsels{display:flex;gap:8px;flex-wrap:wrap}.oxsel{flex:0 0 auto;min-width:84px}.oxout{display:flex;flex-direction:column;gap:10px}.oxsec{padding:12px 16px}.oxsec h3{margin:0 0 6px}.oxsec small{font-weight:500;color:var(--dim)}@media (max-width:1100px){.oxyzview{flex-direction:column;height:auto}.oxbox{height:420px}}.oxbox{position:relative;min-height:360px}.oxbox .mini3d{position:absolute;inset:0;width:100%;height:100%}.oxpts[hidden]{display:none}@media (max-width:1100px){.oxleft{overflow:visible;min-width:0}}.odeview{display:flex;height:calc(100vh - 118px);min-height:520px;padding:0 14px}.odeview .oxright[hidden]{display:none}.odeview .oxleft{flex:1 1 0}.odeview .stgraph{position:relative;height:100%!important;top:auto}.odeview:not(.odenum) .oxleft{flex:1 1 0!important}.odeview:not(.odenum) .split{display:none}.interpview{display:flex;height:calc(100vh - 118px);min-height:560px;padding:0 14px}.interpright{display:flex;flex-direction:column;gap:10px}.concrow{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;background:var(--panel2);border-radius:12px;padding:8px 10px;margin-bottom:6px}.concrow select{flex:1 1 240px}.concrow .lab{flex:0 1 120px}.bbt td{text-align:center;padding:6px 14px;border:1px solid var(--line)}.bbt td.max{color:#c62828;font-weight:700}.bbt td.min{color:#2e7d32;font-weight:700}.interpin{display:flex;flex-direction:column;gap:8px;margin-top:8px}.oxsgk{flex:1;height:auto;position:relative;min-height:360px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:inset 0 1px 3px #00000008}.oxsgk .oxcanvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab}.oxsgk .oxcanvas:active{cursor:grabbing}.oxsgk[hidden],.oxbox[hidden]{display:none}.oxright .geotools{background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:8px 12px;gap:8px 14px}.oxright .geotools[hidden]{display:none}.geotools .mini{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--dim);user-select:none}.geotools .mini .slider{width:80px;height:4px;accent-color:var(--app);cursor:pointer;vertical-align:middle}.geotools .mini span[class^=val-]{font-family:ui-monospace,Menlo,monospace;font-size:11.5px;min-width:28px;color:var(--ink);font-weight:600}.geotools .chk{display:inline-flex;gap:6px;align-items:center;font-size:12px;color:var(--dim);cursor:pointer;user-select:none}.geotools .chk input{accent-color:var(--app);cursor:pointer}.concrow select.fld{height:38px;min-height:0}.concrow .lab select.fld{width:auto;min-width:64px}.concrow .lab select.fld{flex:0 0 auto}.concrow>select{flex:1 1 220px}.bbtbox{margin:8px 0}.bbtsvg{display:block;background:var(--solid);border-radius:6px}.bbtsvg .bt{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:16px;color:var(--ink)}.bbtbar{display:flex;justify-content:flex-end;margin-top:4px}.vbt-scroll{overflow-x:auto}@media print{html,body{height:auto!important;overflow:visible!important;background:#fff!important}#dock,#stage,.scrim,.split,.device,.palette-bg,.home,.fmbtn,.bbtbar,.geotools,.cp-bar,.toolbar,.acts,.oxopts,.chipbar,.concrow .x{display:none!important}#app{display:block!important;height:auto!important}#main{display:block!important;height:auto!important;border:0!important;box-shadow:none!important;overflow:visible!important;margin:0!important}#work,.appview{height:auto!important;overflow:visible!important;position:static!important}.studyview,.splitflex,.oxyzview,.areaview,.interpview,.polyview,.odeview,.geobody,.ntworld,.calcview2{display:block!important;height:auto!important;padding:0!important}.stcol,.oxleft,.interpright,.oxright,.polyleft,.polyright,.geoleft,.geofm,.ntmain{overflow:visible!important;height:auto!important;flex:none!important}.ntside{display:none!important}.stgraph,.oxbox,.geofig,.abox{height:380px!important;position:relative!important;break-inside:avoid;page-break-inside:avoid}.panel,.fmcard,.stat{break-inside:avoid;page-break-inside:avoid}canvas{max-width:100%!important}.bbtbox,.bbtsvg{break-inside:avoid}}.linalgview{display:flex;height:calc(100vh - 118px);min-height:560px;padding:0 14px}.linalgview .oxright{overflow-y:auto;padding-left:6px;gap:10px}.mwrap{display:flex;flex-direction:column;gap:8px;margin:8px 0}.mgrid{display:grid;gap:6px}.mcell{text-align:center;min-width:0}.mcell.mb{border-left:3px solid var(--app);background:var(--panel2)}.gstep{display:flex;gap:16px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--line);flex-wrap:wrap}.gstep .gd{min-width:150px;color:var(--dim);font-size:13px}.chip.on{background:var(--app);color:#fff;border-color:transparent}.integview{display:flex;flex-direction:column;gap:14px;max-width:1060px;margin:0 auto;padding:0 14px;width:100%}.integ-top-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--panel);padding:8px 12px;border-radius:12px;border:1px solid var(--line)}.isstep{display:flex;gap:14px;padding:12px 0;border-bottom:1px dashed var(--line)}.isn{flex:0 0 30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--app),#a855f7);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;box-shadow:0 2px 8px #7c3aed40}.isb{flex:1;min-width:0}.isb>b{display:block;margin-bottom:6px;font-size:15px;color:var(--ink)}.issub{margin:8px 0 8px 14px;border-left:3px solid var(--app);background:var(--panel2);border-radius:0 10px 10px 0;padding:8px 14px}.riemann-box{display:flex;flex-direction:column;gap:14px}.riemann-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--panel);padding:10px 14px;border-radius:12px;border:1px solid var(--line)}.riemann-controls label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}.riemann-canvas-wrap{position:relative;width:100%;height:380px;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 4px 16px #0000000a}.riemann-canvas{width:100%;height:100%;display:block;cursor:crosshair}.riemann-tip{position:absolute;pointer-events:none;background:#0f172ae6;backdrop-filter:blur(8px);color:#fff;padding:6px 12px;border-radius:8px;font-size:12px;font-family:system-ui,-apple-system,sans-serif;box-shadow:0 4px 14px #0000004d;transform:translate(-50%,-120%);transition:opacity .15s ease;z-index:10;white-space:nowrap;border:1px solid rgba(255,255,255,.18)}.riemann-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.riemann-stat-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.riemann-stat-card .rsc-lbl{font-size:11.5px;color:var(--dim);text-transform:uppercase;letter-spacing:.6px;font-weight:700}.riemann-stat-card .rsc-val{font-size:18px;font-weight:700;color:var(--app);font-variant-numeric:tabular-nums}.riemann-stat-card .rsc-sub{font-size:12px;color:var(--dim)}.riemann-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--line)}.riemann-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}.riemann-table th{background:var(--panel2);padding:9px 14px;border-bottom:1px solid var(--line);font-weight:600;color:var(--ink)}.riemann-table td{padding:9px 14px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.riemann-table tr:hover td{background:#7c3aed0f}.riemann-table tr.active-row td{background:#7c3aed1f;font-weight:700;color:var(--app)}.unfoldview{display:flex;height:calc(100vh - 118px);min-height:560px;padding:0 14px}.netfig{background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px}.netsvg{width:100%;height:auto;display:block}.netinfo{display:flex;flex-direction:column;gap:8px}@media print{.unfoldview{display:block!important;height:auto!important}.unfoldview .oxright{display:none!important}.netfig{border:0}}.appview.inkroot{padding:0;overflow:hidden;--ia:#7c3aed}.inkview{position:absolute;inset:0;display:flex;flex-direction:column;min-height:0}.ink-top{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--solid) 94%,var(--ia)),var(--solid));flex-wrap:wrap}.ink-brand{display:flex;align-items:center;gap:8px;margin-right:6px}.ink-brand b{font-size:15px;letter-spacing:.2px}.ink-brand small{font-size:10px;color:var(--dim);letter-spacing:1.5px;font-weight:700;border:1px solid var(--line2);border-radius:6px;padding:0 5px}.ink-logo{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 4px 12px #7c3aed55}.ink-logo svg{width:17px;height:17px}.ink-sp{flex:1}.ink-pill{display:flex;align-items:center;gap:2px;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:3px}.ink-ib,.ink-tb,.ink-zoom{border:0;background:transparent;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;color:var(--ink);font-size:13px}.ink-ib{min-width:30px;padding:0 6px}.ink-tb{padding:0 10px}.ink-tb svg,.ink-ib svg{width:17px;height:17px}.ink-zoom{min-width:50px;font-variant-numeric:tabular-nums;font-size:12px;color:var(--dim)}.ink-ib:hover,.ink-tb:hover,.ink-zoom:hover{background:var(--panel2);background:color-mix(in srgb,var(--ia) 14%,transparent)}.ink-tb.on{background:color-mix(in srgb,var(--ia) 18%,transparent);color:var(--ia)}.ink-bg,.ink-top select{background:var(--field);color:var(--ink);border:1px solid var(--line2);border-radius:10px;padding:5px 8px;height:34px}.ink-main{flex:1;min-height:0;display:flex;position:relative}.ink-rail{width:68px;display:flex;flex-direction:column;gap:4px;padding:10px 7px;border-right:1px solid var(--line);background:var(--solid)}.ink-tool{display:flex;flex-direction:column;align-items:center;gap:3px;border:1px solid transparent;background:transparent;border-radius:12px;padding:8px 2px 6px;font-size:11px;color:var(--dim)}.ink-tool:hover{background:var(--panel2);color:var(--ink)}.ink-tool.on{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;box-shadow:0 6px 16px #7c3aed55}.ink-stage{position:relative;flex:1;min-width:0;overflow:hidden;background:#fff}.ink-cv{position:absolute;inset:0;touch-action:none;display:block}.ink-status{position:absolute;right:12px;bottom:10px;font-size:12px;color:#475569;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:999px;padding:3px 12px;pointer-events:none;box-shadow:0 2px 8px #0001}.ink-ctx{position:absolute;left:12px;top:12px;width:268px;max-height:calc(100% - 24px);overflow:auto;background:color-mix(in srgb,var(--solid) 90%,transparent);backdrop-filter:blur(14px);border:1px solid var(--line2);border-radius:16px;box-shadow:0 18px 40px #0003,0 2px 6px #0002;padding:6px 12px 12px;color:var(--ink)}.ink-ctx[hidden],.ink-sec[hidden]{display:none}.ink-sec h5{margin:12px 0 6px;font-size:10.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--dim)}.ink-list{display:flex;flex-direction:column;gap:4px}.ink-pen{display:flex;align-items:center;gap:8px;border:1px solid transparent;background:transparent;border-radius:11px;padding:2px 6px 2px 2px;text-align:left}.ink-pen canvas{width:110px;height:28px;flex:none;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.ink-pen span{display:flex;flex-direction:column;line-height:1.2;min-width:0}.ink-pen b{font-size:13px}.ink-pen small{font-size:10.5px;color:var(--dim)}.ink-pen:hover{background:var(--panel2)}.ink-pen.on{border-color:var(--ia);background:color-mix(in srgb,var(--ia) 12%,transparent)}.ink-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.ink-grid.g2{grid-template-columns:repeat(2,1fr)}.ink-grid.g4{grid-template-columns:repeat(4,1fr)}.ink-chip{border:1px solid var(--line2);background:var(--panel2);border-radius:9px;padding:5px 6px;font-size:12px;line-height:1.25;color:var(--ink)}.ink-chip.wide{width:100%;margin-top:6px}.ink-chip:hover{border-color:var(--ia)}.ink-chip.on{background:var(--ia);color:#fff;border-color:var(--ia)}.ink-tabs{display:flex;gap:3px;margin:8px 0 6px;background:var(--panel2);padding:2px;border-radius:10px}.ink-tab{flex:1;border:0;background:transparent;border-radius:8px;padding:5px 2px;font-size:11px;font-weight:600;color:var(--dim);cursor:pointer;transition:all .15s}.ink-tab:hover{color:var(--ink)}.ink-tab.on{background:var(--solid);color:var(--ia);box-shadow:0 1px 4px #0002}.ink-act-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;border:1px solid var(--line2);background:color-mix(in srgb,var(--ia) 8%,var(--panel2));border-radius:10px;padding:7px 10px;font-size:12px;font-weight:600;color:var(--ink);cursor:pointer;margin-bottom:6px;transition:all .15s}.ink-act-btn:hover{background:color-mix(in srgb,var(--ia) 16%,var(--panel2));border-color:var(--ia)}.ink-act-btn.active{background:var(--ia);color:#fff;border-color:var(--ia);box-shadow:0 3px 10px #7c3aed44}.ink-note{font-size:11.5px;color:var(--dim);margin-top:6px;line-height:1.45}.ink-colors{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ink-sw{width:24px;height:24px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line2);padding:0}.ink-sw.on{box-shadow:0 0 0 2px var(--ia)}.ink-cp{width:30px;height:26px;padding:0;border:0;background:none}.ink-wrow{display:flex;align-items:center;gap:8px;margin:10px 0 6px;font-size:12px;color:var(--dim)}.ink-wr{flex:1;accent-color:#7c3aed}.ink-wv{min-width:28px;text-align:right;color:var(--ink)}.ink-drawer{width:300px;flex:none;overflow:auto;border-left:1px solid var(--line);background:var(--solid);padding:6px 14px 18px;transition:width .22s,padding .22s,opacity .22s}.ink-drawer.closed{width:0;padding:0;opacity:0;overflow:hidden;border:0}.ink-drawer-hdr{display:flex;align-items:center;justify-content:space-between;padding:8px 0 10px;border-bottom:1px solid var(--line);margin-bottom:6px;gap:8px}.ink-drawer-hdr-title{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--ink)}.ink-drawer-hdr-icon{font-size:15px}.ink-pages-hdr{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--line);background:var(--solid)}.ink-pages-hdr-title{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--dim)}.ink-pages-hdr-icon{font-size:13px}.ink-panel-close-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:8px;border:1px solid var(--line2);background:var(--panel);color:var(--dim);font-size:11px;font-weight:600;cursor:pointer;transition:all .18s;flex-shrink:0}.ink-panel-close-btn:hover{background:color-mix(in srgb,var(--ia) 12%,transparent);border-color:var(--ia);color:var(--ia)}.ink-edge-tab{position:absolute;top:50%;transform:translateY(-50%);z-index:25;background:color-mix(in srgb,var(--solid) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line2);box-shadow:0 4px 16px #0000001f;padding:7px 11px;border-radius:20px;font-size:12px;font-weight:700;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s;user-select:none}.ink-edge-tab[hidden]{display:none!important}.ink-edge-tab:hover{background:var(--solid);border-color:var(--ia);color:var(--ia);box-shadow:0 6px 20px #7c3aed40;transform:translateY(-50%) scale(1.04)}.ink-edge-tab.left{left:10px}.ink-edge-tab.right{right:10px}.ink-dsec{padding:12px 0;border-bottom:1px solid var(--line)}.ink-dsec h4{margin:0;font-size:14px}.ink-dsec p{margin:2px 0 10px;font-size:11.5px;color:var(--dim);line-height:1.4}.ink-dsec p:empty{display:none}.ink-frow{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ink-fdot{width:10px;height:10px;border-radius:50%;flex:none}.ink-in{width:100%;background:var(--field);color:var(--ink);border:1px solid var(--line2);border-radius:9px;padding:6px 9px;font:inherit;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;min-width:0}.ink-in:focus{outline:2px solid color-mix(in srgb,var(--ia) 50%,transparent);border-color:var(--ia)}.ink-rng{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.ink-rng label{display:flex;flex-direction:column;font-size:11px;color:var(--dim);gap:2px}.ink-check{display:flex;align-items:center;gap:4px;font-size:12px;margin-bottom:8px}.ink-primary{width:100%;border:0;border-radius:11px;padding:9px;font-weight:700;color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 6px 16px #7c3aed44}.ink-primary:hover{filter:brightness(1.08)}.ink-links{display:flex;flex-direction:column;gap:6px}.ink-link{display:flex;flex-direction:column;text-align:left;border:1px solid var(--line2);background:var(--panel);border-radius:11px;padding:8px 10px;gap:1px}.ink-link b{font-size:13px}.ink-link small{font-size:11px;color:var(--dim)}.ink-link:hover{border-color:var(--ia);background:color-mix(in srgb,var(--ia) 8%,transparent)}.ink-textin{position:absolute;transform:translateY(-50%);border:1px dashed #2563eb;background:#ffffffd0;outline:none;min-width:120px;padding:0 4px;font-family:Inter,system-ui,sans-serif}@media print{.ink-top,.ink-rail,.ink-ctx,.ink-drawer,.ink-status{display:none!important}}.netface{cursor:grab}.netfig{touch-action:none}.solidsview{display:flex;height:calc(100vh - 118px);min-height:560px;padding:0 14px}.slist{display:flex;flex-direction:column;gap:8px}.sitem{border:1px solid var(--line2);border-radius:14px;background:var(--panel);padding:8px 10px;cursor:pointer}.sitem.on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.sihead{display:flex;align-items:center;gap:6px}.siname{flex:1;font-size:13px}.sicol{width:24px;height:24px;border:0;padding:0;background:none}.sibtn{border:1px solid var(--line2);background:var(--panel2);border-radius:8px;width:28px;height:26px;padding:0;font-size:13px}.sibtn:hover{border-color:var(--accent)}.sigrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px;margin-top:8px}.sif{display:flex;flex-direction:column;font-size:10.5px;color:var(--dim);gap:2px}.sif .fld{width:100%;padding:3px 6px;font-size:12.5px}.scut .chipbar{margin:8px 0}.sresh{font-weight:700;margin:12px 0 6px;font-size:13px}.sdot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;border:1px solid #0004}.seccard{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px;margin:8px 0;background:var(--panel)}.secinfo{flex:1;font-size:12.5px;line-height:1.6}.secsvg{width:190px;flex:none;background:#fff;border-radius:8px}.svert{margin-top:6px}.svert .chipbar{max-height:130px;overflow:auto}@media print{.solidsview{display:block!important;height:auto!important}.solidsview .oxright{display:none!important}}.prow{display:flex;align-items:center;gap:6px;margin:6px 0}.pname{min-width:16px;font-family:ui-monospace,monospace}.prow .slider{flex:1;min-width:60px}.prng{font-size:10.5px;color:var(--dim)}.pselect{width:100%;background:var(--field);color:var(--ink);border:1px solid var(--line2);border-radius:9px;padding:5px 8px;margin:6px 0}.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:6px;margin-top:8px}.pgrid .wide{grid-column:1/-1}.sibtn.on{background:var(--accent);color:#fff}.entry .in{position:relative}.etools{position:absolute;right:6px;top:4px;display:flex;gap:4px;opacity:0;transition:opacity .15s}.entry:hover .etools,.etools:focus-within{opacity:1}.etool{border:1px solid var(--line2);background:var(--panel2);border-radius:8px;width:28px;height:26px;padding:0;font-size:13px;color:var(--dim)}.etool:hover{color:var(--ink);border-color:var(--accent)}.einput{flex:1;min-width:200px;font:inherit;font-family:ui-monospace,SF Mono,Menlo,monospace;background:var(--field);color:var(--ink);border:1px solid var(--accent);border-radius:8px;padding:2px 8px;outline:none}.ink-pillbtn{position:absolute;left:12px;top:12px;display:flex;align-items:center;gap:7px;border:1px solid var(--line2);background:color-mix(in srgb,var(--solid) 92%,transparent);backdrop-filter:blur(10px);border-radius:999px;padding:5px 12px;box-shadow:0 6px 18px #0002;color:var(--ink);font-size:12.5px}.ink-pillbtn[hidden]{display:none}.ink-pillbtn i{width:14px;height:14px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line2)}.ink-pillbtn small{color:var(--dim)}.fs3d{position:fixed!important;inset:0;z-index:90;height:100vh!important;min-height:0!important;max-height:none!important;width:100vw!important;padding:12px!important;margin:0!important;background:var(--bg2);display:flex!important;flex-direction:row!important;gap:12px}.fs3d>:first-child{flex:0 0 370px!important;width:370px!important;max-width:370px;overflow:auto}.fs3d>.split{display:none!important}.fs3d>:last-child{flex:1 1 0!important;width:auto!important;min-width:0;height:100%!important;position:relative!important;top:0!important}.fs3d .oxbox,.fs3d .abox.a3d{min-height:0}.fs3d .avis{height:100%!important}.fsbtn{white-space:nowrap}.fs3d .abox.a3d{flex:1 1 0!important;height:auto!important;min-height:0!important}.fs3d .avis[data-view="3d"]{display:flex}.vbar{display:flex;flex-direction:column;gap:5px;align-items:flex-start;width:100%}.vbar-row{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.vviews{display:flex;flex-wrap:nowrap;gap:3px}.vviews .chip{padding:2px 8px;font-size:11.5px;border-radius:6px;line-height:1.2}.vsel{width:auto!important;margin:0!important;padding:2px 7px!important;font-size:11.5px!important;height:24px;border-radius:6px}.vbar-row-2 .check{font-size:11.5px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer;margin:0;padding:0 3px}.vbar-row-2 .fsbtn{padding:2px 8px!important;font-size:11.5px!important;line-height:1.2;white-space:nowrap;border-radius:6px}.gl-lost{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5;border:1px dashed var(--accent);background:var(--solid);color:var(--ink);border-radius:12px;padding:10px 16px;box-shadow:0 8px 24px #0003}.gl-lost[hidden]{display:none}.sliceout{background:#0b1424d9;border-radius:10px;padding:3px 10px}.oxcon{margin:2px 0 10px 24px;padding:8px 10px;border:1px dashed var(--line2);border-radius:10px;background:var(--panel)}.oxcon .sigrid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.sname{flex:1;min-width:60px;background:var(--field);color:var(--ink);border:1px solid var(--line2);border-radius:8px;padding:2px 8px;font:inherit;font-size:13px}.solcard{align-items:flex-start}.solv{margin:6px 0 4px;padding:8px 10px;border-left:3px solid var(--accent);background:var(--panel);border-radius:0 10px 10px 0}.solrow{padding:3px 0;overflow-x:auto;font-size:15px}.rel{font-weight:700;color:var(--accent)}.legend{font-size:12px;color:var(--dim);margin:6px 0;line-height:1.7}.legend b{font-style:italic;font-family:ui-serif,Georgia,serif;font-size:14px}.shape3dview{display:flex;flex-direction:row;gap:14px;height:100%;overflow:hidden;position:relative}.s3d-col{flex:1;min-width:0;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding-right:2px}.s3d-panel{display:flex;flex-direction:column;gap:10px}.s3d-panel-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:2px}.s3d-panel-head h3{margin:0;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);font-weight:700;display:flex;align-items:center;gap:8px}.s3d-panel-head h3:before{content:"";width:3px;height:11px;border-radius:2px;background:var(--app)}.s3d-head-tools{display:flex;align-items:center;gap:6px}.s3d-head-tools .btn{padding:3px 8px;font-size:11.5px;height:26px}.s3d-canvas-wrap{position:relative;width:100%;border-radius:14px;border:1px solid var(--line);background:var(--solid);overflow:hidden;box-shadow:inset 0 2px 6px #0002;display:flex;justify-content:center;align-items:center}.s3d-canvas{width:100%;height:auto;display:block;cursor:crosshair}.s3d-eq-box{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px 14px;text-align:center;font-size:15px;color:var(--ink);min-height:40px;display:flex;align-items:center;justify-content:center;overflow-x:auto}.s3d-solution-grid{display:flex;flex-direction:column;gap:10px}.step-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 14px;position:relative}.step-badge{display:inline-block;background:color-mix(in srgb,var(--app) 20%,transparent);color:var(--app);font-size:10.5px;font-weight:800;padding:2px 8px;border-radius:6px;margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em}.step-title{font-size:12px;font-weight:700;color:var(--dim);margin-bottom:6px}.step-content{font-size:14px;overflow-x:auto;padding:2px 0}.vol-badge{background:linear-gradient(135deg,color-mix(in srgb,var(--ok) 16%,transparent),var(--panel));border:1.5px solid var(--ok);border-radius:14px;padding:14px 18px;text-align:center}.vol-label{font-size:11px;letter-spacing:.1em;font-weight:800;color:var(--ok);margin-bottom:4px}.vol-val{font-size:20px;font-weight:800;color:var(--ink);overflow-x:auto}.vol-dec{font-size:12px;color:var(--dim);margin-top:4px}.s3d-vol-head{font-weight:700;color:var(--ok);font-size:14px;margin-left:auto}.s3d-code{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.45;background:#0d1117;color:#c9d1d9;border:1px solid var(--line);border-radius:12px;padding:12px;resize:vertical;min-height:240px;width:100%;white-space:pre}:root[data-theme=light] .s3d-code{background:#f6f8fa;color:#24292f;border-color:#d0d7de}.s3d-toast{position:absolute;bottom:24px;left:50%;transform:translate(-50%) translateY(20px);background:#10b981;color:#fff;padding:8px 18px;border-radius:20px;font-size:13px;font-weight:700;box-shadow:0 10px 25px #0000004d;pointer-events:none;opacity:0;transition:all .25s ease;z-index:99}.s3d-toast.show{opacity:1;transform:translate(-50%) translateY(0)}.s3d-gl{height:380px;display:flex;background:radial-gradient(circle at 50% 30%,#fff,#e8edf7)}.s3d-ctl{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink)}.s3d-ctl input[type=range]{width:80px}.s3d-orbit-box{display:flex;flex-direction:column;gap:6px;margin-top:6px}.s3d-sweep-toolbar{background:var(--panel2);padding:6px 10px;border-radius:10px;border:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:8px}.s3d-view-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:2px 0}.s3d-sweep-lab{font-weight:600;display:inline-flex;align-items:center;gap:6px}.s3d-sweep-lab input[type=range]{width:110px;accent-color:#6366f1}.step-math-row{padding:3px 0;overflow-x:auto}.step-math-row .katex-display{margin:4px 0}.step-content .katex-display{margin:6px 0;overflow-x:auto}.s3d-adv-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0}.s3d-adv-row .lab{min-width:92px;margin:0}.s3d-adv-curve{display:flex;align-items:center;gap:8px;margin:5px 0}.s3d-adv-curve .fld{flex:1}.s3d-adv-name{font-family:var(--mono,monospace);font-size:12px;min-width:34px}.s3d-adv-hint{font-size:12px;color:var(--mute,#667);margin:4px 0}.s3d-adv-warn{font-size:12px;color:#b45309;margin:4px 0}.s3d-adv-out{margin-top:8px;padding:8px 10px;border-radius:10px;background:var(--panel2);font-size:14px;overflow-x:auto}.s3d-adv-val{font-size:12px;min-width:36px}.pe-root{display:flex;flex-direction:column;gap:8px}.pe-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pe-chip{border:1px solid var(--line);background:var(--panel2);color:var(--ink);border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer}.pe-chip:hover{border-color:#6366f1;color:#6366f1}.pe-chk{font-size:12px;display:inline-flex;align-items:center;gap:4px;color:var(--ink)}.pe-cv{width:100%;display:block;border:1px solid var(--line);border-radius:14px;background:var(--panel);touch-action:none;cursor:crosshair}.pe-cap{font-size:11.5px;color:var(--mute,#667);line-height:1.45}.ink-pw{position:relative}.ink-bgpop{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:290px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--solid);box-shadow:0 14px 40px #0003;display:flex;flex-direction:column;gap:9px}.ink-bgpop[hidden]{display:none}.ink-bgrow{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--mute)}.ink-bgrow select,.ink-bgrow input[type=range]{width:100%}.ink-bgrow .ink-cp{width:46px;height:28px}.ink-pages{width:158px;flex:none;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--panel2);transition:width .22s,opacity .22s}.ink-pages.closed{width:0;opacity:0;overflow:hidden;border:0}.ink-pgtools{display:flex;gap:4px;padding:8px;border-bottom:1px solid var(--line);justify-content:center}.ink-pgb{border:1px solid var(--line);background:var(--solid);color:var(--ink);border-radius:8px;min-width:28px;height:28px;cursor:pointer;font-size:13px}.ink-pgb:hover{border-color:#7c3aed;color:#7c3aed}.ink-pglist{flex:1;overflow:auto;padding:10px 12px;display:flex;flex-direction:column;gap:12px;align-items:center}.ink-pg{position:relative;border:2px solid transparent;border-radius:8px;padding:0;background:none;cursor:pointer;line-height:0}.ink-pg canvas{border-radius:5px;box-shadow:0 2px 8px #0003;background:#fff}.ink-pg.on{border-color:#7c3aed}.ink-pgn{position:absolute;left:6px;bottom:6px;font:600 11px system-ui;line-height:1;background:#0009;color:#fff;border-radius:6px;padding:3px 6px}.ink-pager{position:absolute;left:50%;bottom:44px;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--solid) 92%,transparent);box-shadow:0 6px 20px #0002;font-size:13px;color:var(--ink);z-index:5}@media print{.ink-pages,.ink-pager{display:none!important}}.appview[data-appview=tohop]{padding:0;overflow:hidden;--app:#f97316;--app-green:#10b981}.appview[data-appview=invariants]{padding:0;overflow-y:auto}.combview{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--bg)}.combtabs{background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1.5px solid color-mix(in srgb,#f97316 25%,var(--line));box-shadow:0 6px 24px -4px #0000000f;position:relative;z-index:10;padding:8px 16px;flex-shrink:0}.combtabs-scroll{display:flex;align-items:center;gap:12px;overflow-x:auto;scrollbar-width:none;padding:2px;-webkit-overflow-scrolling:touch}.combtabs-scroll::-webkit-scrollbar{display:none}.combtabs-group{display:inline-flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--panel2) 80%,transparent);padding:3px 8px;border-radius:14px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);flex-shrink:0;transition:border-color .2s,background .2s,box-shadow .2s}.combtabs-group:hover{border-color:color-mix(in srgb,#f97316 35%,var(--line))}.combtabs-group.has-active{background:color-mix(in srgb,var(--panel2) 95%,transparent);border-color:color-mix(in srgb,#f97316 50%,var(--line));box-shadow:0 3px 12px #f9731626}.combtabs-group-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--dim);padding:0 5px 0 3px;white-space:nowrap;user-select:none}.combtabs-group.has-active .combtabs-group-label{color:#f97316}.combtabs-group-items{display:inline-flex;align-items:center;gap:5px}.combtab-sep{width:1px;height:20px;background:var(--line2);margin:0 4px;flex-shrink:0}.combtab{display:inline-flex;align-items:center;gap:6px;background:var(--panel);border:1px solid color-mix(in srgb,var(--tc,#f97316) 24%,var(--line2));color:var(--ink);border-radius:10px;padding:4px 11px;font-size:12.5px;font-weight:650;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .18s cubic-bezier(.16,1,.3,1);user-select:none;height:32px;box-shadow:0 1px 3px #00000008}.combtab:hover{transform:translateY(-1.5px);border-color:var(--tc,#f97316);background:color-mix(in srgb,var(--tc,#f97316) 12%,var(--panel));box-shadow:0 4px 14px color-mix(in srgb,var(--tc,#f97316) 25%,transparent)}.combtab:active{transform:translateY(0)}.combtab .ct-icon{font-size:13.5px;line-height:1;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:7px;background:color-mix(in srgb,var(--tc,#f97316) 18%,transparent);transition:background .15s}.combtab .ct-name{font-size:12px;font-weight:650;letter-spacing:-.01em}.combtab .ct-badge{font-size:10px;font-weight:750;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;padding:1px 6px;border-radius:5px;background:color-mix(in srgb,var(--tc,#f97316) 14%,transparent);color:var(--tc,#f97316);border:1px solid color-mix(in srgb,var(--tc,#f97316) 28%,transparent);letter-spacing:-.02em}.combtab.on{background:linear-gradient(135deg,var(--tc,#f97316) 0%,color-mix(in srgb,var(--tc,#f97316) 80%,#000) 100%);border-color:var(--tc,#f97316);color:#fff!important;box-shadow:0 4px 16px color-mix(in srgb,var(--tc,#f97316) 50%,transparent),inset 0 1px #ffffff73;font-weight:750}.combtab.on .ct-icon{background:#ffffff42}.combtab.on .ct-name{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.combtab.on .ct-badge{background:#ffffff3d;color:#fff;border-color:#ffffff80;box-shadow:0 1px 3px #00000026}.combbody{flex:1;min-height:0;overflow-y:auto;padding:22px 26px 64px;background:radial-gradient(ellipse at 85% 5%,rgba(249,115,22,.06),transparent 45%),radial-gradient(ellipse at 15% 95%,rgba(16,185,129,.06),transparent 45%),var(--bg)}.combpane{display:flex;flex-direction:column;gap:20px;max-width:1240px;margin:0 auto}.combpane[hidden]{display:none}.cbcard{background:var(--solid);border:1.5px solid color-mix(in srgb,var(--ink) 11%,var(--line));border-radius:20px;padding:24px 28px;box-shadow:0 10px 32px -8px #00000012,0 1px 3px #00000005;position:relative;transition:border-color .2s,box-shadow .2s}.cbcard:hover{border-color:color-mix(in srgb,#f97316 45%,var(--line));box-shadow:0 14px 40px -8px #f973161f,0 2px 6px #10b98114}.cbcard h3{font-size:17.5px;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:10px;letter-spacing:-.02em;margin:0 0 6px}.cbcard h3:before{content:"";display:inline-block;width:5px;height:20px;border-radius:999px;background:linear-gradient(180deg,#f97316,#10b981);box-shadow:0 0 10px #f9731680}.cbsub{font-size:14px;color:var(--dim);margin:6px 0 16px;line-height:1.6}.cbcard .ntscroll{border:1.5px solid color-mix(in srgb,#f97316 28%,var(--line));border-radius:15px;overflow-x:auto;background:var(--solid);margin:16px 0;box-shadow:0 6px 20px -4px #0000000d}.cbcard .nttab{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.cbcard .nttab th{background:linear-gradient(180deg,color-mix(in srgb,#f97316 12%,var(--panel2)),color-mix(in srgb,#10b981 8%,var(--panel2)));color:var(--ink);font-size:12.5px;font-weight:800;letter-spacing:.03em;padding:12px 18px;border-bottom:2px solid #f97316;white-space:nowrap;text-transform:none!important}.cbcard .nttab tbody tr:nth-child(odd){background:transparent}.cbcard .nttab tbody tr:nth-child(2n){background:color-mix(in srgb,#10b981 7%,var(--panel2))}.cbcard .nttab td{padding:12px 18px;border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent);vertical-align:middle;color:var(--ink);line-height:1.6}.cbcard .nttab tbody tr:last-child td{border-bottom:none}.cbcard .nttab tbody tr{transition:all .16s ease}.cbcard .nttab tbody tr:hover{background:linear-gradient(90deg,#f9731629,#10b9811f)!important;box-shadow:inset 4px 0 #f97316}.cbcard .nttab td:first-child{font-weight:750;color:var(--ink)}.cbcard .nttab td:last-child b{display:inline-block;padding:3px 10px;border-radius:8px;background:color-mix(in srgb,#f97316 14%,var(--panel));color:#f97316;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13.5px;border:1px solid color-mix(in srgb,#f97316 35%,transparent);font-weight:800}.cbcard .cbgrid,.cbgrid{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px!important;margin:12px 0!important}.cbcard .chip{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:5px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:all .16s ease;color:var(--ink)}.cbcard .chip:hover{border-color:#f97316;transform:translateY(-1px);background:color-mix(in srgb,#f97316 12%,var(--panel2))}.cbcard .chip.on{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff!important;border-color:#f97316;box-shadow:0 3px 14px #f9731673;font-weight:750}.cbcard .sif{background:var(--panel2);border:1.5px solid color-mix(in srgb,var(--ink) 12%,var(--line));border-radius:12px;padding:6px 15px;display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;transition:all .18s ease;min-height:40px;box-sizing:border-box}.cbcard .sif:hover{border-color:color-mix(in srgb,#f97316 45%,var(--line))}.cbcard .sif:focus-within{border-color:#f97316;background:var(--solid);box-shadow:0 0 0 3px #f9731640}.cbcard .sif span{font-size:13px;font-weight:650;color:var(--dim);white-space:nowrap}.cbcard .sif input.cbnum,.cbcard .sif input.fld{background:transparent;border:none;font-size:14.5px;font-weight:750;color:var(--ink);outline:none;min-width:48px}.cbcard .sif.wide{width:100%!important;display:flex!important;justify-content:flex-start!important}.cbcard .sif.wide input.cbnum,.cbcard .sif.wide input.fld{flex:1}.cbrow{padding:6px 0;overflow-x:auto}.cbres{margin:10px 0;line-height:1.7}.cbres.big{font-size:16px;font-weight:650;padding:15px 24px;background:linear-gradient(135deg,color-mix(in srgb,#f97316 12%,var(--panel)),color-mix(in srgb,#10b981 10%,var(--panel)));border:1px solid color-mix(in srgb,#f97316 35%,var(--line));border-left:6px solid #f97316;border-radius:14px;box-shadow:0 6px 20px color-mix(in srgb,#f97316 14%,transparent);margin:14px 0}.cbdec{color:var(--dim);font-size:13px;font-weight:500}.cbsamples{margin:10px 0;line-height:2.2}.cbsamples code{background:var(--panel2);border:1px solid var(--line);border-radius:7px;padding:3px 9px;margin-right:6px;font-size:13px;font-weight:600}.cbsolve{margin:12px 0;padding:14px 20px;border-left:4.5px solid #10b981;background:color-mix(in srgb,#10b981 10%,var(--panel));border-radius:0 14px 14px 0}.cbh{margin:16px 0 6px;font-size:15px;font-weight:750}.cbnum{width:90px}.cbhyp{flex-wrap:wrap}.cbflex{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}.cbflex2{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:16px;margin-top:14px}.cbtreefig{overflow-x:auto;background:var(--panel2);border:1.5px solid color-mix(in srgb,#10b981 30%,var(--line));border-radius:16px;padding:20px;box-shadow:inset 0 1px 3px #0000000a}.ptreesvg{min-width:560px;width:100%;height:auto;display:block}.vennsvg{width:360px;max-width:100%}.cbtreefig .tnode:hover rect{filter:brightness(.92)}.cbbars{display:flex;flex-direction:column;gap:8px;margin:12px 0}.cbbar{display:grid;grid-template-columns:110px 1fr 130px;gap:12px;align-items:center;font-size:13px}.cbbar .cbt{background:var(--line2);border-radius:999px;height:14px;overflow:hidden;box-shadow:inset 0 1px 2px #00000014}.cbbar .cbt i{display:block;height:100%;background:linear-gradient(90deg,#f97316,#10b981);border-radius:999px;transition:width .3s ease}.cbbar.hl .cbt i{background:linear-gradient(90deg,#10b981,#34d399)}.cbbar .cbv{color:var(--dim);font-weight:650}.cbpascal{overflow-x:auto;text-align:center;padding:18px 12px;background:var(--panel2);border:1.5px solid color-mix(in srgb,#f97316 25%,var(--line));border-radius:16px;margin:12px 0;box-shadow:inset 0 1px 3px #00000008}.cbpascal .pr{display:flex;justify-content:center;gap:6px;margin:5px 0;align-items:center}.cbpascal .pl{font-size:11px;color:var(--dim);width:44px;text-align:right;margin-right:8px;font-weight:700}.cbpascal .pc{border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:var(--panel);border-radius:9px;min-width:38px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:2px 9px;font-size:12.5px;font-weight:650;cursor:pointer;transition:all .16s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 3px #0000000a}.cbpascal .pc:hover{transform:scale(1.14);border-color:#f97316;box-shadow:0 4px 12px #f9731659}.cbpascal .pc.sel{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border-color:#f97316;box-shadow:0 4px 16px #f973168c;transform:scale(1.16);font-weight:800}.cbpascal .pc.par{background:#f9731638;border-color:#f973168c;font-weight:700}.cbdice{border-radius:14px;overflow:hidden;border:1.5px solid color-mix(in srgb,#f97316 35%,var(--line));display:inline-block;box-shadow:0 6px 20px #0000000f}.cbdice td.cell{text-align:center;width:42px;height:38px;font-size:13.5px;font-weight:650;cursor:pointer;transition:all .15s ease}.cbdice td.cell:hover{background:#f9731640;transform:scale(1.08)}.cbdice td.hl{background:linear-gradient(135deg,#f9731673,#10b9814d);color:#f97316;font-weight:850}.cbprobs{display:grid;grid-template-columns:repeat(auto-fill,minmax(440px,1fr));gap:20px}.cbprob{background:var(--solid);border:1.5px solid color-mix(in srgb,var(--ink) 11%,var(--line));border-radius:18px;padding:20px 24px;box-shadow:0 4px 18px #0000000a;transition:all .2s cubic-bezier(.16,1,.3,1);position:relative}.cbprob:hover{border-color:#f97316;box-shadow:0 10px 28px -4px #f973162e;transform:translateY(-2px)}.cbprob h4{margin:4px 0 8px;font-size:16.5px;font-weight:800;color:var(--ink)}.cbptag{display:inline-block;font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:#f97316;font-weight:850;padding:3px 11px;border-radius:8px;background:#f9731624;margin-bottom:8px}.cbptext{line-height:1.7;margin-bottom:14px;color:var(--ink);font-size:14.5px}.cbsol{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line2)}.cbsol[hidden]{display:none}.cbquick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}.urn-3d-viewport{height:450px;border-radius:18px;background:radial-gradient(circle at 50% 25%,rgba(16,185,129,.15) 0%,transparent 65%),linear-gradient(180deg,#070c14,#0d1726);position:relative;overflow:hidden;border:1.5px solid color-mix(in srgb,#10b981 40%,var(--line));box-shadow:0 16px 40px -10px #00000080,inset 0 1px #ffffff1a;margin:12px 0 18px}.urn-canvas{width:100%;height:100%;display:block;cursor:grab}.urn-canvas:active{cursor:grabbing}.urn-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.urn-btn-orange{background:linear-gradient(135deg,#f97316,#ea580c)!important;color:#fff!important;font-weight:750!important;box-shadow:0 4px 14px #f9731666!important;border:1px solid #fb923c!important}.urn-btn-orange:hover{transform:translateY(-1.5px);box-shadow:0 6px 18px #f9731680!important}.urn-btn-reset{border:1.5px solid color-mix(in srgb,#10b981 40%,var(--line))!important;color:#10b981!important;font-weight:700!important}.urn-btn-reset:hover{background:#10b98126!important;border-color:#10b981!important}.urn-btn-jump{background:linear-gradient(135deg,#f97316,#10b981)!important;border:none!important;color:#fff!important;font-weight:750!important;box-shadow:0 4px 14px #f9731659!important;margin-top:6px}.urn-status-pill{background:var(--panel2);border:1px solid var(--line2);border-radius:999px;padding:6px 16px;font-size:13px;font-weight:650;display:flex;align-items:center;gap:8px;color:var(--ink)}.urn-pill-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:6px;background:color-mix(in srgb,var(--c) 16%,transparent);color:var(--c);border:1px solid color-mix(in srgb,var(--c) 35%,transparent);font-weight:750;font-size:12px}.urn-pill-chip .chip-dot{width:8px;height:8px;border-radius:50%}.urn-sif{border:1.5px solid color-mix(in srgb,var(--urn-c,var(--line)) 40%,var(--line));background:var(--panel2)}.urn-sif:hover{border-color:var(--urn-c,#f97316);box-shadow:0 0 12px color-mix(in srgb,var(--urn-c,#f97316) 25%,transparent)}.urn-color-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 8px currentColor}.urn-math-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-bottom:16px}.urn-stat-pill{padding:16px 20px;border-radius:14px;background:var(--panel2);border:1.5px solid var(--line2);display:flex;flex-direction:column;gap:4px}.urn-stat-pill.highlight-orange{border-color:#f9731673;background:linear-gradient(135deg,#f973161f,#10b98114);box-shadow:0 6px 20px #f973161a}.usp-title{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--dim);font-weight:800}.usp-val{font-size:21px;font-weight:850;color:var(--ink)}.usp-sub{font-size:13px;color:var(--dim)}.urn-key-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin:16px 0}.uke-box{padding:16px 20px;border-radius:14px;background:color-mix(in srgb,#f97316 8%,var(--panel));border:1.5px solid color-mix(in srgb,#f97316 35%,var(--line));border-left:6px solid #f97316}.uke-box:nth-child(2){background:color-mix(in srgb,#10b981 8%,var(--panel));border-color:color-mix(in srgb,#10b981 35%,var(--line));border-left-color:#10b981}.uke-title{font-weight:800;font-size:14.5px;margin-bottom:6px;color:var(--ink)}.uke-formula{font-size:15px;color:var(--ink)}.urn-monte-carlo-box{margin-top:22px;padding:20px 24px;border-radius:16px;background:linear-gradient(135deg,#10b9811a,#f973160f);border:1.5px solid rgba(16,185,129,.35);box-shadow:0 10px 30px #00000026}.umc-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:12px}.umc-header h4{margin:0;font-size:16.5px;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:8px}.umc-actions{display:flex;gap:8px}.urn-btn-mc{background:linear-gradient(135deg,#10b981,#059669)!important;border:1px solid #34d399!important;color:#fff!important;font-size:12.5px!important;font-weight:750!important;padding:7px 15px!important;border-radius:8px!important;box-shadow:0 3px 12px #10b98159!important}.urn-btn-mc:hover{transform:translateY(-1.5px);box-shadow:0 5px 18px #10b98180!important}.mc-err{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:800;color:#10b981;background:#10b9812e;padding:2px 8px;border-radius:6px}@media print{.combtabs{display:none}.combview{position:static}.combbody{overflow:visible}}.area-freeform-root{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;overflow-y:auto;overflow-x:hidden;padding:10px 14px 40px;gap:12px;box-sizing:border-box}.ff-control-strip{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:10px 14px;box-shadow:0 1px 4px #00000008;flex-shrink:0}.ff-control-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.ff-control-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ff-sec-label{font-size:11.5px;font-weight:700;color:var(--dim);display:inline-flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.03em}.ff-preset-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ff-preset-chip{padding:4px 10px;font-size:12px;font-weight:600;border-radius:8px;border:1px solid var(--line2);background:var(--panel2);color:var(--ink);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:5px}.ff-preset-chip:hover{border-color:var(--app);color:var(--app);transform:translateY(-1px)}.ff-region-pills{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ff-region-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:8px;border:1px solid var(--line);background:var(--solid);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.ff-region-pill.active{border-color:var(--app);background:color-mix(in srgb,var(--app) 14%,var(--solid));box-shadow:0 2px 6px #0000000f}.ff-region-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ff-axis-selector{display:inline-flex;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:9px;padding:2px;gap:2px}.ff-axis-btn{padding:4px 9px;font-size:12px;font-weight:600;border-radius:7px;border:none;background:transparent;color:var(--dim);cursor:pointer;transition:all .12s ease}.ff-axis-btn:hover{color:var(--ink)}.ff-axis-btn.active{background:var(--app);color:#fff;box-shadow:0 2px 6px color-mix(in srgb,var(--app) 40%,transparent)}.ff-axis-params{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ink)}.ff-axis-params input{width:58px;padding:3px 6px;font-size:12px;border-radius:6px;border:1px solid var(--line);background:var(--solid);color:var(--ink);text-align:center}.ff-axis-params .hint-inline{font-size:11px;font-weight:400;color:var(--dim);font-style:italic}.ff-model-stage{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:520px;height:560px;flex:0 0 auto}.ff-model-stage.layout-2d{grid-template-columns:1fr}.ff-model-stage.layout-2d .ff-model-card.col-3d{display:none!important}.ff-model-stage.layout-3d{grid-template-columns:1fr}.ff-model-stage.layout-3d .ff-model-card.col-2d{display:none!important}.ff-model-stage.layout-stack{grid-template-columns:1fr;height:auto}.ff-model-stage.layout-stack .ff-model-card{height:500px}.ff-model-card{display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 2px 8px #0000000a;position:relative;min-height:0;height:100%}.ff-card-header{display:flex;align-items:center;justify-content:flex-start;padding:6px 12px;background:var(--panel2);border-bottom:1px solid var(--line);flex-shrink:0;gap:12px;min-height:72px;box-sizing:border-box}.ff-card-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ff-card-toolbar-rows{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.ff-tb-row{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.ff-tb-row-1 .seg{padding:2px;background:var(--line2);border-radius:8px;display:inline-flex}.ff-tb-row-1 .seg button{padding:3px 10px;font-size:11.5px;font-weight:600;border-radius:6px;line-height:1.2}.ff-tb-row-2 .btn{padding:2px 7px;font-size:11.5px;line-height:1.2;border-radius:6px}.ff-card-title{display:flex;align-items:center;gap:7px;font-size:15px;font-weight:800;color:var(--ink);white-space:nowrap;flex-shrink:0;align-self:center;letter-spacing:.5px}.ff-card-badge{font-size:10.5px;font-weight:600;padding:1px 6px;border-radius:5px;background:color-mix(in srgb,var(--app) 14%,var(--solid));color:var(--app);border:1px solid color-mix(in srgb,var(--app) 24%,transparent)}.ff-card-hint{font-size:11px;color:var(--dim);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-canvas-body{position:relative;flex:1 1 0;min-height:0;width:100%;overflow:hidden}.ff-canvas-body canvas{width:100%;height:100%;display:block}.ff-col-2d .ff-canvas-body{background:var(--g-bg, #ffffff)}.ff-col-3d .ff-canvas-body{background:radial-gradient(120% 120% at 30% 10%,#26405f,#101a2b 55%,#070b14)}.ff-3d-controls{position:relative;margin:6px 10px 10px;z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;padding:8px 12px;border-radius:10px;background:#0b1424f2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.22);box-shadow:0 4px 14px #0000004d;color:#f8fafc;flex-shrink:0}.ff-3d-group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.ff-3d-lbl{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:#f8fafc;user-select:none}.ff-3d-val{font-size:11px;font-weight:700;padding:1px 5px;border-radius:5px;background:#38bdf82e;color:#38bdf8;border:1px solid rgba(56,189,248,.35);font-family:ui-monospace,monospace;min-width:32px;text-align:center}.ff-3d-slider{width:80px;height:4px;accent-color:#f97316;cursor:pointer;margin:0}.ff-3d-chk{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:11.5px;font-weight:600;color:#f8fafc;user-select:none}.ff-3d-chk input[type=checkbox]{width:14px;height:14px;accent-color:#f97316;cursor:pointer}.ff-btn-play{padding:5px 12px;font-size:12px;font-weight:700;border-radius:7px;border:none;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;cursor:pointer;box-shadow:0 2px 8px #f9731673;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.ff-btn-play:hover{filter:brightness(1.1);transform:translateY(-1px)}.ff-btn-ghost{padding:5px 10px;font-size:11.5px;font-weight:600;border-radius:7px;border:1px solid rgba(255,255,255,.28);background:#ffffff1f;color:#f8fafc;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.ff-btn-ghost:hover{background:#ffffff3d;border-color:#ffffff73}.color-picker-mini{width:26px;height:22px;padding:0;border:1px solid rgba(255,255,255,.4);border-radius:5px;cursor:pointer;background:transparent;vertical-align:middle}.color-picker-mini::-webkit-color-swatch-wrapper{padding:0}.color-picker-mini::-webkit-color-swatch{border:none;border-radius:4px}.ff-bottom-results{display:flex;flex-direction:column;gap:10px;margin-top:4px}.ff-bottom-hdr{display:flex;align-items:center;justify-content:space-between;padding:6px 4px}.ff-bottom-title{font-size:13.5px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px}.ff-bottom-sub{font-size:12px;font-weight:400;color:var(--dim);font-style:italic}.ff-results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px}.ff-res-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 14px;box-shadow:0 1px 4px #00000008;display:flex;flex-direction:column;gap:8px}.ff-res-card-hdr{font-size:12.5px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px;padding-bottom:6px;border-bottom:1px solid var(--line2)}.ff-card-bar-hdr{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:var(--ink);letter-spacing:.03em;padding-bottom:8px;border-bottom:1px solid var(--line2);margin-bottom:6px}.ff-bar-accent{width:4px;height:16px;border-radius:2px;background:#ea580c;display:inline-block;flex-shrink:0}.ff-axis-card-body{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.ff-axis-hint{font-size:11.5px;color:var(--dim);font-style:italic;line-height:1.4;margin-top:4px}.ff-layout-wrap{display:flex;align-items:center;gap:8px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--line2)}.ff-reg-card-body{display:flex;flex-direction:column;gap:10px}.ff-pts-table{overflow-x:auto;max-height:280px;margin-top:6px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.ff-pts-table table{width:100%;border-collapse:collapse;font-size:12px}.ff-pts-table th{background:var(--panel2);padding:6px 8px;font-weight:700;color:var(--dim);text-align:center;border-bottom:1px solid var(--line)}.ff-pts-table td{padding:5px 6px;text-align:center;border-bottom:1px solid var(--line2)}.ff-pts-table input[type=number],.ff-pts-table select{min-width:52px;padding:3px 6px;border-radius:6px;border:1px solid var(--line2);background:var(--solid);color:var(--ink);text-align:center;font-size:12px}.ff-pts-table input[type=number]:focus,.ff-pts-table select:focus{border-color:var(--app);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--app) 25%,transparent)}.chk-label{display:inline-flex;align-items:center;gap:5px;cursor:pointer;user-select:none;font-weight:600}.ff-piecewise-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;margin:8px 0;box-shadow:0 1px 4px #00000008}.ff-piecewise-formula{background:var(--panel2);border:1px solid var(--line2);border-radius:8px;padding:10px 12px;margin:8px 0;overflow-x:auto;font-size:13px;line-height:1.6}.ff-piecewise-edit-table{width:100%;border-collapse:collapse;font-size:11.5px;margin-top:8px}.ff-piecewise-edit-table th{background:var(--panel2);padding:5px 6px;color:var(--dim);border-bottom:1px solid var(--line)}.ff-piecewise-edit-table td{padding:4px 6px;text-align:center;border-bottom:1px solid var(--line2)}.ff-piecewise-edit-table input{width:52px;padding:3px 4px;font-size:11.5px;text-align:center;border:1px solid var(--line2);border-radius:5px;background:var(--solid);color:var(--ink)}.pw-builder{display:flex;flex-direction:column;gap:8px;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:4px}.pw-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.pw-title{font-size:13px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px}.pw-btn-add{font-size:12px;font-weight:600;padding:4px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--app) 40%,var(--line));background:color-mix(in srgb,var(--app) 12%,transparent);color:var(--app);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.pw-btn-add:hover{background:var(--app);color:#fff}.pw-rows{display:flex;flex-direction:column;gap:6px;max-height:240px;overflow-y:auto;padding-right:2px}.pw-row{display:flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-size:13px;flex-wrap:nowrap}.pw-idx{font-weight:700;color:var(--app);font-size:12px;white-space:nowrap;min-width:48px}.pw-y{color:var(--dim);font-weight:600;white-space:nowrap}.pw-expr-in{flex:1;min-width:80px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px;font-weight:600;padding:5px 8px;border-radius:7px;border:1px solid var(--line);background:var(--field);color:var(--ink);outline:none}.pw-expr-in:focus{border-color:var(--app)}.pw-when{color:var(--dim);font-size:12px;white-space:nowrap}.pw-num-in{width:50px;text-align:center;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12.5px;font-weight:600;padding:5px 4px;border-radius:7px;border:1px solid var(--line);background:var(--field);color:var(--ink);outline:none}.pw-num-in:focus{border-color:var(--app)}.pw-rel{color:var(--dim);font-size:12px;white-space:nowrap}.pw-del{width:24px;height:24px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--dim);cursor:pointer;font-size:16px;line-height:1;transition:all .15s;flex-shrink:0}.pw-del:hover{background:color-mix(in srgb,#ef4444 15%,transparent);color:#ef4444;border-color:color-mix(in srgb,#ef4444 30%,transparent)}.pw-del:disabled{opacity:.25;cursor:not-allowed}.pw-quick{display:flex;align-items:center;gap:8px;margin-top:4px}.pw-quick-label{font-size:11px;color:var(--dim);white-space:nowrap}.pw-quick-input{flex:1;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11.5px;padding:4px 8px;border-radius:7px;border:1px dashed var(--line);background:var(--solid);color:var(--ink);outline:none}.pw-quick-input:focus{border-style:solid;border-color:var(--app)}.realmath-unified{display:flex;flex-direction:column;height:100%;overflow:hidden}.realmath-bar{flex-shrink:0;display:flex;gap:8px;padding:8px 12px;background:var(--bg2, rgba(0, 0, 0, .03));border-bottom:1px solid var(--line, rgba(0, 0, 0, .08));overflow-x:auto}.realmath-module{display:flex;flex-direction:row;align-items:stretch;height:calc(100vh - 118px);min-height:560px;padding:0 14px;overflow:hidden;box-sizing:border-box}.realmath-module>.stcol{overflow-y:auto;overflow-x:hidden;padding-right:10px;min-width:280px;max-width:400px;flex:0 0 350px}.realmath-module>.stcol .panel{padding:10px 12px;margin-bottom:8px;border-radius:12px}.realmath-module>.rm-vis{position:relative;top:auto;height:auto;min-height:0;min-width:360px;flex:1 1 0;display:flex;flex-direction:column;gap:8px;overflow:hidden}.vessel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}.vessel-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;border-radius:9px;border:1px solid var(--line, rgba(0, 0, 0, .1));background:var(--solid, #ffffff);cursor:pointer;transition:all .16s ease;text-align:center}.vessel-btn:hover{background:color-mix(in srgb,var(--app, #0284c7) 8%,var(--solid, #ffffff));border-color:color-mix(in srgb,var(--app, #0284c7) 40%,transparent);transform:translateY(-1px)}.vessel-btn.on{background:color-mix(in srgb,var(--app, #0284c7) 16%,var(--solid, #ffffff));border-color:var(--app, #0284c7);box-shadow:0 0 0 1px var(--app, #0284c7),0 3px 8px #0284c726}.v-ico{font-size:18px;line-height:1}.v-name{font-size:11px;font-weight:600;color:var(--ink);line-height:1.25}.vessel-btn.on .v-name{color:var(--app, #0284c7)}.vessel-desc-box{font-size:11.5px;color:var(--dim);background:color-mix(in srgb,var(--app, #0284c7) 6%,transparent);border-left:3px solid var(--app, #0284c7);padding:6px 10px;border-radius:0 6px 6px 0;margin-bottom:10px;line-height:1.45}.rm-vis-boxes{flex:1;display:flex;flex-direction:row;gap:8px;min-height:380px;position:relative;overflow:hidden}.rm-box{flex:1;position:relative;background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .08));border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #00000008;display:flex;flex-direction:column}.solid-canvas,.graph-canvas{width:100%!important;height:100%!important;flex:1;display:block}.graph-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg2, rgba(0, 0, 0, .03));border-bottom:1px solid var(--line, rgba(0, 0, 0, .06));font-size:12px;font-weight:600}.gh-tit{color:var(--ink)}.gh-tag{font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--app, #0284c7) 12%,transparent);color:var(--app, #0284c7)}.rm-title{font-size:13.5px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px}.rm-tag{font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--app, #0284c7) 12%,transparent);color:var(--app, #0284c7);letter-spacing:.5px}.canvas-wrap{flex:1;position:relative;width:100%;height:100%;min-height:220px;overflow:hidden}.canvas-wrap canvas{display:block;width:100%!important;height:100%!important}.realmath-module .frow{display:flex;align-items:center;gap:8px;margin:6px 0}.realmath-module .frow .lab{flex:1;font-size:11.5px;color:var(--dim)}.realmath-module .frow .fld{width:76px!important;flex:0 0 76px!important;padding:4px 8px;font-size:13px;text-align:right;border-radius:6px}.realmath-module .frow .unit{font-size:11px;color:var(--dim);width:32px;flex-shrink:0}.sim-ctl-bar{display:flex;gap:8px;margin-bottom:10px}.pump-btn{flex:1;background:#0284c7!important;color:#fff!important;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:8px}.slider-row{display:flex;align-items:center;gap:8px}.slider-row .s-lab{font-size:11.5px;color:var(--dim);white-space:nowrap}.val-badge{font-size:11.5px;font-weight:700;color:#0284c7;background:color-mix(in srgb,#0284c7 12%,transparent);padding:2px 7px;border-radius:6px;white-space:nowrap}.slider-row .slider{flex:1}.s-card{background:var(--solid, #ffffff);border-radius:10px;border:1px solid var(--line, rgba(0, 0, 0, .08));padding:8px 10px;margin-bottom:8px}.s-title{font-size:11px;font-weight:700;color:var(--dim);margin-bottom:4px}.s-math{font-size:12px;overflow-x:auto}.s-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:6px}.m-item{background:var(--bg2, rgba(0, 0, 0, .02));padding:7px 9px;border-radius:8px;border:1px solid var(--line, rgba(0, 0, 0, .06));display:flex;flex-direction:column;gap:2px}.m-lbl{font-size:10.5px;color:var(--dim)}.m-val{font-size:13px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.m-val.highlight{color:#0284c7}.m-val.speed{color:#ea580c}.solution-box{display:flex;flex-direction:column;gap:8px}.sol-step{display:flex;gap:10px;font-size:12px;line-height:1.5}.sol-num{width:22px;height:22px;border-radius:50%;background:var(--app, #0284c7);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;margin-top:2px}.sol-cnt{flex:1}.sol-cnt strong{color:var(--ink);font-weight:600}.sol-cnt .katex-display{margin:6px 0!important}.sol-conclusion{background:color-mix(in srgb,#0284c7 12%,transparent);border:1px solid color-mix(in srgb,#0284c7 30%,transparent);padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.5}.rm-view-archimedes{height:100%;overflow:hidden}.highlight-btn{background:color-mix(in srgb,#f59e0b 12%,var(--solid, #ffffff))!important;border-color:color-mix(in srgb,#f59e0b 45%,transparent)!important;color:#d97706!important;font-weight:700;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px;border-radius:8px;cursor:pointer;margin-top:6px;width:100%;transition:all .15s ease}.highlight-btn:hover{background:color-mix(in srgb,#f59e0b 22%,var(--solid, #ffffff))!important;border-color:#f59e0b!important;transform:translateY(-1px)}.rm-view-preview{height:100%;overflow-y:auto;padding:20px}.rm-preview-container{max-width:900px;margin:0 auto}.rm-preview-card{background:var(--solid, #ffffff);border-radius:16px;border:1px solid var(--line, rgba(0, 0, 0, .08));padding:28px;box-shadow:0 4px 20px #0000000a}.rm-preview-badge{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.8px;padding:4px 10px;border-radius:20px;background:color-mix(in srgb,var(--app, #0284c7) 12%,transparent);color:var(--app, #0284c7);margin-bottom:12px}.rm-preview-card h2{font-size:20px;font-weight:700;margin:0 0 8px;color:var(--ink)}.rm-preview-lead{font-size:13.5px;color:var(--dim);margin:0 0 20px;line-height:1.5}.rm-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:24px}.rm-feature-item{background:var(--bg2, rgba(0, 0, 0, .02));border:1px solid var(--line, rgba(0, 0, 0, .06));border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px;transition:transform .2s ease,border-color .2s ease}.rm-feature-item:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--app, #0284c7) 40%,transparent)}.rm-feature-item .feat-ico{font-size:24px;line-height:1}.rm-feature-item h4{font-size:13.5px;font-weight:600;margin:4px 0 0;color:var(--ink)}.rm-feature-item p{font-size:12px;color:var(--dim);line-height:1.5;margin:0}.rm-preview-footer{padding-top:16px;border-top:1px dashed var(--line, rgba(0, 0, 0, .1))}.ball-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1}.ball-chip{padding:3px 8px;font-size:11px;font-weight:600;border-radius:6px;background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .1));color:var(--dim);cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.ball-chip:hover{background:var(--bg2, rgba(0, 0, 0, .04));color:var(--ink);border-color:#0284c7}.ball-chip.on{background:#0284c7;color:#fff;border-color:#0284c7;box-shadow:0 1px 3px #0284c740}.mat-chips .ball-chip{font-size:10.5px;padding:2px 6px}.highlight-btn-sm{background:color-mix(in srgb,#f59e0b 14%,var(--solid, #ffffff))!important;color:#d97706!important;border-color:color-mix(in srgb,#f59e0b 40%,transparent)!important;font-weight:600}.exam-panel-left{background:var(--bg2, rgba(0, 0, 0, .015))}.exam-box-left{display:flex;flex-direction:column;gap:10px}.exam-header-bar{display:flex;align-items:center;justify-content:space-between;gap:8px}.exam-fmt-tabs{display:flex;background:var(--line, rgba(0, 0, 0, .06));padding:2px;border-radius:6px;gap:2px}.fmt-btn{padding:3px 8px;font-size:10.5px;font-weight:600;border-radius:4px;border:none;background:transparent;color:var(--dim);cursor:pointer}.fmt-btn.on{background:var(--solid, #ffffff);color:#0284c7;box-shadow:0 1px 2px #00000014}.btn-copy-typst{padding:4px 8px;font-size:10.5px;font-weight:600;background:color-mix(in srgb,#0284c7 12%,var(--solid, #ffffff));color:#0284c7;border:1px solid color-mix(in srgb,#0284c7 30%,transparent);border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-copy-typst:hover{background:#0284c7;color:#fff}.exam-stem-card{background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .08));border-radius:8px;padding:10px 12px}.stem-badge{font-size:10.5px;font-weight:700;color:#0284c7;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.stem-text{font-size:12px;line-height:1.55;color:var(--ink)}.mcq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.mcq-opt-btn{background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .1));border-radius:8px;padding:8px 10px;display:flex;align-items:center;gap:8px;cursor:pointer;font-size:11.5px;text-align:left;transition:all .15s ease}.mcq-opt-btn:hover{border-color:#0284c7;background:color-mix(in srgb,#0284c7 4%,var(--solid, #ffffff))}.mcq-opt-btn .opt-label{font-weight:700;color:#0284c7;font-size:12px}.mcq-opt-btn .opt-math{flex:1}.mcq-opt-btn.correct{background:#ecfdf5!important;border-color:#10b981!important;color:#065f46!important}.mcq-opt-btn.correct .opt-label{color:#059669!important}.mcq-opt-btn.wrong{background:#fff1f2!important;border-color:#f43f5e!important;color:#9f1239!important}.mcq-opt-btn.wrong .opt-label{color:#e11d48!important}.opt-feedback-ico{font-size:13px}.trap-alert-box{background:#fff7ed;border:1px solid #fdba74;border-radius:8px;padding:8px 10px;font-size:11px;color:#9a3412;display:flex;gap:8px;align-items:flex-start;line-height:1.45;margin-top:4px}.congrats-alert-box{background:#ecfdf5;border:1px solid #6ee7b7;border-radius:8px;padding:8px 10px;font-size:11px;color:#065f46;display:flex;gap:8px;align-items:flex-start;line-height:1.45;margin-top:4px}.tf-list{display:flex;flex-direction:column;gap:6px}.tf-item-row{background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .08));border-radius:8px;padding:8px 10px;font-size:11.5px}.tf-head{display:flex;align-items:flex-start;gap:6px}.tf-key{font-weight:700;color:#0284c7}.tf-stat{flex:1;line-height:1.45}.tf-badge{font-size:10px;font-weight:700;padding:1px 6px;border-radius:4px;white-space:nowrap}.tf-badge.true{background:#dcfce7;color:#15803d}.tf-badge.false{background:#fee2e2;color:#b91c1c}.tf-explain{font-size:10.5px;color:var(--dim);margin-top:4px;padding-left:14px;line-height:1.4}.exam-actions-bar{display:flex;gap:6px}.exam-actions-bar .btn{flex:1;font-size:11px}.exam-solution-collapse{background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .08));border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.exam-sol-step{display:flex;gap:8px;font-size:11.5px}.exam-sol-step .step-badge{width:20px;height:20px;border-radius:50%;background:#0284c7;color:#fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;margin-top:2px}.exam-sol-step .step-body{flex:1}.exam-sol-step .step-title{font-weight:700;color:var(--ink);margin-bottom:2px}.exam-sol-step .step-content{color:var(--dim);line-height:1.5}.exam-full-view{height:calc(100% - 10px);overflow-y:auto;padding:16px;background:var(--bg2, rgba(0, 0, 0, .02))}.a4-sheet{background:var(--solid, #ffffff);border:1px solid var(--line, rgba(0, 0, 0, .1));box-shadow:0 4px 16px #0000000f;border-radius:8px;padding:24px 28px;max-width:780px;margin:0 auto;font-family:inherit}.a4-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.a4-school{font-size:12px;font-weight:700;color:var(--dim);letter-spacing:.5px}.a4-exam{font-size:13px;font-weight:800;color:var(--ink);margin-top:2px}.a4-right{text-align:right}.a4-title{font-size:12px;font-weight:700;color:#0284c7}.a4-sub{font-size:11px;color:var(--dim);margin-top:2px}.a4-divider{height:2px;background:var(--ink);opacity:.8;margin-bottom:16px}.a4-divider-thin{height:1px;background:var(--line, rgba(0, 0, 0, .1));margin:16px 0}.a4-stem{font-size:13.5px;line-height:1.6;color:var(--ink);margin-bottom:14px}.a4-options{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.a4-opt{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 10px;border-radius:6px;background:var(--bg2, rgba(0, 0, 0, .015))}.a4-opt.a4-correct{background:#ecfdf5;border:1px solid #10b981}.a4-opt-key{font-weight:700;color:#0284c7}.a4-key-badge{margin-left:auto;font-size:11px;font-weight:700;color:#059669}.a4-solution{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.a4-sol-title{font-size:12px;font-weight:700;color:#0284c7;letter-spacing:.5px}.a4-sol-step{font-size:12.5px;line-height:1.55;background:var(--bg2, rgba(0, 0, 0, .02));padding:10px 14px;border-radius:6px}.a4-step-num{font-weight:700;color:var(--ink);margin-bottom:4px}.a4-step-cnt{color:var(--dim)}.a4-typst-box{background:#0f172a;border-radius:8px;padding:12px 14px;color:#e2e8f0}.a4-typst-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;color:#94a3b8}.a4-typst-header .btn{background:#1e293b!important;color:#38bdf8!important;border-color:#334155!important}.a4-code{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.5;overflow-x:auto;white-space:pre-wrap;color:#7dd3fc}.invariants-app-root{display:flex;flex-direction:column;gap:14px;min-height:100%;height:auto;overflow:visible;padding:14px 18px 24px}.invariants-topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 16px #0000000a}.invariants-brand{display:flex;align-items:center;gap:12px}.invariants-glyph{font-size:24px;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#8b5cf626;color:#a855f7;border:1px solid rgba(139,92,246,.35);flex-shrink:0}.invariants-title-block h2{margin:0;font-size:16.5px;font-weight:700;color:var(--ink);letter-spacing:-.01em}.invariants-subtitle{font-size:11.5px;color:var(--dim);line-height:1.4}.invariants-content{flex:1 1 auto;min-height:0}.inv-pillar-view{display:flex;flex-direction:column;gap:14px}.inv-pillar-grid{display:grid;grid-template-columns:minmax(340px,460px) minmax(0,1fr);gap:16px;align-items:start}@media (max-width: 960px){.inv-pillar-grid{grid-template-columns:1fr}}.inv-col-info,.inv-col-vis{display:flex;flex-direction:column;gap:12px;min-width:0}.inv-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.inv-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.inv-card-head h3{margin:0;font-size:13px;font-weight:700;color:var(--fg)}.inv-head-badge{font-size:10px;padding:2px 8px;border-radius:10px;text-transform:uppercase;font-weight:700;background:#8b5cf626;color:#a855f7}.inv-weights-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.inv-field{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--dim);flex:1}.inv-field input,.inv-field select{background:var(--solid, #1e293b);border:1px solid var(--line);border-radius:6px;padding:6px 8px;color:var(--fg);font-size:13px;outline:none}.inv-field input:focus,.inv-field select:focus{border-color:#8b5cf6}.inv-slider-wrap{margin:8px 0}.inv-slider-head{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;margin-bottom:4px;color:var(--dim)}.inv-slider{width:100%;accent-color:#8b5cf6;cursor:pointer}.inv-actions-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.inv-live-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.inv-badge{background:color-mix(in srgb,var(--solid) 85%,rgba(139,92,246,.08));border:1px solid color-mix(in srgb,var(--line2) 60%,rgba(139,92,246,.35));border-radius:12px;padding:8px 12px;box-shadow:0 4px 16px #0000000a}.inv-badge-header{display:flex;align-items:center;gap:6px}.inv-badge-dot{width:7px;height:7px;border-radius:50%;background:#a855f7;box-shadow:0 0 8px #a855f7}.inv-badge-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#a855f7}.inv-badge-tag{margin-left:auto;font-size:9px;padding:1px 6px;border-radius:8px;background:#8b5cf6;color:#fff;font-weight:800;letter-spacing:.04em}.inv-badge-val{font-size:16px;font-weight:700;color:var(--ink);margin:3px 0}.inv-badge-sub{font-size:11px;color:var(--dim);line-height:1.35}.inv-canvas-wrap,.inv-3d-wrap{position:relative;width:100%;max-width:100%;min-width:0;background:var(--g-bg, #ffffff);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:block;box-shadow:0 4px 20px #0000000f}.inv-3d-wrap{height:420px;min-height:380px}.inv-3d-toolbar{position:absolute;bottom:12px;left:12px;right:12px;display:flex;flex-wrap:wrap;gap:6px;z-index:20;pointer-events:auto}.inv-3d-btn{font-size:11px;font-weight:600;padding:5px 11px;border-radius:8px;background:color-mix(in srgb,var(--solid) 88%,transparent);color:var(--ink);border:1px solid var(--line2);cursor:pointer;backdrop-filter:blur(10px);box-shadow:0 2px 6px #00000014;transition:all .15s ease;display:inline-flex;align-items:center;gap:5px;user-select:none}.inv-3d-btn:hover{background:var(--solid);border-color:#8b5cf6;color:#8b5cf6;transform:translateY(-1px)}.inv-3d-btn.active{background:color-mix(in srgb,#8b5cf6 20%,var(--solid));border-color:#8b5cf6;color:#8b5cf6;box-shadow:0 0 10px color-mix(in srgb,#8b5cf6 35%,transparent)}.inv-retina-canvas{display:block;width:100%!important;user-select:none;-webkit-user-select:none;touch-action:none}.inv-canvas-overlay{position:absolute;top:10px;left:12px;right:12px;pointer-events:none;z-index:2}.inv-canvas-hint{font-size:11px;color:var(--ink);background:color-mix(in srgb,var(--solid) 85%,transparent);padding:4px 10px;border-radius:8px;backdrop-filter:blur(8px);border:1px solid var(--line2);box-shadow:0 2px 8px #00000014}.inv-theorem-box{background:color-mix(in srgb,var(--solid) 82%,rgba(56,189,248,.08));border:1px solid color-mix(in srgb,var(--line) 70%,rgba(56,189,248,.3));border-left:4px solid #38bdf8;border-radius:12px;padding:12px 16px;box-shadow:0 4px 14px #0000000a}.inv-theorem-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#38bdf8;margin-bottom:8px;letter-spacing:-.01em}.inv-theorem-cnt{font-size:12.5px;line-height:1.65;color:var(--ink)}.inv-secret-box{background:color-mix(in srgb,var(--solid) 82%,rgba(245,158,11,.08));border:1px solid color-mix(in srgb,var(--line) 70%,rgba(245,158,11,.3));border-left:4px solid #f59e0b;border-radius:12px;padding:12px 16px;box-shadow:0 4px 14px #0000000a}.inv-secret-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#f59e0b;margin-bottom:8px;letter-spacing:-.01em}.inv-secret-cnt{font-size:12.5px;line-height:1.65;color:var(--ink)}.inv-exam-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 16px;box-shadow:0 4px 14px #0000000a}.inv-exam-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding-bottom:8px;margin-bottom:10px;border-bottom:1px solid var(--line);user-select:none}.inv-exam-tag{background:#ec489926;border:1px solid rgba(236,72,153,.35);color:#f472b6;padding:3px 10px;border-radius:8px;font-size:11px;font-weight:700}.inv-exam-hint{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#38bdf8;background:#38bdf81f;border:1px solid rgba(56,189,248,.3);padding:2px 8px;border-radius:6px;transition:all .15s ease}.inv-exam-header:hover .inv-exam-hint{background:#38bdf838;border-color:#38bdf8}.inv-exam-prob{font-size:12.5px;line-height:1.6;margin-bottom:10px;color:var(--ink)}.inv-exam-sol{font-size:12px;line-height:1.65;background:color-mix(in srgb,var(--solid) 85%,transparent);border:1px solid color-mix(in srgb,var(--line) 70%,rgba(16,185,129,.3));border-left:3px solid #10b981;padding:10px 14px;border-radius:10px;color:var(--ink)}.inv-table{width:100%;border-collapse:collapse;font-size:11px}.inv-table th,.inv-table td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.inv-table th{color:var(--dim);font-weight:600}.inv-tag-ok{color:#10b981;background:#10b98126;padding:1px 6px;border-radius:6px}.inv-tag-var{color:#38bdf8;background:#38bdf826;padding:1px 6px;border-radius:6px}.inv-tag-inv{color:#fbbf24;background:#fbbf242e;padding:2px 7px;border-radius:6px;font-weight:700}.inv-val-gold{color:#fbbf24!important;font-weight:700}.inv-val-cyan{color:#38bdf8!important;font-weight:700}.inv-hint-box{margin-top:8px;font-size:11px;line-height:1.5;color:var(--dim);background:#0003;padding:6px 10px;border-radius:6px}.invariants-stats-bar{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:8px 16px;background:color-mix(in srgb,var(--panel) 90%,#8b5cf6 10%);border:1px solid color-mix(in srgb,var(--line) 80%,#8b5cf6 30%);border-radius:12px;font-size:11.5px;color:var(--dim)}.invariants-stat-item{display:flex;align-items:center;gap:6px}.invariants-stat-item strong{color:#8b5cf6;font-weight:700}.inv-toolbar-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 12px}.inv-domain-bar{display:flex;flex-wrap:wrap;gap:6px}.inv-domain-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;background:var(--panel);border:1px solid var(--line);color:var(--dim);transition:all .18s cubic-bezier(.16,1,.3,1);user-select:none}.inv-domain-pill:hover{border-color:#8b5cf6;color:var(--fg);transform:translateY(-1px)}.inv-domain-pill.active{background:#8b5cf6;border-color:#8b5cf6;color:#fff;box-shadow:0 4px 12px #8b5cf659}.inv-search-wrap{position:relative;min-width:260px;max-width:380px;flex:1}.inv-search-input{width:100%;padding:7px 12px 7px 32px;border-radius:20px;background:var(--solid, #1e293b);border:1px solid var(--line);color:var(--fg);font-size:12.5px;outline:none;transition:all .18s ease}.inv-search-input:focus{border-color:#8b5cf6;box-shadow:0 0 10px #8b5cf640}.inv-search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--dim);pointer-events:none}.inv-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;padding:4px 0 24px}.inv-gallery-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .22s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;cursor:pointer}.inv-gallery-card:hover{transform:translateY(-3px);border-color:var(--card-accent, #8b5cf6);box-shadow:0 10px 24px #0000001f,0 0 12px color-mix(in srgb,var(--card-accent, #8b5cf6) 25%,transparent)}.inv-card-badge-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.inv-card-domain-tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:8px}.inv-card-exam-tag{font-size:10px;font-weight:700;color:#fbbf24;background:#fbbf241f;border:1px solid rgba(251,191,36,.3);padding:2px 8px;border-radius:8px}.inv-card-title-row{display:flex;align-items:center;gap:10px}.inv-card-glyph{font-size:22px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#ffffff0d;border:1px solid var(--line);flex-shrink:0}.inv-card-title{margin:0;font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.3}.inv-card-summary{font-size:12px;color:var(--dim);line-height:1.5;flex:1 1 auto}.inv-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px solid var(--line);margin-top:auto}.inv-card-cta-btn{background:var(--card-accent, #8b5cf6);color:#fff;border:none;border-radius:8px;padding:6px 12px;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:5px}.inv-card-cta-btn:hover{filter:brightness(1.15);transform:translateY(-1px)}.inv-detail-view{display:flex;flex-direction:column;gap:14px}.inv-detail-nav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 12px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.inv-breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dim)}.inv-breadcrumb a,.inv-breadcrumb span.link{color:#8b5cf6;cursor:pointer;font-weight:600}.inv-breadcrumb span.sep{color:var(--dim);opacity:.5}.inv-back-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:8px;font-size:11.5px;font-weight:600;background:transparent;border:1px solid var(--line);color:var(--dim);cursor:pointer;transition:all .15s ease}.inv-back-btn:hover{background:var(--solid);color:var(--fg);border-color:#8b5cf6}.inv-pillar-header{padding:14px 18px;background:var(--panel);border:1px solid var(--line);border-radius:14px;border-left:4px solid #8b5cf6}.inv-pillar-title-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.inv-pillar-badge{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:6px;border:1px solid transparent}.inv-pillar-title{margin:4px 0 6px;font-size:18px;font-weight:700;color:var(--fg)}.inv-pillar-desc{margin:0;font-size:12.5px;color:var(--dim);line-height:1.55}.inv-mode-selector{display:flex;gap:8px}.inv-controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:10px 14px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.inv-control-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--dim)}.inv-control-item input[type=range]{accent-color:#8b5cf6;cursor:pointer}.inv-btn-group{display:flex;gap:6px;margin-left:auto}.inv-action-btn{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;border:none;background:#8b5cf6;color:#fff;cursor:pointer;transition:all .15s ease}.inv-action-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.inv-action-btn.secondary{background:transparent;border:1px solid var(--line);color:var(--dim)}.inv-action-btn.secondary:hover{background:var(--solid);color:var(--fg)}.inv-sub-btn{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;border:1px solid var(--line);background:var(--panel);color:var(--dim);cursor:pointer;transition:all .15s ease}.inv-sub-btn:hover{border-color:#8b5cf6;color:var(--fg)}.inv-sub-btn.active{background:#8b5cf6;border-color:#8b5cf6;color:#fff}.inv-canvas-box{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.inv-metric-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 14px;overflow-x:auto}.inv-studio-nav{position:sticky;top:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;background:color-mix(in srgb,var(--solid) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line2);border-radius:12px;margin-bottom:14px;box-shadow:0 4px 16px #0000000f;flex-wrap:wrap}.inv-studio-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.inv-studio-breadcrumb{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inv-studio-dom-tag{font-size:10.5px;font-weight:700;text-transform:uppercase;padding:3px 8px;border-radius:6px;letter-spacing:.03em}.inv-studio-sep{color:var(--dim);opacity:.4;font-size:13px}.inv-studio-title{margin:0;font-size:14.5px;font-weight:700;color:var(--ink)}.inv-studio-exam-tag{font-size:10px;font-weight:700;color:#fbbf24;background:#fbbf241f;border:1px solid rgba(251,191,36,.3);padding:2px 8px;border-radius:6px}.inv-studio-right{display:flex;align-items:center;gap:8px}.inv-quick-nav{display:flex;align-items:center;gap:6px;background:var(--solid);padding:4px;border-radius:8px;border:1px solid var(--line)}.inv-nav-step-btn{background:transparent;border:none;color:var(--dim);padding:4px 10px;font-size:11.5px;font-weight:600;cursor:pointer;border-radius:6px;transition:all .15s ease}.inv-nav-step-btn:hover{background:var(--panel);color:var(--ink)}.inv-quick-select{background:var(--panel);border:1px solid var(--line);color:var(--ink);font-size:12px;font-weight:600;padding:4px 8px;border-radius:6px;outline:none;cursor:pointer;max-width:250px}.inv-quick-select:focus{border-color:#8b5cf6}.inv-card-formula{background:color-mix(in srgb,var(--solid) 80%,rgba(14,165,233,.06));border:1px solid color-mix(in srgb,var(--line) 70%,rgba(14,165,233,.25));border-radius:10px;padding:10px 14px;font-size:13.5px;color:var(--ink);overflow-x:auto;text-align:center}.inv-card-formula .katex{color:#0284c7!important;font-weight:600}:root[data-theme=dark] .inv-card-formula .katex{color:#38bdf8!important;font-weight:600}.inv-badge-val .katex{color:#8b5cf6!important;font-weight:700}:root[data-theme=dark] .inv-badge-val .katex{color:#c084fc!important;font-weight:700}.standalone-realmath{height:100vh;margin:0;overflow:hidden;background:var(--bg);color:var(--ink);display:flex;flex-direction:column}#realmath-app-root{display:flex;flex-direction:column;height:100%}.rm-standalone-header{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--bg2);border-bottom:1px solid var(--line);flex-shrink:0;box-shadow:0 2px 10px #0000001a}.rm-hdr-brand{display:flex;align-items:center;gap:14px}.rm-back-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;background:var(--panel2);border:1px solid var(--line2);color:var(--accent);text-decoration:none;font-weight:600;font-size:13px;transition:all .15s ease}.rm-back-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.rm-hdr-title{font-weight:700;font-size:14.5px;letter-spacing:-.01em}.rm-work-standalone{flex:1;min-height:0;overflow:hidden;position:relative;display:flex}.rm-work-standalone>.realmath-unified{flex:1;height:100%}.settings-modal-bg{position:fixed;inset:0;background:#0a0f19ad;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:150;animation:viewin .16s ease-out}.settings-modal{width:min(740px,94vw);max-height:88vh;display:flex;flex-direction:column;background:var(--solid);border:1px solid var(--line2);border-radius:22px;box-shadow:0 24px 70px #00000073;overflow:hidden;animation:viewin .18s cubic-bezier(.16,1,.3,1)}.st-head{display:flex;align-items:center;justify-content:space-between;padding:16px 24px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 40%,transparent)}.st-title-group h3{margin:0;font-size:17px;font-weight:700;display:flex;align-items:center;gap:9px;color:var(--ink)}.st-title-group h3 svg{width:19px;height:19px;color:var(--app)}.st-title-group p{margin:2px 0 0;font-size:12px;color:var(--dim)}.st-close-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--dim);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.st-close-btn:hover{background:var(--panel2);color:var(--ink);border-color:var(--line2)}.st-nav{display:flex;gap:8px;padding:8px 24px;background:color-mix(in srgb,var(--panel) 60%,transparent);border-bottom:1px solid var(--line)}.st-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--dim);font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease;user-select:none}.st-tab-btn svg{width:16px;height:16px}.st-tab-btn:hover{background:var(--panel2);color:var(--ink)}.st-tab-btn.on{background:var(--app);color:#fff;border-color:color-mix(in srgb,#fff 20%,transparent);box-shadow:0 3px 12px color-mix(in srgb,var(--app) 35%,transparent)}.st-tab-coffee.on{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-color:#fef3c745;box-shadow:0 4px 14px #d9770659}.st-badge-warm{font-size:11px;font-weight:700;padding:2px 7px;border-radius:6px;background:#fef3c7;color:#b45309}.st-tab-coffee.on .st-badge-warm{background:#ffffff30;color:#fff}.st-body{flex:1;min-height:0;overflow-y:auto;padding:20px 24px}.st-content-tab{display:flex;flex-direction:column;gap:14px}.st-section{display:flex;flex-direction:column;gap:10px;padding:13px 16px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.st-sec-label{display:flex;flex-direction:column;gap:2px}.st-sec-label b{font-size:13.5px;color:var(--ink)}.st-sec-label span{font-size:12px;color:var(--dim)}.st-seg{display:flex;gap:8px;flex-wrap:wrap}.st-seg-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--dim);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.st-seg-btn svg{width:15px;height:15px}.st-seg-btn:hover{color:var(--ink);border-color:var(--line2);background:var(--solid)}.st-seg-btn.active{background:var(--app);color:#fff;border-color:transparent;box-shadow:0 2px 8px color-mix(in srgb,var(--app) 30%,transparent)}.st-seg-btn small{font-size:11px;opacity:.8;margin-left:2px}.st-row-btns{display:flex;gap:10px;flex-wrap:wrap}.st-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:10px;border:1px solid var(--line);background:var(--panel2);color:var(--ink);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.st-btn svg{width:16px;height:16px;color:var(--dim)}.st-btn:hover{background:var(--solid);border-color:var(--line2)}.st-btn.active{background:color-mix(in srgb,var(--app) 14%,var(--panel2));border-color:var(--app);color:var(--app)}.st-btn.active svg{color:var(--app)}.st-coffee-teaser{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,#f59e0b 14%,var(--panel)),color-mix(in srgb,#f59e0b 7%,var(--panel)));border:1px solid color-mix(in srgb,#f59e0b 35%,var(--line));box-shadow:0 4px 16px #f59e0b14}.st-ct-left{display:flex;gap:12px;align-items:center}.st-ct-icon{font-size:26px}.st-ct-left b{font-size:14px;color:var(--ink);display:block}.st-ct-left p{font-size:12px;color:var(--dim);margin:2px 0 0}.st-ct-btn{display:inline-flex;align-items:center;padding:8px 16px;border-radius:10px;border:1px solid #f59e0b;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-weight:700;font-size:12.5px;cursor:pointer;white-space:nowrap;transition:all .18s ease}.st-ct-btn:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 4px 14px #f59e0b59}.st-coffee-container{display:flex;flex-direction:column}.cd-body{display:flex;gap:28px;align-items:flex-start;padding:6px 4px}.cd-left{flex:1.15;min-width:0}.cd-kicker{font-size:12.5px!important;color:#d97706;font-weight:700;margin:0 0 6px!important;text-transform:uppercase;letter-spacing:.04em}.cd-left h2{margin:0 0 12px;font-size:24px;font-weight:800;color:var(--ink);letter-spacing:-.02em}.cd-left p{margin:0 0 10px;line-height:1.62;font-size:13.5px;color:var(--ink)}.cd-left p b{color:#d97706}.cd-soft{color:var(--dim)!important;font-style:italic;font-size:13px!important;line-height:1.58!important;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,#f59e0b 8%,var(--panel));border-left:3px solid #f59e0b;margin-top:12px!important}.cd-bank{display:flex;flex-direction:column;gap:8px;margin-top:14px;padding:12px 16px;border-radius:14px;background:var(--panel);border:1px solid var(--line)}.cd-bank-head{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--dim)}.cd-owner{font-weight:700;color:var(--ink);letter-spacing:.02em}.cd-acc-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.cd-acc-num{font-size:20px;font-weight:800;letter-spacing:.05em;font-family:ui-monospace,Menlo,Consolas,monospace;color:#d97706}.cd-copy-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border:1px solid var(--line2);border-radius:9px;background:var(--panel2);color:var(--ink);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease}.cd-copy-btn svg{width:14px;height:14px}.cd-copy-btn:hover{background:var(--solid);border-color:var(--ink)}.cd-copy-btn.copied{background:#10b981;color:#fff;border-color:#10b981}.cd-copy-btn.copied svg{color:#fff}.cd-right{flex:.85;display:flex;flex-direction:column;align-items:center;gap:8px;padding:4px}.cd-qr-wrap{padding:10px;border-radius:18px;background:#fff;border:1px solid var(--line2);box-shadow:0 10px 30px #0000001f;display:flex;align-items:center;justify-content:center}.cd-qr-wrap img{width:195px;height:auto;display:block;border-radius:10px}.cd-right small{color:var(--dim);font-size:12px;text-align:center}@media (max-width: 680px){.cd-body{flex-direction:column-reverse;align-items:center;gap:18px}.cd-right,.cd-left{width:100%}}.dock-fb-btn{background:linear-gradient(135deg,#1877f2,#0d65d9)!important;color:#fff!important;border-color:#fff3!important;box-shadow:0 2px 10px #1877f259;text-decoration:none}.dock-fb-btn:hover{filter:brightness(1.12);transform:translateY(-1px);box-shadow:0 4px 14px #1877f280}.dock-coffee-btn{color:#fbbf24!important;border-color:#f59e0b59!important}.dock-coffee-btn:hover{background:#f59e0b26!important;border-color:#fbbf24!important}.author-fb-btn{background:linear-gradient(135deg,#1877f2,#0d65d9)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:0 4px 14px #1877f259;padding:8px 16px;border-radius:10px;font-size:13px;font-weight:600;transition:all .16s ease}.author-fb-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1877f280;filter:brightness(1.08)}.author-coffee-btn{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:0 4px 14px #f59e0b59;padding:8px 16px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .16s ease}.author-coffee-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b80;filter:brightness(1.08)}.author-mail-btn{background:var(--panel);border:1px solid var(--line2);color:var(--dim);padding:8px 14px;border-radius:10px;font-size:13px;font-weight:600;transition:all .16s ease}.author-mail-btn:hover{color:var(--ink);border-color:var(--app)}.cd-author-header{display:flex;align-items:center;gap:14px;margin-bottom:8px}.cd-avatar-badge{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#ea580c33,#f59e0b33);border:1px solid rgba(255,255,255,.15);display:grid;place-items:center;font-size:26px;flex-shrink:0}.cd-actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.home-author-card{margin:36px 0 20px;padding:24px 28px;background:linear-gradient(135deg,#ea580c14,#6366f10f);border:1px solid var(--line2);border-radius:18px;box-shadow:0 10px 30px #0003}.home-author-head{display:flex;align-items:center;gap:14px;margin-bottom:12px}.home-author-avatar{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#ea580c40,#6366f140);border:1px solid rgba(255,255,255,.15);display:grid;place-items:center;font-size:28px;flex-shrink:0}.home-author-kicker{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--app)}.home-author-name{margin:2px 0 0;font-size:19px;font-weight:800;color:var(--ink)}.home-author-sub{margin:3px 0 0;font-size:13px;color:var(--dim)}.home-author-desc{font-size:14px;line-height:1.6;color:var(--dim);margin:12px 0 16px}.home-author-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.k-frac{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;font-size:.72em;gap:1.5px}.k-frac .k-box{display:block;font-size:7px;line-height:1;opacity:.95}.k-frac .k-bar{display:block;width:13px;height:1.5px;background:currentColor;border-radius:1px}.optn-modal-bg{position:fixed;inset:0;background:#0a0f19b8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px;z-index:160;animation:viewin .16s ease-out}.optn-modal{width:min(800px,95vw);max-height:88vh;display:flex;flex-direction:column;background:var(--solid);border:1px solid var(--line2);border-radius:20px;box-shadow:0 24px 70px #00000073;overflow:hidden;animation:viewin .18s cubic-bezier(.16,1,.3,1)}.optn-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 40%,transparent)}.optn-title-group h3{margin:0;font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px;color:var(--ink)}.optn-title-group h3 svg{width:19px;height:19px;color:var(--app)}.optn-title-group p{margin:2px 0 0;font-size:12px;color:var(--dim)}.optn-close-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--dim);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.optn-close-btn:hover{background:var(--panel2);color:var(--ink)}.optn-search-wrap{padding:12px 20px 8px}.optn-search-input{width:100%;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:13.5px;outline:none;transition:border-color .15s,box-shadow .15s}.optn-search-input:focus{border-color:var(--app);box-shadow:0 0 0 3px color-mix(in srgb,var(--app) 25%,transparent)}.optn-cats{display:flex;gap:6px;padding:0 20px 10px;overflow-x:auto;border-bottom:1px solid var(--line);scrollbar-width:none}.optn-cats::-webkit-scrollbar{display:none}.optn-cat-btn{padding:5px 12px;border-radius:99px;border:1px solid var(--line);background:var(--panel);color:var(--dim);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .12s ease}.optn-cat-btn:hover{color:var(--ink);border-color:var(--dim)}.optn-cat-btn.on{background:var(--app);color:#fff;border-color:var(--app);box-shadow:0 2px 8px color-mix(in srgb,var(--app) 35%,transparent)}.optn-list{padding:14px 20px 20px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.optn-card{padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--panel);cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:all .15s ease}.optn-card:hover{transform:translateY(-2px);border-color:var(--app);box-shadow:0 6px 16px #0000001f;background:var(--panel2)}.optn-card-top{display:flex;align-items:center;justify-content:space-between}.optn-fn-name{font-size:13.5px;font-weight:700;color:var(--ink)}.optn-fn-cat{font-size:10.5px;font-weight:600;padding:1px 7px;border-radius:99px;background:color-mix(in srgb,var(--app) 15%,transparent);color:var(--app)}.optn-fn-desc{font-size:12px;color:var(--dim);line-height:1.45}.optn-fn-syntax{font-size:11.5px;color:var(--dim);background:var(--solid);padding:4px 8px;border-radius:6px;border:1px solid var(--line);overflow-x:auto;white-space:nowrap}.optn-fn-syntax code{font-family:ui-monospace,Menlo,monospace;font-weight:700;color:var(--ink)}.optn-fn-syntax .ex{opacity:.8}.optn-insert-btn{margin-top:4px;padding:6px 10px;border-radius:8px;border:0;background:color-mix(in srgb,var(--app) 12%,transparent);color:var(--app);font-weight:700;font-size:11.5px;cursor:pointer;transition:background .12s ease;align-self:flex-start}.optn-card:hover .optn-insert-btn{background:var(--app);color:#fff}.optn-empty{grid-column:1 / -1;padding:40px 20px;text-align:center;color:var(--dim);font-size:14px}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(./KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(./KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(./KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(./KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(./KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(./KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(./KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(./KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(./KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(./KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(./KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(./KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(./KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(./KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(./KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(./KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(./KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(./KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(./KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(./KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(./KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(./KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(./KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(./KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(./KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(./KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(./KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(./KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(./KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(./KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(./KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(./KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(./KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(./KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(./KaTeX_Size3-Regular-gV2CO0n9.woff2) format("woff2"),url(./KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(./KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(./KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(./KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(./KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(./KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.47"}.katex .katex-mathml{border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}
