.oc .upload-bar .config-upload-buttons{flex-shrink:0}.oc .upload-bar .config-upload-buttons .btn{background:var(--bg-white);color:var(--text-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:5px;padding:8px 14px;font-size:14px;line-height:1;display:inline-flex}.oc .upload-bar .config-upload-buttons .btn:hover{background:var(--primary-a10);color:var(--primary-color)}.oc .upload-bar .config-upload-buttons .btn svg{flex-shrink:0;display:block}.oc .config-upload-btn-large{border-radius:var(--radius-lg)!important;background:var(--primary-color)!important;min-width:200px!important;height:60px!important;color:var(--text-on-primary)!important;cursor:pointer!important;transition:all var(--transition-fast)!important;box-shadow:var(--shadow-md)!important;border:none!important;justify-content:center!important;align-items:center!important;gap:12px!important;padding:0 30px!important;font-size:16px!important;font-weight:600!important;display:flex!important}.oc .config-upload-btn-large:hover{background:var(--btn-primary-hover)!important;box-shadow:0 8px 25px var(--primary-a30)!important;-webkit-transform:translateY(-2px)!important;transform:translateY(-2px)!important}.oc .config-upload-btn-large svg{width:20px!important;height:20px!important}.oc .config-upload-model-overlay{background:var(--overlay-bg);z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.oc .config-upload-model-overlay.show{display:flex}.oc .config-upload-model{background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-light);width:90vw;min-width:400px;max-width:550px;max-height:85vh;transition:all var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.oc .config-upload-model.usage-help-model{max-width:800px;max-height:90vh}.oc .config-upload-model.summary-wide{max-width:900px}.oc .config-upload-header{border-bottom:1px solid var(--border-light);background:var(--bg-gray);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px;display:flex}.oc .config-upload-title{color:var(--text-primary);font-size:16px;font-weight:600}.oc .config-upload-footer{border-top:1px solid var(--border-light);background:var(--bg-gray);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px;display:flex}.oc .config-upload-status{color:var(--text-secondary);font-size:12px}.oc #config-upload-status-text.is-error{color:var(--error-color)}.oc #config-upload-status-text.is-error:before{content:"";background:var(--error-color);vertical-align:1px;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.oc #config-upload-model.oc-busy #config-upload-close{opacity:.45;cursor:not-allowed}@-webkit-keyframes oc-nudge{0%,to{-webkit-transform:translate(0);transform:translate(0)}25%{-webkit-transform:translate(-3px);transform:translate(-3px)}75%{-webkit-transform:translate(3px);transform:translate(3px)}}@keyframes oc-nudge{0%,to{-webkit-transform:translate(0);transform:translate(0)}25%{-webkit-transform:translate(-3px);transform:translate(-3px)}75%{-webkit-transform:translate(3px);transform:translate(3px)}}.oc .oc-nudge{-webkit-animation:.32s oc-nudge;animation:.32s oc-nudge}.oc .config-upload-buttons{gap:var(--section-gap);min-height:35px;display:flex}.oc .config-upload-content{flex:1;padding:24px;overflow-y:auto}.oc .upload-mode-selector{border-radius:var(--radius-md);margin-bottom:24px}.oc .upload-mode-content{transition:all var(--transition-fast)}.oc .upload-zone{border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:all var(--transition-fast);background:var(--bg-light);margin-bottom:10px;padding:40px 20px}.oc .upload-zone:hover{border-color:var(--primary-color);background:var(--primary-a5)}.oc .upload-zone.dragover{border-color:var(--primary-color);background:var(--primary-a10)}.oc .upload-zone.has-file{border-color:var(--success-color);background:var(--success-a5)}.oc .upload-icon{color:var(--text-secondary);margin-bottom:16px}.oc .upload-zone.has-file .upload-icon{color:var(--success-color)}.oc .upload-primary{color:var(--text-primary);margin:0 0 8px;font-size:16px;font-weight:500}.oc .upload-secondary{color:var(--text-secondary);margin:0;font-size:12px}.oc .subscribe-form{flex-direction:column;gap:15px;display:flex}.oc .highlight-label{box-sizing:border-box;background:var(--bg-gray);border-left:3px solid var(--primary-color);border-right:3px solid var(--primary-color);border-radius:var(--radius-sm);width:100%;margin-bottom:10px;padding:6px 12px;line-height:1.5;display:block}.oc .filename-input-container{align-items:center;gap:8px;margin-top:20px;display:flex}.oc .filename-input-container label{color:var(--text-primary);white-space:nowrap;font-size:14px;font-weight:500}.oc .filename-input-container input{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-white);height:36px;color:var(--text-primary);transition:all var(--transition-fast);flex:1;padding:8px 12px;font-size:14px}.oc .filename-input-container input:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-a10);outline:none}.oc .filename-extension{color:var(--text-secondary);font-size:14px;font-weight:500}.oc .upload-progress{margin-top:20px}.oc .progress-bar{background:var(--bg-gray);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.oc .progress-fill{background:var(--primary-color);border-radius:4px;width:0%;height:100%;transition:width .3s}.oc .progress-text{color:var(--text-secondary);text-align:center;font-size:12px}.oc .config-upload-buttons .btn{border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);padding:8px 16px;font-size:14px;font-weight:500}.oc .cancel-btn{background:var(--bg-white);color:var(--text-secondary)}.oc .cancel-btn:hover{background:var(--bg-light);color:var(--text-primary)}.oc .upload-btn{background:var(--primary-color);color:var(--text-on-primary);border-color:var(--primary-color)}.oc .upload-btn:hover:not(:disabled){background:var(--primary-color);opacity:.9}.oc .upload-btn:disabled{background:var(--primary-color);color:var(--text-on-primary);border-color:var(--primary-color);opacity:.55;cursor:not-allowed}.oc .add-row-btn{align-self:flex-start;align-items:center;gap:var(--tight-gap);border:1px solid var(--primary-color);border-radius:var(--radius-sm);background:var(--primary-color);color:var(--text-on-primary);cursor:pointer;transition:all var(--transition-fast);padding:6px 8px;font-size:13px;font-weight:500;display:inline-flex}.oc .add-row-btn:hover{opacity:.9}.oc .add-row-btn svg{flex-shrink:0;width:14px;height:14px;display:block}.oc .advanced-options-container{background:var(--bg-light);border-radius:var(--radius-sm);border:1px solid var(--border-light);transition:all var(--transition-fast);padding:12px}.oc .advanced-options-container>.sub-convert-options:first-child,.oc .sub-convert-options>.sub-convert-options:first-child{margin-top:0}.oc .advanced-options-container>.sub-convert-options:last-child,.oc .sub-convert-options>.sub-convert-options:last-child{margin-bottom:0}.oc .advanced-options-container .sub-convert-options,.oc .sub-convert-options .sub-convert-options{background:var(--primary-a5);border-color:var(--primary-a20);max-width:100%;margin:12px auto 12px 0}.oc .sub-convert-options{background:var(--bg-light);border-radius:var(--radius-sm);border:1px solid var(--border-light);box-sizing:border-box;width:100%;max-width:100%;margin:0;padding:12px}html[data-darkmode=true] .oc .config-upload-header,html[data-darkmode=true] .oc .config-upload-footer{background:var(--bg-gray);border-color:var(--border-light)}html[data-darkmode=true] .oc .config-upload-content{background:var(--bg-white);color:var(--text-primary)}html[data-darkmode=true] .oc .config-upload-title{color:var(--text-primary)}html[data-darkmode=true] .oc .config-upload-status{color:var(--text-secondary)}html[data-darkmode=true] .oc .highlight-label{background:var(--bg-gray);color:var(--text-primary)}html[data-darkmode=true] .oc .upload-zone.has-file .upload-icon{color:var(--success-color)}html[data-darkmode=true] .oc .progress-bar{background:var(--bg-gray)}html[data-darkmode=true] .oc .progress-fill{background:var(--primary-color)}html[data-darkmode=true] .oc .cancel-btn{background:var(--bg-white);color:var(--text-secondary);border-color:var(--border-light)}html[data-darkmode=true] .oc .cancel-btn:hover{background:var(--bg-light);color:var(--text-primary)}html[data-darkmode=true] .oc .upload-btn{background:var(--primary-color);border-color:var(--primary-color)}html[data-darkmode=true] .oc .upload-btn:disabled{background:var(--primary-color);color:var(--text-on-primary);border-color:var(--primary-color);opacity:.55}html[data-darkmode=true] .oc .sub-convert-options,html[data-darkmode=true] .oc .advanced-options-container{background:var(--primary-a5);border-color:var(--border-light)}html[data-darkmode=true] .oc .advanced-options-container .sub-convert-options,html[data-darkmode=true] .oc .sub-convert-options .sub-convert-options{background:var(--primary-a10);border-color:var(--border-light)}@media (max-width:768px){.oc .config-upload-btn-large{min-width:180px!important;height:50px!important;padding:0 24px!important;font-size:14px!important}.oc .sub-convert-options{padding:var(--card-outer-padding);max-width:100%;margin:0}.oc #sub-result-stats{grid-template-columns:repeat(3,1fr)}}@media (max-width:480px){.oc .config-upload-btn-large{min-width:160px!important;height:45px!important;padding:0 20px!important;font-size:13px!important}.oc .sub-convert-options{max-width:100%;margin:0;padding:10px}.oc .config-upload-model{width:95vw;min-width:320px}.oc .config-upload-content{padding:20px}.oc .upload-zone{padding:30px 15px}}.oc .oc-sub-stepper{align-items:flex-start;gap:4px;margin-top:14px;display:flex}.oc .oc-sub-step{flex-direction:column;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.oc .oc-sub-step i{background-color:var(--bg-gray);width:22px;height:22px;color:var(--text-secondary);border:1px solid var(--border-light);z-index:1;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-style:normal;font-weight:700;transition:background-color .25s,border-color .25s,color .25s;display:flex;position:relative}.oc .oc-sub-step span{color:var(--text-secondary);white-space:nowrap;font-size:11.5px}.oc .oc-sub-step:before{content:"";background-image:linear-gradient(90deg, var(--success-color), var(--success-color)), linear-gradient(90deg, var(--border-light), var(--border-light));background-position:0,0;background-repeat:no-repeat;background-size:0% 100%,100% 100%;border-radius:1px;width:calc(100% - 18px);height:2px;transition:background-size .4s;position:absolute;top:10px;left:calc(7px - 50%)}.oc .oc-sub-step:first-child:before{display:none}.oc .oc-sub-step.done i{background-color:var(--success-color);border-color:var(--success-color);color:var(--text-on-primary);font-size:0;-webkit-animation:.32s oc-sub-pop;animation:.32s oc-sub-pop}.oc .oc-sub-step.done span{color:var(--success-color)}.oc .oc-sub-step.done:before,.oc .oc-sub-step.active:before{background-size:100% 100%,100% 100%}.oc .oc-sub-step.active i{background-color:var(--primary-a10);border-color:var(--primary-color);color:var(--primary-color);-webkit-animation:1.6s ease-out infinite oc-sub-pulse;animation:1.6s ease-out infinite oc-sub-pulse}.oc .oc-sub-step.active span{color:var(--primary-color);font-weight:600}.oc .oc-sub-step.fail i{background-color:var(--error-color);border-color:var(--error-color);color:var(--text-on-primary);font-size:0}.oc .oc-sub-step.fail span{color:var(--error-color);font-weight:600}.oc .oc-spin{border:2px solid var(--primary-a20);border-top-color:var(--primary-color);border-radius:50%;width:10px;height:10px;-webkit-animation:.8s linear infinite oc-sub-spin;animation:.8s linear infinite oc-sub-spin;display:inline-block}@-webkit-keyframes oc-sub-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes oc-sub-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes oc-sub-pop{0%{-webkit-transform:scale(.55);transform:scale(.55)}60%{-webkit-transform:scale(1.14);transform:scale(1.14)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes oc-sub-pop{0%{-webkit-transform:scale(.55);transform:scale(.55)}60%{-webkit-transform:scale(1.14);transform:scale(1.14)}to{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes oc-sub-pulse{0%{box-shadow:0 0 0 0 var(--primary-a20)}70%{box-shadow:0 0 0 9px transparent}to{box-shadow:0 0 transparent}}@keyframes oc-sub-pulse{0%{box-shadow:0 0 0 0 var(--primary-a20)}70%{box-shadow:0 0 0 9px transparent}to{box-shadow:0 0 transparent}}@media (prefers-reduced-motion:reduce){.oc .oc-sub-step:before{transition:none}.oc .oc-sub-step.done i,.oc .oc-sub-step.active i{-webkit-animation:none;animation:none}}.oc .oc-sub-console{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-light);margin-top:12px;overflow:hidden}.oc .oc-sub-console-h{background:var(--bg-gray);border-bottom:1px solid var(--border-light);color:var(--text-secondary);align-items:center;gap:8px;padding:6px 10px;font-size:11.5px;display:flex}.oc .oc-sub-live{color:var(--success-color);letter-spacing:.06em;align-items:center;gap:5px;margin-left:auto;font-size:10.5px;font-weight:700;display:inline-flex}.oc .oc-sub-live i{background:var(--success-color);border-radius:50%;width:6px;height:6px;-webkit-animation:1.1s ease-in-out infinite oc-sub-pulse;animation:1.1s ease-in-out infinite oc-sub-pulse}@-webkit-keyframes oc-sub-pulse{50%{opacity:.25}}@keyframes oc-sub-pulse{50%{opacity:.25}}.oc .oc-sub-console-b{height:168px;overflow:hidden}.oc .oc-sub-console-b .cm-editor{background:0 0;height:100%}.oc .oc-sub-console-b .cm-scroller{padding:4px 2px;font:11.5px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace}.oc .oc-sub-console-b .cm-gutters{display:none}.oc .oc-sub-console-b .cm-content{padding:0 6px}.oc .oc-sub-note{--note-fs:12.5px;--note-lh:1.6;--note-mark:16px;border-left:3px solid var(--primary-color);border-right:3px solid var(--primary-color);background:var(--primary-a5);border-radius:var(--radius-sm);font-size:var(--note-fs);line-height:var(--note-lh);color:var(--text-primary);align-items:flex-start;gap:8px;margin-top:12px;padding:8px 10px;display:flex}.oc .oc-sub-note-ok{border-left-color:var(--success-color);border-right-color:var(--success-color);background:var(--success-a5);color:var(--success-dark)}.oc .oc-sub-note-ok>span:first-child{width:var(--note-mark);height:var(--note-mark);margin-top:calc((var(--note-lh) * var(--note-fs) - var(--note-mark)) / 2);background-color:var(--success-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:0;line-height:1;display:inline-flex}.oc .oc-sub-note-error>span:first-child{width:var(--note-mark);height:var(--note-mark);margin-top:calc((var(--note-lh) * var(--note-fs) - var(--note-mark)) / 2);background-color:var(--error-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:0;line-height:1;display:inline-flex}.oc .oc-status-line{align-items:center;gap:5px;display:inline-flex}.oc .oc-ok-dot{background-color:var(--success-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:0;line-height:1;display:inline-flex}.oc .oc-sub-note-warn{border-left-color:var(--tip-color);border-right-color:var(--tip-color);background:var(--warning-a10);color:#b45309}html[data-darkmode=true] .oc .oc-sub-note-warn{color:var(--tip-color)}.oc .oc-sub-note-error{border-left-color:var(--error-color);border-right-color:var(--error-color);background:var(--error-a10);color:var(--error-color)}.oc .oc-sub-note-actions{flex-shrink:0;gap:8px;margin-left:auto;display:flex}.oc .oc-sub-note-actions .btn{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-white);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:4px 12px;font-size:12px}.oc .oc-sub-note-actions .btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.oc .oc-sub-elapsed{color:var(--text-secondary);align-items:center;gap:10px;margin-top:10px;font-size:12px;display:flex}.oc .oc-sub-elapsed b{color:var(--text-primary);font:600 13px ui-monospace,SFMono-Regular,Consolas,monospace}.oc .oc-sub-help-btn{color:var(--primary-color);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;margin-left:auto;padding:0;font-size:11.5px;text-decoration:underline}.oc .oc-sub-chips{flex-wrap:wrap;gap:6px;display:flex}.oc .oc-sub-chip{border:1px solid var(--border-light);background:var(--bg-white);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:2px 9px;font-size:11.5px;display:inline-flex;overflow:hidden}.oc .oc-sub-chip-accent{border-style:dashed;border-color:var(--tip-color);background:var(--warning-a10);color:#b45309;font-weight:600}html[data-darkmode=true] .oc .oc-sub-chip-accent{border-color:var(--tip-color);color:var(--tip-color)}.oc .oc-sub-chip-on{border-style:dashed;border-color:var(--primary-color);color:var(--primary-color);background:0 0;font-weight:600}.oc .oc-sub-sec{color:var(--text-title);align-items:center;gap:8px;margin:14px 0 8px;font-size:12.5px;font-weight:700;display:flex}.oc .oc-sub-sec:before{content:"";background:var(--primary-color);border-radius:999px;flex-shrink:0;width:3px;height:12px}.oc .oc-sub-box{background:var(--bg-light);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-top:12px;padding:12px 14px}html[data-darkmode=true] .oc .oc-sub-box{background:var(--primary-a5)}.oc .oc-sub-box .oc-sub-sec{margin:0 0 10px}.oc .oc-sub-box .oc-tpl-tabs{margin:2px 0 8px}.oc .oc-sub-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.oc #sub-result-stats{grid-template-columns:repeat(6,1fr)}.oc .oc-sub-stat{background:var(--bg-light);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;gap:1px;min-width:0;padding:9px 10px;display:flex}.oc .oc-sub-stat b{color:var(--primary-color);white-space:nowrap;font-size:20px;line-height:1.15}.oc .oc-sub-stat b .oc-stat-unit{margin-left:2px;font-size:12px;font-style:normal;font-weight:600}.oc .oc-sub-stat span{color:var(--text-secondary);font-size:11.5px}.oc .oc-sub-subinfo{border:1px solid var(--border-light);border-radius:var(--radius-md);padding:10px 12px}.oc .oc-sub-bar{background:var(--bg-gray);border-radius:999px;height:8px;overflow:hidden}.oc .oc-sub-bar i{background:linear-gradient(90deg, var(--success-color), #34d399);border-radius:999px;height:100%;display:block}.oc .oc-sub-bar i.is-warn{background:linear-gradient(90deg,#d97706,#f59e0b)}.oc .oc-sub-bar i.is-danger{background:linear-gradient(90deg,#dc2626,#ef4444)}.oc .oc-sub-bar-meta{color:var(--text-secondary);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:6px;font-size:11.5px;display:flex}.oc #sub-view-result.oc-sub-age-missing .oc-sub-stats,.oc #sub-view-result.oc-sub-age-missing #sub-groups-box,.oc #sub-view-result.oc-sub-age-missing #sub-info-box,.oc #sub-view-result.oc-sub-age-missing #sub-check-note,.oc #sub-view-result.oc-sub-age-missing #sub-provider-note{display:none}.oc #sub-result-footer .config-upload-buttons{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.oc .oc-sub-bar-top{align-items:center;gap:10px;min-width:0;margin-bottom:18px;display:flex}.oc .oc-sub-bar-top b{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:20px;font-weight:700;overflow:hidden}.oc #sub-view-result{padding-top:16px}.oc .oc-sub-empty{background:var(--bg-light);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-secondary);padding:12px 14px;font-size:12.5px}.oc .oc-sub-empty-top{margin-top:12px}html[data-darkmode=true] .oc .oc-sub-empty{background:var(--bg-gray)}.oc .oc-charts-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px;margin-top:12px;display:grid}.oc .oc-chart-card{background:var(--bg-light);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;gap:7px;min-width:0;padding:9px 10px 8px;display:flex;position:relative}html[data-darkmode=true] .oc .oc-chart-card{background:var(--bg-gray)}.oc .oc-chart-card.wide{grid-column:1/-1}.oc .oc-chart-h{color:var(--text-primary);align-items:baseline;gap:6px;min-width:0;font-size:12px;font-weight:600;display:flex}.oc .oc-chart-h em{color:var(--text-secondary);white-space:nowrap;margin-left:auto;font-size:10.5px;font-style:normal;font-weight:400}.oc .oc-chart-flex{align-items:center;gap:8px;min-width:0;display:flex}.oc .oc-donut-wrap{flex:none;width:96px;height:96px;position:relative}.oc .oc-donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.oc .oc-donut-center b{color:var(--primary-color);font-size:19px;font-weight:700;line-height:1.1}.oc .oc-donut-center span{color:var(--text-secondary);font-size:10.5px}.oc .oc-chart-legend{flex-wrap:wrap;gap:4px 12px;min-width:0;display:flex}.oc .oc-chart-flex .oc-chart-legend{flex-flow:column;flex:auto;align-items:flex-start;gap:5px}.oc .oc-chart-leg{color:var(--text-primary);align-items:center;gap:4px;min-width:0;max-width:100%;font-size:11px;display:inline-flex}.oc .oc-chart-flex .oc-chart-leg{width:100%}.oc .oc-chart-leg i{border-radius:2px;flex:none;width:8px;height:8px}.oc .oc-chart-leg span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.oc .oc-chart-flex .oc-chart-leg span{flex:auto}.oc .oc-chart-leg b{font-weight:700}.oc .oc-chart-flex .oc-chart-leg b{margin-left:auto}.oc .oc-chart-leg em{color:var(--text-secondary);font-size:11px;font-style:normal}.oc .oc-chart-body{min-width:0;height:118px;position:relative}.oc .oc-chart-rows{flex-direction:column;gap:9px;display:flex}.oc .oc-chart-row{flex-direction:column;gap:6px;min-width:0;display:flex;position:relative}.oc .oc-chart-row .oc-chart-bar{width:100%;min-width:0;height:12px}.oc .oc-chart-row-head{align-items:baseline;gap:8px;min-width:0;display:flex}.oc .oc-chart-row-foot{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0;display:flex}.oc .oc-chart-row-label{color:var(--text-secondary);white-space:nowrap;flex:none;font-size:11.5px;font-weight:600}.oc .oc-chart-row-foot .oc-chart-legend{flex:auto;gap:3px 10px;min-width:0}.oc .oc-chart-note{color:var(--text-secondary);margin:2px 0 0;font-size:11px}.oc .oc-chart-exttip{z-index:6;pointer-events:none;background:var(--bg-white);border:1px solid var(--border-light);box-shadow:var(--shadow-md);color:var(--text-primary);border-radius:6px;padding:7px 9px;font-size:11px;display:none;position:absolute}.oc .oc-chart-exttip.show{display:block}.oc .oc-chart-exttip>b{color:var(--text-primary);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.oc .oc-chart-tip-row{color:var(--text-primary);white-space:nowrap;align-items:baseline;gap:5px;line-height:1.9;display:flex}.oc .oc-chart-tip-row i{border-radius:2px;flex:none;align-self:center;width:8px;height:8px}.oc .oc-chart-tip-row em{font-style:normal}.oc .oc-chart-tip-row span{font-variant-numeric:tabular-nums;margin-left:auto;padding-left:12px;font-weight:700}.oc .oc-chart-tip-row u{color:var(--text-secondary);text-align:right;font-variant-numeric:tabular-nums;min-width:34px;text-decoration:none}.oc .oc-chart-tip-row.is-hot em{font-weight:600}.oc .oc-chart-empty{color:var(--text-secondary);background:var(--bg-white);border:1px dashed var(--border-light);border-radius:var(--radius-md);padding:10px 12px;font-size:11.5px}.oc .oc-sub-subinfo-list .oc-sub-subinfo{margin-top:8px}.oc .oc-sub-subinfo-list .oc-sub-subinfo:first-child{margin-top:0}.oc .oc-sub-subinfo-h{align-items:center;gap:8px;margin-bottom:6px;font-size:12.5px;display:flex}.oc .oc-sub-subinfo-h b{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.oc .oc-sub-subinfo-h span{color:var(--text-secondary);margin-left:auto;font-size:11.5px}html[data-darkmode=true] .oc .oc-sub-console{background:var(--bg-white)}html[data-darkmode=true] .oc .oc-sub-stat{background:var(--bg-gray)}.oc .oc-tpl-select-row{align-items:center;gap:8px;display:flex}.oc .oc-tpl-select-row .form-select-wrapper{flex:1;min-width:0}.oc .oc-tpl-open{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-white);height:40px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:12.5px;display:inline-flex}.oc .oc-tpl-open:hover{border-color:var(--primary-color);color:var(--primary-color)}.oc .oc-tpl-cache{color:var(--text-secondary);flex-shrink:0;margin-left:auto;font-size:11.5px}.oc .oc-tpl-source-chip{text-decoration:none}.oc .oc-tpl-tabs{border-bottom:1px solid var(--border-light);gap:4px;margin:14px 0 8px;display:flex}.oc .oc-tpl-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;padding:7px 10px;font-size:13px}.oc .oc-tpl-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.oc .oc-tpl-pane{max-height:318px;overflow:auto}.oc .oc-tpl-g{border-bottom:1px dashed var(--border-light);padding:9px 2px 12px}.oc .oc-tpl-g:last-child{border-bottom:none}.oc .oc-tpl-g-end{margin-bottom:10px}.oc .oc-tpl-gh{color:var(--text-primary);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.oc .oc-tpl-type{background:var(--bg-gray);color:var(--text-secondary);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.oc .oc-tpl-type.is-smart{background:var(--primary-a10);color:var(--primary-color)}.oc .oc-tpl-type.is-test{background:var(--warning-a10);color:#b45309}html[data-darkmode=true] .oc .oc-tpl-type.is-test{color:var(--tip-color)}.oc .oc-tpl-refs{color:var(--text-secondary);font-size:11.5px;font-weight:400}.oc .oc-tpl-m{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.oc .oc-tpl-gh+.oc-tpl-m{margin-top:9px}.oc .oc-tpl-g .oc-sub-chip{font-size:11px}.oc .oc-tpl-g .oc-tpl-type{font-size:10.5px}.oc .oc-tpl-g .oc-tpl-refs{font-size:11px}.oc .oc-tpl-m .oc-sub-chip.t-ref{border-color:var(--primary-color);background:var(--primary-a5);color:var(--primary-color)}.oc .oc-tpl-m .oc-sub-chip.t-all,.oc .oc-tpl-m .oc-sub-chip.t-direct{border-color:var(--success-color);background:var(--success-a5);color:var(--success-dark)}.oc .oc-tpl-m .oc-sub-chip.t-reject{border-color:var(--error-color);background:var(--error-a10);color:var(--error-color)}.oc .oc-tpl-m .oc-sub-chip.t-filter{white-space:normal;word-break:break-all;text-align:left;border-style:dashed;line-height:1.5}.oc .oc-tpl-m .oc-sub-chip.t-provider{border-style:dashed;border-color:var(--primary-color);background:var(--primary-a5);color:var(--primary-color)}.oc .oc-tpl-m .oc-sub-chip.t-nodes{background:var(--bg-gray);color:var(--text-secondary)}.oc .oc-tpl-r{border-bottom:1px dashed var(--border-light);padding:8px 2px;transition:background .25s}.oc .oc-tpl-r:last-child{border-bottom:none}.oc .oc-tpl-r.oc-jump-flash{background:var(--primary-a10);border-radius:var(--radius-sm)}.oc .oc-tpl-rbar{background:var(--bg-gray);border-radius:999px;height:3px;margin:6px 2px 2px;overflow:hidden}.oc .oc-tpl-rbar i{background:var(--primary-color);opacity:.45;border-radius:999px;height:100%;display:block}.oc .oc-tpl-rh{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.oc .oc-tpl-rh .oc-sub-chip-accent{font-weight:600}.oc .oc-tpl-kv{flex-direction:column;padding:2px 0;display:flex}.oc .oc-tpl-kvrow{border-bottom:1px dashed var(--border-light);justify-content:space-between;align-items:baseline;gap:14px;padding:8px 10px;display:flex}.oc .oc-tpl-kvrow:last-child{border-bottom:none}.oc .oc-tpl-kvkey{color:var(--text-secondary);flex-shrink:0;font:500 12px ui-monospace,SFMono-Regular,Consolas,monospace}.oc .oc-tpl-kvval{text-align:right;min-width:0;color:var(--text-primary);word-break:break-all;font-size:12.5px}.oc .oc-tpl-kvb{border-radius:999px;padding:1px 9px;font-size:11px;font-style:normal;font-weight:600;display:inline-block}.oc .oc-tpl-kvb.on{background:var(--success-a10);color:var(--success-dark)}.oc .oc-tpl-kvb.off{background:var(--bg-gray);color:var(--text-secondary)}html[data-darkmode=true] .oc .oc-sub-chip{background:var(--bg-gray)}html[data-darkmode=true] .oc .oc-sub-bar{background:var(--bg-light)}@media (max-width:480px){.oc .oc-sub-stats{grid-template-columns:repeat(2,1fr)}.oc #sub-result-stats{grid-template-columns:repeat(3,1fr)}.oc .oc-charts-grid{grid-template-columns:1fr}.oc .oc-sub-bar-top b{font-size:17px}.oc .oc-sub-step span{white-space:normal;text-align:center}.oc .oc-sub-console-b{height:140px}}.oc .oc-fold-sum{color:var(--text-secondary);margin:2px 0 0;font-size:12px;line-height:1.4}.oc .form-error{color:var(--error-color);margin-top:4px;font-size:12px;line-height:1.4}.oc .form-textarea.oc-invalid,.oc .form-input.oc-invalid,html[data-darkmode=true] .oc .form-textarea.oc-invalid,html[data-darkmode=true] .oc .form-input.oc-invalid{border-color:var(--error-color)}