.au-name{font-size:19px;font-weight:500;letter-spacing:.3px;white-space:nowrap}.au-name .ai{color:#ff4d1a;font-weight:800}.au-spin{display:inline-block;width:14px;height:14px;margin-right:8px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;vertical-align:-2px;animation:au-spin .7s linear infinite}@keyframes au-spin{to{transform:rotate(360deg)}}.au-loading{height:100%;display:flex;gap:14px;align-items:center;justify-content:center;color:var(--muted);font-size:14px}.au-shell{min-height:100%;display:grid;grid-template-columns:minmax(400px,44%) 1fr;grid-template-rows:1fr auto;font-size:14px}.au-brand{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:36px;padding:38px 52px 30px;overflow:hidden;background:#04070b;border-right:1px solid #161e28}.au-brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at calc(100% + 90px) 50%,transparent 278px,rgba(59,130,246,.3) 279px,rgba(59,130,246,.3) 280px,transparent 281px),radial-gradient(circle at calc(100% + 90px) 50%,transparent 343px,rgba(255,77,26,.26) 344px,rgba(255,77,26,.26) 345px,transparent 346px),radial-gradient(circle at calc(100% + 90px) 50%,transparent 418px,rgba(34,211,74,.2) 419px,rgba(34,211,74,.2) 420px,transparent 421px),radial-gradient(circle at calc(100% + 90px) 50%,rgba(59,130,246,.07),transparent 280px),radial-gradient(640px 460px at 10% 0%,rgba(59,130,246,.26),transparent 68%),radial-gradient(560px 460px at 100% 100%,rgba(255,77,26,.17),transparent 68%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0 / 44px 44px,linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0 / 44px 44px}.au-brand>*{position:relative;z-index:1}.au-brand-top{display:flex;align-items:center;gap:8px}.au-brand-top img{width:36px;height:36px;filter:drop-shadow(0 0 10px rgba(59,130,246,.35))}.au-brand-top .au-name{font-size:23px}.au-brand-tag{margin-left:6px;padding:2px 8px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#9fb0c2;font-size:10.5px;font-weight:700;letter-spacing:1.4px}.au-brand-mid{max-width:440px}.au-kicker{display:inline-flex;align-items:center;gap:8px;color:#22d34a;font-size:11.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:16px}.au-kicker:before{content:"";width:22px;height:2px;border-radius:2px;background:#22d34a}.au-brand h1{margin:0 0 14px;font-size:40px;line-height:1.1;font-weight:600;letter-spacing:-.8px;color:#f3f6f9}.au-lead{margin:0 0 30px;color:#97a5b4;font-size:14.5px;line-height:1.55}.au-brand ul{list-style:none;margin:0;padding:0;display:grid;gap:14px}.au-brand li{display:flex;align-items:flex-start;gap:14px}.au-brand li>span:last-child{display:flex;flex-direction:column;gap:2px}.au-brand li b{color:#e6edf3;font-size:14px;font-weight:600}.au-brand li small{color:#7f8d9c;font-size:12.5px;line-height:1.4}.au-fi{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#8fc1ff;background:linear-gradient(160deg,#3b82f638,#3b82f60f);border:1px solid rgba(59,130,246,.32);box-shadow:inset 0 1px #ffffff0f}.au-brand li:nth-child(2) .au-fi{color:#ffa184;background:linear-gradient(160deg,#ff4d1a38,#ff4d1a0d);border-color:#ff4d1a52}.au-brand li:nth-child(3) .au-fi{color:#6fe58d;background:linear-gradient(160deg,#22d34a33,#22d34a0d);border-color:#22d34a4d}.au-brand-foot{display:flex;align-items:center;gap:8px;color:#5f6c7a;font-size:12px}.au-brand-foot svg{flex:none;color:#22d34a}.au-main{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px 20px;background:var(--bg);overflow:hidden}.au-main:before{content:"";position:absolute;left:50%;top:-220px;width:720px;height:520px;margin-left:-360px;pointer-events:none;background:radial-gradient(closest-side,rgba(59,130,246,.09),transparent)}.au-card{position:relative;width:100%;max-width:410px;padding:34px 36px 28px;background:linear-gradient(180deg,#151d27 0%,var(--panel) 90px);border:1px solid #2a3542;border-radius:16px;box-shadow:0 1px #ffffff0a inset,0 30px 70px #00000080}.au-card:before{content:"";position:absolute;left:28px;right:28px;top:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#3b82f6 25%,#ff4d1a 75%,transparent)}.au-card.wide{max-width:580px}.au-kicker-sm{margin-bottom:8px;color:#6aa5ff;font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}.au-card h2{margin:0 0 6px;font-size:26px;font-weight:600;letter-spacing:-.4px}.au-sub{margin:0 0 22px;color:var(--muted);line-height:1.5}.au-secure{display:none;align-items:center;gap:7px;color:#56616d;font-size:11.5px}.au-secure svg{color:#22d34a}.au-copy{color:#56616d;font-size:12px}.au-alt{display:flex;flex-wrap:wrap;justify-content:center;text-align:center;gap:2px 6px;margin-top:20px;padding-top:18px;border-top:1px solid var(--border);color:var(--muted)}.au-link{padding:0;background:none;border:0;color:#6aa5ff;font:inherit;font-weight:600;cursor:pointer}.au-link:hover{text-decoration:underline}.au-fine{margin:14px 0 0;color:#6b7886;font-size:12px;line-height:1.5;text-align:center}.au-done{width:60px;height:60px;margin:4px 0 18px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#22d34a;background:#22d34a1f;border:1px solid rgba(34,211,74,.35)}.au-field{display:block;margin-bottom:16px;min-width:0}.au-label{display:block;margin-bottom:6px;color:#b6c1cc;font-size:12.5px;font-weight:600}.au-field input,.au-field select,.au-field textarea{width:100%;height:42px;padding:0 12px;background:#0b1016;border:1px solid #2f3b49;border-radius:8px;color:var(--text);font:inherit;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.au-field textarea{height:auto;padding:10px 12px;resize:vertical;line-height:1.45}.au-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%238b98a5' stroke-width='2'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.au-field select option{background:#0b1016}.au-field input:hover,.au-field select:hover,.au-field textarea:hover{border-color:#3d4b5c}.au-field input:focus,.au-field select:focus,.au-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3b82f640}.au-field input[readonly]:not([data-nofill]){color:var(--muted);background:#10161d;cursor:default}.au-field input:disabled,.au-field select:disabled{opacity:.55;cursor:not-allowed}.au-field.bad input,.au-field.bad select,.au-field.bad textarea{border-color:#e5484d}.au-field input:-webkit-autofill{-webkit-text-fill-color:var(--text);box-shadow:0 0 0 1000px #0b1016 inset;caret-color:var(--text)}.au-in{position:relative;display:block}.au-in-ic{position:absolute;left:13px;top:0;height:44px;display:flex;align-items:center;color:#5f6c7a;pointer-events:none;z-index:1;transition:color .15s}.au-field .au-in input{height:44px;padding-left:40px;border-radius:10px}.au-in .au-pass button{top:5px}.au-in:focus-within .au-in-ic{color:#6aa5ff}.au-field.bad .au-in-ic{color:#ff8589}.au-hint{display:block;margin-top:5px;color:var(--muted);font-size:12px}.au-field.bad .au-hint{color:#ff8589}.au-hint.warn{color:#f5b94a}.au-pass{position:relative;display:block}.au-masked{-webkit-text-security:disc}.au-field .au-pass input,.au-pass input{padding-right:42px}.au-pass button{position:absolute;right:4px;top:4px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:none;border:0;border-radius:6px;color:var(--muted);cursor:pointer}.au-pass button:hover{color:var(--text);background:#18212b}.au-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.au-rules{list-style:none;display:flex;flex-wrap:wrap;gap:6px 8px;margin:-4px 0 20px;padding:0}.au-rules li{padding:3px 9px 3px 22px;position:relative;border:1px solid #2a3440;border-radius:20px;color:var(--muted);font-size:11.5px}.au-rules li:before{content:"";position:absolute;left:9px;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:#3d4b5c}.au-rules li.ok{color:#7ee29a;border-color:#22d34a66;background:#22d34a12}.au-rules li.ok:before{background:#22d34a}.au-check{display:flex;align-items:center;gap:9px;margin:4px 0 0;color:#c4ced8;cursor:pointer}.au-check input{width:16px;height:16px;accent-color:var(--accent)}.au-sep{margin:22px 0 14px;padding-bottom:7px;border-bottom:1px solid var(--border);color:var(--muted);font-size:11.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.au-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 16px;border:1px solid transparent;border-radius:8px;font:inherit;font-size:13.5px;font-weight:600;color:var(--text);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,transform .05s}.au-btn:active{transform:translateY(1px)}.au-btn:disabled{opacity:.6;cursor:default}.au-btn:focus-visible,.au-link:focus-visible,.au-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.au-btn.block{width:100%;height:46px;margin-top:8px;border-radius:10px;font-size:14.5px}.au-card .au-btn.primary{background:linear-gradient(180deg,#4a8ff7,#2f6fe0);box-shadow:0 8px 22px #3b82f64d,inset 0 1px #ffffff2e}.au-card .au-btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#5a9bff,#3579ee);box-shadow:0 10px 26px #3b82f661,inset 0 1px #ffffff2e}.au-arrow{margin-left:2px;transition:transform .15s}.au-btn:hover:not(:disabled) .au-arrow{transform:translate(3px)}.au-btn.sm{height:30px;padding:0 11px;font-size:12.5px;border-radius:7px}.au-btn.primary{background:var(--accent);color:#fff}.au-btn.primary:hover:not(:disabled){background:#2f6fe0}.au-btn.success{background:#17994a;color:#fff}.au-btn.success:hover:not(:disabled){background:#138540}.au-btn.danger{background:#d13438;color:#fff}.au-btn.danger:hover{background:#b92c30}.au-btn.ghost{background:transparent;border-color:#2f3b49;color:#c4ced8}.au-btn.ghost:hover:not(:disabled){background:#18212b;border-color:#3d4b5c;color:var(--text)}.au-banner{margin:0 0 16px;padding:10px 12px;border:1px solid;border-radius:8px;font-size:13px;line-height:1.45}.au-banner.error{color:#ffb3b5;background:#e5484d1a;border-color:#e5484d66}.au-banner.info{color:#b9d4ff;background:#3b82f61a;border-color:#3b82f666}.au-banner.warning{color:#f7d08a;background:#f5b94a17;border-color:#f5b94a66}.au-banner.success{color:#9be8b2;background:#22d34a17;border-color:#22d34a59}.au-forgot{margin:-8px 0 12px;text-align:right;font-size:12.5px}.au-forgot .au-link{font-weight:500}.au-temp{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:12px 14px;background:#0b1016;border:1px dashed #3d4b5c;border-radius:8px}.au-temp code{font-family:Consolas,monospace;font-size:18px;letter-spacing:.5px;color:#fff;-webkit-user-select:all;user-select:all;word-break:break-all}.au-note{margin:0 0 16px;color:var(--muted);font-size:12.5px;line-height:1.5}.au-chip{display:flex;align-items:center;gap:10px;margin-left:8px;flex:none}.au-avatar{flex:none;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:11.5px;font-weight:700;color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.au-who{display:flex;flex-direction:column;line-height:1.2;text-align:left}.au-who b{font-size:12.5px;font-weight:600}.au-who small{color:var(--muted);font-size:11px;max-width:240px;overflow:hidden;text-overflow:ellipsis}.au-console{min-height:100%;display:flex;flex-direction:column;font-size:13.5px}.au-console .ri-foot{margin-top:auto;position:sticky;bottom:0;z-index:4}.au-top{position:sticky;top:0;z-index:5;height:56px;display:flex;align-items:center;gap:8px;padding:0 20px;background:#000;border-bottom:1px solid #1a1f27}.au-top img{width:30px;height:30px;margin-right:-4px}.au-top-title{margin-left:14px;padding-left:14px;border-left:1px solid #2a3440;color:#22d34a;font-size:15px;font-weight:500}.au-top .au-chip{margin-left:auto}.au-body{width:100%;max-width:1240px;margin:0 auto;padding:26px 24px 40px}.au-tabs{display:flex;align-items:flex-end;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--border)}.au-tabs button:not(.au-btn){margin-bottom:-1px;padding:10px 14px;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.au-tabs button:not(.au-btn):hover{color:var(--text)}.au-tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.au-count{margin-left:7px;padding:1px 7px;border-radius:10px;background:#1d2733;color:#b6c1cc;font-size:11.5px}.au-tabs button.on .au-count{background:#3b82f638;color:#b9d4ff}.au-tabs-right{margin-left:auto;padding-bottom:8px}.au-panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow-x:auto}.au-panel .au-fine{margin:0;padding:12px;border-top:1px solid var(--border)}.au-table{width:100%;border-collapse:collapse}.au-table th{padding:11px 16px;text-align:left;color:var(--muted);font-size:11.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;border-bottom:1px solid var(--border);white-space:nowrap}.au-table td{padding:13px 16px;vertical-align:top;border-bottom:1px solid #1d2630}.au-table tr:last-child td{border-bottom:0}.au-table tbody tr:hover{background:#ffffff05}.au-table td b{font-weight:600}.au-table td small{display:block;margin-top:2px;color:var(--muted);font-size:12px}.au-table .mono{font-family:Consolas,monospace}.au-act{text-align:right;white-space:nowrap}.au-act>*{margin-left:6px;vertical-align:middle}.au-person{display:flex;align-items:center;gap:10px}.au-badge{display:inline-block;padding:2px 9px;border:1px solid;border-radius:20px;font-size:11.5px;font-weight:600;text-transform:capitalize}.au-badge.ok,.au-badge.approved{color:#7ee29a;border-color:#22d34a66;background:#22d34a14}.au-badge.pending{color:#f5b94a;border-color:#f5b94a66;background:#f5b94a14}.au-badge.rejected{color:#ff8589;border-color:#e5484d66;background:#e5484d14}.au-badge.off,.au-badge.disabled{color:var(--muted);border-color:#2f3b49;background:#18212b}.au-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:56px 20px;color:var(--muted);text-align:center}.au-empty b{color:var(--text);font-size:16px;font-weight:600}.au-empty .au-btn{margin-top:10px}.au-drawer-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;justify-content:flex-end;background:#0000008c;animation:au-fade .15s}.au-drawer-back.center{align-items:center;justify-content:center;padding:16px}.au-drawer{width:min(460px,100%);height:100%;display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--border);box-shadow:-20px 0 60px #00000080;animation:au-slide .18s ease-out}.au-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border)}.au-drawer h3,.au-dialog h3{margin:0;font-size:17px;font-weight:600}.au-x{width:32px;height:32px;background:none;border:0;border-radius:6px;color:var(--muted);font-size:22px;line-height:1;cursor:pointer}.au-x:hover{color:var(--text);background:#18212b}.au-drawer-body{flex:1;overflow-y:auto;padding:20px 22px}.au-drawer-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--border)}.au-dialog{width:min(440px,100%);padding:24px 24px 0;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 60px #00000080}.au-modal{width:min(520px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 60px #00000080;animation:au-pop .16s ease-out}.au-modal h3{margin:0;font-size:17px;font-weight:600}.au-modal .au-drawer-head{padding:16px 22px}.au-modal .au-drawer-body{flex:0 1 auto;padding:18px 22px 20px}.au-modal .au-sep{margin:16px 0 12px}.au-left{margin-right:auto}.au-btn.au-warn{color:#ff8589}.au-btn.au-warn:hover{border-color:#e5484d99;background:#e5484d1a}.au-checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}.au-modal .au-drawer-body{overflow-x:hidden}.au-modal .au-table{table-layout:fixed}.au-modal .au-table th{padding:8px 10px;white-space:normal;line-height:1.3}.au-modal .au-table td{padding:8px 10px;vertical-align:middle}.au-modal .au-table th:first-child,.au-modal .au-table td:first-child{width:64px}.au-modal .au-table input{width:100%;box-sizing:border-box;height:38px;padding:0 10px;background:#0b1016;border:1px solid #2f3b49;border-radius:8px;color:var(--text);font:inherit;font-size:13.5px;outline:none}.au-modal .au-table input:hover{border-color:#3d4b5c}.au-modal .au-table input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3b82f640}.au-modal.compact{width:min(560px,100%)}.au-modal.compact .au-drawer-head{padding:13px 18px}.au-modal.compact h3{font-size:15px}.au-modal.compact .au-drawer-body{padding:14px 18px 16px}.au-modal.compact .au-field{margin-bottom:10px}.au-modal.compact .au-label{margin-bottom:4px;font-size:11.5px}.au-modal.compact .au-field input,.au-modal.compact .au-field select,.au-modal.compact .au-field textarea{height:34px;padding:0 10px;border-radius:6px;font-size:13px}.au-modal.compact .au-field select{padding-right:30px;background-position:right 10px center}.au-modal.compact .au-row{gap:12px}.au-modal.compact .au-sep{margin:13px 0 9px;padding-bottom:5px;font-size:10.5px;letter-spacing:.9px}.au-modal.compact .au-check{margin:0;gap:7px;font-size:12.5px}.au-modal.compact .au-check input{width:14px;height:14px}.au-modal.compact .au-checks{gap:9px 12px}.au-modal.compact .au-check-line{margin-top:12px;padding-top:11px}.au-modal.compact .au-table th{padding:5px 8px;font-size:10px;letter-spacing:.5px}.au-modal.compact .au-table td{padding:4px 8px}.au-modal.compact .au-table input{height:32px;font-size:12.5px;border-radius:6px}.au-modal.compact .au-hint,.au-modal.compact .au-error-text{font-size:11px}.au-modal.compact .au-drawer-foot{padding:11px 18px}.au-modal.compact .au-btn{height:32px;padding:0 14px;font-size:12.5px}.au-modal .au-drawer-body{scrollbar-width:thin;scrollbar-color:#2f3b49 transparent}.au-modal .au-drawer-body::-webkit-scrollbar{width:8px}.au-modal .au-drawer-body::-webkit-scrollbar-track{background:transparent}.au-modal .au-drawer-body::-webkit-scrollbar-thumb{background:#2f3b49;border-radius:4px}.au-modal .au-drawer-body::-webkit-scrollbar-thumb:hover{background:#3d4b5c}.au-check-line{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.au-badge.lic{margin-right:5px;text-transform:none;color:#9cc4ff;background:#4a90ff1f;border-color:#4a90ff59}@keyframes au-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.au-dialog .au-sub{margin:6px 0 18px}.au-dialog .au-drawer-foot{margin:6px -24px 0}@keyframes au-fade{0%{opacity:0}}@keyframes au-slide{0%{transform:translate(30px);opacity:0}}@media(max-width:860px){.au-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.au-brand{flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;border-right:0;border-bottom:1px solid #161e28}.au-brand:before{background:radial-gradient(420px 200px at 0% 50%,rgba(59,130,246,.24),transparent 70%),radial-gradient(420px 200px at 100% 50%,rgba(255,77,26,.16),transparent 70%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px) 0 0 / 44px 44px,linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px) 0 0 / 44px 44px}.au-brand h1,.au-lead,.au-brand ul{display:none}.au-brand-mid{max-width:none}.au-brand .au-kicker{margin:0;font-size:10.5px;letter-spacing:1.5px}.au-brand-foot{display:none}.au-brand-top img{width:30px;height:30px}.au-brand-top .au-name{font-size:19px}.au-main{justify-content:flex-start;padding:36px 16px 28px}.au-secure{display:flex}}@media(max-width:560px){.au-card{padding:26px 20px 22px}.au-brand .au-kicker{display:none}.au-row{grid-template-columns:1fr;gap:0}.au-who,.au-top-title{display:none}.au-body{padding:18px 12px 32px}}@media(max-width:1100px){.topbar .au-who small{display:none}}@media(prefers-reduced-motion:reduce){.au-spin,.au-drawer,.au-modal,.au-drawer-back{animation:none}}.au-error-text{margin-top:6px;color:#ff8589;font-size:12.5px}.au-filter{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--muted);font-size:13px}.au-filter select{height:34px;padding:0 10px;background:#0b1016;border:1px solid #2f3b49;border-radius:8px;color:var(--text);font:inherit;font-size:13px}.au-beam{display:inline-flex;align-items:center;gap:8px;margin:0 6px 4px 0;padding:4px 6px 4px 10px;background:#0b1016;border:1px solid #2f3b49;border-radius:8px;color:var(--text);font:inherit;font-size:13px;cursor:pointer}.au-beam:hover{border-color:var(--accent)}.au-insight{position:sticky;bottom:0;z-index:5;display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:12px;padding:6px 56px 8px;background:var(--bg);border-top:1px solid #1d2633}.au-insight-out{width:min(720px,100%);max-height:30vh;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 8px;font-size:12.5px;scrollbar-width:thin}.au-insight-out .pal-md table{white-space:normal}.au-insight-fab{position:fixed;z-index:20;touch-action:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #4aa3ff;border-radius:50%;background:radial-gradient(circle at 50% 45%,#13233c,#0b1220 70%);color:#cfe6ff;cursor:pointer;box-shadow:0 0 6px 1px #4aa3ff80,inset 0 0 5px #4aa3ff4d;transition:box-shadow .15s,transform .15s}.au-insight-fab:hover{box-shadow:0 0 10px 2px #4aa3ffb3,inset 0 0 6px #4aa3ff66;transform:scale(1.05)}.au-insight-fab.on{background:#0f1319;color:var(--accent);box-shadow:0 0 6px 1px #4aa3ff66}.au-insight-fab.busy{animation:au-fab-pulse 1.6s ease-in-out infinite}@keyframes au-fab-pulse{50%{box-shadow:0 0 12px 3px #4aa3ffcc,inset 0 0 6px #4aa3ff80}}.au-insight-row{width:min(520px,100%);display:flex;align-items:center;gap:6px;padding:0 6px;border:1px solid var(--accent);border-radius:6px;background:#0f1319}.au-insight-row svg{color:var(--accent);flex:none}.au-insight-row input{flex:1;min-width:0;padding:5px 2px;background:transparent;border:0;outline:none;color:var(--text);font:inherit;font-size:12.5px}.au-insight-row input[readonly]{color:var(--muted)}@media(max-width:600px){.au-insight{padding:6px 48px 8px 10px}}.au-crumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:16px;font-size:14px;color:#c4ced8}.au-crumb i{color:#3d4b5c;font-style:normal}.au-crumb b{color:var(--text);font-size:16px}.au-crumb small{margin-left:7px;color:var(--muted);font-size:12px}.au-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}.au-steps button{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--panel);border:1px solid var(--border);border-radius:10px;color:var(--muted);font:inherit;font-size:13.5px;font-weight:600;text-align:left;cursor:pointer}.au-steps button:hover{color:var(--text)}.au-steps button.on{color:var(--text);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.au-steps em{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#18212b;color:#c4ced8;font-style:normal;font-size:12px}.au-steps button.on em{background:var(--accent);color:#fff}.au-steps button.done em{background:#22d34a2e;color:#7ee29a}.au-panel.pad{padding:18px}.au-panel+.au-panel,.au-summary+.au-panel{margin-top:14px}.au-panel-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.au-panel-head .au-check{margin:0;font-size:13px}.au-panel-head:last-child{border-bottom:0}.au-fold{display:flex;align-items:center;gap:8px;padding:0;background:none;border:0;color:var(--text);font:inherit;cursor:pointer}.au-fold svg{flex:none;color:var(--muted);transition:transform .15s}.au-fold.on svg{transform:rotate(90deg)}.au-fold:hover svg{color:var(--accent)}.au-two{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.au-two .au-panel+.au-panel{margin-top:0}.au-two .au-btn{margin-top:4px}.au-sep.first{margin-top:0}.au-drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:30px 16px;margin-bottom:14px;border:1.5px dashed #3d4b5c;border-radius:10px;color:var(--muted);font-size:12.5px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.au-drop b{color:var(--text);font-size:14.5px;font-weight:600}.au-drop:hover,.au-drop.over{border-color:var(--accent);background:#3b82f612}.au-table.tight th,.au-table.tight td{padding:9px 12px}.au-engine{display:flex;justify-content:flex-end;margin:14px 0 8px}.au-engine .mc-seg button{padding:4px 12px;font-size:12px;font-weight:500;border-radius:5px}.au-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.au-summary>div{min-width:0;padding:8px 11px;background:var(--panel);border:1px solid var(--border);border-radius:10px}.au-summary>div>span{display:block;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.au-summary b{font-size:15px;font-weight:600}.au-summary small{display:block;margin-top:2px;color:var(--muted);font-size:11px}.au-finding{position:relative;padding:5px 0 5px 18px;color:#c4ced8;font-size:13px;line-height:1.45}.au-finding:before{content:"";position:absolute;left:2px;top:11px;width:8px;height:8px;border-radius:50%;background:#5b8def}.au-finding.warning:before{background:#f5b94a}.au-finding.error:before{background:#e5484d}.au-finding.inline{padding-top:1px;padding-bottom:1px;font-size:12.5px}.au-finding.inline:before{top:7px}.au-legend{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;color:var(--muted);font-size:12px}.au-legend span{display:inline-flex;align-items:center;gap:6px}.au-legend em{margin-left:auto;font-style:normal}.au-matrices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.au-matrix h4{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.au-matrix h4:not(:first-child){margin-top:18px}.au-matrix table{border-collapse:separate;border-spacing:3px}.au-matrix th{padding:0 6px 0 0;color:var(--muted);font-size:11.5px;font-weight:500;text-align:right;white-space:nowrap}.au-matrix thead th{padding:0 0 2px;text-align:center}.au-cell{display:grid;place-items:center;width:30px;height:24px;padding:0;border:1px solid #232d38;border-radius:5px;background:#0b1016;color:#fff;font:inherit;font-size:12px;font-style:normal;font-weight:700}button.au-cell:not(:disabled){cursor:pointer}button.au-cell:not(:disabled):hover{outline:2px solid var(--accent);outline-offset:1px}.au-cell.ok{background:#22d34a33;border-color:#22d34a73;color:#7ee29a}.au-cell.warning{background:#f5b94a33;border-color:#f5b94a80;color:#f5b94a}.au-cell.error{background:#e5484d38;border-color:#e5484d8c;color:#ff8589}.au-cell.need{border-color:#e5484d8c;color:#e5484d;font-size:9px}.au-line{display:flex;flex-wrap:wrap;gap:4px}.au-line label{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);font-size:11px}.au-sign{display:flex;align-items:center;gap:12px}.au-sign input{flex:1;height:38px;padding:0 12px;background:#0b1016;border:1px solid #2f3b49;border-radius:8px;color:var(--text);font:inherit;font-size:13.5px;outline:none}.au-sign input:focus{border-color:var(--accent)}.au-sign>div{flex:1}.au-sign small{display:block;margin-top:3px;color:var(--muted);font-size:12.5px}.au-modal.wide{width:min(760px,100%)}.au-modal.paper{width:min(1040px,100%);height:calc(100vh - 32px)}.au-modal.paper .au-drawer-head{align-items:center;gap:12px}.au-modal.paper .au-act{display:flex;align-items:center;gap:8px;margin-left:auto}.au-paper{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;padding:0 0 14px}.au-paper iframe{flex:1 1 auto;width:100%;border:0;border-radius:0 0 12px 12px;background:#e8ecf1}.au-paper .au-empty{margin:0 22px}.au-modal.wide .au-drawer-body{overflow-y:auto}.au-plot{display:block;width:100%;height:auto;background:#0b1016;border:1px solid var(--border);border-radius:8px}.au-plot text{fill:#8b98a5;font-size:11px}.au-plot .axis{fill:#c4ced8}.au-plot .grid{stroke:#1d2630}.au-plot .frame{fill:none;stroke:#2f3b49}.au-plot .curve{fill:none;stroke:#4a90ff;stroke-width:1.8;stroke-linejoin:round}.au-plot .mark{stroke:#f5b94a;stroke-dasharray:4 4}.au-plot .marktext{fill:#f5b94a}.au-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0 10px}.au-facts div{padding:8px 10px;background:#0b1016;border:1px solid var(--border);border-radius:8px}.au-facts span{display:block;color:var(--muted);font-size:11px}.au-facts b{font-size:13.5px;font-weight:600}.au-fine.left{text-align:left}@media(max-width:900px){.au-two,.au-matrices{grid-template-columns:1fr}.au-steps,.au-facts{grid-template-columns:1fr 1fr}}.au-log{margin:0;padding:12px 16px;max-height:340px;overflow:auto;background:#0b1016;color:#aab6c2;font:12px/1.55 ui-monospace,Consolas,monospace;white-space:pre-wrap;border-radius:0 0 10px 10px}.au-panel-head small{color:var(--muted);font-size:12px}.au-table small.flat{display:inline;margin:0}.au-table tr.on td{background:#3b82f617}.au-table tr.on td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.au-scroll{max-height:460px;overflow:auto}.au-scroll thead th{position:sticky;top:0;background:var(--panel, #131a22);z-index:1}.au-verif tbody tr{cursor:pointer}.au-verif td{font-variant-numeric:tabular-nums}.good{color:#3fcf7f}.fair{color:#f5b94a}.poor{color:#ff6b6f}.au-check.block{align-items:flex-start;margin:0 0 12px;line-height:1.45;font-size:13.5px}.au-check.block input{flex:none;margin-top:2px}.au-plot .curve.calc{stroke:#ff9f43;stroke-width:1.5;stroke-dasharray:6 3}.au-plot .key text{fill:#c4ced8}.au-modal .au-fine.left{margin:0 0 14px}.au-modal.xwide{width:min(1180px,96vw);max-width:none}.au-ct-fields{display:grid;grid-template-columns:1fr 1.4fr 1.6fr .7fr 1.3fr;gap:12px}.au-ct-split{display:grid;grid-template-columns:minmax(300px,380px) 1fr;gap:22px;align-items:start}.au-ctgrid{border:1px solid #2a3542;border-radius:10px;background:#0d131a;padding:10px 10px 6px}.au-ctgrid-bar{display:flex;align-items:center;gap:8px;margin-bottom:8px}.au-ctgrid-bar b{flex:1;font-size:13px}.au-ctgrid table{width:100%;border-collapse:collapse}.au-ctgrid th{padding:4px 6px;color:var(--muted);font-size:11.5px;font-weight:600;text-align:left;border-bottom:1px solid #2a3542}.au-ctgrid td{padding:2px 3px}.au-ctgrid td.n{width:26px;color:var(--muted);font-size:12px;text-align:right;padding-right:8px}.au-ctgrid input{width:100%;height:28px;padding:0 8px;background:#0b1016;border:1px solid #26313d;border-radius:6px;color:var(--text);font:13px ui-monospace,Consolas,monospace;outline:none}.au-ctgrid input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #3b82f640}.au-ctgrid input.bad{border-color:#e5484d}.au-rowx{width:24px;height:24px;padding:0;background:none;border:0;border-radius:6px;color:var(--muted);font-size:17px;line-height:1;cursor:pointer}.au-rowx:hover{color:#ff8589;background:#e5484d1a}.au-ctgrid-add{margin:6px 0 2px}@media(max-width:900px){.au-ct-fields,.au-ct-split{grid-template-columns:1fr}}.au-modal.xwide .au-drawer-body{overflow-y:auto}.au-table tr.au-group td{padding:9px 14px;background:#141c26;color:#d6dee7;font-size:12.5px;letter-spacing:.02em;border-top:1px solid var(--border)}.au-table tbody:first-of-type tr.au-group td{border-top:0}.au-table tr.au-group:hover{background:none}.au-temp{display:flex;align-items:center;gap:10px;justify-content:space-between;margin:4px 0 2px;padding:11px 13px;border:1px solid var(--border);border-radius:8px;background:#0f1620}.au-temp .mono{font-family:Consolas,monospace;font-size:15px;color:#eaf0f6;letter-spacing:.04em;-webkit-user-select:all;user-select:all}.au-subtabs{display:flex;align-items:center;gap:7px;margin:-8px 0 14px}.au-subtabs button{display:inline-flex;align-items:center;padding:6px 13px;background:#101822;border:1px solid var(--border);border-radius:999px;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.au-subtabs button:hover{color:var(--text);border-color:#3a4654}.au-subtabs button.on{background:#3b82f629;border-color:#3b82f673;color:#cfe2ff}.au-subtabs button.on .au-count{background:#3b82f642;color:#b9d4ff}.au-subtabs .au-count{margin-left:6px}.au-top-act{margin-left:auto}.au-top .au-top-act+.au-chip{margin-left:14px}.au-modal.mcc{width:min(820px,100%)}.au-modal.mcc .au-drawer-body{overflow-y:auto}.mc-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.mc-seg{display:inline-flex;padding:3px;background:#0b1016;border:1px solid var(--border);border-radius:9px}.mc-seg button{padding:7px 16px;background:none;border:0;border-radius:6px;color:var(--muted);font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}.mc-seg button:hover{color:var(--text)}.mc-seg button.on{background:var(--accent);color:#fff}.mc-seg button:focus-visible,.mc-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mc-ready{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}.mc-pill{padding:5px 10px;background:none;border:1px solid var(--border);border-radius:999px;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.mc-pill:hover:not(:disabled){color:var(--text);border-color:#3a4757}.mc-pill.on{color:#b9d4ff;border-color:var(--accent);background:#3b82f624}.mc-pill:disabled{opacity:.5;cursor:default}.mc-opts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mc-run{margin:18px 0 6px}.mc-bar{height:8px;background:#0b1016;border:1px solid var(--border);border-radius:999px;overflow:hidden}.mc-bar i{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .6s ease}.mc-step{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-size:13px;color:var(--muted)}.mc-step b{color:var(--text);font-weight:600}.mc-title{margin:16px 0 8px;font-size:13px;color:var(--muted)}.mc-plotwrap{position:relative}.mc-plot{cursor:crosshair}.mc-plot .mc-ccc{fill:none;stroke:#ff9f43;stroke-width:2;stroke-linejoin:round}.mc-plot .mc-meas{fill:none;stroke:#3ecf8e;stroke-width:1.6;stroke-dasharray:6 3;stroke-linejoin:round}.mc-plot .mc-dot{fill:#4a90ff;stroke:#0b1016;stroke-width:1}.mc-plot .mc-dot.on{fill:none;stroke:#e6edf3;stroke-width:1.5}.mc-plot .mc-diff{fill:#8fb8ff}.mc-plot .mc-band{fill:#4a90ff14;stroke:#2f3b49;stroke-dasharray:4 4}.mc-plot .mc-zero{stroke:#5b6876}.mc-plot .mc-cross line{stroke:#5b6876;stroke-dasharray:3 3}.mc-plot text.key{fill:#c4ced8}.mc-read{display:flex;flex-wrap:wrap;gap:18px;min-height:22px;margin-top:6px;font-size:12.5px;color:var(--muted)}.mc-read b{color:var(--text);font-weight:600}.mc-empty{min-height:120px}.au-modal.mcc .au-facts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:0}.mc-foot{align-items:center}.au-modal.mc-pick{width:380px;max-width:calc(100vw - 32px)}.mc-pick-list{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px}.mc-pick-list th{text-align:left;font-weight:600;color:var(--muted);padding:4px 6px;border-bottom:1px solid var(--border)}.mc-pick-list td{padding:4px 6px;border-bottom:1px solid var(--border);cursor:pointer}.mc-pick-list th:first-child,.mc-pick-list td:first-child{width:24px}.mc-pick-list td:last-child,.mc-pick-list th:last-child{text-align:right}.mc-pick-list tr.done td{color:var(--muted);cursor:default}.mc-queue{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:12px 0 0;font-size:11.5px;color:var(--muted)}.mc-queue span{margin-right:4px}.mc-queue b{font-weight:600;padding:2px 7px;border-radius:4px;border:1px solid var(--border);color:var(--muted)}.mc-queue b.running{color:#fff;background:#2f7cf6;border-color:#2f7cf6}.mc-queue b.done{color:#7fd49a;border-color:#2e6b43}.mc-queue b.failed{color:#ff8a80;border-color:#7a2e2e}.mc-queue b.stopped{color:#e0b25c;border-color:#6b5420}.mc-note{margin-right:auto;color:var(--muted);font-size:13px}@media(max-width:760px){.mc-opts{grid-template-columns:1fr 1fr}.mc-ready{margin-left:0}}.au-modal.mcc{font-size:12.5px}.au-modal.mcc .au-drawer-head{padding:12px 18px}.au-modal.mcc .au-drawer-head h3{font-size:14px;font-weight:600;letter-spacing:.1px}.au-modal.mcc .au-x{width:28px;height:28px;font-size:18px}.au-modal.mcc .au-drawer-body{padding:14px 18px}.au-modal.mcc .au-drawer-foot{padding:10px 18px;gap:8px}.au-modal.mcc .mc-row{margin-bottom:12px}.au-modal.mcc .mc-seg{padding:2px;border-radius:7px}.au-modal.mcc .mc-seg button{padding:4px 12px;font-size:12px;font-weight:500;border-radius:5px}.au-modal.mcc .au-field{margin-bottom:10px}.au-modal.mcc .au-label{margin-bottom:4px;font-size:10.5px;font-weight:500;letter-spacing:.4px;text-transform:uppercase;color:var(--muted)}.au-modal.mcc .au-field input,.au-modal.mcc .au-field select{height:30px;padding:0 10px;font-size:12.5px;border-radius:6px}.au-modal.mcc .au-field select{padding-right:28px;background-position:right 10px center}.au-modal.mcc .au-btn{height:30px;padding:0 14px;font-size:12.5px;font-weight:500;border-radius:6px}.au-modal.mcc .au-btn.primary:disabled{background:#2a323c;color:#7d8894;opacity:1}.au-modal.mcc .mc-note,.au-modal.mcc .mc-step,.au-modal.mcc .mc-title,.au-modal.mcc .mc-read{font-size:11.5px}.au-modal.mcc .au-plot text{font-size:10px}.au-modal.mcc .au-facts div{padding:6px 9px;border-radius:6px}.au-modal.mcc .au-facts span{font-size:10px;letter-spacing:.3px}.au-modal.mcc .au-facts b{font-size:12.5px;font-weight:600}.au-modal.mcc .mc-bar{height:6px}.au-drawer-back.mct-back{z-index:60}.au-modal.mct{width:min(1040px,100%);font-size:12.5px}.au-modal.mct .au-drawer-head{padding:12px 18px}.au-modal.mct .au-drawer-head h3{font-size:14px;font-weight:600;letter-spacing:.1px}.au-modal.mct .au-x{width:28px;height:28px;font-size:18px}.au-modal.mct .au-drawer-body{padding:12px 18px 14px}.au-modal.mct .au-drawer-foot{padding:10px 18px;gap:8px}.au-modal.mct .au-btn{height:30px;padding:0 14px;font-size:12.5px;font-weight:500;border-radius:6px}.au-modal.mct .mc-note{font-size:11.5px}.au-modal.mct .mc-seg{padding:2px;border-radius:7px}.au-modal.mct .mc-seg button{padding:4px 12px;font-size:12px;font-weight:500;border-radius:5px}.au-modal.mct .mc-seg button:disabled{opacity:.45;cursor:default}.mct-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.mct-keys{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}.mct-key{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;background:#0b1016;border:1px solid var(--border);border-radius:6px;color:var(--text);font:inherit;font-size:11.5px;cursor:pointer}.mct-key i{width:12px;height:3px;border-radius:2px}.mct-key b{font-weight:600;font-variant-numeric:tabular-nums;color:var(--muted)}.mct-key.off{opacity:.4}.mct-key:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mct-view{position:relative;height:min(560px,62vh);background:#0b0f17;border:1px solid var(--border);border-radius:8px;overflow:hidden}.mct-view canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}.mct-view canvas:active{cursor:grabbing}.mct-hud{position:absolute;left:10px;top:8px;color:#8b98a9;font-size:11px;font-variant-numeric:tabular-nums;pointer-events:none}.mct-wait{position:absolute;left:0;right:0;bottom:14px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px;pointer-events:none}.au-drawer-back.mci-back{z-index:55}.au-modal.mct.mci{width:min(900px,100%)}.mci-slider{flex:1;min-width:160px;accent-color:var(--accent)}.mci-slider:disabled{opacity:.45}.mci-frame{min-width:44px;color:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums;text-align:right}.mci-main{display:flex;gap:10px}.mct-view.mci-view{flex:1;height:min(540px,60vh)}.mci-view canvas{cursor:crosshair}.mci-view canvas:active{cursor:crosshair}.mci-keys{display:flex;flex-direction:column;gap:4px}.mci-keys .mct-key{height:24px;justify-content:flex-start;font-variant-numeric:tabular-nums}.mci-keys .mct-key i{width:14px;height:3px}.mci-read{display:flex;justify-content:space-between;gap:12px;height:18px;margin-top:8px;color:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden}@media(max-width:640px){.mci-main{flex-direction:column}.mci-keys{flex-direction:row;flex-wrap:wrap}}.au-ph-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.au-ph-drop{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px dashed #2f3d4c;border-radius:8px;background:#0d131a;color:var(--muted);font-size:12.5px;cursor:pointer}.au-ph-progress{position:relative;margin-top:8px;padding:6px 10px;border-radius:6px;background:#0d131a;border:1px solid #26313d;font-size:12.5px;overflow:hidden}.au-ph-progress i{position:absolute;left:0;bottom:0;height:3px;background:#4a90ff;transition:width .2s}.au-ph-empty-acts{display:flex;gap:10px}.au-ph-detail{margin-top:14px;padding:14px 16px}.au-ph-detail h4{margin:0 0 10px;font-size:14px}.au-ph-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:18px;align-items:start;margin-top:8px}.au-ph-img{min-height:160px;display:flex;align-items:center;justify-content:center;background:#000;border-radius:8px;overflow:hidden;color:var(--muted);font-size:12.5px}.au-ph-img img{width:100%;height:auto;display:block}.au-ph-info{width:100%;border-collapse:collapse;font-size:12.5px}.au-ph-info th{padding:4px 8px 4px 0;color:var(--muted);font-weight:500;text-align:left;vertical-align:top;white-space:nowrap}.au-ph-info td{padding:4px 0}.au-table tr.au-row-open td{background:#4a90ff0f}@media(max-width:900px){.au-ph-split,.au-ph-fields{grid-template-columns:1fr}}:root{--bg:#0b0f14;--panel:#141a22;--border:#26303c;--text:#e6edf3;--muted:#8b98a5;--accent:#3b82f6}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text);font:13px/1.4 system-ui,Segoe UI,sans-serif}.app{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:52px 56px 1fr 34px 32px;height:100%}.topbar{grid-column:1/3;display:flex;align-items:center;gap:16px;padding:0 14px;background:var(--panel);border-bottom:1px solid var(--border)}.topbar h1{font-size:15px;margin:0;font-weight:600}.topbar .logo{width:24px;height:24px;margin-right:-6px}.topbar .brand{letter-spacing:.2px;white-space:nowrap}.topbar .brand .ai{color:#ff4d1a;font-weight:800}.topbar .brand .ver{margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600;color:#ffb08a;border:1px solid #ff4d1a;border-radius:9px;vertical-align:middle}.topbar .muted{color:var(--muted)}.viewwrap{position:relative;background:#000;overflow:hidden}.viewport{position:absolute;top:0;right:0;bottom:0;left:0}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.corner{position:absolute;padding:6px 8px;font-size:12px;color:#cfd8e3;text-shadow:0 0 3px #000;pointer-events:none}.corner.tl{left:0;top:0}.corner.tr{right:0;top:0;text-align:right}.corner.bl{left:0;bottom:0}.corner.br{right:0;bottom:0;text-align:right}.sidebar{background:var(--panel);border-left:1px solid var(--border);padding:10px 12px;overflow:auto;display:flex;flex-direction:column;gap:6px}.sidebar h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:8px 0 2px}.row{display:flex;align-items:center;gap:8px}.row label{flex:1}.muted{color:var(--muted)}select,input[type=number]{background:#0e131a;color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 6px}input[type=range]{flex:2}.chk{display:flex;align-items:center;gap:6px;padding:1px 0;cursor:pointer}.swatch{width:12px;height:12px;border-radius:2px;border:1px solid #0008;flex:none}.legend{display:flex;height:10px;border-radius:3px;overflow:hidden}.legend span{flex:1}.status{grid-column:1/3;display:flex;align-items:center;gap:18px;padding:0 14px;background:var(--panel);border-top:1px solid var(--border);color:var(--muted);font-size:12px}.status b{color:var(--text);font-weight:500}.err{color:#f87171}button.small{background:#1f2937;color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 8px;cursor:pointer}.app.noside{grid-template-columns:1fr}.app.noside .topbar,.app.noside .toolbar,.app.noside .status,.app.noside .footer{grid-column:1}.topbar{flex-wrap:nowrap;white-space:nowrap;overflow:hidden}.views{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--border);min-height:0}.corner.tl b{color:#fff}.footer{grid-column:1/3;display:flex;align-items:center;gap:18px;padding:0 14px;font-size:11px;background:var(--panel);border-top:1px solid var(--border);color:var(--text)}.footer .ai{color:#ff4d1a;font-weight:800}.footer .muted{color:var(--muted)}.ri-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:center;padding:9px 14px;background:var(--panel);border-top:1px solid var(--border);color:var(--text);font-size:13px;letter-spacing:.2px}.ri-foot .ai{color:#ff4d1a;font-weight:800}.topbar{background:#000;border-bottom:1px solid #1a1f27;position:relative}.topbar .logo{width:30px;height:30px;margin-right:-8px}.topbar h1.brand{font-size:19px;font-weight:500;letter-spacing:.3px}.topbar .site{position:absolute;left:50%;transform:translate(-50%);color:#22d34a;font-size:21px;font-weight:500;letter-spacing:.3px;pointer-events:none}.toolbar{grid-column:1/3;position:relative;display:flex;align-items:center;margin:4px 10px;padding:0 14px;background:#15181d;border:1px solid #20252d;border-radius:8px;white-space:nowrap}.tb-left{display:flex;align-items:baseline;gap:12px;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;max-width:30%}.tb-left .muted,.tb-right{color:var(--muted);font-size:12px}.tb-right{margin-left:auto;max-width:30%;overflow:hidden;text-overflow:ellipsis}.tb-center{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px}.tb-group{position:relative;display:flex;align-items:center}button.tb{display:flex;align-items:center;justify-content:center;width:34px;height:32px;padding:0;background:transparent;border:1px solid transparent;border-radius:6px;color:#9fc3ee;cursor:pointer}button.tb:hover{background:#202733;color:#d6e8ff}button.tb.on{background:#1d3557;border-color:#2f5d9a;color:#fff}button.tb.caret{width:20px;color:#c9d3df}.tb-menu{position:absolute;top:36px;left:0;z-index:20;min-width:170px;background:#15181d;border:1px solid #2a313c;border-radius:6px;padding:4px;box-shadow:0 8px 24px #000a}.tb-item{display:flex;justify-content:space-between;gap:16px;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:12px}.tb-item span{color:var(--muted)}.tb-item:hover{background:#1d3557}@media(max-width:1100px){.tb-right{display:none}}@media(max-width:760px){.topbar .site,.tb-left .muted{display:none}.tb-center{position:static;transform:none;margin-left:auto;gap:2px}}.tb-center{gap:18px}button.tb{width:44px;height:42px;border-radius:8px}button.tb.caret{width:24px}button.tb.mini{width:26px;height:26px;transform:rotate(90deg);align-self:center}.tb-left{align-items:center}.tb-menu{top:46px;font-size:13px}.footer{justify-content:center;font-size:13px;letter-spacing:.2px}.toolbar{z-index:30}.tb-menu{z-index:40}.dock{display:flex;min-height:0;background:var(--panel);border-left:1px solid var(--border)}.dock .sidebar{width:270px;border-left:none;min-height:0}.dock-head{display:flex;align-items:center;gap:10px;margin-bottom:4px}.dock-title{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}button.dock-collapse{display:flex;align-items:center;justify-content:center;width:30px;height:28px;padding:0;background:#0b0f14cc;border:1px solid #2f5d9a;border-radius:6px;color:#6fb1ff;cursor:pointer}button.dock-collapse:hover{background:#1d3557;color:#fff}.dock-rail{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:34px;padding-top:10px;background:#101317;border-left:1px solid var(--border)}button.dock-tab{writing-mode:vertical-rl;transform:rotate(180deg);background:transparent;border:none;border-left:2px solid transparent;color:var(--muted);font-size:13px;padding:12px 0;cursor:pointer;white-space:nowrap}button.dock-tab:hover{color:var(--text)}button.dock-tab.on{color:#fff;font-weight:600;border-left-color:#ff4d1a}.dock .sidebar{overflow-x:hidden}.dock .sidebar select{min-width:0;max-width:160px;flex:2}.chk-all{padding:4px 0 6px;margin-bottom:4px;border-bottom:1px solid var(--border)}.dock .sidebar{width:340px;padding:12px 16px;font-size:14px;gap:8px}.dock .sidebar h2{font-size:12.5px;margin:12px 0 4px}.dock .sidebar .row label{flex:0 0 84px}.dock .sidebar select{max-width:none;flex:1;padding:5px 8px;font-size:13.5px}.dock .sidebar .chk{padding:2px 0;gap:8px}.dock .sidebar .swatch{width:13px;height:13px}.dock .sidebar input[type=range]{flex:1;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;border-radius:2px;background:#2a323d;outline:none}.dock .sidebar input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#ff4d1a;border:2px solid #0b0f14;box-shadow:0 0 0 1px #ff4d1a;cursor:pointer}.dock .sidebar input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#ff4d1a;border:2px solid #0b0f14;cursor:pointer}.dock .sidebar input[type=range]::-moz-range-track{height:3px;background:#2a323d;border-radius:2px}.unit-box,.unit-spacer{flex:0 0 92px;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:12.5px;white-space:nowrap}.unit-box input{width:48px;text-align:right}.iso-add{display:flex;align-items:center;gap:6px;margin-top:6px}.iso-add input[type=number]{flex:1;min-width:0;padding:5px 8px}.iso-add select{flex:0 0 58px!important}.iso-ref{display:flex;align-items:center;gap:8px;margin:2px 0 6px;font-size:13px}.iso-ref label{color:var(--muted)}.iso-ref input{width:64px;flex:none;padding:4px 8px;text-align:right;font-variant-numeric:tabular-nums}.iso-ref-src{font-size:12px}button.iso-ref-reset{flex:none;display:flex;align-items:center;justify-content:center;width:26px;height:24px;padding:0;background:transparent;border:1px solid var(--border);border-radius:5px;color:#ff6a3a;cursor:pointer}button.iso-ref-reset:hover{border-color:#ff4d1a88;background:#3a1d12}.iso-add input[type=color]{flex:none;width:28px;height:28px;padding:0;border:1px solid var(--border);border-radius:4px;background:#0e131a;cursor:pointer}.iso-row input[type=number]{width:58px;flex:none;padding:2px 6px;text-align:right;font-variant-numeric:tabular-nums}.iso-row input[type=number]::-webkit-inner-spin-button{opacity:.5}button.iso-del{margin-left:auto;background:transparent;border:none;color:var(--muted);font-size:16px;line-height:1;cursor:pointer;padding:0 4px}button.iso-del:hover{color:#ff6a3a}.sidebar{scrollbar-width:thin;scrollbar-color:#2f3946 transparent}.sidebar::-webkit-scrollbar{width:6px;height:6px}.sidebar::-webkit-scrollbar-thumb{background:#2f3946;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#45515f}.sidebar::-webkit-scrollbar-track{background:transparent}.corner.dosemax{font-size:13px;line-height:1.5}.corner.dosemax b{color:#ffb08a;font-weight:600}.dock .sidebar .chk-all{margin-top:10px}button.iso-plus{flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:28px;padding:0;background:#0b0f14cc;border:1px solid #2f5d9a;border-radius:6px;color:#6fb1ff;cursor:pointer}button.iso-plus:hover{background:#1d3557;color:#fff}.kv{display:grid;grid-template-columns:118px 1fr;gap:5px 10px;font-size:13.5px}.kv span{color:var(--muted)}.kv b{font-weight:500;word-break:break-word}.kv b.ok{color:#22d34a}.beam{border:1px solid var(--border);border-radius:6px;background:#10151c;overflow:hidden}.beam.open{border-color:#ff4d1a66}.beam-head{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer}.beam-head:hover{background:#18202a}.beam-head .muted{font-size:12.5px;margin-left:auto}.beam-no{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#3a1d12;color:#ff8a5c;font-size:12px;font-weight:600;flex:none}.beam-caret{display:flex;color:var(--muted)}.beam .kv{padding:8px 10px 10px;border-top:1px solid var(--border)}.beam,.kv{flex:none}.corner.dosemax .mu-parts{color:#9aa7b4;font-size:12px}.views{position:relative}.viewwrap.max{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10}button.vp-max{position:absolute;top:6px;right:6px;z-index:5;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#0b0f14cc;border:1px solid #2f5d9a;border-radius:5px;color:#6fb1ff;cursor:pointer}button.vp-max:hover{background:#1d3557;color:#fff}.viewwrap.max button.vp-max{border-color:#2f5d9a;color:#6fb1ff}.viewwrap .corner.tr{right:40px}.viewwrap.closable button.vp-max:not(.vp-close){right:38px}.viewwrap.closable .corner.tr{right:72px}button.vp-max.vp-close:hover{background:#5a1d10;border-color:#ff4d1a;color:#fff}.views{grid-template-rows:minmax(0,1fr)}.views.four{grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.views.three{grid-template-columns:1fr 1fr 1fr}.viewwrap.off{display:none}.corner.sub{color:#9aa7b4}.corner.dosemax b.cold{color:#7fc4ff}.corner.dosemax b.ok{color:#22d34a}.corner.dosemax b.bad{color:#ff5a4a}.corner.vbar{display:flex;align-items:center;gap:6px;font-size:11.5px}.corner.vbar .bar{display:inline-block;height:8px;border-radius:2px}.bar.diff{width:110px;background:linear-gradient(90deg,rgb(0,60,255),rgb(40,170,255) 47%,transparent 50%,rgb(255,190,40) 53%,rgb(255,20,0))}.bar.gam{width:70px;background:linear-gradient(90deg,#0046ff,#00dc78,#ff0)}.bar.fail{width:35px;background:linear-gradient(90deg,#ff8200,red)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000a;display:flex;align-items:center;justify-content:center}.modal.dvh{width:min(1000px,90vw);height:min(680px,86vh);display:flex;flex-direction:column;background:#0f141b;border:1px solid #2f3b49;border-radius:10px;box-shadow:0 20px 60px #000c;overflow:hidden}.modal-head{display:flex;align-items:center;gap:14px;padding:10px 16px;background:#000;border-bottom:1px solid var(--border);font-size:15px}.modal-head b{color:#22d34a}.modal-head .seg{margin-left:auto}.modal.dvh .modal-head{padding:7px 12px;gap:10px;font-size:13.5px}.modal.dvh .modal-head .muted{font-size:12px}.modal.dvh .modal-head .modal-x{margin-left:auto}.modal.dvh .modal-head .seg+.modal-x{margin-left:0}.seg{display:flex;border:1px solid #2f3b49;border-radius:6px;overflow:hidden}.seg button,.dvh-tabs button{background:transparent;border:0;color:var(--muted);padding:5px 14px;cursor:pointer;font-size:13px}.seg button.on{background:#3a1d12;color:#ff8a5c}button.modal-x{background:transparent;border:0;color:var(--muted);font-size:24px;line-height:1;cursor:pointer;padding:0 4px}button.modal-x:hover{color:#fff}.modal-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:10px 14px 14px;gap:8px}.dvh-top{display:flex;gap:12px;flex:1 1 62%;min-height:0}.dvh-chart{flex:1;min-width:0;height:100%;background:#080b10;border:1px solid var(--border);border-radius:6px;cursor:crosshair}.dvh-chart .grid{stroke:#1c2530;stroke-width:1}.dvh-chart .zero{stroke:#5a6878;stroke-width:1.2}.dvh-chart .frame{fill:none;stroke:#35414f}.dvh-chart .tick{fill:#8b98a5;font-size:11.5px}.dvh-chart .axis{fill:#cfd8e3;font-size:12.5px}.dvh-chart .rxline{stroke:#ff4d1a;stroke-width:1;stroke-dasharray:3 4}.dvh-chart .tick.rx{fill:#ff8a5c}.dvh-chart .cursor{stroke:#fff8;stroke-width:1}.dvh-legend{width:230px;flex:none;overflow-y:auto;font-size:12px}.dvh-plot{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.dvh-plot .fg-dvh{flex:1;position:relative;min-height:200px}.dvh-plot .fg-dvh svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#080b10;border:1px solid var(--border);border-radius:6px}.dvh-plot .fg-dvh-tab{max-height:42%}.dvh-plot .fg-dvh-tab th,.dvh-plot .fg-dvh-tab td{border-bottom:none;position:static}.modal.dvh .modal-head .fg-unit{font-size:11px}.dvh-key{color:var(--muted);margin-bottom:8px;line-height:1.9}.dvh-key i{display:inline-block;width:34px;margin-right:8px;vertical-align:middle;border-top:2px solid #cfd8e3}.dvh-key i.dash{border-top-style:dashed}.modal.dvh table{width:100%;border-collapse:collapse}.modal.dvh th{text-align:left;color:var(--muted);font-weight:500;padding:4px 7px;border-bottom:1px solid var(--border);position:sticky;top:0;background:#0f141b}.modal.dvh td{padding:3px 7px;font-size:12px;border-bottom:1px solid #1a222c}.dvh-legend tr{cursor:pointer}.dvh-legend tr.dim td{opacity:.4}.dvh-legend td:first-child{width:22px;padding-right:0}.modal.dvh .swatch{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:7px;vertical-align:-1px}.dvh-tabs{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--border)}.dvh-tabs button{font-size:12.5px;padding:4px 12px}.dvh-tabs button.on{color:#ff8a5c;border-bottom:2px solid #ff4d1a}.dvh-tabs .muted{margin-left:auto;font-size:12px;padding-right:8px}.dvh-tabs b.ok{color:#22d34a}.dvh-tabs b.bad{color:#ff5a4a}.dvh-table{flex:1 1 38%;min-height:0;overflow-y:auto;font-size:12.5px}.dvh-table tr.first td{border-top:1px solid #2f3b49}.dvh-table tr.delta td{color:#9aa7b4}.v-pass{color:#4ade80}.v-fail{color:#ff6b5c;font-weight:600}.badge{display:inline-block;min-width:46px;text-align:center;padding:2px 8px;border-radius:10px;font-size:11.5px;font-weight:700;letter-spacing:.4px}.badge.pass{background:#0f3d1f;color:#4ade80;border:1px solid #1f7a3c}.badge.fail{background:#4a1512;color:#ff7a6b;border:1px solid #a3302a}.modal.dvh *{scrollbar-width:thin;scrollbar-color:#3a4654 #0f141b}.modal.dvh ::-webkit-scrollbar{width:8px}.modal.dvh ::-webkit-scrollbar-track{background:#0f141b}.modal.dvh ::-webkit-scrollbar-thumb{background:#3a4654;border-radius:4px}.dvh-legend th:first-child{width:22px;padding-right:0}.app{grid-template-columns:auto minmax(0,1fr) auto}.topbar,.toolbar,.status,.footer{grid-column:1/4}.dock.left,.dock.left .dock-rail{border-left:none;border-right:1px solid var(--border)}.dock.left button.dock-tab{border-left:none;border-right:2px solid transparent}.dock.left button.dock-tab.on{border-right-color:#ff4d1a}.dock.left .dock-head{justify-content:space-between}.dock.left .sidebar{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2a323d transparent}.od-for{font-size:12.5px;margin-bottom:4px}.od-note{font-size:13px;line-height:1.5;color:var(--muted)}.od-cap{font-size:11.5px;margin-top:2px}.od-table{width:100%;border-collapse:collapse;font-size:12.5px}.od-table th{text-align:left;font-weight:500;color:var(--muted);font-size:11.5px;padding:3px 4px;border-bottom:1px solid var(--border)}.od-table td{padding:3px 4px;border-bottom:1px solid #1c232d;white-space:nowrap}.od-table td:nth-child(2){white-space:normal;color:var(--muted)}.od-table tr.grp td{padding-top:9px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.od-table .swatch{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:7px;vertical-align:-1px}.od-table .swatch.ring{background:transparent;border:1px dashed var(--muted)}.od-chart{width:100%;background:#0b0f14;border:1px solid var(--border);border-radius:6px}.od-chart .grid{stroke:#1c232d;stroke-width:1}.od-chart .frame{fill:none;stroke:#26303c}.od-chart .tick{fill:var(--muted);font-size:9px}.od-chart .loss{fill:none;stroke:#ff4d1a;stroke-width:1.8}.dock.left .sidebar>*{flex-shrink:0}.od-chart{aspect-ratio:2/1;height:auto;display:block}button.tb.tps{width:auto;gap:7px;padding:0 12px;font-size:13px;font-weight:600}button.tb.tps.on{background:#3a1d12;border-color:#ff4d1a88;color:#ff8a5c}.tb-div{width:1px;height:26px;background:#2a323d}button.obj-open{align-self:center;margin-top:28px;display:flex;flex-direction:column;align-items:center;gap:8px;width:132px;padding:18px 0 14px;background:#3a1d12;border:1px solid #ff4d1a88;border-radius:12px;color:#ff8a5c;font-size:15px;font-weight:600;cursor:pointer}button.obj-open:hover:not(:disabled){background:#52281a;color:#fff}button.obj-open:disabled{opacity:.5;cursor:default}.obj-summary{display:flex;flex-direction:column;gap:8px;margin-top:8px;font-size:13px}.obj-summary .swatch{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:7px;vertical-align:-1px}.obj-sum-row{padding-left:18px;font-size:12.5px}.modal.obj{width:min(860px,94vw);height:min(820px,90vh);display:flex;flex-direction:column;background:#0f141b;border:1px solid #2f3b49;border-radius:10px;box-shadow:0 20px 60px #000c;overflow:hidden}.obj-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2a323d transparent;border:1px solid var(--border);border-radius:6px}.obj-table{width:100%;border-collapse:collapse;font-size:13.5px}.obj-table th{position:sticky;top:0;z-index:1;background:#141a22;text-align:left;font-weight:500;font-size:12px;color:var(--muted);padding:7px 10px;border-bottom:1px solid var(--border)}.obj-table td{padding:4px 10px}.obj-table tr.grp td{padding-top:10px;font-weight:600;border-top:1px solid var(--border)}.obj-table tbody tr.grp:first-child td{border-top:none}.obj-table .swatch{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:8px;vertical-align:-1px}.obj-table input,.obj-table select,.obj-foot select{background:#0b0f14;border:1px solid #2a323d;border-radius:5px;color:var(--text);padding:4px 7px;font-size:13px}.obj-table input{width:84px}.obj-vol{display:flex;gap:5px}button.obj-link{margin-left:14px;background:none;border:none;color:#6aa8ff;font-size:12.5px;cursor:pointer;padding:0}button.obj-link:hover{text-decoration:underline}button.obj-del{background:#2a1414;border:1px solid #7f2a2a;border-radius:5px;color:#ff6b5c;font-size:12.5px;padding:3px 10px;cursor:pointer}button.obj-del:hover{background:#431c1c;color:#fff}button.obj-x{background:none;border:none;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}button.obj-x:hover{color:#ff6b5c}.obj-foot{display:flex;align-items:center;gap:8px}.obj-count{margin-left:auto;margin-right:8px;font-size:12.5px}.obj-count.bad{color:#ff6b6b}button.obj-btn{padding:6px 16px;background:#1a212b;border:1px solid #2f3b49;border-radius:6px;color:var(--text);font-size:13.5px;cursor:pointer}button.obj-btn:hover:not(:disabled){background:#232c38}button.obj-btn:disabled{opacity:.45;cursor:default}button.obj-btn.primary{background:#ff4d1a;border-color:#ff4d1a;color:#fff;font-weight:600}button.obj-btn.primary:hover{background:#ff6a3a}.obj-rank{display:inline-block;min-width:22px;color:#ff8a5c;font-weight:700}button.obj-mv{background:#1a212b;border:1px solid #2f3b49;border-radius:4px;color:var(--text);font-size:10px;line-height:1;padding:4px 6px;margin-left:3px;cursor:pointer}button.obj-mv:hover:not(:disabled){background:#ff4d1a;border-color:#ff4d1a;color:#fff}button.obj-mv:disabled{opacity:.3;cursor:default}.obj-cc{margin-left:10px;font-weight:400;font-size:12.5px;color:var(--muted)}button.obj-plus{margin-left:12px;width:22px;height:22px;padding:0;background:#13233a;border:1px solid #2f5d9a;border-radius:50%;color:#8ec0ff;font-size:16px;line-height:1;cursor:pointer;vertical-align:middle}button.obj-plus:hover{background:#2f5d9a;color:#fff}.obj-saved{margin-top:10px;text-align:center;font-size:12px;word-break:break-all}.obj-saved.bad{color:#ff6b5c}.obj-table tr.grp[draggable]{cursor:grab}.obj-table tr.grp.dragging{opacity:.4}.obj-grip{color:var(--muted);margin-right:8px;font-size:15px}.obj-table tr.grp:hover .obj-grip{color:#ff8a5c}.obj-table tr.drop-above>td{box-shadow:inset 0 2px #ff4d1a}.obj-table tr.drop-below>td{box-shadow:inset 0 -2px #ff4d1a}.obj-table tr.grp,.obj-table td.muted{-webkit-user-select:none;user-select:none}.obj-rx{display:flex;align-items:center;gap:22px;padding:4px 2px 2px}.obj-rx label{display:flex;align-items:center;gap:8px;font-weight:600}.obj-rx input{width:84px;background:#0b0f14;border:1px solid #2f3b49;border-radius:4px;color:var(--text);padding:4px 8px;font-size:14px}.obj-iso{display:flex;flex-direction:column;gap:6px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#0e141b}.obj-iso-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.obj-iso select{background:#0b0f14;border:1px solid #2a323d;border-radius:5px;color:var(--text);padding:4px 7px;font-size:13px}.obj-nto .obj-iso-row{gap:14px}.obj-nto label{display:flex;align-items:center;gap:6px;font-size:13px}.obj-nto input[type=number]{width:64px;background:#0b0f14;border:1px solid #2f3b49;border-radius:4px;color:var(--text);padding:3px 6px;font-size:13px}.obj-nto input:disabled,.obj-nto select:disabled{opacity:.4}.obj-nto-note{font-size:12px}.obj-nto-note.bad{color:#ff6b6b}button.obj-open{margin-top:14px;flex-direction:row;width:auto;align-self:stretch;justify-content:center;padding:9px 0;gap:10px}button.obj-open svg{width:26px;height:26px}.os{display:flex;flex-direction:column;gap:8px;margin-top:12px;min-height:0;overflow-y:auto}.os-rx{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.os-rx div{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 0 7px;background:#0e141b;border:1px solid var(--border);border-radius:8px}.os-rx svg{color:#86efac;margin-bottom:3px}.os-rx b{font-size:18px;color:#ff8a5c;line-height:1.1}.os-rx span{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.os-title{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.os-pill{margin-left:auto;padding:1px 8px;border-radius:9px;font-size:10px;background:#222b36;color:var(--muted)}.os-pill.on{background:#ff4d1a;color:#fff}.os-list{display:flex;flex-direction:column;gap:4px}.os-item{display:flex;align-items:stretch;gap:7px;padding:5px 7px 5px 5px;background:#0e141b;border:1px solid var(--border);border-radius:7px}.os-rank{align-self:center;width:18px;text-align:center;font-size:12px;font-weight:700;color:#ff8a5c}.os-bar{width:4px;border-radius:2px}.os-main{display:flex;flex-direction:column;gap:3px;min-width:0}.os-main b{font-size:12.5px}.os-chips{display:flex;flex-wrap:wrap;gap:3px}.os-chip{padding:1px 6px;border-radius:4px;font-size:10.5px;background:#1b2430;color:#c9d4df;border-left:2px solid #64748b;white-space:nowrap}.os-chip.upper,.os-chip.max{border-left-color:#f87171}.os-chip.lower,.os-chip.min{border-left-color:#4ade80}.os-none{font-size:11px;color:#5d6a78;font-style:italic}.os-none.pad{padding:2px 2px 0}.os-nto{padding:6px;background:#0e141b;border:1px solid var(--border);border-radius:8px}.os-kv{display:flex;flex-wrap:wrap;gap:3px 10px;font-size:11px;color:var(--muted)}.os-kv b{color:var(--text)}.nto-plot{width:100%;display:block}.nto-plot text{font-size:8.5px;fill:#7d8a97}.nto-grid{stroke:#232d39;stroke-width:1}.nto-rx{stroke:#3d4a59;stroke-width:1;stroke-dasharray:3 3}.nto-line{fill:none;stroke:#ff4d1a;stroke-width:2}.nto-start{stroke:#ff8a5c;stroke-width:1;stroke-dasharray:2 2}.nto-dot{fill:#ff8a5c}.os-saved{display:flex;align-items:center;gap:6px;align-self:center;margin-top:6px;padding:3px 10px;border-radius:11px;font-size:11px;background:#10291b;color:#4ade80;border:1px solid #1f5a38}.os-saved.bad{background:#2b1414;color:#ff6b5c;border-color:#6b2a2a;border-radius:7px;word-break:break-word}button.obj-open.nto{margin-top:8px}button.obj-open em{font-style:normal;font-size:10px;font-weight:700;padding:1px 7px;border-radius:9px;background:#222b36;color:var(--muted)}button.obj-open em.on{background:#ff4d1a;color:#fff}.modal.obj.nto{width:min(760px,94vw);height:auto;max-height:92vh}.modal.obj.nto .modal-body{overflow:auto}.nto-list{border:1px solid var(--border);border-radius:10px;background:#0e141b;padding:8px 12px}.nto-list-head{display:flex;align-items:baseline;gap:10px;font-size:12px;margin-bottom:4px}.nto-list-head b{font-size:13px;white-space:nowrap}.nto-list-scroll{max-height:190px;overflow:auto}.nto-list table{width:100%;border-collapse:collapse;font-size:12px}.nto-list th{text-align:left;font-weight:500;color:var(--muted);padding:2px 6px;font-size:11px;white-space:nowrap}.nto-list td{padding:2px 6px;border-top:1px solid #161e28;white-space:nowrap}.nto-list tr:not(.on) td{color:var(--muted)}.nto-list td.name{width:100%;cursor:pointer}.nto-list tr.sel td{background:#172130}.nto-list tr.sel td.name{color:#ff8a5c}.nto-list td .swatch{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:7px;vertical-align:-1px}.nto-list td em{font-style:normal;font-size:10.5px;color:#ff8a5c;margin-left:6px}.nto-list input[type=number]{width:64px;background:#0b0f14;border:1px solid #2f3b49;border-radius:5px;color:var(--text);padding:3px 6px;font-size:12px}.nto-list input[type=number]:disabled{opacity:.45}.nto-list input[type=number]:focus{outline:none;border-color:#ff4d1a}.nto-list input[type=checkbox]{accent-color:#ff4d1a}.nto-list button.x{background:none;border:0;color:var(--muted);font-size:15px;line-height:1;padding:0 4px;cursor:pointer}.nto-list button.x:hover{color:#ff8a5c}.nto-add{position:relative;margin-left:auto}.nto-add input{width:180px;background:#0b0f14;border:1px solid #2f3b49;border-radius:5px;color:var(--text);padding:3px 8px;font-size:12px}.nto-add input:focus{outline:none;border-color:#ff4d1a}.nto-add input:disabled{opacity:.45}.nto-add-list{position:absolute;right:0;top:calc(100% + 2px);z-index:5;min-width:230px;max-height:190px;overflow:auto;background:#0b0f14;border:1px solid #2f3b49;border-radius:6px;padding:3px 0;box-shadow:0 6px 18px #00000080}.nto-add-list div{padding:3px 10px;font-size:12px;white-space:nowrap;cursor:pointer}.nto-add-list div.muted{cursor:default}.nto-add-list div:not(.muted):hover{background:#1d3557;color:#fff}.nto-add-list .swatch{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:7px;vertical-align:-1px}.nto-head{display:flex;align-items:center;gap:10px}.nto-switch{width:42px;height:22px;padding:0;border-radius:11px;border:1px solid #2f3b49;background:#1b2430;cursor:pointer;position:relative;transition:background .15s}.nto-switch i{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#8b98a5;transition:left .15s,background .15s}.nto-switch.on{background:#ff4d1a;border-color:#ff4d1a}.nto-switch.on i{left:22px;background:#fff}.nto-state{font-size:12px;font-weight:700;color:var(--muted);width:28px}.nto-state.on{color:#ff8a5c}.nto-seg{margin-left:auto;display:flex;border:1px solid #2f3b49;border-radius:7px;overflow:hidden}.nto-seg button{padding:5px 16px;background:#0b0f14;border:0;color:var(--muted);font-size:13px;cursor:pointer}.nto-seg button.sel{background:#ff4d1a;color:#fff;font-weight:600}.nto-seg button:disabled{opacity:.45;cursor:default}.nto-body{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#0e141b}.nto-body .nto-plot{width:min(100%,520px)}.nto-plot-name{align-self:flex-start;font-size:12.5px;font-weight:600}.nto-plot-name .swatch{display:inline-block;width:11px;height:11px;border-radius:2px;margin-right:7px;vertical-align:-1px}.nto-plot-name em{font-style:normal;font-size:10.5px;font-weight:500;color:#ff8a5c;margin-left:6px}.nto-body.off{opacity:.45}.nto-fields{display:flex;flex-direction:column;gap:9px}.nto-field{display:flex;flex-direction:column;gap:3px;font-size:11.5px;color:var(--muted)}.nto-field div{display:flex;align-items:center;gap:6px}.nto-field input{width:96px;background:#0b0f14;border:1px solid #2f3b49;border-radius:5px;color:var(--text);padding:5px 8px;font-size:14px}.nto-field input:focus{outline:none;border-color:#ff4d1a}.nto-field input:disabled{opacity:.5}.nto-field em{font-style:normal;font-size:12px}.nto-axis{fill:#5d6a78!important}.nto-val{fill:#ff8a5c!important;font-weight:700}.nto-auto{fill:#8b98a5!important;font-size:12px!important}.nto-note{font-size:12px;color:var(--muted)}.nto-note.bad{color:#ff6b6b}.nto-plot{touch-action:none;-webkit-user-select:none;user-select:none}.nto-plot.grabbing{cursor:grabbing}.nto-handle{fill:#fff;stroke:#ff4d1a;stroke-width:2.5;cursor:grab}.nto-handle:hover,.nto-handle.on{fill:#ff4d1a;stroke:#fff}button.obj-open{transition:background .15s,border-color .15s,color .15s}button.obj-open.set{background:#12301f;border-color:#4ade8088;color:#86efac}button.obj-open.set:hover:not(:disabled){background:#184029;color:#fff}button.obj-open.set em{background:#4ade80;color:#06210f}.modal.obj.imp{width:min(720px,94vw);height:min(720px,90vh)}.modal.obj.imp .modal-body{display:flex;flex-direction:column;gap:10px;min-height:0;flex:1}.imp-path{display:flex;gap:6px}.imp-path input{flex:1;min-width:0;padding:6px 9px;background:#0b1016;border:1px solid #2f3b49;border-radius:6px;color:var(--text, #e6edf3);font-size:13px;font-family:Consolas,monospace}.imp-list{flex:1;min-height:120px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2a323d transparent;border:1px solid var(--border);border-radius:6px;padding:4px;display:flex;flex-direction:column}button.imp-row{display:flex;align-items:center;gap:9px;padding:6px 9px;background:none;border:0;border-radius:5px;color:#d5dde6;font-size:13.5px;text-align:left;cursor:pointer;flex-shrink:0}button.imp-row:hover{background:#1b2430;color:#fff}button.imp-row svg{color:#e0b252;flex-shrink:0}button.imp-row.short svg{color:#ff8a5c}button.imp-row .muted{margin-left:auto;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.imp-empty{padding:14px;font-size:13px}.imp-sel{display:flex;align-items:center;gap:10px;font-size:13px;flex-wrap:wrap}.imp-sel b{font-family:Consolas,monospace;font-weight:500;word-break:break-all}.imp-count{margin-left:auto;padding:2px 9px;border-radius:10px;background:#222b36;color:var(--muted);font-size:12px;white-space:nowrap}.imp-count.ok{background:#12301f;color:#86efac}.imp-msg.bad{color:#ff8a5c;font-size:13px}.imp-result{display:flex;flex-direction:column;gap:5px;padding:10px 12px;border-radius:8px;font-size:13px;max-height:40%;overflow-y:auto}.imp-result.ok{background:#0f2418;border:1px solid #4ade8066}.imp-result.ok>b{color:#86efac}.imp-result.bad{background:#2a130c;border:1px solid #ff4d1a88}.imp-result.bad>b{color:#ff8a5c}.imp-line.bad{color:#ffb199}.imp-line.warn{color:#e0b252}.imp-line.muted{font-size:12px;word-break:break-all}.imp-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:4px}.imp-counts span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;border-radius:6px;background:#0e141b;border:1px solid var(--border);font-size:11px;color:var(--muted)}.imp-counts b{font-size:16px}.imp-counts .ok b{color:#86efac}.imp-counts .bad b{color:#ff8a5c}.imp-counts .opt b{color:var(--muted)}.imp-counts i{font-style:normal;font-size:10px;color:var(--muted)}.imp-done{font-size:12px}.modal.obj.imp{width:min(760px,94vw);height:min(680px,90vh)}.imp-path input:disabled{opacity:.6}button.imp-browse{display:flex;align-items:center;gap:7px;white-space:nowrap;background:#3a1d12;border-color:#ff4d1a88;color:#ff8a5c;font-weight:600}button.imp-browse:hover:not(:disabled){background:#52281a;color:#fff}.imp-sel{min-height:20px}.imp-sel .imp-count{margin-left:0}.imp-logtitle{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:-4px}.imp-log{flex:1;min-height:140px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#2a323d transparent;background:#080c11;border:1px solid var(--border);border-radius:6px;padding:8px 10px;font:12.5px/1.55 Consolas,monospace}.imp-ll{display:flex;gap:8px;color:#c3ccd6}.imp-ll span{color:#5d6875;flex-shrink:0}.imp-ll i{font-style:normal;font-weight:700;width:10px;text-align:center;flex-shrink:0}.imp-ll p{margin:0;word-break:break-word}.imp-ll.ok,.imp-ll.ok i{color:#86efac}.imp-ll.warn,.imp-ll.warn i{color:#e0b252}.imp-ll.error,.imp-ll.error i{color:#ff8a5c}.imp-log .imp-empty{font-family:inherit;padding:6px 2px}.imp-prog-top{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:4px}.imp-prog-top b{color:#d5dde6}.imp-bar{height:9px;border-radius:5px;background:#1b2430;overflow:hidden}.imp-bar i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#ff4d1a,#ff8a5c);transition:width .2s}.imp-bar.ok i{background:#4ade80}.imp-bar.bad i{background:#b3321a}.imp-foot.ok{color:#86efac}.imp-foot.bad{color:#ff8a5c}.opt{display:flex;flex-direction:column;gap:12px;margin-top:14px;min-height:0;overflow-y:auto}.opt .nto-field input{width:110px}.opt-main input{font-size:16px!important;font-weight:600;color:#ff8a5c!important}.opt-group{display:flex;flex-direction:column;gap:9px;padding:10px;background:#0e141b;border:1px solid var(--border);border-radius:8px}.opt-group .nto-head b{font-size:13.5px}.opt-hint{font-size:11.5px;color:var(--muted);line-height:1.4}.opt-foot{display:flex;justify-content:flex-end;gap:8px}.obj-btn.primary.set,.obj-btn.primary.set:disabled{background:#12301f;border-color:#4ade8088;color:#86efac;opacity:1}.opt-radio{display:flex;gap:6px}.opt-radio label{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 4px;border:1px solid #2f3b49;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}.opt-radio label.sel{border-color:#ff4d1a;color:#fff;background:#3a1d12}.opt-radio input{accent-color:#ff4d1a;margin:0}.opt-early{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.opt-early span{flex:1;color:#fff;font-weight:600}.opt-early label{display:flex;align-items:center;gap:4px}.opt-early input{width:52px;background:#0b0f14;border:1px solid #2f3b49;border-radius:5px;color:var(--text);padding:5px 6px;font-size:13px}.opt-early input:focus{outline:none;border-color:#ff4d1a}.opt-early em{font-style:normal;font-size:11.5px}.opt-gpu{display:flex;flex-direction:column;gap:6px;font-size:12px}.opt-gpu>div{display:flex;flex-direction:column;gap:1px;padding:6px 8px;border-radius:6px;border:1px solid var(--border);color:var(--muted)}.opt-gpu b{color:#d5dde6;font-size:12.5px}.opt-gpu.ok>div.use{background:#12301f;border-color:#4ade8088}.opt-gpu.ok>div.use b{color:#86efac}.opt-gpu.bad>div{background:#2a130c;border-color:#ff4d1a88}.opt-gpu.bad b{color:#ff8a5c}button.opt-recheck{align-self:flex-end;background:none;border:0;padding:0;color:var(--muted);font-size:11.5px;text-decoration:underline;cursor:pointer}button.opt-recheck:hover{color:#fff}.run{display:flex;flex-direction:column;gap:9px;padding-top:12px;border-top:1px solid var(--border)}button.run-start{padding:11px 0;border-radius:9px;border:1px solid #ff4d1a;background:#ff4d1a;color:#fff;font-size:14.5px;font-weight:700;letter-spacing:.02em;cursor:pointer}button.run-start:hover:not(:disabled){background:#ff6a3d}button.run-start:disabled{background:#3a1d12;border-color:#ff4d1a55;color:#ff8a5c99;cursor:default}button.run-start.stop{background:#1b2430;border-color:#ff4d1a88;color:#ff8a5c}button.run-start.stop:hover:not(:disabled){background:#2a130c;color:#fff}.run-facts{display:flex;justify-content:space-between;margin-top:5px;font-size:11.5px;color:var(--muted)}.run-facts b{color:#d5dde6;font-family:Consolas,monospace}.imp-bar.wait i{background:linear-gradient(90deg,#1b2430,#ff4d1a,#1b2430);background-size:200% 100%;animation:run-wait 1.4s linear infinite}@keyframes run-wait{0%{background-position:200% 0}to{background-position:0 0}}.imp-log.run-log{flex:none;height:230px;font-size:11px;line-height:1.45;padding:6px 8px;overflow-x:auto}.run-ll{white-space:pre;color:#aeb8c4}.run-ll.ok{color:#86efac}.run-ll.error{color:#ff8a5c}.run-ll.cmd{color:#5d6875}.modal.obj.pat{width:min(640px,94vw);height:auto;max-height:92vh}.modal.obj.pat .modal-head{padding:8px 14px;background:#0a0f15;border-bottom:1px solid #1f2b39;font-size:13px}.modal.obj.pat .modal-head b{font-size:13.5px;font-weight:600;letter-spacing:.2px}.modal.obj.pat .modal-body{display:flex;flex-direction:column;gap:8px;padding:10px 14px 12px;overflow:auto}.pat-search{display:flex;align-items:center;gap:7px;height:30px;padding:0 9px;background:#0a0f15;border:1px solid #2a3a4d;border-radius:5px;color:var(--muted)}.pat-search:focus-within{border-color:#2f5d9a}.pat-search input,.modal .pat-search input:focus,.modal .pat-search input:focus-visible{flex:1;min-width:0;height:100%;padding:0;background:none;border:0;outline:none;box-shadow:none;color:#fff;font-size:12.5px}.pat-search button{background:none;border:0;color:var(--muted);font-size:16px;line-height:1;cursor:pointer}.pat-search button:hover{color:#fff}.pat-list,.pat-none{min-height:364px}.pat-list{display:flex;flex-direction:column;overflow:auto;background:#0b1017;border:1px solid #1f2b39;border-radius:5px}.pat-none{display:flex;align-items:center;justify-content:center;font-size:12.5px;border:1px solid #1f2b39;border-radius:5px}.pat-row{display:grid;grid-template-columns:1.6fr 1fr;gap:12px;align-items:center;flex:none;height:28px;padding:0 12px;text-align:left;font-size:12.5px;color:#d5dde6;background:none;border:0;border-bottom:1px solid #151d27;border-radius:0}.pat-row b{font-weight:500}.pat-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.pat-row{cursor:pointer}button.pat-row:nth-of-type(2n){background:#0d131b}button.pat-row:hover:not(:disabled){background:#1d3557}button.pat-row.on,button.pat-row.on:hover:not(:disabled){background:#12301f;box-shadow:inset 3px 0 #4ade80;color:#fff}.pat-row.head{position:sticky;top:0;z-index:1;height:26px;background:#0a0f15;border-bottom:1px solid #1f2b39;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.pat-row .yes{color:#86efac}.pat-row em{font-style:normal;font-size:9.5px;font-weight:700;margin-left:8px;padding:0 6px;border-radius:8px;background:#4ade80;color:#06210f;vertical-align:1px}.pat-pages{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.pat-pages b{font-weight:500;color:var(--text)}.modal.obj.pat .pat-pages .obj-btn{padding:3px 10px;font-size:12px}.modal.obj.pat .obj-foot{flex-wrap:wrap;gap:8px;border-top:1px solid #1f2b39;margin-top:2px;padding-top:10px}.modal.obj.pat .obj-foot .obj-btn{padding:4px 16px;font-size:12.5px}.obj-btn.pat-del{display:inline-flex;align-items:center;gap:6px;color:#fca5a5;border-color:#7f1d1d}button.obj-btn.pat-del:hover:not(:disabled){background:#3a1414;border-color:#ef4444;color:#fecaca}@media(max-width:640px){.pat-row{grid-template-columns:1.3fr 1fr}}@media(max-height:640px){.pat-list,.pat-none{min-height:0}}.matrix-tab{width:100%;border-collapse:collapse;font-size:12.5px}.matrix-tab th{text-align:left;color:var(--muted);font-weight:500;padding:4px 8px;border-bottom:1px solid var(--border);white-space:nowrap}.matrix-tab td{padding:3px 8px;border-bottom:1px solid #1d242e;white-space:nowrap}.matrix-tab td:first-child{white-space:normal}.matrix-tab td:last-child{text-align:right}.matrix-tab td:last-child .obj-btn{margin-left:6px;padding:3px 10px;font-size:12px}.matrix-foot{font-size:12px;margin-top:8px}.vp-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#5d6875;font-size:15px;font-weight:600;pointer-events:none}.vp-empty span{font-size:12px;font-weight:400}.vp-load{background:#000a;gap:12px;z-index:3}.spin{width:46px;height:46px;border-radius:50%;border:4px solid #2a3440;border-top-color:#ff4d1a;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fg-exp-spin{display:inline-block;width:15px;height:15px;border-radius:50%;border:2px solid #2f4258;border-top-color:#ff4d1a;animation:spin .8s linear infinite;vertical-align:middle}.fg-exp-spin.sm{width:11px;height:11px;margin-right:6px}@media(prefers-reduced-motion:reduce){.fg-exp-spin{animation-duration:2.4s}}.run-ab{display:grid;grid-template-columns:1fr 1fr;gap:8px}.run-ab button.run-start{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 0}.run-ab button.run-start small{font-size:10.5px;font-weight:400;letter-spacing:0;opacity:.85}.run-ab button.run-start span{white-space:nowrap}.run-ab button.run-start em{font-style:normal;color:#ff4d1a}.opt-fold{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:#0e141b;border:1px solid var(--border);border-radius:8px;color:#d5dde6;font:inherit;font-size:13px;cursor:pointer;text-align:left}.opt-fold:hover{background:#18202a}.opt-fold .muted{font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.opt-fold svg{flex:none;color:var(--muted);transition:transform .15s}.opt-settings{display:flex;flex-direction:column;gap:12px}.run-logbtn{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:5px 11px;background:#1b2430;border:1px solid var(--border);border-radius:6px;color:#d5dde6;font:inherit;font-size:12.5px;cursor:pointer}.run-logbtn:hover{background:#242f3d}.run-logbtn .live{width:7px;height:7px;border-radius:50%;background:#ff4d1a;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.25}}.modal.obj.log{width:min(900px,94vw);height:min(700px,88vh)}.modal.obj.log .imp-log.run-log{flex:1;height:auto;font-size:12px}.run-done{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#12281a;border:1px solid #22d34a66;border-radius:8px;color:#86efac;font-size:12.5px;font-weight:600}.modal.obj.insight{width:min(880px,94vw);height:min(780px,90vh)}.modal.obj.insight .modal-body{overflow:auto;font-size:13px;gap:10px}.ins-wait{display:flex;flex-direction:column;align-items:center;gap:14px;padding:50px 30px;color:var(--muted);text-align:center}.ins-sum{line-height:1.45}.ins-chips{display:flex;gap:8px}.ins-chip{padding:3px 10px;border-radius:12px;font-size:11.5px;background:#1b2430;border:1px solid var(--border)}.ins-chip.low{color:#86efac;border-color:#22d34a66}.ins-chip.medium{color:#fbbf24;border-color:#fbbf2466}.ins-chip.high{color:#ff6b6b;border-color:#ff4d1a88}.ins-h{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-top:4px}.ins-find{display:flex;gap:8px;padding:5px 0;border-bottom:1px solid #1b2430;line-height:1.4}.ins-find i{flex:none;width:8px;height:8px;border-radius:50%;margin-top:6px;background:#64748b}.ins-find.warn i{background:#fbbf24}.ins-find.bad i{background:#ff4d1a}.ins-find b{flex:none;min-width:90px;color:#c9d4df;font-weight:600}.ins-table{width:100%;border-collapse:collapse;font-size:12.5px}.ins-table th{text-align:left;color:var(--muted);font-weight:500;padding:4px 6px;border-bottom:1px solid var(--border)}.ins-table td{padding:6px;border-bottom:1px solid #1b2430;vertical-align:top}.ins-table td.arrow{white-space:nowrap}.ins-table td.arrow b{color:#86efac}.ins-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:8px}.ins-foot .muted{font-size:11px;flex:1}button.obj-btn.apply{background:#12301f;border-color:#4ade8088;color:#86efac;font-weight:600}.opt .opt-radio label.sel{border-color:var(--accent);color:#fff;background:#12213a}.opt .opt-radio input{accent-color:var(--accent)}.opt .opt-radio label.sel.ok{border-color:#3fbf6c;color:#8fe3ac;background:#0f1a14}.opt .opt-radio label.sel.ok input{accent-color:#3fbf6c}.opt .opt-gpu.ok>div.use{background:#12213a;border-color:var(--accent)}.opt .opt-gpu.ok>div.use b{color:#fff}.opt .opt-main input{color:#fff!important}.opt .nto-switch.on{background:var(--accent);border-color:var(--accent)}.opt button.obj-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.opt button.obj-btn.primary:hover:not(:disabled){background:#2f6fd6}.opt .obj-btn.primary.set,.opt .obj-btn.primary.set:disabled{background:#12213a;border-color:var(--accent);color:#fff}.opt button.run-start{background:var(--accent);border-color:var(--accent);color:#fff}.opt button.run-start:hover:not(:disabled){background:#2f6fd6}.opt button.run-start:disabled{background:#12213a;border-color:#3b82f655;color:#ffffff80}.opt button.run-start.stop{background:#1b2430;border-color:var(--accent);color:#fff}.opt button.run-start.stop:hover:not(:disabled){background:#12213a}.opt .run-done{background:#12213a;border-color:var(--accent);color:#fff}button.tb.insight{margin-left:8px;color:#9fc3ee}button.tb:disabled{opacity:.4;cursor:default}.pal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none}.pal{pointer-events:auto}.pal{position:absolute;bottom:40px;left:50%;transform:translate(-50%);width:min(720px,92vw);max-height:calc(100vh - 100px);display:flex;flex-direction:column;background:#1b1f26;border:1px solid #3b4756;border-radius:8px;box-shadow:0 12px 40px #000c;overflow:hidden;font-size:13px}.pal-input{display:flex;align-items:center;gap:8px;margin:8px;padding:0 8px;border:1px solid var(--accent);border-radius:4px;background:#0f1319}.pal-input svg{color:var(--accent);flex:none}.pal-input input{flex:1;min-width:0;height:30px;background:transparent;border:0;outline:none;color:#fff;font:inherit;font-size:13.5px}.pal-out{border-bottom:1px solid #2a313c;padding:8px 18px;overflow:auto;display:flex;flex-direction:column;gap:10px;line-height:1.45}.pal-ans{display:flex;flex-direction:column;gap:3px}.pal-ans b{color:#9fc3ee;font-weight:600}.pal-ans span{color:#dbe3ec}.pal-ans.bad span{color:#ff8a5c}.pal-ans em{color:var(--muted);font-style:normal;font-size:12px}.pal-ans ul{margin:2px 0 0;padding-left:18px;color:#c9e6ff}.pal-ans.wait span{color:var(--muted)}.pal-md{color:#dbe3ec}.pal-md p{margin:0 0 4px}.pal-md ul{margin:2px 0;padding-left:18px}.pal-md li{margin:2px 0}.pal-md table{border-collapse:collapse;margin:4px 0;font-size:12.5px}.pal-md th,.pal-md td{padding:3px 10px;border:1px solid #2a313c;text-align:left;white-space:nowrap}.pal-md th{color:#9fc3ee;background:#0e1622;font-weight:600}.pal-md td{color:#e6edf3}.pal-cursor{display:inline-block;width:2px;height:1em;margin-left:2px;background:#9fc3ee;vertical-align:-2px;animation:pulse .8s steps(2) infinite}.pal-bubbles{display:inline-flex;align-items:center;gap:4px;margin-right:9px;vertical-align:-1px}.pal-bubbles i{width:8px;height:8px;border-radius:50%;background:#ff4d1a;animation:bubble 1.2s ease-in-out infinite}.pal-bubbles i:nth-child(2){animation-delay:.2s}.pal-bubbles i:nth-child(3){animation-delay:.4s}@keyframes bubble{0%,80%,to{transform:scale(.55);opacity:.35}40%{transform:scale(1.15);opacity:1;box-shadow:0 0 8px #ff4d1a88}}.pal-clear{padding:2px 10px;background:transparent;border:1px solid #2f3b49;border-radius:5px;color:#9fc3ee;font:inherit;font-size:11px;cursor:pointer}.pal-clear:hover{background:#12213a}.pal-send{display:inline-flex;align-items:center;padding:4px;background:transparent;border:1px solid transparent;border-radius:6px;color:#9fc3ee;cursor:pointer}.pal-send:hover{background:#12213a}.pal-send:disabled{color:var(--muted);opacity:.5;cursor:default}.pal-close{display:inline-flex;align-items:center;margin-left:2px;padding:4px;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--muted);cursor:pointer}.pal-close:hover{background:#3a1d12;color:#ff8a5c}.pal-mic{display:inline-flex;align-items:center;padding:4px;background:transparent;border:1px solid transparent;border-radius:6px;color:#9fc3ee;cursor:pointer}.pal-mic:hover{background:#12213a}.pal-mic:disabled{color:var(--muted);opacity:.5;cursor:default}.pal-mic.on{color:#ff4d1a;border-color:#ff4d1a66;animation:pulse 1s infinite}.mic-wrap{position:relative;display:inline-flex;align-items:center}.pal-mic.busy{color:#9fc3ee}.mic-spin{width:14px;height:14px;margin:1px;border:2px solid #9fc3ee44;border-top-color:#9fc3ee;border-radius:50%;animation:mic-spin .8s linear infinite}@keyframes mic-spin{to{transform:rotate(360deg)}}.mic-err{position:absolute;bottom:calc(100% + 8px);right:0;white-space:nowrap;background:#1b2330;border:1px solid #ff6a3d88;color:#e6edf3;font-size:12px;padding:4px 8px;border-radius:6px;z-index:5}.opt-check{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:12.5px;color:var(--muted)}.opt-check.on{border-color:var(--accent);background:#12213a}.opt-check input{accent-color:var(--accent);margin:0;width:15px;height:15px}.opt-check b{color:#fff;font-weight:600;white-space:nowrap}.opt-check span{font-size:11px;line-height:1.3}.run-ll.ai{color:#9fc3ee;white-space:pre-wrap}.obj-icons{display:grid;grid-template-columns:repeat(3,56px);gap:6px;margin-top:12px}.obj-icons button.obj-open{position:relative;margin:0;width:auto;align-self:auto;padding:7px 0 5px;border-radius:10px}.obj-icons button.obj-open svg{width:22px;height:22px}.plan-pick{margin-top:12px;display:flex;flex-direction:column;gap:6px}.plan-pick label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.plan-pick select{width:100%;padding:6px 8px;background:#0f141b;color:#e6edf3;border:1px solid #2a3340;border-radius:8px;font-size:12px}.plan-pick-btns{display:flex;gap:6px}.plan-pick-btns button{flex:1;padding:6px 0;border-radius:8px;border:1px solid #3b82f688;background:#13233b;color:#93c5fd;font-size:12px;font-weight:600;cursor:pointer}.plan-pick-btns button:hover:not(:disabled){background:#1b3357;color:#fff}.plan-pick-btns button.del{border-color:#ff4d1a88;background:#3a1d12;color:#ff8a5c}.plan-pick-btns button.del:hover:not(:disabled){background:#52281a;color:#fff}.plan-pick-btns button:disabled{opacity:.45;cursor:default}.obj-icons button.obj-open span{display:none}.obj-icons button.obj-open em{position:absolute;top:-7px;right:-3px;font-size:9px;padding:1px 5px}.modal.obj.blue .modal-head b{color:#fff}.modal.obj.blue .modal-head .muted,.modal.obj.blue .obj-rank{color:#9fc3ee}.modal.obj.blue .obj-table th{color:#9fc3ee;background:#0e1622}.modal.obj.blue .obj-table tr.grp td{color:#fff}.modal.obj.blue .obj-table input:focus,.modal.obj.blue .obj-table select:focus,.modal.obj.blue .obj-rx input:focus,.modal.obj.blue .obj-iso select:focus,.modal.obj.blue .obj-foot select:focus{outline:none;border-color:var(--accent)}.modal.obj.blue .obj-table tr.grp:hover .obj-grip{color:#9fc3ee}.modal.obj.blue .obj-table tr.drop-above>td{box-shadow:inset 0 2px 0 var(--accent)}.modal.obj.blue .obj-table tr.drop-below>td{box-shadow:inset 0 -2px 0 var(--accent)}.modal.obj.blue button.obj-del{background:#13233a;border-color:#2f5d9a;color:#9fc3ee}.modal.obj.blue button.obj-del:hover{background:#2f5d9a;color:#fff}.modal.obj.blue button.obj-x:hover{color:#fff}.modal.obj.blue button.obj-btn{background:#13233a;border-color:#2f5d9a;color:#dbe9ff}.modal.obj.blue button.obj-btn:hover:not(:disabled){background:#1d3557;color:#fff}.modal.obj.blue button.obj-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.modal.obj.blue button.obj-btn.primary:hover:not(:disabled){background:#5b9cff}.modal.obj.blue .obj-iso{border-color:#2f5d9a66}.modal.obj.blue .obj-iso>b,.modal.obj.blue .obj-rx label{color:#fff}.modal.obj.blue .obj-saved.bad{color:#9fc3ee}.imp-log.run-log.run-story{font:13px/1.55 Segoe UI,system-ui,sans-serif;white-space:normal;overflow-x:hidden;padding:10px 14px}.run-se{padding:6px 0 6px 10px;border-left:2px solid #1f2733;margin:4px 0}.run-se .pal-md p{margin:0 0 3px}.run-se .pal-md ul{margin:2px 0 0;padding-left:16px}.run-se .pal-md li{margin:1px 0;color:#c9d3de}.run-se.iter{border-left-color:#2f4e75}.run-se.ai{border-left-color:#9fc3ee}.run-se.ai .pal-md{color:#9fc3ee}.run-se.ai .pal-md li{color:#b9d4f2}.run-se.ok{border-left-color:#86efac}.run-se.ok .pal-md{color:#86efac}.run-se.error{border-left-color:#ff8a5c}.run-se.error .pal-md{color:#ff8a5c}.run-se.wait{border-left-color:transparent;padding:2px 10px}.run-raw{padding:2px 9px;background:#1b2430;border:1px solid var(--border);border-radius:6px;color:#aeb8c4;font:inherit;font-size:11px;cursor:pointer;margin-right:8px}.run-raw:hover,.run-raw.on{background:#242f3d;color:#e6edf3}.run-story .pal-cursor{background:#ff4d1a}.opt .opt-label{font-size:11.5px;color:var(--muted);margin-bottom:5px}.run-ab button.run-ccc{grid-column:1 / -1}.run-ab .fmo-robust{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:8px;font-size:12px;color:#9aa7b4}.run-ab .fmo-robust select{padding:3px 6px;font-size:12px}.modal.obj.pinfo{width:min(900px,94vw);height:auto;max-height:90vh}.modal.obj.pinfo .modal-body{overflow:auto;font-size:13px;padding:16px}.pi-map{display:flex;align-items:flex-start}.pi-node{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;padding:9px 11px;border:1px solid #ff4d1a88;border-radius:9px;background:#1a1210;color:#ff8a5c}.pi-node.set{border-color:#3fbf6c88;background:#0f1a14;color:#8fe3ac}.pi-node.doses{flex:2.2}.pi-node b{font-size:13px;color:#fff}.pi-node span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pi-arrow{flex:0 0 46px;height:52px;position:relative;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#8fe3ac;text-shadow:0 0 4px #0f141b,0 0 4px #0f141b}.pi-arrow i{position:absolute;left:4px;right:4px;top:50%;height:0;border-top:2px solid currentColor;opacity:.55}.pi-arrow i:after{content:"";position:absolute;right:-1px;top:-5px;border-left:7px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent}.pi-arrow.frame{color:#e6c34d}.pi-arrow.bad,.pi-arrow.none{color:#ff6a3c}.pi-dose{display:flex;align-items:center;gap:5px;padding:2px 0}.pi-dose span{flex:1;color:#d5dde6}.pi-dose button{flex:0 0 26px;height:22px;padding:0;border:1px solid #2f5d9a;border-radius:5px;background:#0e151e;color:#6fb1ff;font-size:12px;font-weight:600;cursor:pointer}.pi-dose button:hover{background:#1d3557;color:#fff}.pi-dose button.on{background:#2f5d9a;color:#fff}.modal.obj.bd{width:min(1400px,98vw);height:min(520px,90vh);max-height:none;display:flex;flex-direction:column}.modal.obj.bd .modal-body{flex:1;display:flex;flex-direction:column;overflow:auto}.modal.obj.bd .obj-foot{margin-top:auto!important;padding-top:12px}.bd-head{padding:0 10px 0 16px;min-height:46px;background:linear-gradient(180deg,#0b1118,#000)}.bd-head>b{letter-spacing:.3px;white-space:nowrap}.bd-head .bd-plan{color:var(--muted);font-size:12px;padding-left:4px;white-space:nowrap}.bd-head button.modal-x{margin-left:auto}.modal.obj.bd .modal-body.bd-body{padding:0}.bd-cols{flex:1;display:flex;align-items:stretch;min-height:0}.bd-main{flex:1;min-width:0;overflow:auto;padding:12px 16px}.bd-side{width:272px;flex:none;border-left:1px solid var(--border);background:#0b1118;padding:14px;overflow:visible;display:flex;flex-direction:column;gap:12px}.bd-card{border:1px solid #1c2531;border-radius:8px;background:#0e141c;padding:10px 12px 12px}.bd-card h4{margin:0 0 8px;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:#6f8097}.bd-field{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;font-size:12px}.bd-field+.bd-field{margin-top:6px}.bd-field>label{color:var(--muted)}.bd-field .bd-ro{color:var(--text)}.bd-field select,.bd-field input{background:#0d141c;border:1px solid #27313d;border-radius:5px;color:var(--text);padding:3px 6px;font-size:12px;max-width:150px}.bd-field select{max-width:160px}.bd-field select:focus,.bd-field input:focus{outline:none;border-color:var(--accent)}.bd-field .bd-unit{display:flex;align-items:center;gap:5px}.bd-field .bd-unit small{color:#5d6b7c}.bd-field .bd-unit input{width:72px;text-align:right}.bd-field input.bd-rate.bad{border-color:#ff6b6b;color:#ff9a8a}.modal.obj.bd .obj-foot{margin:0!important;padding:10px 16px;border-top:1px solid var(--border);background:#0b1118}.modal.obj.bd input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.modal.obj.bd input[type=number]::-webkit-inner-spin-button,.modal.obj.bd input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}@media(max-width:1100px){.bd-side{width:230px}}.bd-table input{width:62px}.bd-table td,.bd-table th{padding-left:5px;padding-right:5px}.bd-table input.bd-name-in{width:130px}.bd-table input.bad{border-color:#ff6b6b;color:#ff9a8a}.bd-del{background:none;border:1px solid #2a323d;border-radius:5px;color:var(--muted);width:26px;height:26px;cursor:pointer}.bd-del:hover{color:#ff4d1a;border-color:#ff4d1a}.ruler-x{position:absolute;z-index:6;width:18px;height:18px;padding:0;line-height:15px;font-size:14px;border-radius:50%;border:1px solid #ff4d1a;background:#0e1319;color:#ff4d1a;cursor:pointer}.ruler-x:hover{background:#ff4d1a;color:#fff}.bd-iso{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.modal-back.bev-back{z-index:110}.modal.obj.bev{width:min(720px,96vw);height:min(800px,94vh)}.bev-svg{flex:1;min-height:0;width:100%;border:1px solid #2a323d;border-radius:6px}.bev-grid line{stroke:#1b232d;stroke-width:.4}.bev-axis line{stroke:#5b6b7d;stroke-width:.5;stroke-dasharray:3 3}.bev-leaf rect{fill:#16304f;stroke:#3b82f6;stroke-width:.3}.bev-jaw{fill:none;stroke:#ffd34d;stroke-width:1}.bev-label text{fill:#8a97a6;font-size:9px}.bev-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}.bev-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px}.bd-bev{padding:3px 8px}.bev-leaf rect{cursor:ew-resize}.bev-leaf rect:hover{fill:#3b82f666}.bev-legend{align-items:center}.bev-legend input{width:56px}.bev-svg{touch-action:none;-webkit-user-select:none;user-select:none}.modal.obj.plan-modal{width:min(420px,94vw);height:auto}.plan-form{display:grid;grid-template-columns:1fr;gap:10px}.plan-form label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--muted)}.plan-form input,.plan-form select{width:200px;padding:6px 8px;background:#0f141b;color:#e6edf3;border:1px solid #2a3340;border-radius:8px;font-size:13px}.bev-pane{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;background:#0f141b;display:flex}.bev-in{flex:1;min-width:0;display:flex;flex-direction:column}.beam-list{margin-top:12px;display:flex;flex-direction:column;gap:6px}.beam-list .beam-head .muted{font-size:11.5px}.bd-arcs{display:flex;align-items:center;gap:0;border:1px solid #27313d;border-radius:8px;background:#0e141c;overflow:hidden}.bd-arcs .bd-arcs-l{padding:0 12px;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:#6f8097;border-right:1px solid #27313d;align-self:stretch;display:flex;align-items:center}.bd-arcs button.bd-arc{display:inline-flex;align-items:center;gap:7px;padding:7px 14px 7px 9px;background:none;border:0;border-right:1px solid #1c2531;color:var(--text);font-size:13px;cursor:pointer;transition:background .12s,color .12s}.bd-arcs button.bd-arc:last-child{border-right:0}.bd-arcs button.bd-arc svg{opacity:.72;transition:opacity .12s}.bd-arcs button.bd-arc:hover{background:#18212d;color:#fff}.bd-arcs button.bd-arc:hover svg{opacity:1}.bd-arcs button.bd-arc:active{background:#1f2a38}.bd-table .bd-del+.bd-del{margin-left:4px}.beam-all{display:flex;align-items:center;gap:6px;font-size:12px;color:#9fb0c3;margin:0 0 6px 2px;cursor:pointer}.ts-head{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px 18px;margin:2px 0 14px}.ts-head>div{display:flex;flex-direction:column;gap:2px;font-size:13px}.ts-head .muted{font-size:11px}.ts-table td{padding:5px 8px;font-size:12.5px;white-space:nowrap}.ts-table th{text-align:left;padding:5px 8px}.obj-btn.bd-mlc{padding:2px 8px;font-size:12px}.calc-load{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:60;display:flex;align-items:center;gap:12px;padding:14px 22px;background:#0f141bf0;border:1px solid #2f4258;border-radius:10px;color:#dbe6f2;font-size:14px;box-shadow:0 8px 30px #00000080;pointer-events:none}.calc-load span{color:#9fb0c3}.calc-load em{font-style:normal;color:#93c5fd;min-width:36px;text-align:right}.calc-load .calc-spin{width:22px;height:22px;border-radius:50%;border:3px solid #2f4258;border-top-color:#93c5fd;animation:calc-spin .9s linear infinite}@keyframes calc-spin{to{transform:rotate(360deg)}}.ts-sub{display:flex;align-items:baseline;gap:10px;margin:18px 0 8px;padding-top:12px;border-top:1px solid #223041;font-size:13px}.ts-old{color:#ff4d1a;font-size:12px}.ts-state{margin-left:12px;padding:2px 10px;border-radius:10px;font-size:12px;border:1px solid #ff4d1a;color:#ff4d1a}.ts-state.set{border-color:#7ddc8a;color:#7ddc8a}.fmo{display:flex;flex-direction:column;gap:7px;padding:9px 10px;background:#0e141b;border:1px solid var(--border);border-radius:8px;font-size:12px}.fmo.ok{border-color:#3fbf6c88}.fmo.bad{border-color:#ff4d1a88}.fmo-head{display:flex;align-items:center;gap:10px}.fmo-head b{font-size:13px}.fmo.ok .fmo-head b{color:#8fe3ac}.fmo.bad .fmo-head b{color:#ff8a5c}.fmo-head .muted{margin-left:auto;font-size:11px}.fmo-unmet{color:#ff8a5c;font-size:11.5px;line-height:1.4}.fmo-rows{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}.fmo-rows td{padding:2px 4px;border-top:1px solid #1c2531;white-space:nowrap;color:#d5dde6}.fmo-rows td.num{text-align:right}.fmo-rows td.fmo-mode{color:var(--muted);font-size:11px}.fmo-rows tr.not td:last-child{color:#ff8a5c}.fmo-rows tr.met td:last-child{color:#8fe3ac}.fmo-foot{display:flex;justify-content:flex-end;align-items:center}.fmo-approved{color:#8fe3ac;font-weight:600}.obj-table select.obj-mode{width:74px}.obj-table select.obj-mode.hard{color:#dbe7ff;border-color:#3b5a8a}.obj-table select.obj-mode.soft{color:var(--muted)}.fmo-from{color:var(--muted);font-size:11px}.fmo-props{display:flex;flex-direction:column;gap:4px;border-top:1px solid #1c2531;padding-top:6px}.fmo-props-head{font-size:11px;color:var(--muted);letter-spacing:.02em}.fmo-prop{display:flex;align-items:center;gap:8px;font-size:11.5px;line-height:1.35;color:#d5dde6}.fmo-prop>span:first-child{flex:1}.fmo-prop em{font-style:normal;font-size:11px;color:var(--muted)}.fmo-prop.accepted em{color:#8fe3ac}.fmo-prop-btns{display:flex;gap:4px}.fmo-foot{gap:8px}.run-fmo-row{grid-column:1 / -1;display:flex;gap:8px}.run-fmo-row button.run-fmo{flex:1}button.run-clear{width:44px;flex:none;display:flex;align-items:center;justify-content:center;border-radius:9px;border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer}button.run-clear:hover:not(:disabled){background:#12213a;color:#fff}button.run-clear:focus-visible{outline:2px solid #fff;outline-offset:1px}button.run-clear:disabled{border-color:#3b82f655;color:#3b82f666;cursor:default}.run-icons{grid-column:1 / -1;display:flex;gap:8px}button.run-icon{flex:1;height:40px;display:flex;align-items:center;justify-content:center;border-radius:9px;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer}button.run-icon:hover:not(:disabled){background:#2f6fd6}button.run-icon.opt{position:relative;flex-direction:row;overflow:visible;gap:6px;height:46px;margin-top:4px;border-radius:10px;font-size:14.5px;font-weight:600}button.run-icon.opt:not(:disabled){border-color:#2a3647;background:linear-gradient(180deg,#19212c,#121922);color:#fff;box-shadow:0 8px 22px #00000059,inset 0 1px #ffffff0d}button.run-icon.opt:not(:disabled):before{content:"";position:absolute;left:22px;right:22px;top:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#3b82f6 25%,#ff4d1a 75%,transparent)}button.run-icon.opt:hover:not(:disabled){border-color:#3b82f688;background:linear-gradient(180deg,#1e2836,#161e29);box-shadow:0 10px 26px #3b82f62e,0 10px 26px #ff4d1a1f,inset 0 1px #ffffff0f}button.run-icon.opt:hover:not(:disabled):before{left:14px;right:14px;height:3px;top:-2px}button.run-icon.opt svg{margin-left:2px;transition:transform .15s}button.run-icon.opt:hover:not(:disabled) svg{transform:translate(3px)}button.run-icon:focus-visible{outline:2px solid #fff;outline-offset:1px}button.run-icon:disabled{background:#12213a;border-color:#3b82f655;color:#fff6;cursor:default}button.run-icon.clear{flex:none;width:44px;background:transparent;color:var(--accent)}button.run-icon.clear:hover:not(:disabled){background:#12213a;color:#fff}button.run-icon.clear:disabled{background:transparent;color:#3b82f666}button.run-icon.stop{background:#1b2430;color:#fff}button.run-icon.stop:hover:not(:disabled){background:#12213a}.fg{display:flex;flex-direction:column;gap:2px;font-variant-numeric:tabular-nums}.fg-axis{display:grid;grid-template-columns:78px 1fr 52px 58px;column-gap:6px;font-size:10px;color:var(--muted);letter-spacing:.03em}.fg-scale{grid-column:2;display:flex;justify-content:space-between;white-space:nowrap}.fmo .fmo-head{flex-wrap:wrap;row-gap:2px}.fg-row{display:grid;grid-template-columns:78px 1fr 52px 58px;align-items:center;column-gap:6px;padding:3px 0;border-top:1px solid #1c2531}.fg-label{display:flex;flex-direction:column;min-width:0;line-height:1.2}.fg-name{font-size:11px;color:#d5dde6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fg-metric{font-size:10.5px;color:var(--muted);display:flex;gap:4px;align-items:center}.fg-hard{font-style:normal;font-size:9px;padding:0 4px;border-radius:3px;border:1px solid #ff4d1a88;color:#ff8a5c;letter-spacing:.04em}.fg-track{position:relative;height:14px;border-radius:3px;background:#17202b;overflow:visible}.fg-zone{position:absolute;top:0;bottom:0;background:#1f4a33;opacity:.55}.fg-zone.left{left:0;right:50%;border-radius:3px 0 0 3px}.fg-zone.right{left:50%;right:0;border-radius:0 3px 3px 0}.fg-limit{position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:#e6edf5}.fg-dot{position:absolute;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;border:2px solid #0e141b}.fg-row.met .fg-dot{background:#8fe3ac}.fg-row.not .fg-dot{background:#ff8a5c}.fg-dot.out{border-radius:2px;transform:rotate(45deg)}.fg-val{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15}.fg-val b{font-size:11.5px;font-weight:600}.fg-row.met .fg-val b{color:#8fe3ac}.fg-row.not .fg-val b{color:#ff8a5c}.fg-val small{font-size:10px;color:var(--muted)}.fg-icons{display:flex;gap:3px;justify-content:flex-end}button.fg-ico{width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid #2a3542;background:transparent;color:#b7c3cf;cursor:pointer}button.fg-ico:hover:not(:disabled){border-color:var(--accent);color:#fff;background:#12213a}button.fg-ico:focus-visible{outline:2px solid #fff;outline-offset:1px}button.fg-ico:disabled{opacity:.4;cursor:default}button.fg-ico.on{border-color:var(--accent);color:#fff;background:#12213a}button.fg-ico.ai{border-color:#3b82f666;color:var(--accent)}button.fg-ico.ok{border-color:#8fe3ac88;color:#8fe3ac}button.fg-ico.run{margin-left:6px;width:28px;height:26px;border-color:var(--accent);background:var(--accent);color:#fff}button.fg-ico.run:hover:not(:disabled){background:#2f6fd6}button.fg-ico.run.hot{box-shadow:0 0 0 2px #3b82f655}button.fg-ico.approve{width:30px;height:28px;border-color:var(--accent);background:var(--accent);color:#fff}.fg-dec{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.fg-dec.accepted{color:#8fe3ac}.fg-dec.rejected{color:#6b7785}.fg-edit{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0 3px 78px;font-size:11px;color:var(--muted)}.fg-edit label{display:flex;align-items:center;gap:4px}.fg-edit input{width:62px;padding:2px 5px;font-size:12px;background:#0b1016;color:#e6edf5;border:1px solid #2a3542;border-radius:5px;font-variant-numeric:tabular-nums}.fg-edit input:focus-visible{outline:none;border-color:var(--accent)}.fmo-approved{display:inline-flex;align-items:center}.modal.fg-pop{width:min(820px,94vw);max-height:90vh;display:flex;flex-direction:column;background:#0f141b;border:1px solid #2f3b49;border-radius:10px;box-shadow:0 20px 60px #000c;overflow:hidden}.modal.fg-pop .modal-head{flex-wrap:wrap;row-gap:4px}.modal.fg-pop .modal-head .muted{font-size:12px}.fg-head-icons{margin-left:auto;display:flex;gap:6px}.fg-ok{color:#8fe3ac;font-size:13px}.fg-bad{color:#ff8a5c;font-size:13px}.fg-body{overflow-y:auto}.fg-pop .fg-axis,.fg-pop .fg-row{grid-template-columns:150px 1fr 80px 84px;column-gap:10px}.fg-pop .fg-row{padding:5px 0}.fg-pop .fg-name{font-size:12.5px}.fg-pop .fg-metric{font-size:11.5px}.fg-pop .fg-track{height:16px}.fg-pop .fg-edit{padding-left:160px;font-size:12px}.fg-pop .fg-edit input{width:72px;font-size:13px}.fg-pop button.fg-ico{width:26px;height:26px}.fg-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:11px;color:var(--muted);padding-top:4px}.fg-sw{display:inline-block;width:14px;height:9px;border-radius:2px;background:#1f4a33;margin-right:-4px}.fg-dotl{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:-4px}.fg-dotl.met{background:#8fe3ac}.fg-dotl.not{background:#ff8a5c}.fg-dotl.out{background:#b7c3cf;border-radius:2px;transform:rotate(45deg)}@media(max-width:560px){.fg-pop .fg-axis,.fg-pop .fg-row{grid-template-columns:96px 1fr 60px 58px;column-gap:6px}.fg-pop .fg-edit{padding-left:0}}.fg-row.wait .fg-dot{background:#b7c3cf}.fg-row.wait .fg-val b{color:#b7c3cf}.fg-row.moved .fg-limit{background:var(--accent)}.fg-was{position:absolute;top:1px;bottom:1px;width:0;margin-left:-1px;border-left:2px dashed #e6edf588}.fg-wasl{display:inline-block;width:0;height:11px;border-left:2px dashed #e6edf588;margin:0 -2px 0 2px}.fg-slide{flex:1 1 260px}.fg-slide input[type=range]{flex:1;min-width:120px;accent-color:var(--accent)}.fg-note{color:#b7c3cf;font-size:11px}.fg-saving{color:var(--accent);margin-left:auto}.fg-pop .fg-row{grid-template-columns:150px 1fr 96px 34px;padding:5px 0;border-top:none}.fg-pop .fg-row.first{border-top:1px solid #1c2531;margin-top:2px;padding-top:8px}.fg-pop .fg-row:first-child{border-top:none}.fg-pop .fg-label{flex-direction:row;align-items:baseline;gap:8px}.fg-pop .fg-name{flex:0 1 auto;font-size:12px}.fg-pop .fg-metric{margin-left:auto;font-size:11px}.fg-pop .fg-track{height:6px;border-radius:3px}.fg-pop .fg-zone{opacity:.4}.fg-pop .fg-limit{top:-4px;bottom:-4px}.fg-pop .fg-val{flex-direction:row;align-items:baseline;justify-content:flex-end;gap:4px}.fg-pop .fg-val b{font-size:13px}.fg-pop .fg-val small{font-size:11px}button.fg-ico.tip{position:relative}button.fg-ico.tip:after{content:"";position:absolute;top:-3px;right:-3px;width:7px;height:7px;border-radius:50%;background:var(--accent)}.fg-sugg{display:flex;align-items:center;gap:6px;flex-basis:100%;color:#b7c3cf}.fg-pill{font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:10px}.fg-pill.ok{background:#1f4a33;color:#8fe3ac}.fg-pill.bad{background:#4a2a1f;color:#ff8a5c}.fg-changed{display:flex;align-items:center;gap:4px;justify-content:flex-end;margin-top:8px;font-size:11px;color:var(--muted)}.fg-row.tol .fg-dot{background:#f2c14e}.fg-row.tol .fg-val b{color:#f2c14e}.fg-row.info .fg-dot{background:#9fb4c9}.fg-row.info .fg-val b,.fg-row.info .fg-val small{color:#9fb4c9}.fg-row.info .fg-zone,.fg-row.info .fg-limit,.fg-row.info .fg-band{display:none}.fg-st-item.info{border-left-color:#9fb4c988}.fg-st-state.info{color:#9fb4c9}.fg-tol{display:flex;align-items:center;gap:3px;font-size:11.5px;color:var(--muted)}.fg-tol input{width:48px;padding:2px 4px;font-size:12px;background:#0b1016;color:#e6edf5;border:1px solid #2a3542;border-radius:5px;font-variant-numeric:tabular-nums}.fg-tol input:focus-visible{outline:none;border-color:var(--accent)}.fg-tol input{width:40px;text-align:center;color-scheme:dark;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.fg-tol input::-webkit-outer-spin-button,.fg-tol input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button.fg-step{width:20px;height:20px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;border:1px solid #2a3542;background:#0b1016;color:#b7c3cf;cursor:pointer}button.fg-step:hover{border-color:var(--accent);color:#fff;background:#12213a}button.fg-step:focus-visible{outline:2px solid #fff;outline-offset:1px}.fg-band{position:absolute;top:0;bottom:0;background:#f2c14e;opacity:.35}.fg-val small.eff,.fg-tolc{color:#f2c14e}.fg-status{margin-top:10px;padding:10px 12px;border-radius:8px;border:1px solid #2a3542;background:#0b1016;font-size:12px;line-height:1.45;color:#c9d3dd;display:flex;flex-direction:column;gap:6px}.fg-status>b{font-size:12.5px}.fg-status.ok{border-color:#8fe3ac55}.fg-status.ok>b{color:#8fe3ac}.fg-status.warn{border-color:#f2c14e55}.fg-status.warn>b{color:#f2c14e}.fg-status.bad{border-color:#ff8a5c66}.fg-status.bad>b{color:#ff8a5c}.fg-status ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.fg-status li{padding-left:10px;border-left:2px solid #ff8a5c88}.fg-st-row{font-weight:600;color:#e6edf5}.fg-st-why{color:var(--muted)}.fg-st-fix{color:#9cc3ff}.fg-st-item{padding-left:10px;border-left:2px solid #2a3542}.fg-st-item.not{border-left-color:#ff8a5c88}.fg-st-item.tol{border-left-color:#f2c14e88}.fg-st-item.met{border-left-color:#8fe3ac88}.fg-st-state.met{color:#8fe3ac}.fg-st-state.tol{color:#f2c14e}.fg-st-state.not{color:#ff8a5c}.fg-st-state.wait{color:var(--muted)}.fg-pop .fg-row:hover{background:#111a24}.modal-back:has(>.fg-pop){align-items:flex-start;padding-top:6vh}.fg-status{height:132px;overflow-y:auto;box-sizing:border-box;justify-content:flex-start}.fg-pop .fg-label{-webkit-user-select:none;user-select:none}.fg-drag{cursor:move;-webkit-user-select:none;user-select:none}.fg-drag button,.fg-drag input{cursor:pointer}.fg-drag input{cursor:text}.fg-opt{display:inline-flex;gap:4px;margin-left:4px;padding-left:8px;border-left:1px solid #2a3542}button.fg-ico.opt{width:28px;height:26px}button.fg-ico.opt.sel{border-color:#8fe3ac88;color:#8fe3ac}.fg-head-icons{align-items:center;gap:6px}.fg-head-icons button.fg-ico,.fg-head-icons button.fg-ico.run,.fg-head-icons button.fg-ico.opt{width:28px;height:28px;margin:0;box-sizing:border-box}.fg-head-icons .fg-opt{display:flex;align-items:center;gap:6px;margin:0 2px;padding:0 8px;height:28px;border-left:1px solid #2a3542;border-right:1px solid #2a3542}.fmo-one{display:flex}button.fg-ico.fmo-open{position:relative;width:34px;height:34px;border-radius:8px}button.fg-ico.fmo-open.ok{border-color:#3fbf6c88;color:#8fe3ac}button.fg-ico.fmo-open.bad{border-color:#ff4d1a88;color:#ff8a5c}button.fg-ico.fmo-open.tip:after{content:"";position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.fg-pop .fmo-props,.fg-pop .fmo-foot{margin-top:10px}button.fg-ico.dec-yes{border-color:#3b82f666;color:var(--accent)}button.fg-ico.dec-yes.chosen,button.fg-ico.dec-yes.chosen:disabled{opacity:1;background:#1b3a2a;border-color:#8fe3ac;color:#8fe3ac}button.fg-ico.dec-no.chosen,button.fg-ico.dec-no.chosen:disabled{opacity:1;background:#3a1d14;border-color:#ff8a5c;color:#ff8a5c}.fg-sugg .fmo-prop-btns{display:inline-flex;gap:4px;margin-left:6px}.fg-head-icons button.fg-ico.undo{width:28px;height:28px;border-color:#3b82f666;color:var(--accent)}.fg-edit .fg-slide{flex:1 1 100%}.fg-edit .fg-slab{width:48px;flex:none}.fg-edit .fg-val{width:78px;flex:none;text-align:right;font-variant-numeric:tabular-nums;color:var(--text, #e6edf3)}.fg-live{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.fg-live.on{color:var(--accent)}.fg-spin{display:inline-block;width:10px;height:10px;margin-right:5px;vertical-align:-1px;border-radius:50%;border:2px solid #2a3440;border-top-color:#ff4d1a;animation:spin .8s linear infinite}.fg-spin.big{width:34px;height:34px;margin:0;border-width:4px}.fg-wait{position:sticky;top:40%;height:0;z-index:5;display:flex;justify-content:center;pointer-events:none}.fg-body.solving .fg{opacity:.55;transition:opacity .2s}.fg-body.loading input[type=range]{opacity:.35;pointer-events:none}@media(prefers-reduced-motion:reduce){.fg-spin{animation-duration:2.4s}}.fg-nto{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:12px;color:var(--muted)}.fg-nto .fg-slab{width:48px;flex:none}.fg-nto .fg-nto-open{background:none;border:0;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}.fg-nto .fg-nto-open:hover,.fg-nto .fg-nto-open:focus-visible{color:#ff6a3d}.fmo-one>.modal-back+.modal-back{z-index:1001}.fg-nto .fg-val{width:36px;text-align:right;font-variant-numeric:tabular-nums}.fg-nto.off .fg-val{color:#b7c3cf}.modal.fg-pop{width:min(1220px,96vw)}.fg-split{display:grid;grid-template-columns:minmax(300px,380px) 1fr;gap:18px;align-items:start}.fg-dvh{position:sticky;top:0;display:flex;flex-direction:column;gap:6px}.fg-dvh svg{width:100%;height:auto;display:block;background:#0b1017;border:1px solid #1c2531;border-radius:6px}.fg-dvh.empty{min-height:200px;align-items:center;justify-content:center;border:1px dashed #2f3b49;border-radius:6px;font-size:12px}.fg-dvh-grid{stroke:#1c2531;stroke-width:1}.fg-dvh-tx{fill:#7f8ea1;font-size:10px;font-variant-numeric:tabular-nums}.fg-dvh-pt{fill:none;stroke:#fff;stroke-width:1.6}.fg-dvh-lim{stroke:#fff;stroke-width:1;stroke-dasharray:2 3;opacity:.8}.fg-dvh-leg{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;color:#c9d4e0}.fg-dvh-leg span{display:inline-flex;align-items:center;gap:5px}.fg-dvh-leg span.dim{opacity:.35}.fg-dvh-leg i{width:14px;height:3px;border-radius:2px;display:inline-block}.fg-dvh-leg i.dash{background:repeating-linear-gradient(90deg,#9aa8b8 0 3px,transparent 3px 6px)}.fg-pop .fg-w{font-size:10px;color:#4aa3ff;margin-right:6px;font-variant-numeric:tabular-nums}@media(max-width:900px){.fg-split{grid-template-columns:1fr}.fg-dvh{position:static}}.pt-box{margin-top:12px;border:1px solid var(--border);border-radius:10px;background:#0f141b;max-height:46vh;overflow:auto;padding:6px 4px 8px}.pt-err{padding:8px 10px;font-size:12px;color:#ff8a5c}.pt-err.muted{color:var(--muted)}.pt-tree,.pt-tree ul{list-style:none;margin:0;padding:0}.pt-tree ul{margin-left:10px;padding-left:8px;border-left:1px dotted #2a3340}.pt-row{display:flex;align-items:center;border-radius:6px}.pt-row:hover{background:#16202b}.pt-row.sel{background:#3b82f629;box-shadow:inset 2px 0 0 var(--accent)}.pt-tw{width:14px;flex:none;padding:0;background:none;border:0;color:#56657a;font-size:10px;cursor:pointer}.pt-node{flex:1;min-width:0;display:flex;align-items:center;gap:7px;padding:4px 6px 4px 2px;background:none;border:0;color:var(--text);font:inherit;font-size:12.5px;text-align:left;cursor:pointer}.pt-node:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:5px}.pt-node svg{width:15px;height:15px;flex:none;fill:none;stroke:var(--muted);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.pt-row.on>.pt-node .pt-lbl{font-weight:600;color:#fff}.pt-row.dim>.pt-node{color:#6b7886}.pt-lbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pt-lbl small{margin-left:6px;color:var(--muted);font-size:11px;font-weight:400}.pt-tag{flex:none;font-size:10px;letter-spacing:.04em;color:#93c5fd;border:1px solid #3b82f666;border-radius:4px;padding:0 4px}.pt-dot{flex:none;width:8px;height:8px;border-radius:50%;background:#8b98a5}.pt-dot.set{background:#4ade80}.pt-dot.unset{background:#ff4d1a}.pt-dot.warn{background:#f0c040}.pt-dot.off{background:none;box-shadow:inset 0 0 0 1.5px #56657a}.pt-acts{display:flex;gap:2px;padding-right:4px}.pt-acts button{width:24px;height:22px;display:grid;place-items:center;padding:0;background:#13233b;border:1px solid #3b82f666;border-radius:5px;cursor:pointer}.pt-acts button svg{width:14px;height:14px;fill:none;stroke:#93c5fd;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pt-acts button.del{background:#3a1d12;border-color:#ff4d1a66}.pt-acts button.del svg{stroke:#ff8a5c}.pt-note{display:flex;align-items:center;gap:6px;padding:6px 10px 0;font-size:11px;color:var(--muted)}.pt-menu{position:fixed;z-index:3000;min-width:170px;padding:4px;background:#141b24;border:1px solid #2f3b49;border-radius:8px;box-shadow:0 10px 28px #0000008c;display:flex;flex-direction:column}.pt-menu button{background:none;border:0;border-radius:5px;padding:7px 10px;color:#d5dde6;font:inherit;font-size:12.5px;text-align:left;cursor:pointer}.pt-menu button:hover:not(:disabled),.pt-menu button:focus-visible{background:#1f2a37;color:#fff;outline:none}.pt-menu button.del:hover:not(:disabled){background:#3a1d12;color:#ff8a5c}.pt-menu button:disabled{color:#56616d;cursor:default}.dock.left .sidebar>.pt-box{flex:1 1 0;min-height:200px;max-height:none;margin-bottom:4px}@media(max-width:1440px){.dock.left .sidebar{width:290px;padding:10px 12px}.pt-row{font-size:12.5px}}@media(max-width:1180px){.dock.left .sidebar{width:250px}}@media(max-height:760px){.dock.left .sidebar>.pt-box{min-height:140px}.pt-tree .pt-node{padding-block:2px}}.views.mpr{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}.views.mpr>.viewwrap:first-child{grid-column:1;grid-row:1 / span 2}.viewwrap.mprwrap .corner.tr{right:40px}.modal.fg-pop{width:min(1640px,97vw)}.fg-cols{display:grid;grid-template-columns:minmax(500px,1.3fr) minmax(300px,1fr) minmax(300px,1fr);align-items:stretch;border:1px solid #1c2531;border-radius:8px;background:#0b1017}.fg-col{min-width:0;padding:10px 14px 12px;display:flex;flex-direction:column;gap:8px}.fg-col+.fg-col{border-left:1px solid #1c2531}.fg-col-head{font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:#7f8ea1;font-weight:600}.fg-goals .fg-nto{flex:none;margin:4px 0 0;padding-top:10px;border-top:1px solid #1c2531}.fg-pop .fg-row{cursor:pointer;border-radius:5px}.fg-pop .fg-row.sel{background:#16202c;box-shadow:inset 2px 0 #4aa3ff}.fg-pop .fg-row .fg-name{font-weight:600}.fg-dvh{position:static}.fg-dvh svg{background:transparent;border:none}.fg-dvh svg.pick{cursor:crosshair}.fg-dvh-cur line{stroke:#c9d4e0;stroke-width:.8;stroke-dasharray:2 3}.fg-dvh-cur circle{stroke:#0b1017;stroke-width:1.2}.fg-dvh-cur rect{fill:#0f141b;stroke:#2f3b49}.fg-dvh-cur text{fill:#e6edf5;font-size:10.5px;font-variant-numeric:tabular-nums}.fg-dvh-note{font-size:11px}.fg-img{display:flex;flex-direction:column;gap:6px}.fg-img canvas{max-width:100%;max-height:100%;width:auto;height:auto;display:block;background:#000;border-radius:4px;cursor:ns-resize}.fg-img.empty{min-height:200px;align-items:center;justify-content:center;border:1px dashed #2f3b49;border-radius:6px;font-size:12px}.fg-img-foot{font-size:11px;font-variant-numeric:tabular-nums}.fg-wash{padding:0 8px 4px}.fg-wash i{display:block;height:6px;border-radius:3px}.fg-wash div{position:relative;height:14px}.fg-wash span{position:absolute;top:3px;transform:translate(-50%);font-size:10px;color:#7f8ea1;font-variant-numeric:tabular-nums}@media(max-width:1280px){.fg-cols{grid-template-columns:1fr 1fr}.fg-goals{grid-column:1 / -1;border-bottom:1px solid #1c2531}.fg-col+.fg-col{border-left:none}.fg-col:last-child{border-left:1px solid #1c2531}}@media(max-width:760px){.fg-cols{grid-template-columns:1fr}.fg-col:last-child{border-left:none}}.fg-col-dvh .fg-dvh{flex:1;position:relative;min-height:240px}.fg-col-dvh .fg-dvh svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.fg-col-img .fg-img{flex:1;min-height:0}.fg-img-view{flex:1;min-height:200px;position:relative;display:flex;align-items:center;justify-content:center;background:#000;border-radius:4px;overflow:hidden}.fg-img-view canvas{width:100%}.fg-img-foot{text-align:center}.fg-washset{display:flex;align-items:center;gap:10px;font-size:12px;color:#c9d4e0;padding:2px 8px 0}.fg-washset>span:first-child{flex:none}.fg-washset input[type=range]{flex:1;min-width:0}.fg-washset .unit-box{flex:none;display:inline-flex;align-items:center;gap:4px;color:#7f8ea1;font-size:11px}.fg-washset input[type=number]{width:50px;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.fg-washset input[type=number]::-webkit-outer-spin-button,.fg-washset input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fg-img-view .fg-gmax,.fg-img-view .fg-gmax-pct{position:absolute;top:6px;z-index:2;color:#9fb0c3;font-size:11px;font-weight:400;white-space:nowrap;pointer-events:none;text-shadow:0 0 3px #000,0 0 3px #000}.fg-img-view .fg-gmax{left:8px}.fg-img-view .fg-gmax-pct{right:8px}.fg-img-view .fg-edge{position:absolute;z-index:2;color:#f2c14e;font-size:12px;font-weight:600;line-height:1;pointer-events:none;text-shadow:0 0 3px #000,0 0 3px #000}.fg-img-view .fg-edge.top{top:6px;left:50%;transform:translate(-50%)}.fg-img-view .fg-edge.bottom{bottom:6px;left:50%;transform:translate(-50%)}.fg-img-view .fg-edge.left{left:6px;top:50%;transform:translateY(-50%)}.fg-img-view .fg-edge.right{right:6px;top:50%;transform:translateY(-50%)}.matrix-queued{color:#ffb347}.modal-back:has(>.fg-pop){align-items:center;justify-content:center;padding:0}.modal.fg-pop{width:min(1380px,90vw);max-width:none;height:min(680px,80vh);max-height:none;box-sizing:border-box}.fg-pop .fg-goals>.fg{overflow-x:hidden}.fg-pop .fg-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.fg-pop .fg-body>*{flex:none}.fg-pop .fg-body>.fg-cols{flex:1 1 auto;min-height:0;grid-template-rows:minmax(0,1fr)}.fg-pop .fg-col{min-height:0}.fg-pop .fg-goals>.fg{flex:1;min-height:0;overflow-y:auto}.fg-pop .fg-status{height:auto;min-height:44px;max-height:18vh}.fg-pop .fg-body>.fmo-props{max-height:16vh;overflow-y:auto}@media(max-width:1280px){.fg-pop .fg-body{overflow-y:auto}.fg-pop .fg-body>.fg-cols{flex:none;grid-template-rows:auto}.fg-pop .fg-col-dvh,.fg-pop .fg-col-img{min-height:420px}.fg-pop .fg-goals>.fg{overflow:visible}}.fg-pop .fg-col-img .fg-img{min-height:0}.fg-pop .fg-img-view{min-height:0;position:relative}.fg-pop .fg-img-view canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;max-width:none;max-height:none}@media(max-width:1280px){.fg-pop .fg-img-view{min-height:360px}}.fg-pop .fg-drag{cursor:move}.fg-head-icons{position:relative;align-items:center}.fg-ico.props{position:relative}.fg-ico.props.sel{color:#ff4d1a}.fg-badge{position:absolute;top:-5px;right:-6px;min-width:15px;height:15px;padding:0 3px;box-sizing:border-box;border-radius:8px;background:#ff4d1a;color:#fff;font:600 10px/15px system-ui,sans-serif;font-style:normal;text-align:center;pointer-events:none}.fg-props-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:min(420px,80vw);max-height:50vh;display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid #2a3542;border-radius:8px;background:#0e141c;box-shadow:0 10px 30px #000a;cursor:default;font-weight:400}.fg-props-head{display:flex;align-items:center;justify-content:space-between;font-size:12.5px;color:#dfe7ef}.fg-props-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:0}.fg-props-list .fmo-prop.accepted>span:first-child{color:#8fe3ac}.fg-props-list .fmo-prop.rejected>span:first-child{color:var(--muted);text-decoration:line-through}.fg-props-foot{display:flex;justify-content:flex-end;align-items:center;gap:8px;border-top:1px solid #1c2531;padding-top:8px}.fg-status .fg-st-hint{color:#9fd0ff}.fg-pop .fg-status{height:auto;min-height:0;max-height:92px;overflow-y:auto;box-sizing:border-box}.fg-head-icons .fg-ico.props{display:none}@media(min-width:1281px){.fg-pop .fg-cols{grid-template-columns:minmax(560px,1.65fr) minmax(280px,1fr) minmax(280px,1fr)}}.fg-pop .fg-goals>.fg{scrollbar-gutter:stable;scrollbar-width:thin}.fg-pop .fg-goals>.fg::-webkit-scrollbar{width:6px}@media(min-width:1281px){.fg-pop .fg-cols{grid-template-columns:minmax(460px,1.35fr) minmax(360px,1.55fr) minmax(260px,1fr)}}.fg-pop .fg-goals>.fg{padding-right:14px}.fg-pop .fg-edit{padding-right:4px}.fg-pop .fg-edit .fg-val{width:88px;padding-right:6px}.fg-img-view .fg-src{position:absolute;top:8px;left:8px;z-index:2;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.03em;color:#e6edf5;background:#0b1016cc;border:1px solid #2a3542;pointer-events:none}.fg-img-view .fg-src.fluence{color:#8fe3ac;border-color:#8fe3ac55}.fg-img-view .fg-src.ray-tracing{color:#9fd0ff;border-color:#9fd0ff55}.fg-img-view .fg-src.ccc{color:#f2c14e;border-color:#f2c14e55}.fg-img-view .fg-src.dao{color:#f0a6ff;border-color:#f0a6ff55}.fg-img-view .fg-src.optimised{color:#7fd6a4;border-color:#7fd6a455}.fg-pop .fg-goals.locked,.fg-pop .fg-tol.locked{opacity:.5;filter:saturate(.6)}.fg-status.fg-run{gap:4px;overflow:hidden}.fg-status.fg-run.run{border-color:#3b82f666}.fg-status.fg-run.run b{color:#9fd0ff}.fg-run-top{display:flex;align-items:baseline;gap:10px}.fg-run-top b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fg-run-facts{flex:none;color:#c9d4e0;font-variant-numeric:tabular-nums}.fg-status.fg-run .imp-bar{flex:none}.fg-run-log{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:3px;font-size:11.5px;line-height:1.4}.fg-run-log .run-se{padding:0;margin:0}.fg-run-log .run-se p{margin:0}.fg-run-lock{flex:none;font-size:11px}.fg-pop .fg-goals.locked,.fg-pop .fg-tol.locked{pointer-events:none;-webkit-user-select:none;user-select:none}.fg-pend{display:flex;flex-direction:column}.fg-pop .fg-goals>.fg-pend{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;scrollbar-width:thin;padding-right:14px}.fg-pop .fg-goals>.fg-pend::-webkit-scrollbar{width:6px}@media(max-width:1280px){.fg-pop .fg-goals>.fg-pend{overflow:visible}}.fg-pend-row{display:grid;grid-template-columns:150px 1fr auto auto;column-gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid #1f2933;font-size:12.5px}.fg-pend-row>.fg-edit{grid-column:1 / -1}.fg-pend-row.sel{background:#ffffff08}.fg-pend-row b{font-variant-numeric:tabular-nums;font-size:13px}.fg-pend-row .muted{font-size:11.5px}.fg-pend-empty{display:flex;align-items:center;justify-content:center;min-height:220px;font-size:12px;border:1px dashed #2f3b49;border-radius:8px}.fg-live.bad{color:#f87171}.fg-runtag{display:inline-flex;align-items:center;gap:6px;font-size:12px}.opt .opt-algo{margin:10px 0 2px}.opt .opt-algo label{white-space:normal;text-align:center;line-height:1.25}button.fg-ico.start{border-color:#8fe3ac88;color:#8fe3ac}button.fg-ico.stop{border-color:#f8717188;color:#f87171}.fg-head-icons button.fg-ico.start,.fg-head-icons button.fg-ico.stop{width:28px;height:28px;margin:0;box-sizing:border-box}.fg-run-err{margin-top:6px;color:#ff8a80;font-size:12.5px;line-height:1.4}.fg-iters input{width:46px}.fg-pop .modal-head .fg-iters{margin-left:12px}.fg-head-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.fg-unit{display:inline-flex;border:1px solid #2f3b49;border-radius:5px;overflow:hidden;text-transform:none;letter-spacing:0}.fg-unit button{background:transparent;border:none;color:#7f8ea1;font-size:10.5px;padding:2px 9px;cursor:pointer;font-weight:600}.fg-unit button+button{border-left:1px solid #2f3b49}.fg-unit button.on{background:#1c2a3a;color:#e6edf5}.fg-unit button:focus-visible{outline:1px solid #4aa3ff;outline-offset:-1px}.fg-views button{display:inline-flex;align-items:center;gap:4px;padding:2px 7px}.fg-dose-lbl{text-transform:none;letter-spacing:.02em;font-size:11.5px;font-weight:600;color:#e6edf5}.fg-dose-lbl.fluence{color:#8fe3ac}.fg-dose-lbl.dao{color:#f0a6ff}.fg-dose-lbl.final-dose{color:#7fd6a4}.fg-views button svg{flex:none}.fg-views button.on svg{color:#4aa3ff}.fg-zoom button{display:inline-flex;align-items:center;padding:2px 6px}.modal.obj.fg-route{width:min(520px,94vw);height:auto;max-height:min(560px,86vh);text-transform:none;letter-spacing:0;font-weight:400}.modal.obj.fg-route .modal-head{background:#0e1622;border-bottom-color:#2f5d9a}.modal.obj.fg-route .modal-body{gap:14px;font-size:13px;color:#dbe6f3}.fg-route .oin-think{min-height:150px}.fg-route-why{margin:0;line-height:1.5}.fg-route-why .ai,.fg-route .oin-think-text .ai{color:#ff4d1a;font-weight:800}.fg-route-btns{display:flex;flex-direction:column;gap:8px}.fg-route-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:#0f1724;border:1px solid #2a3b52;border-radius:8px;color:#c9d6e5;padding:9px 12px;cursor:pointer}.fg-route-btn b{font-size:13px;color:#e6edf5}.fg-route-btn span{font-size:11.5px;color:#8ea3bb}.fg-route-btn em{font-style:normal;font-size:10.5px;font-weight:600;color:#93c5fd}.fg-route-btn:hover:not(:disabled){background:#13233b;border-color:#3b82f6}.fg-route-btn.pick{border-color:#3b82f6;background:#13233b}.fg-route-btn:disabled{opacity:.45;cursor:default}.fg-handover-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;line-height:1.4}.fg-handover-go{display:flex;flex-direction:column;gap:6px;font-weight:600;color:#93c5fd}.fg-handover-bar{display:block;height:4px;border-radius:2px;background:#1c2a3d;overflow:hidden}.fg-handover-bar i{display:block;height:100%;background:#3b82f6;transition:width .2s linear}.fg-zoom button:disabled{opacity:.4;cursor:default}.fg-zoom button:not(:disabled):hover{color:#e6edf5}.fg-zoom .fg-zoom-lv{min-width:30px;justify-content:center;font-variant-numeric:tabular-nums}.fg-img-view canvas.zoomed{cursor:grab;transform-origin:center}.fg-img-view canvas.zoomed:active{cursor:grabbing}.fg-col-dvh .fg-dvh{min-height:200px}.fg-dvh svg.pick{touch-action:none}.fg-dvh-tab{flex:none;max-height:38%;overflow:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid #1c2531}.fg-dvh-tab table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px;font-variant-numeric:tabular-nums}.fg-dvh-tab th{text-align:center;font-weight:600;color:#7f8ea1;font-size:10px;padding:0 3px 4px;white-space:nowrap;position:sticky;top:0;background:#0b1017;border-bottom:1px solid #1c2531}.fg-dvh-tab th:first-child{text-align:left;width:31%}.fg-dvh-tab th:last-child{width:24px}.fg-dvh-tab td:last-child{padding-right:0}.fg-dvh-tab td{padding:1px 2px}.fg-dvh-tab select{width:100%;background:#0f141b;border:1px solid #2f3b49;border-radius:4px;font-size:11px;padding:2px;font-weight:600}.fg-dvh-tab select option{color:#e6edf5;background:#0f141b}.fg-dvh-tab input{width:100%;box-sizing:border-box;background:#0f141b;border:1px solid #1c2531;border-radius:4px;color:#c9d4e0;font-size:11px;padding:2px 4px;text-align:center;font-variant-numeric:tabular-nums}.fg-dvh-tab tr.fg-dvh-empty td{padding:6px 3px 2px;color:#6f7d8d;font-size:10.5px;text-align:left}.fg-dvh-tab input.given{border-color:#4aa3ff;color:#fff;font-weight:600}.fg-dvh-tab input:focus{outline:none;border-color:#4aa3ff}.fg-dvh-del{background:transparent;border:none;color:#7f8ea1;cursor:pointer;padding:3px;display:inline-flex}.fg-dvh-del:hover,.fg-dvh-del:focus-visible{color:#ff5a5a}.fg-dvh-add{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px dashed #2f3b49;border-radius:5px;color:#9aa8b8;font-size:11px;padding:3px 9px;cursor:pointer}.fg-dvh-add:hover:not(:disabled),.fg-dvh-add:focus-visible{border-color:#4aa3ff;color:#e6edf5}.fg-dvh-add:disabled{opacity:.4;cursor:default}.modal.obj.objective{width:min(940px,94vw);background:#0d131a;border-color:#263445}.modal.obj.objective .modal-head{padding:9px 14px;background:#0a0f15;border-bottom:1px solid #1f2b39}.modal.obj.objective .obj-lib{display:inline-flex;align-items:center;gap:8px;margin-left:0}.modal.obj.objective .obj-lib select{height:24px;min-width:150px;padding:0 6px;border:1px solid #2a3a4d;border-radius:5px;background:#0a0f15;color:var(--text);font-size:12px;text-transform:none;letter-spacing:0}.modal.obj.objective .obj-lib select:disabled{opacity:.6}.modal.obj.objective .obj-lib-msg{margin-left:12px;color:#8fd0a0;font-size:11.5px}.modal.obj.objective .obj-lib-msg.bad{color:#f5a524}.modal.obj.objective .obj-table select.from-lib{border-color:#2f4a63}.modal.obj.objective .modal-head b{font-size:13.5px;font-weight:600;letter-spacing:.2px}.modal.obj.objective .modal-body{padding:12px 14px;gap:10px}button.obj-close{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:1px solid transparent;border-radius:6px;color:#8ea3bb;cursor:pointer}button.obj-close:hover,button.obj-close:focus-visible{background:#16212e;border-color:#2a3a4d;color:#fff;outline:none}.modal.obj.objective .obj-rx{gap:22px;padding:0}.modal.obj.objective .obj-rx label{gap:8px;font-size:12px;font-weight:500;color:#c9d6e5}.obj-field{position:relative;display:inline-flex;align-items:center}.modal.obj.objective .obj-rx input{width:82px;height:26px;padding:0 26px 0 8px;border-radius:5px;border-color:#2a3a4d;font-size:12.5px;font-variant-numeric:tabular-nums}.obj-field i{position:absolute;right:10px;font-style:normal;font-size:12px;color:#7f93aa;pointer-events:none}.obj-warn{font-size:11.5px;color:#f5a524}.modal.obj.objective .obj-scroll{border-color:#1f2b39;border-radius:8px;background:#0b1117}.modal.obj.objective .obj-table{table-layout:fixed;font-size:12px}.modal.obj.objective col.c-pri{width:64px}.modal.obj.objective col.c-type{width:128px}.modal.obj.objective col.c-gy,.modal.obj.objective col.c-rx{width:108px}.modal.obj.objective col.c-vol{width:164px}.modal.obj.objective col.c-mode{width:104px}.modal.obj.objective col.c-act{width:48px}.modal.obj.objective .obj-table th{padding:7px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#7f9bbd;background:#0f1822;border-bottom:1px solid #1f2b39}.modal.obj.objective .obj-table td{padding:3px 10px;vertical-align:middle}.modal.obj.objective .obj-table tr.grp td{padding-top:7px;padding-bottom:7px;background:#111a25;border-top:1px solid #1f2b39;font-weight:600}.modal.obj.objective .obj-table tbody tr:not(.grp):hover td{background:#0f1720}.modal.obj.objective .obj-table input,.modal.obj.objective .obj-table select,.modal.obj.objective .obj-foot select{height:25px;border-color:#2a3a4d;border-radius:5px;background:#0a0f15;font-size:12px;font-variant-numeric:tabular-nums}.modal.obj.objective .obj-table input{width:100%;max-width:90px;padding:0 7px}.modal.obj.objective .obj-table select{padding:0 5px;min-width:80px}.modal.obj.objective .obj-vol{gap:5px}.modal.obj.objective .obj-vol input{max-width:72px}.modal.obj.objective .obj-vol select{min-width:54px}.modal.obj.objective .obj-table select.obj-mode{width:82px;font-weight:600}.modal.obj.objective .obj-table select.obj-mode.hard{color:#cfe0ff;border-color:#3b6aa8;background:#0f1b2b}.modal.obj.objective .obj-table select.obj-mode.soft{color:#9aaabb}.modal.obj.objective .obj-grip{display:inline-flex;vertical-align:-3px;margin-right:8px;color:#4d6178}.modal.obj.objective .obj-rank{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;border-radius:10px;background:#16263b;color:#9fc3ee;font-size:11px;font-variant-numeric:tabular-nums}.obj-name{display:inline-flex;align-items:center;font-size:12.5px}.modal.obj.objective .obj-table .swatch{width:9px;height:9px;border-radius:2px;margin-right:8px}.modal.obj.objective .obj-cc{margin-left:8px;font-size:11px;color:#7f93aa;font-variant-numeric:tabular-nums}.modal.obj.objective button.obj-plus{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;margin-left:10px;border-radius:6px;background:#13233a;border-color:#2f5d9a;color:#9fc3ee;vertical-align:middle}.modal.obj.objective button.obj-plus:hover,.modal.obj.objective button.obj-plus:focus-visible{background:#2f5d9a;color:#fff;outline:none}button.obj-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:1px solid transparent;border-radius:6px;color:#71849a;cursor:pointer}button.obj-icon:hover,button.obj-icon:focus-visible{background:#1a2533;border-color:#2a3a4d;color:#fff;outline:none}button.obj-icon.del{color:#8ea3bb}button.obj-icon.del:hover,button.obj-icon.del:focus-visible{background:#3a1518;border-color:#7f2a2a;color:#ff8a80}.modal.obj.objective .obj-foot{gap:8px;padding-top:2px}.modal.obj.objective .obj-foot select{min-width:186px;padding:0 7px}.modal.obj.objective button.obj-btn{height:28px;padding:0 15px;border-radius:5px;font-size:12px;font-weight:500}.modal.obj.objective button.obj-btn.primary{font-weight:600;min-width:78px}.modal.obj.objective .obj-count{font-size:11.5px}.modal.obj.objective .obj-count.bad{color:#f5a524}.modal.obj.objective .obj-table th .unit{text-transform:none;letter-spacing:.2px}.modal.obj.objective input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.modal.obj.objective input[type=number]::-webkit-inner-spin-button,.modal.obj.objective input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.modal-back.obj-back{z-index:115}.fgi{flex:none;display:flex;flex-direction:column;align-items:center;gap:6px;padding:6px 12px 8px;border-top:1px solid #1d2633}.fgi-out{width:min(820px,100%);max-height:28vh;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:6px 10px;font-size:13px;scrollbar-width:thin}.fgi-feed~.fgi-out{max-height:16vh}.fgi-out table{border-collapse:collapse;font-size:12.5px}.fgi-out td,.fgi-out th{padding:2px 8px;border-bottom:1px solid #1d2633;text-align:left}.fgi-row{width:min(820px,100%);display:flex;align-items:center;gap:8px;padding:0 8px;border:1px solid var(--accent);border-radius:6px;background:#0f1319}.fgi-row svg{color:var(--accent);flex:none}.fgi-row input{flex:1;min-width:0;height:32px;background:transparent;border:0;outline:none;color:#fff;font:inherit;font-size:13.5px}.fgi-row input.waiting{color:#8fa9c6}.fgi-row:focus-within{box-shadow:0 0 0 2px #5096ff40}.fgi-feed{width:min(820px,100%);display:flex;flex-direction:column;border:1px solid #1d2633;border-radius:6px;background:#0b0f14}.fgi-live{display:flex;align-items:center;gap:10px;padding:5px 8px;font-size:12.5px;color:#c9d3df}.fgi-dot{width:8px;height:8px;border-radius:50%;background:#4a5666;flex:none}.fgi-dot.on{background:#3ddc84;animation:fgi-pulse 1.4s ease-in-out infinite}@keyframes fgi-pulse{50%{opacity:.35}}.fgi-head{font-variant-numeric:tabular-nums}.fgi-steer{margin-left:auto;color:#ff8a5c;display:inline-flex;align-items:center}.fgi-steer.off{color:var(--muted)}.fgi-steer .pal-bubbles i{width:6px;height:6px}.fgi-fold{margin-left:6px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid #243041;border-radius:4px;background:transparent;color:#9fb0c3;cursor:pointer}.fgi-steer+.fgi-fold{margin-left:0}.fgi-live>.fgi-fold:nth-child(3){margin-left:auto}.fgi-fold:hover,.fgi-fold:focus-visible{color:#fff;border-color:#3a4a60;outline:none}.fgi-events{max-height:min(15vh,112px);overflow-y:auto;padding:2px 8px 6px;border-top:1px solid #161e29;font-size:12px;scrollbar-width:thin}.fgi-ev{display:grid;grid-template-columns:48px 64px 1fr;gap:8px;padding:2px 0;line-height:1.4;animation:fgi-in .35s ease-out}.fgi-ev.wait{display:block}@keyframes fgi-in{0%{opacity:0;transform:translateY(3px)}}.fgi-it{color:#5f6e80;font-variant-numeric:tabular-nums;text-align:right}.fgi-ev b{font-weight:600;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding-top:1px;color:#8a98a8}.fgi-tx{color:#d3dbe5;overflow-wrap:anywhere}.fgi-ev.goals b{color:#ffb454}.fgi-ev.insight b{color:#ff7a45}.fgi-ev.optimiser b{color:#7cc4ff}.fgi-ev.result b{color:#7ee2a8}.fgi-ev.check b{color:#c9d3df}.fgi-ev.fluence b{color:#b69cff}.fgi-ev.remote b{color:#8a98a8}.fgi-ev.insight .fgi-tx{color:#ffd9c7}.fgi-ev.clin .fgi-tx,.fgi-ev.clin b{color:#f2f5f9}.fgi-split{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px}.fgi-split.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:10px}.fgi-split.two>.fgi-feed,.fgi-split.two>.fgi-out{width:auto;min-width:0}.fgi-split.two .fgi-events{max-height:10vh}.fgi-split.two>.fgi-out{max-height:calc(10vh + 34px);border:1px solid #1d2633;border-radius:6px;background:#0b0f14}.fgi-out-empty{margin:auto;font-size:12.5px}.fgi>.fgi-row{width:100%}.fgi-steer-btn{flex:none;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px;border:1px solid #2a3647;border-radius:4px;background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.fgi-row .fgi-steer-btn svg{color:inherit}.fgi-pc-btn{flex:none;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px;border:1px solid #2a3647;border-radius:4px;background:transparent;color:#6ea8ff;font:inherit;font-size:12px;cursor:pointer}.fgi-pc-btn:hover,.fgi-pc-btn.on{border-color:var(--accent);background:#5096ff1f}.fgi-pc-btn.busy{color:var(--muted)}.fgi-row .fgi-pc-btn svg{color:inherit}.fgi-pc-n{min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#4f90e8;color:#07101c;font-size:10.5px;font-weight:700;line-height:16px;text-align:center}.fgi-pc{width:min(820px,100%);max-height:26vh;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:10px 14px;border:1px solid #2f4a6b;border-radius:8px;background:#0e1520;font-size:12.5px;scrollbar-width:thin}.modal-back.fgi-pc-back{z-index:120;padding:16px}.fgi-pc-back .fgi-pc{width:min(780px,100%);max-height:72vh;padding:14px 18px 16px;gap:10px;border:1px solid var(--accent);box-shadow:0 18px 50px #000c,0 0 0 1px #5096ff2e,0 0 26px #5096ff1f;outline:none}.fgi-pc-head{display:flex;align-items:baseline;gap:10px;padding-bottom:8px;border-bottom:1px solid #1d2b3c}.fgi-pc-head b{color:#6ea8ff;font-size:12.5px;letter-spacing:.2px}.fgi-pc-head .muted{flex:1;font-size:11.5px}.fgi-pc-x{flex:none;display:inline-flex;padding:2px;border:0;background:transparent;color:var(--muted);cursor:pointer}.fgi-pc-x:hover{color:#fff}.fgi-pc-lines{margin:0;padding:0;list-style:none;counter-reset:pcn;display:flex;flex-direction:column;gap:6px;color:#dfe6ee;line-height:1.45}.fgi-pc-lines li{counter-increment:pcn;position:relative;padding:7px 10px 7px 34px;border:1px solid #1d2b3c;border-left:2px solid #3f6da8;border-radius:6px;background:#121a26}.fgi-pc-lines li:before{content:counter(pcn);position:absolute;left:9px;top:7px;width:17px;height:17px;border-radius:50%;background:#5096ff29;color:#8fc0ff;font-size:10.5px;font-weight:700;line-height:17px;text-align:center}.fgi-pc-lines li:hover{border-color:#2f4a6b;border-left-color:var(--accent);background:#141e2c}.fgi-pc-sub{margin-top:4px;display:flex;align-items:center;gap:8px;color:#7f93aa;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase}.fgi-pc-sub:after{content:"";flex:1;height:1px;background:#1d2b3c}.fgi-pc-watch{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.fgi-pc-watch li{display:grid;grid-template-columns:minmax(150px,30%) 1fr;gap:12px;padding:6px 10px;border-left:2px solid #2f4a6b;border-radius:0 5px 5px 0;background:#101823;line-height:1.4}.fgi-pc-watch li:hover{border-left-color:var(--accent);background:#131d29}.fgi-pc-watch b{color:#dbe7f5;font-weight:600}.fgi-pc-watch span{color:#9fb0c3}.fgi-steer-btn.on{color:#ff8a5c;border-color:#ff7a458c;background:#ff7a4514}.fgi-steer-btn:hover,.fgi-steer-btn:focus-visible{border-color:#ff7a45;outline:none}@media(prefers-reduced-motion:reduce){.fgi-dot.on,.fgi-ev{animation:none}}.ct-scroll{position:absolute;right:3px;top:42px;bottom:10px;width:10px;z-index:4;cursor:pointer;touch-action:none;border-radius:5px;background:#0b0f1499;border:1px solid var(--border);opacity:.55;transition:opacity .15s,width .15s}.ct-scroll:before{content:"";position:absolute;left:50%;top:4px;bottom:4px;width:2px;margin-left:-1px;background:#26303c;border-radius:1px}.ct-scroll i{position:absolute;left:1px;right:1px;height:26px;border-radius:4px;background:linear-gradient(#3b82f6,#2f5d9a);border:1px solid #6fb1ff66;box-shadow:0 0 4px #000a}.viewwrap:hover .ct-scroll,.ct-scroll.drag{opacity:1}.ct-scroll:hover,.ct-scroll.drag{width:12px}.ct-scroll.drag i,.ct-scroll:hover i{background:linear-gradient(#ff7a45,#ff4d1a);border-color:#ffb08a99}.viewwrap .corner.br{right:16px}.modal-back:has(>.fg-pop){background:#000000c7}.modal.fg-pop{background:#0f141b;border-color:#2f4a6e;box-shadow:0 20px 60px #000c,0 0 22px #3b82f642,0 0 60px #3b82f621}.modal.fg-pop .fg-cols{background:#0b1017bd;border-color:#22304a}.modal.fg-pop .fg-col+.fg-col{border-left-color:#22304a}.imp-anon{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.imp-anon input{accent-color:#22c55e;width:15px;height:15px}.imp-anon b{color:#86efac;font-family:Consolas,monospace;font-weight:500}.imp-anon-show{background:none;border:none;color:#7dd3fc;cursor:pointer;padding:0 4px;font-size:12px;text-decoration:underline}.imp-anon-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:60}.imp-anon-pop{width:min(420px,calc(100vw - 32px));background:#111821;border:1px solid var(--border);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:10px}.imp-anon-grid{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:14px}.imp-anon-grid b{color:#86efac;font-family:Consolas,monospace;font-size:16px}.imp-anon-pop p{margin:0;font-size:12px;line-height:1.45}.imp-anon-btns{display:flex;justify-content:flex-end;gap:8px}.modal.obj.imp{--ib-bg:#0d1726;--ib-panel:#111f33;--ib-line:#1f3a5f;--ib-soft:#16294a;--ib-text:#cfe0f7;--ib-dim:#7d9cc4;--ib-accent:#5b9dff;--ib-light:#9cc5ff;background:var(--ib-bg);border:1px solid var(--ib-line);border-radius:16px;box-shadow:0 18px 50px #08142d8c;overflow:hidden;color:var(--ib-text)}.modal.obj.imp .modal-head{background:var(--ib-panel);border-bottom:1px solid var(--ib-line);padding:14px 20px}.modal.obj.imp .modal-head b{color:var(--ib-light);font-weight:600;letter-spacing:.01em}.modal.obj.imp .modal-x{color:var(--ib-dim);border-radius:8px}.modal.obj.imp .modal-x:hover{color:var(--ib-light);background:var(--ib-soft)}.modal.obj.imp .modal-body{padding:18px 20px;gap:14px}.modal.obj.imp .imp-path{gap:8px}.modal.obj.imp .imp-path input{background:var(--ib-panel);border:1px solid var(--ib-line);border-radius:10px;padding:9px 12px;color:var(--ib-text)}.modal.obj.imp .imp-path input:focus{outline:none;border-color:var(--ib-accent);box-shadow:0 0 0 3px #5b9dff2e}.modal.obj.imp .obj-btn{border-radius:10px;background:var(--ib-soft);border:1px solid var(--ib-line);color:var(--ib-text);padding:8px 16px;transition:background .15s,border-color .15s}.modal.obj.imp .obj-btn:hover:not(:disabled){background:#1d3a66;border-color:var(--ib-accent);color:#fff}.modal.obj.imp .obj-btn.primary{background:var(--ib-accent);border-color:var(--ib-accent);color:#06122a;font-weight:600}.modal.obj.imp .obj-btn.primary:hover:not(:disabled){background:var(--ib-light);color:#06122a}.modal.obj.imp .obj-btn:disabled{opacity:.45}.modal.obj.imp button.imp-browse{background:var(--ib-soft);border-color:var(--ib-line);color:var(--ib-light);font-weight:500}.modal.obj.imp button.imp-browse svg{color:var(--ib-accent)}.modal.obj.imp .imp-anon{color:var(--ib-text)}.modal.obj.imp .imp-anon input{accent-color:var(--ib-accent)}.modal.obj.imp .imp-anon b,.modal.obj.imp .imp-anon-grid b{color:var(--ib-light)}.modal.obj.imp .imp-anon-show{color:var(--ib-accent)}.modal.obj.imp .imp-anon-pop{background:var(--ib-panel);border:1px solid var(--ib-line);border-radius:14px;box-shadow:0 14px 40px #08142d99;padding:20px}.modal.obj.imp .imp-anon-pop>b{color:var(--ib-light)}.modal.obj.imp .imp-anon-back{background:#060e1e8c}.modal.obj.imp .imp-count{background:var(--ib-soft);color:var(--ib-dim)}.modal.obj.imp .imp-count.ok{background:#16325a;color:var(--ib-light)}.modal.obj.imp .imp-logtitle{color:var(--ib-dim)}.modal.obj.imp .imp-log{background:var(--ib-panel);border:1px solid var(--ib-line);border-radius:12px;padding:12px 14px;scrollbar-color:var(--ib-line) transparent}.modal.obj.imp .imp-ll{color:var(--ib-text)}.modal.obj.imp .imp-ll span{color:#4f6d96}.modal.obj.imp .imp-ll.ok,.modal.obj.imp .imp-ll.ok i{color:var(--ib-light)}.modal.obj.imp .imp-ll.warn,.modal.obj.imp .imp-ll.warn i{color:#7fb2ff}.modal.obj.imp .imp-ll.error,.modal.obj.imp .imp-ll.error i{color:#4d86ff;font-weight:600}.modal.obj.imp .imp-prog-top,.modal.obj.imp .muted{color:var(--ib-dim)}.modal.obj.imp .imp-prog-top b{color:var(--ib-text)}.modal.obj.imp .imp-bar{background:var(--ib-soft);height:8px;border-radius:6px}.modal.obj.imp .imp-bar i,.modal.obj.imp .imp-bar.ok i{background:linear-gradient(90deg,#3b7be0,var(--ib-light))}.modal.obj.imp .imp-bar.bad i{background:#2a4f86}.modal.obj.imp .imp-counts span{background:var(--ib-panel);border:1px solid var(--ib-line);border-radius:10px;color:var(--ib-dim)}.modal.obj.imp .imp-counts .ok b{color:var(--ib-light)}.modal.obj.imp .imp-counts .bad b{color:#4d86ff}.modal.obj.imp .imp-counts .opt b{color:var(--ib-dim)}.modal.obj.imp .imp-foot.ok{color:var(--ib-light)}.modal.obj.imp .imp-foot.bad{color:#4d86ff}.modal.obj.imp .obj-foot{border-top:1px solid var(--ib-line);padding-top:14px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}#iso-ref-gy{background:#0b0f14;color:#e6edf3;border:1px solid #2b3440;border-radius:4px}#iso-ref-gy:focus{outline:none;border-color:#3b82f6}:root{--ui-font: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--mono-font: "JetBrains Mono", Consolas, monospace}html,body,#root,button,input,select,textarea{font-family:var(--ui-font);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}body{font-size:13px;letter-spacing:.005em}b,strong{font-weight:600}.corner,.status,input,select,.mono,.run-facts b,.pat-row .mono,.imp-path input,.imp-sel b,.imp-anon b,.imp-anon-grid b,.pat-pages b{font-variant-numeric:tabular-nums}.run-facts b,.pat-row .mono,.imp-path input,.imp-sel b,.imp-anon b,.imp-anon-grid b,.pat-pages b{font-family:var(--mono-font)}.corner{font-size:12px;line-height:1.45;color:#d6dee8;text-shadow:0 1px 2px #000,0 0 4px #000}.sidebar h2{font-size:11px;font-weight:600;letter-spacing:.08em;color:#9aa7b4}select,input[type=number],input[type=text],input:not([type]){background:#0b0f14;color:var(--text);border:1px solid #2b3440;border-radius:6px;padding:4px 8px;transition:border-color .15s,box-shadow .15s}select:focus,input[type=number]:focus,input[type=text]:focus,input:not([type]):focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #3b82f62e}input[type=checkbox],input[type=range]{accent-color:var(--accent)}html,body,#root,button,input,select,textarea,label,.chk,.row,.tree,.status{font-size:12px}.corner{font-size:11px}.sidebar h2{font-size:10.5px}.topbar h1{font-size:14px}.corner.dosemax{font-size:10.5px!important;line-height:1.4;color:#aab4bf}.corner.dosemax b{font-size:10.5px!important;font-weight:500;color:#d9a27a}.corner.dosemax .mu-parts{font-size:10px!important;color:#6f7b87}.fg-head-icons .fg-sep{width:1px;height:18px;background:#2a3542;margin:0 3px;flex:none}.fg-head-icons button.fg-ico{border-color:#26303c;background:#111821;color:#c3ced9}.fg-head-icons button.fg-ico:hover:not(:disabled){border-color:var(--accent);background:#12213a;color:#fff}.fg-head-icons button.fg-ico.start{border-color:#2f7d4f;background:#13261b;color:#8fe3ac}.fg-head-icons button.fg-ico.start:hover:not(:disabled){border-color:#8fe3ac;background:#1a3a27;color:#fff}.fg-head-icons button.fg-ico.stop{border-color:#9b3b3b;background:#2a1414;color:#ff9b9b}.fg-head-icons button.fg-ico.close:hover:not(:disabled){border-color:#c25454;background:#2a1414;color:#fff}.ri-brand{color:#e6edf3;font-weight:700;letter-spacing:.01em;text-transform:none;white-space:nowrap}.ri-brand>b{color:#ff6a3d;font-weight:inherit;font-size:inherit;letter-spacing:inherit;padding:0}.modal.fg-pop .fgi-steer{color:#c9d3df}.modal.fg-pop .fgi-steer.off{color:var(--muted)}.modal.fg-pop .fgi-ev{grid-template-columns:48px 86px 1fr}.modal.fg-pop .fgi-ev>b .ri-brand{font-size:11.5px;letter-spacing:0}.fgi-brand{flex:none;font-size:13px}.modal.fg-pop .fgi-row{border-color:#7cb4f0;box-shadow:none}.modal.fg-pop .fgi-row svg{color:#ff6a3d}.modal.fg-pop .fgi-row:focus-within{box-shadow:none;border-color:#7cb4f0}.modal.fg-pop .fgi-row input,.modal.fg-pop .fgi-row input:focus{border:0;box-shadow:none;outline:none;background:transparent}.modal.fg-pop .fgi-row .fgi-pc-btn svg,.modal.fg-pop .fgi-row .pal-send svg{color:inherit}:root{color-scheme:dark}*{scrollbar-width:thin;scrollbar-color:#3a4654 transparent}::-webkit-scrollbar{width:8px;height:8px;background:transparent}::-webkit-scrollbar-thumb{background:#3a4654;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4f5d6e}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}.bd-field{display:grid;grid-template-columns:72px minmax(0,1fr);justify-content:start;justify-items:start}.bd-field select,.bd-field .bd-unit input{text-align:left}.bd-field .bd-unit input{width:80px}@media(max-width:1100px){.bd-field{grid-template-columns:62px minmax(0,1fr)}}.modal.fg-pop .fgi-ev .fgi-tx,.modal.fg-pop .fgi-ev.clin .fgi-tx,.modal.fg-pop .fgi-ev.insight .fgi-tx{color:#b3bcc7;font-weight:400}.modal.fg-pop .fgi-ev>b,.modal.fg-pop .fgi-ev.clin>b,.modal.fg-pop .fgi-ev[class]>b{color:#7f8b99;font-weight:500}.modal.fg-pop .fgi-ev>b .ri-brand,.modal.fg-pop .fgi-ev>b .ri-brand>b{color:#7f8b99;font-weight:500}.fgi-steer .ri-brand{margin-right:.3em}.modal.obj.objective button.obj-ai{margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;border:1px solid #2f5f8f;border-radius:6px;background:linear-gradient(180deg,#14304d,#0f2338);color:#cfe6ff;font-size:12px;font-weight:600;cursor:pointer}.modal.obj.objective button.obj-ai:hover,.modal.obj.objective button.obj-ai:focus-visible{border-color:#4aa3ff;color:#fff;outline:none}.modal.obj.objective button.obj-ai .ai,.modal.obj.objective button.obj-ai .ai-logo{color:#ff4d1a;font-weight:800}.modal.obj.objective .modal-head>b{color:#ff4d1a}.modal.oin .modal-head>b,.modal.obj.objective .modal.oin .modal-head>b{color:#e6edf3;font-weight:700}.modal.oin .modal-head>b .ai,.modal.obj.objective .modal.oin .modal-head>b .ai{color:#ff4d1a;font-weight:800}.modal.obj.objective button.obj-ai+button.obj-close{margin-left:8px}.modal-back.oin-back{z-index:120}.modal.oin{width:min(1320px,calc(100vw - 24px));height:min(840px,calc(100vh - 24px));max-height:calc(100vh - 24px);display:flex;flex-direction:column;background:#0d131a;border-color:#263445}.modal.oin .modal-head{flex-wrap:wrap;gap:8px;padding:7px 12px;background:#0a0f15;border-bottom:1px solid #1f2b39}.modal.oin .modal-head .obj-close{margin-left:auto}.modal.oin .modal-head b{font-size:13.5px;font-weight:600}.oin-verdict{font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:10px}.oin-verdict.ok{color:#8fd0a0;background:#12301d}.oin-verdict.bad{color:#ffb4a8;background:#3a1714}.oin-body{display:flex;flex-direction:column;gap:8px;padding:10px 12px;min-height:0;overflow:hidden}.oin-steps{display:flex;flex-wrap:wrap;gap:8px}.oin-step{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border:1px solid #243243;border-radius:12px;color:#8ea3bb;font-size:11.5px}.oin-step i{width:8px;height:8px;border-radius:50%;background:#3a4a5c}.oin-step.run i{background:#4aa3ff;animation:oin-pulse 1s ease-in-out infinite}.oin-step.done i{background:#8fd0a0}.oin-step.done.warning i{background:#f5a524}.oin-step.done.error i{background:#ff6b5a}.oin-step.done{color:#c9d6e5}@keyframes oin-pulse{50%{opacity:.25}}.oin-think{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:220px;color:#c9d6e5}.oin-orbit{position:relative;width:96px;height:96px;display:flex;align-items:center;justify-content:center}.oin-spark{color:#ff4d1a;filter:drop-shadow(0 0 8px #ff4d1a88);animation:oin-breathe 1.6s ease-in-out infinite}.oin-dot{position:absolute;top:50%;left:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#4aa3ff;transform-origin:0 0;animation:oin-orbit 2.4s linear infinite}.oin-dot.d2{animation-delay:-.8s;background:#8fd0a0}.oin-dot.d3{animation-delay:-1.6s;background:#ffb347}.oin-think-text{font-size:15px;font-weight:600;color:#e6edf5}.oin-think-text .ai{color:#ff4d1a;font-weight:800}.oin-think-sub{font-size:12px;color:#8ea3bb}.oin-ellipsis i{font-style:normal;animation:oin-blink 1.2s infinite}.oin-ellipsis i:nth-child(2){animation-delay:.2s}.oin-ellipsis i:nth-child(3){animation-delay:.4s}@keyframes oin-breathe{50%{transform:scale(1.18);opacity:.75}}@keyframes oin-orbit{0%{transform:rotate(0) translate(42px) rotate(0)}to{transform:rotate(360deg) translate(42px) rotate(-360deg)}}@keyframes oin-blink{0%,to{opacity:.15}50%{opacity:1}}.oin-wait{color:#9fb3c8;font-size:12px}.oin-summary{color:#e6edf5;font-size:12.5px;line-height:1.4;padding:7px 10px;background:#0b1117;border:1px solid #1f2b39;border-radius:8px}.oin-note{color:#f5c46a;font-size:11.5px}.oin-note.bad{color:#ff8f80}.oin-counts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.oin-counts .oin-toggle{margin-left:auto;height:24px;font-size:11.5px}.oin-views{margin-left:auto;display:flex;gap:6px}.modal.obj.objective .modal.oin button.oin-view,.modal.oin button.oin-view{height:24px;font-size:11.5px;padding:0 10px;white-space:nowrap}.modal.obj.objective .modal.oin button.oin-view.on,.modal.oin button.oin-view.on{background:#1f6feb;color:#fff;border-color:#1f6feb}.oin-view:disabled{opacity:.6;cursor:wait}.oin-when{margin-left:10px;font-size:11px;opacity:.7}.oin-sev{display:inline-block;padding:1px 8px;border-radius:9px;font-size:11px;font-weight:600;white-space:nowrap}.oin-sev.error{color:#ffb4a8;background:#3a1714}.oin-sev.warning{color:#ffd38a;background:#3a2a0e}.oin-sev.info{color:#a9d2ff;background:#122a44}.oin-sev.ok{color:#8fd0a0;background:#12301d}.oin-table-wrap{overflow:auto;min-height:0;flex:1;border:1px solid #1f2b39;border-radius:8px;background:#0b1117}.oin-table{width:100%;min-width:820px;border-collapse:collapse;font-size:11.5px;table-layout:fixed}.oin-table th{position:sticky;top:0;background:#101923;color:#8fa9c6;font-weight:600;text-align:left;padding:5px 7px;border-bottom:1px solid #1f2b39;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.oin-table th:nth-child(1){width:84px}.oin-table th:nth-child(2){width:150px}.oin-table th:nth-child(4){width:104px}.oin-table th:nth-child(5){width:78px}.oin-table th:nth-child(7){width:44px;text-align:center}.oin-table td:nth-child(7){text-align:center;white-space:nowrap}.oin-est{display:inline-flex;flex-direction:column;font-variant-numeric:tabular-nums;color:#c9d6e5}.oin-est i{font-style:normal;font-size:10.5px;color:#7f93aa}.oin-est.likely i{color:#8fd0a0}.oin-est.tight i{color:#f5a524}.oin-est.unlikely i{color:#ff6b5a}.modal.obj.objective .modal.oin button.oin-fix,.modal.oin button.oin-fix{display:inline-flex;align-items:center;justify-content:center;width:26px;height:24px;min-width:0;padding:0;white-space:nowrap;background:#1f6feb;color:#fff;border-color:#1f6feb;border-radius:6px}.modal.obj.objective .modal.oin button.oin-fix svg{flex:none;width:14px;height:14px}.modal.obj.objective .modal.oin button.oin-fix:hover:not(:disabled),.modal.oin button.oin-fix:hover:not(:disabled){background:#388bfd;border-color:#388bfd}.modal.obj.objective .modal.oin button.oin-fix:disabled,.modal.oin button.oin-fix:disabled{opacity:.5;cursor:wait}.oin-table td{padding:4px 7px;border-bottom:1px solid #16212d;color:#d5e0ec;vertical-align:top;line-height:1.4;overflow-wrap:anywhere}.oin-table tr.sev-error td:first-child{box-shadow:inset 3px 0 #ff6b5a}.modal.obj.objective .modal.oin button.oin-accept,.modal.oin button.oin-accept{display:inline-flex;align-items:center;justify-content:center;width:auto;height:24px;min-width:0;padding:0 7px;font-size:10.5px;font-weight:700;letter-spacing:0;white-space:nowrap;background:#f26522;color:#fff;border-color:#f26522;border-radius:6px}.modal.obj.objective .modal.oin button.oin-accept:hover:not(:disabled),.modal.oin button.oin-accept:hover:not(:disabled){background:#ff7a3d;border-color:#ff7a3d}.modal.obj.objective .modal.oin button.oin-accept:disabled,.modal.oin button.oin-accept:disabled{opacity:.5;cursor:wait}.oin-table th:nth-child(7){width:64px}.modal.obj.fg-route.fg-gate{width:min(680px,94vw);max-height:min(760px,90vh)}.fg-gate-list{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow:auto}.fg-gate-row{display:flex;flex-direction:column;gap:2px;background:#0f1724;border:1px solid #2a3b52;border-left:3px solid #ff6b5a;border-radius:6px;padding:7px 10px;font-size:12px;color:#c9d6e5;line-height:1.4}.fg-gate-row b{color:#e6edf5}.fg-gate-row em{font-style:normal;color:#8ea3bb;font-size:11.5px}.fg-gate-sib{display:flex;flex-direction:column;gap:8px;background:#1a1410;border:1px solid #5a3a1e;border-left:3px solid #f26522;border-radius:6px;padding:9px 12px;font-size:12.5px;color:#e6d9cc;line-height:1.45}.fg-gate-sib>b{color:#ffb37a;font-size:13px}.fg-gate-sib p{margin:0}.fg-gate-sib p b{color:#fff}.fg-route-btn.accept{border-color:#f26522;background:#2a1a10;align-self:flex-start}.fg-route-btn.accept b{color:#ffb37a}.fg-route-btn.accept:hover:not(:disabled){background:#3a2214;border-color:#ff7a3d}.oin-table tr.sev-warning td:first-child{box-shadow:inset 3px 0 #f5a524}.oin-table tr.sev-info td:first-child{box-shadow:inset 3px 0 #4aa3ff}.oin-table tr.sev-ok td:first-child{box-shadow:inset 3px 0 #3f8f5a}.oin-foot{color:#7f93aa;font-size:11px}.fg-pop .fg-status:not(.fg-run){height:92px;min-height:92px;max-height:92px;flex:none}.fg-pop .fg-goals>.fg{overflow-anchor:none}.fg-pop .fg-body{position:relative}.fg-pop .fg-body>.fg-saving{position:absolute;top:14px;left:50%;transform:translate(-50%);margin:0;padding:2px 10px;border-radius:10px;background:#16202cee;border:1px solid #2f3b49;z-index:3;pointer-events:none}.fg-pop .fg-body>.fg-exp-msg{position:absolute;top:14px;left:50%;transform:translate(-50%);max-width:min(70%,900px);margin:0;padding:5px 8px 5px 12px;border-radius:8px;background:#16202cf2;border:1px solid #2f3b49;box-shadow:0 6px 20px #0008;z-index:4;display:flex;align-items:flex-start;gap:8px;justify-content:flex-start;text-align:left}.fg-pop .fg-body>.fg-exp-msg.fmo-unmet{border-color:#ff8a5c66}.fg-exp-x{flex:none;background:none;border:none;color:var(--muted);font-size:15px;line-height:1;padding:0 2px;cursor:pointer}.fg-exp-x:hover{color:#e6edf5}.fg-head-icons [data-tip]{position:relative}.fg-head-icons [data-tip]:after{content:attr(data-tip);position:absolute;top:calc(100% + 7px);right:0;z-index:60;padding:5px 9px;border-radius:6px;background:#000;color:#e6edf5;border:1px solid #2f3b49;box-shadow:0 6px 18px #000a;font-size:11.5px;font-weight:500;line-height:1.3;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s ease .25s,visibility 0s linear .37s}.fg-head-icons [data-tip]:before{content:"";position:absolute;top:calc(100% + 2px);right:9px;z-index:61;border:5px solid transparent;border-top:none;border-bottom-color:#2f3b49;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s ease .25s,visibility 0s linear .37s}.fg-head-icons [data-tip]:hover:after,.fg-head-icons [data-tip]:hover:before,.fg-head-icons [data-tip]:focus-visible:after,.fg-head-icons [data-tip]:focus-visible:before{opacity:1;visibility:visible;transition-delay:.25s,.25s}.modal.obj.bd.ts-pop{width:min(720px,calc(100vw - 32px));height:auto;max-height:calc(100vh - 48px);border-radius:10px}.modal.obj.bd.ts-pop .modal-head{padding:11px 16px;flex-wrap:wrap;row-gap:6px}.modal.obj.bd.ts-pop .modal-head b{font-size:15px}.modal.obj.bd.ts-pop .modal-body{flex:0 1 auto;min-height:0;overflow:auto;padding:14px 16px 16px;gap:0}.ts-pop .ts-top{display:flex;gap:10px;align-items:stretch;margin-bottom:14px}.ts-pop .ts-head{flex:1;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.ts-pop .ts-head>div{background:#0b1118;border:1px solid #1f2a37;border-radius:8px;padding:7px 10px;gap:1px;min-width:0}.ts-pop .ts-head>div>span{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#7f93aa}.ts-pop .ts-head>div>b{font-size:12.5px;font-weight:600;color:#e6edf5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-pop .ts-head>div>small{font-size:10.5px;color:#7f93aa;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-pop .ts-mu{flex:none;width:120px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border:1px solid #2f4a6e;border-radius:8px;background:linear-gradient(180deg,#102033,#0b1118)}.ts-pop .ts-mu>span{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#9fc3ea}.ts-pop .ts-mu>b{font-size:24px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.ts-pop .ts-mu>small{font-size:10px;color:#7f93aa}.ts-pop .ts-scroll{overflow-x:auto;border:1px solid #1f2a37;border-radius:8px}.ts-pop .ts-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.ts-pop .ts-table th{background:#0b1118;color:#7f93aa;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:7px 10px;border-bottom:1px solid #1f2a37;white-space:nowrap}.ts-pop .ts-table td{padding:7px 10px;font-size:12.5px;color:#c9d3dd;border-bottom:1px solid #18212c;white-space:nowrap}.ts-pop .ts-table tbody tr:last-child td{border-bottom:none}.ts-pop .ts-table tbody tr:hover td{background:#111a24}.ts-pop .ts-table .num{text-align:right}.ts-pop .ts-table td b{color:#e6edf5;font-weight:600}.ts-pop .ts-dose{margin-bottom:10px}.ts-pop .ts-sub{margin:16px 0 8px}.ts-pop .ts-none{margin-top:12px;font-size:12px}.modal.obj.bd.ts-pop .obj-foot{margin:0!important;padding:10px 16px;gap:8px;align-items:center;flex-wrap:wrap}.ts-pop .ts-sent{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%}.ts-pop .obj-foot .obj-btn{min-width:80px}@media(max-width:600px){.ts-pop .ts-top{flex-direction:column}.ts-pop .ts-mu{width:auto;flex-direction:row;gap:10px;padding:8px 12px}.ts-pop .ts-head{grid-template-columns:repeat(2,minmax(0,1fr))}.modal.obj.bd.ts-pop .obj-foot .obj-btn{flex:1;min-width:0}}.fg-washset{flex-wrap:wrap;row-gap:4px}.wash-row{flex-wrap:nowrap;gap:6px}.wash-row label{flex:0 0 66px}.wash-row .unit-box{flex:0 0 auto;gap:4px;font-size:11.5px}.wash-row .unit-box input{width:42px;padding-left:4px;padding-right:4px}.dock .sidebar .wash-row input[type=range]{flex:1 1 40px;min-width:40px}.fg-dvh-head{position:relative}.fg-dvh-tools{display:inline-flex;align-items:center;gap:6px}button.fg-ico.fg-pick-btn{width:22px;height:20px}.modal.obj.dvh-pick{width:min(560px,94vw);height:auto;max-height:min(720px,86vh);text-transform:none;letter-spacing:0;font-weight:400}.modal.obj.dvh-pick .modal-head{background:#0e1622;border-bottom-color:#2f5d9a}.modal.obj.dvh-pick .obj-close{margin-left:8px}.modal.obj.dvh-pick .modal-body{overflow:auto;gap:12px;font-size:13px;color:#dbe6f3}.fg-pick-btns{display:inline-flex;gap:6px;margin-left:auto}.fg-pick-btns button{background:#13233b;border:1px solid #3b82f688;color:#93c5fd;border-radius:6px;font-size:12px;font-weight:600;padding:3px 12px;cursor:pointer}.fg-pick-btns button:hover{background:#1b3357;color:#fff}.fg-pick-title{font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#9fc3ee;font-weight:600;margin:0 0 6px;padding-bottom:4px;border-bottom:1px solid #1d2c40}.fg-pick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px}.fg-pick-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;cursor:pointer}.fg-pick-row:hover{background:#13233b}.fg-pick-row.on span{color:#fff}.fg-pick-row input{accent-color:#3b82f6;margin:0}.fg-pick-sw{width:11px;height:11px;border-radius:2px;flex:none}.fg-pick-row span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fg-pick-row em{font-size:10.5px;font-style:normal;color:#9fc3ee}button.obj-curve{background:#0b0f14;border:1px solid #2f5d9a;border-radius:5px;color:#6fb1ff;font-size:12.5px;padding:4px 8px;cursor:pointer;white-space:nowrap}button.obj-curve:hover{background:#1d3557;color:#fff}.modal-back.obj-curve-back{z-index:120}.err-box{display:flex;align-items:center;gap:10px;margin:10px 0;padding:8px 10px;border:1px solid #7a3b1f;border-radius:8px;background:#1d1411;color:#f0b9a4;font-size:12px}.err-box.inline{margin:4px 0;padding:5px 8px;font-size:11px}.err-box button{flex:none;padding:3px 9px;border:1px solid #ff4d1a;border-radius:6px;background:#2a1a12;color:#ffb199;font-size:11px;cursor:pointer}.err-box button:hover{background:#3a2318}.fg-far{font-size:9.5px;line-height:1.3;padding:0 4px;border-radius:3px;border:1px solid #2f5d9a;color:#6fb1ff;white-space:nowrap}
