/* Camera Settings */
.ccx{display:flex;flex-direction:column;gap:14px;color:#10253b;min-width:0}
.ccx button,.cc-wrap button{font-family:inherit}
.cc-head{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.cc-sub{margin:0;font-size:14px;color:#4d6478}
.cc-small{font-size:12.5px;color:#4d6478;margin:0}
.cc-tabs{display:inline-flex;padding:3px;background:#fff;border:1px solid #d9e6ec;border-radius:11px;gap:2px}
.cc-tabs button{height:36px;padding:0 16px;border:0;border-radius:8px;background:transparent;color:#4d6478;font-size:13.5px;font-weight:700;cursor:pointer}
.cc-tabs button[aria-pressed=true]{background:#193966;color:#fff}
.cc-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cc-kpi{background:#fff;border:1px solid #d9e6ec;border-radius:14px;padding:12px 16px;display:flex;flex-direction:column;gap:3px;min-width:0}
.cc-kpi span{font-size:12.5px;font-weight:700;color:#4d6478}.cc-kpi b{font-size:24px;font-weight:800;color:#082945}.cc-kpi b.warn{color:#8a4b00}.cc-kpi b.bad{color:#a12639}
.cc-kpi small{font-size:12px;color:#4d6478;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cc-chips{display:flex;gap:6px;flex-wrap:wrap}
.cc-chips button{height:34px;padding:0 14px;border-radius:9px;border:1px solid #d9e6ec;background:#fff;color:#33495c;font-size:13px;font-weight:700;cursor:pointer}
.cc-chips button[aria-pressed=true]{border-color:#193966;background:#193966;color:#fff}
.cc-selbar{display:flex;align-items:center;gap:8px;padding:5px 5px 5px 14px;border-radius:12px;background:#082945;color:#fff;font-size:13px;font-weight:700}
.cc-selbar button{height:34px;padding:0 12px;border:0;border-radius:8px;background:#00b5bb;color:#04252b;font-size:13px;font-weight:800;cursor:pointer}
.cc-selbar button.dark{background:#193966;color:#fff;font-weight:700}
.cc-btn{height:40px;padding:0 14px;border:1px solid #d9e6ec;border-radius:10px;background:#fff;color:#193966;font-size:13.5px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.cc-btn:hover{border-color:#9fc3d0}.cc-btn:disabled{opacity:.55;cursor:default}
.cc-btn.pri{border:0;background:#193966;color:#fff}.cc-btn.sm{height:36px;padding:0 12px;font-size:13px}
.cc-btn.dashed{border-style:dashed;border-color:#9fc3d0;width:100%}
.cc-link{border:0;background:none;color:#00718a;font-weight:700;cursor:pointer;padding:0;font-size:12.5px;text-decoration:underline}
.cc-link.danger{color:#a12639}
.cc-table{background:#fff;border:1px solid #d9e6ec;border-radius:14px;overflow:auto}
.cc-tr{display:grid;grid-template-columns:44px minmax(160px,1.5fr) minmax(130px,1.1fr) minmax(140px,1.2fr) minmax(120px,1fr) 100px minmax(100px,.9fr) minmax(110px,.9fr) 76px;gap:10px;padding:8px 14px;align-items:center;border-top:1px solid #eef3f6;min-width:1080px}
.cc-tr.sel{background:#f0fbfb}
.cc-th{background:#f6fafb;font-size:11.5px;font-weight:800;color:#4d6478;border-top:0;padding:11px 14px}
.cc-table.hist .cc-tr{grid-template-columns:130px minmax(140px,1fr) minmax(260px,2.4fr) 100px 150px 90px;min-width:900px}
.cc-ck{display:grid;place-items:center;width:44px;height:44px}.cc-ck input{width:18px;height:18px;accent-color:#193966}
.cc-cam{display:flex;flex-direction:column;gap:3px;min-width:0}.cc-cam b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-cam>span{display:flex;gap:6px;align-items:center;min-width:0}.cc-cam small{font-size:11.5px;color:#5d7387;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-conn{font-style:normal;font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:6px;background:#eef3f6;color:#33495c;flex-shrink:0}
.cc-conn.isup{background:#e6f0fb;color:#1d4f91}
.cc-cell{display:flex;flex-direction:column;gap:2px;min-width:0}
.cc-cell b{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-cell small{font-size:11.5px;color:#5d7387;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-cell.warn b{color:#8a4b00;font-weight:700}.cc-cell.bad b{color:#a12639;font-weight:700}.cc-cell.mute b{color:#8aa0b2}
.cc-note{margin:0;font-size:12.5px;color:#4d6478}
.cc-empty{padding:18px;color:#5d7387;font-size:13.5px;margin:0}
.cc-pill{display:inline-block;font-size:11.5px;font-weight:800;padding:3px 9px;border-radius:20px;white-space:nowrap;background:#eef3f6;color:#4d6478}
.cc-pill.ok{background:#e3f6ed;color:#0d6b4a}.cc-pill.warn{background:#fff4e5;color:#8a4b00}.cc-pill.bad{background:#fdecee;color:#a12639}
/* drawer */
.cc-wrap{position:fixed;inset:0;z-index:60;background:rgba(8,41,69,.38);display:flex;justify-content:flex-end}
.cc-drawer{width:min(860px,100vw);height:100%;background:#fff;box-shadow:-18px 0 40px rgba(8,41,69,.18);display:flex;flex-direction:column;color:#10253b}
.cc-load{padding:40px;font-size:14px;color:#4d6478}
.cc-dh{padding:18px 22px;border-bottom:1px solid #d9e6ec;display:flex;align-items:flex-start;gap:12px}
.cc-dh h2{margin:0;font-size:19px;color:#082945}
.cc-dsub{display:flex;gap:8px;align-items:center;font-size:12.5px;color:#4d6478;margin-top:4px;flex-wrap:wrap}
.cc-x{width:40px;height:40px;border:1px solid #d9e6ec;border-radius:10px;background:#fff;font-size:20px;color:#193966;cursor:pointer}
.cc-dbody{flex:1;min-height:0;display:flex}
.cc-secs{width:220px;flex-shrink:0;border-right:1px solid #eef3f6;padding:12px 10px;display:flex;flex-direction:column;gap:2px;overflow:auto}
.cc-secs button{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:#33495c;font-size:13.5px;cursor:pointer;text-align:left}
.cc-secs button span{flex:1}.cc-secs button[aria-pressed=true]{background:#e6f5f6;color:#082945;font-weight:700}
.cc-secs i{width:8px;height:8px;border-radius:50%;background:#b0bec9}.cc-secs i.ok{background:#16a34a}.cc-secs i.warn{background:#d97706}
.cc-secs .cc-small{margin:8px 6px 4px}.cc-secs .cc-btn{margin:0 6px}
.cc-form{flex:1;min-width:0;padding:18px 22px;display:flex;flex-direction:column;gap:14px;overflow:auto}
.cc-form h3{margin:0;font-size:17px;color:#082945}
.cc-form label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:700;color:#33495c}
.cc-form input:not([type=checkbox]):not([type=radio]):not([type=range]),.cc-form select,.cc-prof input:not([type=checkbox]),.cc-prof select{height:42px;border:1px solid #d9e6ec;border-radius:10px;padding:0 10px;font:inherit;font-size:14px;font-weight:500;background:#fff;color:#10253b;min-width:0}
.cc-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cc-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cc-dl{margin:0;display:grid;grid-template-columns:170px minmax(0,1fr);row-gap:8px;font-size:13.5px}.cc-dl dt{color:#5d7387}.cc-dl dd{margin:0;font-weight:700}
.cc-radio{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:8px}
.cc-radio legend{font-size:13px;font-weight:700;color:#33495c;margin-bottom:8px}
.cc-radio label,.cc-check{flex-direction:row!important;align-items:center;gap:10px!important;font-size:14px!important;font-weight:500!important;color:#10253b!important;min-height:44px}
.cc-radio label{padding:0 12px;border:1px solid #d9e6ec;border-radius:10px}
.cc-radio input,.cc-check input{width:18px;height:18px;accent-color:#193966;margin:0;flex-shrink:0}
.cc-range{flex-direction:row!important;align-items:center;gap:12px!important}.cc-range input{flex:1;accent-color:#193966}
.cc-hint{justify-content:flex-end;font-weight:500!important}
.cc-alert{padding:12px 14px;border-radius:12px;background:#f6fafb;font-size:13.5px;color:#33495c}
.cc-alert.warn{background:#fff4e5;color:#8a4b00;font-weight:600}.cc-alert.bad{background:#fdecee;color:#a12639;font-weight:600}.cc-alert.ok{background:#e3f6ed;color:#0d6b4a;font-weight:600}
.cc-diff{padding:10px 12px;border-radius:10px;background:#f6fafb;font-size:12.5px;color:#4d6478}.cc-diff:empty{display:none}.cc-diff s{color:#8a4b00}.cc-diff b{color:#0d6b4a}
.cc-disk{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid #d9e6ec;border-radius:12px}
.cc-disk>div{display:flex;flex-direction:column;gap:6px}.cc-disk small{font-size:12px;color:#4d6478}
.cc-meter{display:block;height:10px;border-radius:5px;background:#eef3f6;overflow:hidden}.cc-meter i{display:block;height:100%;background:#00b5bb}.cc-meter i.warn{background:#d97706}
.cc-df{padding:12px 22px;border-top:1px solid #d9e6ec;display:flex;align-items:center;gap:10px}.cc-df .cc-small{flex:1}
/* profiles */
.cc-prof{display:grid;grid-template-columns:280px minmax(0,1.1fr) minmax(0,1fr);gap:14px;align-items:start}
.cc-card{background:#fff;border:1px solid #d9e6ec;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.cc-card h3{margin:0;font-size:16px;color:#082945}
.cc-pitem{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:11px;border:1px solid #eef3f6;background:#fff;text-align:left;cursor:pointer;color:#10253b}
.cc-pitem b{font-size:14px}.cc-pitem small{font-size:12px;color:#4d6478}
.cc-pitem[aria-pressed=true]{border:2px solid #00b5bb;background:#f0fbfb}
.cc-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cc-pname{flex:1;font-size:16px!important;font-weight:800!important;color:#082945}
.cc-pg{border:1px solid #eef3f6;border-radius:12px;padding:6px 12px 10px}
.cc-pg.on{border-color:#d9e6ec}.cc-pg>small{display:block;font-size:12px;color:#8aa0b2;padding-left:28px}
.cc-pgb{display:flex;flex-direction:column;gap:8px;padding-left:28px}
.cc-prof label{display:flex;flex-direction:column;gap:5px;font-size:12.5px;font-weight:700;color:#33495c}
.cc-applist{display:flex;flex-direction:column;max-height:240px;overflow:auto;border:1px solid #eef3f6;border-radius:10px;padding:2px 10px}
.cc-pc{border:1px solid #eef3f6;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
.cc-pc small{font-size:12px;color:#4d6478}.cc-pc small.bad{color:#a12639}
.cc-chg{display:grid;grid-template-columns:140px minmax(0,1fr) 16px minmax(0,1fr);gap:6px;font-size:12.5px;align-items:center}
.cc-chg span:first-child{color:#5d7387}.cc-chg s{color:#8a4b00;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-chg b{color:#0d6b4a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-line{display:flex;gap:8px;font-size:12.5px}.cc-line .ok{color:#0d6b4a;font-weight:800}.cc-line .bad{color:#a12639;font-weight:800}.cc-line .na{color:#8aa0b2;font-weight:800}
@media (max-width:1200px){.cc-prof{grid-template-columns:1fr}.cc-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.cc-dbody{flex-direction:column}.cc-secs{width:auto;flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid #eef3f6}.cc-secs button{white-space:nowrap}.cc-grid2,.cc-grid3{grid-template-columns:1fr}}
.cc-secs .cc-btn{border:1px solid #d9e6ec;justify-content:center;min-height:40px;font-weight:700;color:#193966}
.cc-advwrap{display:grid;grid-template-columns:190px minmax(0,1fr);gap:16px;align-items:start}
.cc-advnav{display:flex;flex-direction:column;gap:10px;border-right:1px solid #eef3f6;padding-right:10px}
.cc-advnav b{display:block;font-size:11.5px;letter-spacing:.5px;text-transform:uppercase;color:#5d7387;margin:2px 0 4px}
.cc-advnav button{display:block;width:100%;text-align:left;min-height:34px;padding:4px 8px;border:0;border-radius:8px;background:transparent;color:#33495c;font-size:13px;cursor:pointer}
.cc-advnav button[aria-pressed=true]{background:#e6f5f6;color:#082945;font-weight:700}
.cc-advbody{display:flex;flex-direction:column;gap:12px;min-width:0}
.cc-adv{display:flex;flex-direction:column;gap:10px}
.cc-afg{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.cc-af{display:flex!important;flex-direction:column;gap:4px!important;font-size:12px!important;font-weight:700!important;color:#33495c!important;min-width:0}
.cc-af span small{font-weight:500;color:#8aa0b2}
.cc-af input:not([type=checkbox]),.cc-af select{height:38px!important;font-size:13.5px!important}
.cc-af.chk{flex-direction:row!important;align-items:center;gap:8px!important;min-height:38px}.cc-af.chk input{width:18px;height:18px;accent-color:#193966;margin:0}
.cc-af.ro code{font-size:12px;font-weight:500;color:#4d6478;background:#f6fafb;border-radius:6px;padding:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-afs{border:1px solid #eef3f6;border-radius:12px;padding:10px 12px;margin:0;display:flex;flex-direction:column;gap:10px;min-width:0}
.cc-afs legend{font-size:12.5px;font-weight:800;color:#082945;padding:0 4px}
.cc-afs.d1,.cc-afs.d2,.cc-afs.d3{background:#fbfdfe}
.cc-xml{width:100%;min-height:420px;box-sizing:border-box;font-family:ui-monospace,Menlo,monospace;font-size:12px;border:1px solid #d9e6ec;border-radius:10px;padding:10px;resize:vertical}
@media (max-width:760px){.cc-advwrap{grid-template-columns:1fr}.cc-advnav{border-right:0}}
.cc-drawer.full{width:100vw}
.cc-drawer.full .cc-form{padding:18px 28px}
.cc-drawer.full .cc-advwrap{grid-template-columns:240px minmax(0,1fr)}
.cc-drawer.full .cc-advnav{position:sticky;top:0;max-height:calc(100vh - 170px);overflow:auto}
.cc-drawer.full .cc-advnav b{font-size:12.5px;color:#082945;text-transform:none;letter-spacing:0;padding:6px 8px;background:#f6fafb;border-radius:8px}
/* grouped sections */
.cc-secs .cc-grp{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#5d7387;padding:12px 12px 4px}
.cc-secs span.cc-grp{padding:6px 0}
.cc-careful{font-style:normal;font-size:10.5px;font-weight:700;padding:2px 6px;border-radius:6px;background:#fff1d6;color:#7a4300}
/* basic information */
.cc-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:12px}
.cc-facts div{display:flex;flex-direction:column;gap:2px;padding:9px 12px;background:#f5f9fa;border-radius:9px;min-width:0}
.cc-facts span{font-size:11.5px;font-weight:600;color:#5d7387}
.cc-facts b{font-size:13px;font-family:ui-monospace,Menlo,monospace;font-weight:500;word-break:break-all}
/* ISUP */
.cc-isup{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:10px 14px;align-items:center;margin:12px 0;font-size:13.5px}
.cc-isup>b{font-size:11px;letter-spacing:.05em;color:#5d7387}
.cc-isup>span:nth-child(3n+1){font-weight:600;color:#3f5668}
.cc-isup input,.cc-isup select{height:36px;box-sizing:border-box;border:1px solid #c9dbe3;border-radius:9px;padding:0 10px;font:inherit;font-size:13.5px;width:100%}
.cc-isup .mono,.cc-cmp .mono,.cc-cf .mono{font-family:ui-monospace,Menlo,monospace}
.cc-ok{color:#1f7a45;font-weight:600}.cc-bad{color:#a12639;font-weight:600}
.cc-btn.danger-fill{background:#b4233f;border-color:#b4233f;color:#fff}.cc-btn.danger-fill:disabled{opacity:.5}
/* confirm + waiting */
.cc-modal{position:fixed;inset:0;z-index:1300;background:rgba(7,22,36,.55);display:grid;place-items:center;padding:16px}
.cc-mbox{width:min(600px,100%);background:#fff;border-radius:16px;box-shadow:0 30px 80px rgba(0,15,30,.35);padding:22px 24px;display:flex;flex-direction:column;gap:14px;color:#0b1b2b}
.cc-mbox h2{margin:0;font-size:19px;color:#082945}
.cc-mhead{display:flex;gap:12px}.cc-mhead p{margin:4px 0 0;font-size:13.5px;color:#3f5668;line-height:1.5}
.cc-warnic{width:40px;height:40px;border-radius:12px;background:#fde8ec;color:#b4233f;display:grid;place-items:center;font-weight:800;font-size:20px;flex:none}
.cc-cmp{display:grid;grid-template-columns:130px minmax(0,1fr) 20px minmax(0,1fr);gap:8px 10px;align-items:center;font-size:13.5px}
.cc-cmp>b{font-size:11px;letter-spacing:.05em;color:#5d7387}
.cc-cmp .new{font-weight:700;color:#b4233f;background:#fde8ec;padding:2px 7px;border-radius:6px;justify-self:start}
.cc-cf{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#3f5668}
.cc-cf input{height:40px;box-sizing:border-box;border:1px solid #c9dbe3;border-radius:9px;padding:0 11px;font-size:14px}
.cc-mfoot{display:flex;justify-content:flex-end;gap:10px}
.cc-wait{display:flex;align-items:center;gap:14px}.cc-wait b{font-size:26px;color:#082945;display:block}.cc-wait small{font-size:13px;color:#5d7387}
.cc-spin{width:56px;height:56px;border-radius:50%;border:6px solid #e3edf2;border-top-color:#0f6f84;box-sizing:border-box;animation:ccspin 1s linear infinite;flex:none}
@keyframes ccspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.cc-spin{animation:none}}
.cc-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.cc-steps li{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid #edf3f6;font-size:14px;color:#6b8194}
.cc-steps li i{width:22px;height:22px;border-radius:50%;border:1.5px solid #c9dbe3;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:700;box-sizing:border-box;flex:none}
.cc-steps li.ok{color:#0b1b2b}.cc-steps li.ok i{background:#d9f2e4;border-color:#d9f2e4;color:#1f7a45}
.cc-steps li.run{color:#0b1b2b;font-weight:700}.cc-steps li.run i{background:#e3f4f6;border-color:#e3f4f6;color:#0f6f84}
.cc-steps li.bad{color:#a12639;font-weight:700}.cc-steps li.bad i{background:#fde8ec;border-color:#fde8ec;color:#a12639}
@media (max-width:760px){.cc-isup{grid-template-columns:1fr}.cc-isup>b{display:none}.cc-cmp{grid-template-columns:1fr}}
.cc-btn.cc-danger{color:#a12639}
