/* Anna 1.0.4 | 作者：小兔。旧版云主控的原生表现层，不改变操作协议。 */
.anna-theme .page-content > .container-fluid:has(.anna-service-control),
.anna-theme .page-content > .anna-service-host-container { max-width:1840px; }
.anna-theme .anna-service-control { padding:0; --service-gap:24px; }
.anna-service-control > .row:first-child { margin:0 0 var(--service-gap)!important; }
.anna-service-control > .row:first-child > .col-12 { padding:0; }
.anna-theme .anna-service-header {
  display:flex; flex-wrap:wrap; gap:22px; margin:0; padding:26px 28px;
  border-radius:20px; border:1px solid var(--anna-border); border-top:3px solid var(--anna-accent);
  background:var(--anna-surface); background-image:none; color:var(--anna-text); box-shadow:none;
}
.anna-theme .anna-service-header .text-white { color:var(--anna-text)!important; }
.anna-theme .anna-service-header .text-white-50 { color:var(--anna-muted)!important; }
.anna-service-header .power_box { flex:1 1 290px; min-width:0; max-width:none; margin:0!important; }
.anna-service-header .power_box > .d-flex { align-items:center; }
.anna-service-header .power_box .d-flex > div:last-child { min-width:0; }
.anna-service-header .power_box section:first-child { flex-wrap:wrap; gap:8px; }
.anna-service-header .power_box h4 { font-size:20px; line-height:1.5; overflow-wrap:anywhere; }
.anna-service-header .power_box section + section { font-size:13px; color:var(--anna-muted); }
.anna-service-header .badge { margin-left:0!important; padding:5px 9px!important; border-radius:6px; font-size:12px; line-height:1.3; }
.anna-service-header .powerimg { width:46px; height:46px; min-width:46px; border-radius:13px; background:var(--anna-soft); font-size:24px; box-shadow:none!important; }
.anna-service-header .box_left_wrap {
  flex:0 1 auto; min-width:74px; min-height:0; max-width:none; padding:0 0 0 22px!important;
  margin:0!important; border-left:1px solid var(--anna-border);
}
.anna-service-header .box_left_wrap h5 { font-size:14px; line-height:1.6; overflow-wrap:anywhere; margin-bottom:0; }
.anna-service-header .osbox { flex:1 1 220px; }
.anna-service-header .osbox h5 { max-width:340px; }
.anna-service-header .anna-service-actions {
  flex:0 0 100%!important; justify-content:flex-end!important; gap:10px;
  padding-top:18px; border-top:1px solid var(--anna-border); flex-wrap:wrap;
}
.anna-service-header .anna-service-actions > .btn-group { margin:0!important; }
.anna-service-control .left_wrap_btn { width:auto!important; height:auto; min-height:30px; padding:4px 9px; background:var(--anna-soft); color:var(--anna-accent); border:1px solid transparent; border-radius:7px; box-shadow:none; font-size:12px; line-height:1.5; }
.anna-service-control .left_wrap_btn:hover { border-color:var(--anna-accent); }
.anna-service-header .custom-button { display:inline-flex; gap:7px; align-items:center; min-height:40px; padding:9px 15px; border:1px solid var(--anna-border); border-radius:10px; background:var(--anna-soft)!important; color:var(--anna-accent)!important; box-shadow:none; font-size:13px; }
.anna-service-header .custom-button:hover { border-color:var(--anna-accent); }
.anna-theme .anna-service-layout { display:grid; grid-template-columns:320px minmax(0,1fr); gap:var(--service-gap); margin:0!important; align-items:start; }
.anna-service-layout > .anna-service-summary,.anna-service-layout > .anna-service-workspace { width:100%; max-width:100%; min-width:0; padding:0; }
.anna-service-control .anna-service-summary > .card,.anna-service-control .anna-service-workspace > .card { border:1px solid var(--anna-border); box-shadow:none; margin:0; }
.anna-service-control .anna-service-summary > .card > .card-body { padding:22px; }
.anna-service-control .anna-service-workspace > .card { background:transparent; border:0; }
.anna-service-control .anna-service-workspace > .card > .card-body { padding:0; }
.anna-service-control .anna-service-summary .row { margin-left:0; margin-right:0; }
.anna-service-control .anna-service-summary .row > [class*="col-"] { padding-left:0; padding-right:0; }
.anna-service-control .anna-service-summary .card-body .card-body { padding:16px 0; background:transparent!important; box-shadow:none; border-radius:0; }
.anna-service-control .anna-service-summary .card-body .card-body > p:first-child { font-size:13px; font-weight:600; color:var(--anna-text); margin-bottom:12px; }
.anna-service-control .anna-service-summary .card-body .card-body > p { overflow-wrap:anywhere; line-height:1.9; }
.anna-service-control .anna-service-summary .card-body .card-body > p .fr { float:none; display:inline-flex; margin:6px 0 0 8px; }
.anna-service-control .anna-service-summary .text-gray { color:var(--anna-muted); }
.anna-service-control .anna-service-summary .dc { color:var(--anna-accent); }
.anna-service-control .anna-service-summary .pre-money-box { background-image:none; border-top:1px solid var(--anna-border); border-bottom:1px solid var(--anna-border); }
.anna-service-control .anna-service-summary .pre-money-box h3 { font-size:28px; font-variant-numeric:tabular-nums; margin-bottom:8px!important; }
.anna-service-control .anna-service-summary .pre-money-box > section { gap:8px; margin:8px 0; }
.anna-service-control .anna-service-summary .pre-money-box > section:last-child { margin-bottom:0; font-size:12px; }
.anna-service-control .anna-service-summary .pre-money-box > section:last-child p { margin:6px 0; }
.anna-service-control .anna-service-summary .custom-switch { margin-bottom:0!important; }
.anna-service-control .anna-service-summary .rsb { height:auto; min-height:30px; padding:4px 10px; line-height:1.5; }
.anna-service-control .anna-service-summary .btn-danger { background:transparent!important; border-color:var(--anna-danger); color:var(--anna-danger)!important; }
.anna-service-control #cloud_nat > .bg-primary { background:var(--anna-soft)!important; color:var(--anna-accent)!important; border:1px solid var(--anna-border); border-radius:10px!important; padding:12px!important; margin:12px 0 18px!important; overflow-wrap:anywhere; font-size:12px; }
.anna-service-control #cloud_nat .text-white { color:inherit!important; }
.anna-service-control #cloud_nat label { margin-bottom:0; }
.anna-service-control .anna-service-summary .configuration_list { margin:0!important; }
.anna-service-control .anna-service-summary .configuration_list > .card-body { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:nowrap; gap:12px; padding:11px 0; border-bottom:1px solid var(--anna-border); }
.anna-service-control .anna-service-summary .configuration_list p { width:auto; max-width:65%; flex:0 1 auto; font-size:13px; white-space:normal; overflow-wrap:anywhere; }
.anna-service-control .anna-service-summary .configuration-btn-down { min-height:40px; margin:8px 0; color:var(--anna-accent); font-size:12px; cursor:pointer; }
.anna-service-control .nav-tabs-custom {
  display:flex; flex-wrap:wrap; gap:5px; margin:0 0 20px; padding:8px;
  background:var(--anna-surface); border:1px solid var(--anna-border); border-radius:13px;
}
.anna-service-control .nav-tabs-custom .nav-item { flex:0 0 auto; }
.anna-service-control .nav-tabs-custom .nav-link { display:flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:9px 13px; border:0!important; border-radius:8px; color:var(--anna-muted); font-size:13px; font-weight:500; text-decoration:none; white-space:nowrap; }
.anna-service-control .nav-tabs-custom .nav-link::after { display:none; }
.anna-service-control .nav-tabs-custom .nav-link:hover { background:var(--anna-bg); color:var(--anna-text); }
.anna-service-control .nav-tabs-custom .nav-link.active { background:var(--anna-soft); color:var(--anna-accent); }
.anna-service-control .tab-content { padding:0!important; min-height:0!important; }
.anna-service-control #home1 > .row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:0; }
.anna-service-control #home1 .chartbox { width:100%!important; min-width:0; padding:20px; background:var(--anna-surface); border:1px solid var(--anna-border); border-radius:16px; }
.anna-service-control .module_chart > div:first-child { height:auto!important; min-height:30px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin-bottom:16px; }
.anna-service-control .module_chart h4 { display:flex; align-items:center; gap:9px; margin:0; float:none!important; font-size:15px; line-height:1.5; }
.anna-service-control .module_chart > div:first-child > div { float:none!important; margin:0!important; max-width:100%; }
.anna-service-control .module_chart_date { display:flex; gap:6px; align-items:center; min-width:0; margin-bottom:16px; }
.anna-service-control .module_chart_date input.form-control { flex:1 1 0; width:0!important; min-width:0; max-width:100%; height:38px; padding:6px 8px; margin:0!important; font-size:12px; background:var(--anna-bg); color:var(--anna-text); border-color:var(--anna-border); border-radius:8px; }
.anna-service-control .module_chart_date > span { flex-shrink:0; color:var(--anna-muted); font-size:12px; margin:0!important; }
.anna-service-control .chartbox > .h-100 { height:auto!important; }
.anna-service-control .chart_content_box { height:280px!important; min-width:0; max-width:100%; }
.anna-service-control .tab-pane:not(#home1) { padding:22px; background:var(--anna-surface); border:1px solid var(--anna-border); border-radius:16px; }
.anna-service-control .tab-pane:not(#home1) .form-control { width:100%; max-width:100%; }
.anna-service-control .tab-pane .table-responsive { width:100%; }
.anna-service-control .anna-service-icon { display:inline-block; width:18px; height:18px; flex-shrink:0; vertical-align:middle; background:currentColor; -webkit-mask:var(--service-icon) center/contain no-repeat; mask:var(--service-icon) center/contain no-repeat; color:var(--anna-accent); }
.anna-service-control .anna-service-icon-chart-line { --service-icon:url('./icons/chart-line.svg'); }
.anna-service-control .anna-service-icon-cog { --service-icon:url('./icons/cog.svg'); }
.anna-service-control .anna-service-icon-copy { --service-icon:url('./icons/copy.svg'); }
.anna-service-control .anna-service-icon-database { --service-icon:url('./icons/database.svg'); }
.anna-service-control .anna-service-icon-download { --service-icon:url('./icons/download.svg'); }
.anna-service-control .anna-service-icon-file-text { --service-icon:url('./icons/file-text.svg'); }
.anna-service-control .anna-service-icon-globe { --service-icon:url('./icons/globe.svg'); }
.anna-service-control .anna-service-icon-hard-drive { --service-icon:url('./icons/hard-drive.svg'); }
.anna-service-control .anna-service-icon-monitor { --service-icon:url('./icons/monitor.svg'); }
.anna-service-control .anna-service-icon-power { --service-icon:url('./icons/power.svg'); }
.anna-service-control .anna-service-icon-refresh { --service-icon:url('./icons/refresh.svg'); }
.anna-service-control .anna-service-icon-terminal { --service-icon:url('./icons/terminal.svg'); }
.anna-service-control .anna-service-icon-calendar { --service-icon:url('./icons/calendar.svg'); }
.anna-service-control .anna-service-icon-shield { --service-icon:url('./icons/shield.svg'); }
.anna-service-control .anna-service-icon-user { --service-icon:url('./icons/user.svg'); }
.anna-service-control .anna-service-icon-wallet { --service-icon:url('./icons/wallet.svg'); }
.anna-service-control .anna-service-icon-server { --service-icon:url('./icons/server.svg'); }
.anna-service-control .anna-service-icon::before { content:none!important; }
.anna-service-control .anna-service-icon-action { min-width:30px; min-height:30px; -webkit-mask-size:17px; mask-size:17px; cursor:pointer; }
.anna-service-control :focus-visible { outline:3px solid var(--anna-accent)!important; outline-offset:3px; }
html[data-anna-theme="dark"] .anna-service-control .dropdown-menu { background:var(--anna-surface); border-color:var(--anna-border); }
html[data-anna-theme="dark"] .anna-service-control .dropdown-item { color:var(--anna-text); }
html[data-anna-theme="dark"] .anna-service-control .dropdown-item:hover { background:var(--anna-soft); }
@media (max-width:1400px) {
  .anna-theme .anna-service-layout { grid-template-columns:280px minmax(0,1fr); gap:20px; }
  .anna-service-control #home1 > .row { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:1050px) {
  .anna-theme .anna-service-layout { grid-template-columns:minmax(0,1fr); }
  .anna-service-header .box_left_wrap { flex:1 1 120px; }
  .anna-service-control .anna-service-summary > .card > .card-body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 24px; }
  .anna-service-control .anna-service-summary .pre-money-box { border:0; }
  .anna-service-control .anna-service-summary #cloud_nat { grid-column:1 / -1; }
}
@media (max-width:600px) {
  .anna-theme .anna-service-control { --service-gap:16px; }
  .anna-theme .anna-service-header { padding:20px; gap:18px; }
  .anna-service-header .power_box { flex-basis:100%; }
  .anna-service-header .power_box h4 { font-size:17px; }
  .anna-service-header .box_left_wrap { padding-left:0!important; border:0; }
  .anna-service-header .anna-service-actions { justify-content:flex-start!important; padding-top:16px; }
  .anna-service-control .anna-service-summary > .card > .card-body { display:block; padding:18px; }
  .anna-service-control .anna-service-summary .pre-money-box { border-top:1px solid var(--anna-border); border-bottom:1px solid var(--anna-border); }
  .anna-service-control .nav-tabs-custom { flex-wrap:nowrap; overflow-x:auto; padding:6px; margin-bottom:16px; }
  .anna-service-control #home1 .chartbox { padding:16px; }
  .anna-service-control .module_chart_date { flex-wrap:wrap; gap:8px; }
  .anna-service-control .module_chart_date input.form-control { flex-basis:100%; width:100%!important; min-height:42px; font-size:13px; }
  .anna-service-control .module_chart_date > span { display:none; }
  .anna-service-control .chart_content_box { height:240px!important; }
  .anna-service-control .tab-pane:not(#home1) { padding:16px; }
}
@media (prefers-reduced-motion:reduce) {
  .anna-service-control *, .anna-service-control *::before, .anna-service-control *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
