

:root{--bg:#070b16;--panel:#111827cc;--panel2:#0b1220e6;--line:#ffffff18;--text:#eaf2ff;--muted:#94a3b8;--blue:#38bdf8;--green:#22c55e;--red:#ef4444;--amber:#f59e0b;--violet:#8b5cf6}
*{box-sizing:border-box}
body{--home-bg-x:50%;--home-bg-y:50%;margin:0;overflow-x:hidden;min-height:100vh;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,"Microsoft YaHei",Arial;background:radial-gradient(circle at 12% 5%,#22d3ee26,transparent 32%),radial-gradient(circle at 82% 0%,#8b5cf626,transparent 28%),linear-gradient(135deg,#050816,#0f172a 58%,#111827);background-attachment:fixed;background-size:cover;background-position:var(--home-bg-x) var(--home-bg-y)}body.hasHomeBg::before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(135deg,#050816cc,#0f172acc);pointer-events:none}.homeBgDragZone{position:fixed;inset:0;z-index:-2;pointer-events:none}
body.themeJarvis,.themeJarvis{--bg:#020617;--primary:#38bdf8;--accent:#22d3ee}.themeLinear,body.themeLinear{--bg:#0a0a0a;--primary:#fff;--accent:#a3a3a3}.themeSunPanel{}
.sunPanelCloneApp{max-width:1280px;margin:0 auto;padding:22px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;gap:14px;align-items:center}.logo{width:50px;height:50px;border-radius:18px;background:linear-gradient(135deg,#38bdf8,#22c55e);display:grid;place-items:center;color:#00111f;font-weight:1000;box-shadow:0 18px 60px #22d3ee30}.title{font-size:30px;font-weight:1000;letter-spacing:.03em}.sub{font-size:13px;color:var(--muted);margin-top:3px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.btn,.pill{border:1px solid var(--line);background:#0f172acc;color:var(--text);border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;text-decoration:none}.btn:hover{border-color:#38bdf880}.primary{background:linear-gradient(135deg,#0ea5e9,#2563eb);border:0}.green{background:linear-gradient(135deg,#22c55e,#0d9488);border:0}.amber{background:#78350f}.danger{background:#7f1d1d}.network{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.network span,.badge{border:1px solid var(--line);background:#0b1220aa;border-radius:999px;padding:7px 10px;color:var(--muted);font-size:12px}.layout{display:block;overflow:visible}.side,.right,.panel,.hero,.glassBox{border:1px solid var(--line);background:var(--panel);border-radius:24px;box-shadow:0 14px 45px #0004;backdrop-filter:blur(14px)}
.card{border:1px solid var(--line);background:var(--panel);border-radius:24px;box-shadow:0 14px 45px #0004}.side{position:static;padding:14px;margin:14px 0 18px}.right{display:none}.main{min-width:0}.search,.input,select,textarea{width:100%;border:1px solid var(--line);background:#02061799;color:var(--text);border-radius:14px;padding:11px;margin:4px 0}textarea{min-height:130px}.groupNav{display:flex;gap:8px;margin:12px 0;overflow-x:auto;padding-bottom:4px}.side .featureCloud{display:flex}.groupNav button,.tab{text-align:left;border:1px solid transparent;background:transparent;color:var(--text);border-radius:14px;padding:10px;cursor:pointer}.groupNav button{width:auto;white-space:nowrap}.tab{width:100%}.groupNav button.active,.tab.active,.groupNav button:hover,.tab:hover{background:#38bdf81a;border-color:#38bdf855}.featureCloud{display:flex;gap:8px;flex-wrap:wrap}.featureCloud span{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:7px 9px;color:var(--muted)}.hero{padding:24px;margin-bottom:16px}.hero h1{font-size:44px;margin:0 0 8px}.muted{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.stat{border:1px solid var(--line);border-radius:18px;padding:14px;background:#02061766}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.card{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;padding:16px;color:var(--text);text-decoration:none;min-height:112px;transition:.18s}.card:hover{transform:translateY(-2px);border-color:#38bdf880}.ico{width:var(--home-icon-size,50px);height:var(--home-icon-size,50px);border-radius:16px;display:grid;place-items:center;font-size:calc(var(--home-icon-size,50px) * .48);flex:0 0 auto}.card h3{margin:0 0 6px}.card p{margin:0;font-size:13px;color:var(--muted)}.card-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45}.cardStatusBadges{position:absolute;right:12px;top:10px;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cardStatusBadges .badge{padding:4px 8px;font-size:11px}.badge-danger{border-color:#ef444477;color:#fecaca}.badge-ok{border-color:#22c55e66;color:#bbf7d0}.badge-warn{border-color:#f59e0b66;color:#fde68a}.sectionTitle{font-weight:1000;margin:18px 0 10px}.admin{display:none;margin-top:18px}.admin.open{display:block}.adminShell{display:grid;grid-template-columns:210px 1fr;gap:14px}.adminMenu,.panel{padding:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.row,.mini{border:1px solid var(--line);background:#02061766;border-radius:16px;padding:11px;margin:8px 0}.row{display:flex;gap:10px;align-items:center;justify-content:space-between}.miniList{max-height:360px;overflow:auto}.jarvis{border:1px solid #22c55e44;background:#052e1b66;border-radius:20px;padding:14px}.cmd{display:flex;gap:8px}.cmd .input{flex:1}.toast{position:fixed;right:20px;top:20px;z-index:200;background:#020617;border:1px solid var(--line);border-radius:14px;padding:12px 16px;display:none}.contextMenu{position:fixed;z-index:99;background:#020617;border:1px solid #ffffff24;border-radius:16px;padding:10px;display:none;box-shadow:0 18px 60px #0008;max-width:min(520px,92vw)}.contextMenu button{display:block;width:180px;margin:4px}.alertCard{border-left:4px solid var(--red);border-color:#ef444455}.alertBanner{background:var(--panel);display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left}.alertRow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}.alertRowLabel{font-weight:1000;white-space:nowrap}.alertRowNames{flex:0 1 auto;min-width:0}.alertRowNote{font-size:12px;color:var(--muted);white-space:nowrap}.alertRowLocal{border-left:3px solid #ef4444;padding-left:10px}.alertRowSite{border-left:3px solid #f59e0b;padding-left:10px}.alertRowSite .alertRowLabel{color:#fde68a}.alertList .mini{border-color:#ef444455;background:rgba(127,29,29,.20)}.themePolishSunPanel{box-shadow:0 18px 60px #38bdf830}.theme-jarvis-grid{display:none}.themeJarvis .theme-jarvis-grid{display:block}.themePolishJarvis{border-color:#22d3ee88}.themeLinear .theme-linear-minimal{letter-spacing:.01em}.themePolishLinear{border-radius:8px}.mobileAdminTabs{display:none;gap:8px;flex-wrap:wrap}.admin.open .mobileAdminTabs{display:flex}.androidApkEntry{border-color:#22c55e66}

/* Sun-Panel home item group edit/sort/add interaction */
.sunHomeGroup{margin-bottom:18px;content-visibility:auto;contain-intrinsic-size:auto 320px}.sunHomeGroupHeader{display:flex;align-items:center;gap:10px;margin:0 0 10px}.sunHomeGroupTitle{font-weight:1000;font-size:18px;flex:1}.sunHomeGroupActions{display:flex;gap:8px;flex-wrap:wrap}.sunHomeMiniBtn{border:1px solid var(--line);background:#0f172acc;color:var(--text);border-radius:10px;padding:6px 10px;font-weight:900;cursor:pointer}.sunHomeMiniBtn.success{background:#18a058;color:#071b0d;border:0}.sunHomeMiniBtn.warning{background:#f0a020;color:#211400;border:0}.sunHomeAppGrid.sorting .card{cursor:grab;outline:1px dashed #73f28a}.sunHomeAppGrid .card.dragging{opacity:.45}.sunHomeAddCard{border:1px dashed #73f28a88;background:#12351d88;color:#c9ffd4;min-height:124px;display:flex;align-items:center;justify-content:center;border-radius:22px;font-weight:1000;cursor:pointer}.sunHomeEditModal{display:none;position:fixed;z-index:120;left:50%;top:50%;transform:translate(-50%,-50%);width:min(620px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto;background:#2f2f2d;color:#f3efd2;border:1px solid #111;border-radius:16px;box-shadow:0 20px 70px #000a;padding:16px}.sunHomeEditModal.open{display:block;animation:modalCardIn .26s cubic-bezier(.22,1,.36,1)}.sunHomeEditGrid{display:grid;grid-template-columns:120px 1fr;gap:10px;align-items:center}.sunHomeEditGrid input,.sunHomeEditGrid select,.sunHomeEditGrid textarea{background:#141414;border:1px solid #444;border-radius:10px;color:#eee;padding:9px}.sunHomeContextActions{position:absolute;right:10px;top:10px;display:none;gap:6px}.card:hover .sunHomeContextActions,.sunHomeAppGrid.sorting .sunHomeContextActions{display:flex}.sunHomeContextActions button{border:0;border-radius:8px;background:#0008;color:#fff;padding:5px 7px;cursor:pointer}.sunHomeSunMarkers{display:none}


/* Sort mode text-overlap fix: keep Sun-Panel cards readable while draggable */
.sunHomeAppGrid.sorting{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch}.sunHomeAppGrid.sorting .card{min-height:142px;height:auto;display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:16px 14px 14px 14px;overflow:hidden}.sunHomeAppGrid.sorting .card .ico{width:58px;height:58px;min-width:58px;display:grid;place-items:center;align-self:center}.sunHomeAppGrid.sorting .card>div:last-child{min-width:0;overflow:hidden;padding-right:6px}.sunHomeAppGrid.sorting .card h3{margin:0 0 6px 0;line-height:1.2;max-height:2.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.sunHomeAppGrid.sorting .card .card-desc{margin:0 0 5px 0;line-height:1.35;max-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.sunHomeAppGrid.sorting .card .muted{margin:0;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sunHomeAppGrid.sorting .cardStatusBadges{position:absolute;left:12px;right:54px;top:8px;display:flex;gap:4px;flex-wrap:nowrap;overflow:hidden;pointer-events:none}.sunHomeAppGrid.sorting .cardStatusBadges .badge{font-size:10px;padding:2px 6px;white-space:nowrap}.sunHomeAppGrid.sorting .sunHomeContextActions{display:flex;right:8px;top:8px}.sunHomeAppGrid.sorting .sunHomeContextActions button{width:26px;height:26px;line-height:1;padding:0}.sunHomeAppGrid.sorting .card.dragging{opacity:.55;transform:scale(.98)}@media(max-width:640px){.sunHomeAppGrid.sorting{grid-template-columns:1fr}.sunHomeAppGrid.sorting .card{grid-template-columns:54px minmax(0,1fr);min-height:126px}.sunHomeAppGrid.sorting .card .ico{width:50px;height:50px;min-width:50px}}


.homeDockerPanel{margin:14px 0 18px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(15,23,42,.42);backdrop-filter:blur(14px);display:none}.homeDockerPanel.open{display:block}.homeDockerHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.homeDockerStats{display:flex;gap:8px;flex-wrap:wrap}.homeDockerChip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;background:rgba(255,255,255,.08);font-size:12px}.homeDockerList{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.homeDockerItem{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:8px 10px;background:rgba(2,6,23,.35);font-size:12px}.homeDockerItem.ok{border-color:#22c55e66}.homeDockerItem.danger{border-color:#ef444466}.cardDockerHint{font-size:11px;color:#93c5fd;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sunHomeDockerMarkers{display:none}
/* Home status badges no-overlap: badges stay in normal card flow */
.card{align-items:start}.cardStatusBadges{position:static;grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-start;margin:0 0 8px 0;max-width:100%;overflow:visible}.cardStatusBadges .badge{display:inline-flex;align-items:center;white-space:nowrap;line-height:1.15;max-width:100%}.card .ico{grid-column:1}.card .ico+div{grid-column:2;min-width:0}.sunHomeAppGrid.sorting .cardStatusBadges{position:static;grid-column:1/-1;left:auto;right:auto;top:auto;display:flex;flex-wrap:wrap;gap:4px;overflow:visible;pointer-events:auto;margin:0 0 6px 0}.sunHomeAppGrid.sorting .cardStatusBadges .badge{white-space:nowrap}.sunHomeAppGrid.sorting .card .ico{grid-column:1}.sunHomeAppGrid.sorting .card .ico+div{grid-column:2;min-width:0}


/* Sun-Panel screenshot compact group title and horizontal app cards */
.sunHomeGroupHeader{margin:18px 0 10px;justify-content:flex-start}.sunHomeGroupTitle{flex:0 0 auto;font-size:20px;line-height:1;color:#fff;text-shadow:0 2px 8px #0008}.sunHomeGroupActions{gap:10px;align-items:center}.sunHomeIconBtn{border:0;background:transparent;color:#fff;font-size:22px;font-weight:700;line-height:1;cursor:pointer;padding:0 2px;text-shadow:0 2px 8px #0008}.sunHomeIconBtn:hover{color:#86efac;transform:translateY(-1px)}.sunHomeIconBtn.sortActive{color:#86efac}.sunHomeAppGrid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:18px}.sunHomeAppGrid .card{min-height:74px;height:74px;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:#1f1637cc;border:1px solid #ffffff08;box-shadow:none;overflow:hidden}.sunHomeAppGrid .card:hover{transform:none;background:#2a1e49dd;border-color:#ffffff1c}.sunHomeAppGrid .card .ico{width:42px;height:42px;min-width:42px;border-radius:9px;font-size:20px}.sunHomeAppGrid .card>div:last-child{min-width:0;flex:1}.sunHomeAppGrid .card h3{margin:0;color:#fff;font-size:16px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sunHomeAppGrid .card .card-desc,.sunHomeAppGrid .card .muted{display:none}.sunHomeAppGrid .cardStatusBadges{display:none!important}.sunHomeAddCard{min-height:74px;height:74px;border-radius:12px;background:#1f163755;border-color:#ffffff20;color:#fff}.sunHomeAddCard .sunAddText{font-size:28px}.sunPanelPowered{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);font-size:12px;color:#ffffff90;pointer-events:none}.sunPanelScreenshotHomeMarkers{display:none}@media(max-width:900px){.sunHomeAppGrid{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media(max-width:520px){.sunHomeAppGrid{grid-template-columns:1fr}.sunHomeAppGrid .card{height:68px;min-height:68px}}


/* Sun exact home add/sort mode: hover tools plus save-sort bar below grid */
.sunHomeGroup{margin-top:50px}.sunHomeGroupHeader .sunHomeGroupActions{opacity:0;transition:opacity .12s}.sunHomeGroup:hover .sunHomeGroupActions,.sunHomeGroup.sorting .sunHomeGroupActions{opacity:1}.sunHomeSaveSortBar{display:flex;margin-top:10px}.sunHomeSaveSortBtn{border:0;background:#2a2a2a6b;color:#fff;border-radius:10px;padding:8px 14px;font-weight:800;cursor:pointer;box-shadow:0 0 10px 2px rgba(0,0,0,.2)}.sunHomeSaveSortBtn:before{content:'💾';margin-right:6px}.sunHomeAppGrid.sorting{padding:10px;border:1px solid #ffffff35;border-radius:16px;box-shadow:0 0 30px 10px rgba(0,0,0,.3)}.sunHomeAppGrid.sorting .card{cursor:move}.sunHomeContextActions{display:none!important}.sunHomeAppGrid.sorting .sunHomeContextActions{display:none!important}




/* Sun-Panel item right-click/context menu exact-ish style */
.sunHomeRightMenuExactV1{--sun-home-right-menu-exact-v1:1}
.sunHomeItemContextMenu{
  position:fixed;
  z-index:180;
  width:156px;
  min-height:174px;
  display:none;
  overflow:hidden;
  background:#4f5058;
  color:#f1f1f3;
  border:0;
  border-radius:8px;
  box-shadow:0 14px 36px rgba(0,0,0,.32);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
}
.sunHomeItemContextMenu.open{display:block}
.sunHomeItemContextTop{height:78px;padding:12px 12px 0 12px;border-bottom:1px solid #5f6068;box-sizing:border-box}
.sunHomeItemContextTitle{margin:0;font-size:15px;line-height:20px;font-weight:700;color:#f1f1f3;white-space:nowrap}
.sunHomeItemContextButtons{display:flex;gap:7px;margin-top:7px}
.sunHomeItemContextIconBtn{width:30px;height:25px;border:1px solid #74757d;border-radius:5px;background:transparent;color:#e7e7ea;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer}
.sunHomeItemContextIconBtn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.sunHomeItemContextIconBtn:hover{background:rgba(255,255,255,.06);border-color:#8a8b94}
.sunHomeItemContextActions{padding-top:6px}
.sunHomeItemContextItem{height:42px;padding-left:12px;box-sizing:border-box;display:flex;align-items:center;font-size:15px;line-height:1;font-weight:700;color:#f1f1f3;cursor:pointer}
.sunHomeItemContextItem:hover{background:rgba(255,255,255,.06)}
@media(max-width:520px){.sunHomeItemContextMenu{width:150px;min-height:168px}.sunHomeItemContextTitle,.sunHomeItemContextItem{font-size:15px}.sunHomeItemContextIconBtn{width:29px;height:24px}}

/* Sun-Panel exact wallpaper cover + mask model */
/* Sun wallpaper bindings: filter:blur(var(--home-bg-blur)) backgroundSize='cover' backgroundPosition */
html,body{height:100%;overflow:hidden;background-color:rgb(54,54,54)}body{background:none!important}.sunPanelCloneApp{position:relative;z-index:2;height:100vh;overflow:auto}.sunPanelWallpaperCover.cover.wallpaper{position:fixed;inset:0;z-index:0;background-repeat:no-repeat;background-size:cover;background-position:var(--home-bg-x) var(--home-bg-y);filter:blur(var(--home-bg-blur,0px));transform:scale(var(--home-bg-scale,1.04));will-change:filter,background-position}.sunPanelWallpaperMask.mask{position:fixed;inset:0;z-index:1;background-color:rgba(0,0,0,var(--home-bg-mask,.35));pointer-events:none}.sunPanelWallpaperMarkers{display:none}


/* Sun-Panel EditItem modal screenshot mode */
.sunHomeEditModal.sunPanelEditItemModal{width:min(760px,calc(100vw - 24px));background:#2f2f2d;color:#f6f2dc;border-radius:16px;border:1px solid #151515;padding:0;overflow:hidden;box-shadow:0 24px 90px #000c}.sunPanelEditHeader{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #1f1f1f;font-size:16px;font-weight:900}.sunPanelEditClose{border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer}.sunPanelEditBody{height:min(680px,calc(100vh - 110px));overflow:auto;padding:14px 18px 18px}.sunPanelEditChecks{display:flex;gap:20px;align-items:center;margin-bottom:12px;color:#eee}.sunPanelEditChecks label{display:flex;align-items:center;gap:7px;font-size:13px}.sunPanelEditChecks input{accent-color:#18a058}.sunPanelPreviewBox{height:150px;background:#fff9e8;border-radius:12px;margin-bottom:18px;display:grid;place-items:center}.sunPanelPreviewCard{width:82%;height:74px;border-radius:14px;background:#ece6d7;display:flex;align-items:center;gap:16px;padding:14px 24px}.sunPanelPreviewIcon{width:46px;height:46px;border-radius:12px;background:#d9d3c7;display:grid;place-items:center;color:#777;font-weight:900}.sunPanelPreviewText{flex:1}.sunPanelPreviewTitle{height:18px;width:42%;border-radius:999px;background:#d8d2c7;margin-bottom:10px}.sunPanelPreviewDesc{height:14px;width:64%;border-radius:999px;background:#e2dccf}.sunPanelIconStyleTitle{font-weight:900;margin:6px 0 9px}.sunPanelInfoDot{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#555;color:#ddd;font-size:11px;margin-left:4px}.sunPanelIconTabs{display:flex;gap:8px;margin-bottom:14px}.sunPanelIconTab{border:0;border-radius:8px;padding:8px 18px;background:#41413f;color:#ddd;cursor:pointer;font-weight:800}.sunPanelIconTab.active{background:#18a058;color:#071b0d}.sunPanelEditForm{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}.sunPanelFormItem{display:flex;flex-direction:column;gap:6px}.sunPanelFormItem.full{grid-column:1/-1}.sunPanelFormItem label{font-size:13px;color:#e8e2c8;font-weight:800}.sunPanelRequired{color:#ff5c5c}.sunPanelInputWrap{position:relative;display:flex;gap:8px}.sunPanelInputWrap input,.sunPanelInputWrap textarea,.sunPanelInputWrap select{width:100%;background:#1d1d1b;border:1px solid #4a4a45;border-radius:8px;color:#eee;padding:9px 44px 9px 10px;outline:none}.sunPanelInputWrap textarea{min-height:70px;resize:vertical}.sunPanelCount{position:absolute;right:10px;bottom:8px;color:#777;font-size:12px}.sunPanelGetIconBtn{white-space:nowrap;border:0;background:#42423f;color:#eee;border-radius:8px;padding:0 12px;cursor:pointer}.sunPanelMoreLine{grid-column:1/-1;margin-top:2px;color:#ddd}.sunPanelMoreLine label{display:flex;align-items:center;gap:7px}.sunPanelMoreOptions{display:none;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:12px 14px}.sunPanelMoreOptions.open{display:grid}.sunPanelEditFooter{display:flex;justify-content:flex-end;margin-top:18px}.sunPanelSaveBtn{border:0;background:#18a058;color:#071b0d;border-radius:8px;padding:10px 28px;font-weight:900;cursor:pointer}.sunPanelEditMarkers{display:none}@media(max-width:720px){.sunPanelEditForm,.sunPanelMoreOptions{grid-template-columns:1fr}.sunPanelPreviewBox{height:120px}}


/* Sun-Panel EditItem screenshot expanded advanced fields */
.sunPanelMoreLine{display:none}.sunPanelMoreOptions{display:grid!important;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:12px 14px}.sunPanelColorInput{font-family:ui-monospace,Menlo,monospace;background-image:linear-gradient(45deg,#777 25%,transparent 25%),linear-gradient(-45deg,#777 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#777 75%),linear-gradient(-45deg,transparent 75%,#777 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0}.sunPanelCardTypeSelect{appearance:auto}

.sunHomeFetchedIcon,.sunPanelPreviewIcon img{width:100%;height:100%;object-fit:contain;border-radius:inherit;display:block}.sunPanelGetIconBtn.loading{opacity:.65;pointer-events:none}.sunPanelGetIconBtn.success{background:#18a058;color:#071b0d}.sunPanelGetIconBtn.error{background:#d03050;color:#fff}.sunPanelFaviconMarkers{display:none}
.sunPanelIconChooser{grid-column:1/-1;display:none;background:#242421;border:1px solid #44413a;border-radius:12px;padding:10px;margin:-2px 0 4px;min-width:0}.sunPanelIconChooser.open{display:block}.sunPanelIconChooserHead{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:#f6f2dc;font-weight:900;min-width:0}.sunPanelIconChooserHead .hint{font-size:12px;color:#aaa28e;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sunPanelIconChooserGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px;max-height:220px;overflow:auto;padding:2px;scrollbar-width:thin}.sunPanelIconChoice{height:68px;border:1px solid #4c493f;background:#33312c;color:#f6f2dc;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:12px;overflow:hidden;min-width:0}.sunPanelIconChoice:hover,.sunPanelIconChoice.active{border-color:#18a058;background:#3d4636}.sunPanelIconChoice .pic{width:30px;height:30px;border-radius:8px;object-fit:contain;background:#1f1f1d}.sunPanelIconChoice .emoji{font-size:24px;line-height:1;max-width:42px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sunPanelIconChoice .name{max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c9c6ad}.sunPanelIconManual{display:flex;gap:8px;margin-top:9px}.sunPanelIconManual input{flex:1;min-width:0}.sunPanelIconManual button{white-space:nowrap}.sunPanelOnlineIconTools{display:flex;gap:8px;align-items:center;margin:0 0 8px}.sunPanelOnlineIconTools input{margin:0;height:34px;min-width:0}.sunPanelIconGroupBlock{margin-top:8px}.sunPanelIconGroupTitle{font-size:12px;color:#c9c6ad;margin:8px 2px 6px;font-weight:900;display:flex;justify-content:space-between}.sunPanelIconEmpty{grid-column:1/-1;color:#aaa28e;font-size:13px;padding:12px;border:1px dashed #555149;border-radius:10px;text-align:center}@media(max-width:560px){.sunPanelIconChooserGrid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));max-height:260px}.sunPanelIconChoice{height:62px}.sunPanelIconChoice .name{display:none}.sunPanelIconChooserHead{flex-wrap:wrap}.sunPanelIconChooserHead .hint{white-space:normal}.sunPanelIconManual{flex-direction:column}}
@media(max-width:1280px){.layout{display:block}.side{position:static;width:100%}.right{display:none}.main{width:100%}}@media(max-width:1100px){.adminShell,.split{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:34px}.actions{justify-content:flex-start}}


/* Cowboy premium home polish: readable glass cards, no overlap, status preserved */
.homePremiumPolishMarker{display:none}.sunPanelCloneApp{max-width:1320px;padding:24px 26px 42px}.top{position:sticky;top:12px;z-index:10;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:linear-gradient(135deg,rgba(15,23,42,.72),rgba(30,41,59,.46));box-shadow:0 18px 60px rgba(0,0,0,.26);backdrop-filter:blur(18px)}.logo{background:linear-gradient(135deg,#fde68a,#22d3ee 45%,#a78bfa);box-shadow:0 12px 36px rgba(34,211,238,.25),inset 0 0 18px rgba(255,255,255,.28)}.title{background:linear-gradient(90deg,#fff,#bfdbfe,#86efac);-webkit-background-clip:text;background-clip:text;color:transparent}.actions .btn{box-shadow:inset 0 1px 0 rgba(255,255,255,.16);transition:transform .16s,border-color .16s,background .16s}.actions .btn:hover{transform:translateY(-1px);border-color:rgba(125,211,252,.65)}.network{justify-content:flex-end;margin:12px 2px}.layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:20px;align-items:start}.side{position:sticky;top:104px;margin:0;padding:16px;border-radius:26px;background:linear-gradient(180deg,rgba(15,23,42,.72),rgba(15,23,42,.42));box-shadow:0 18px 50px rgba(0,0,0,.24)}.search{height:48px;border-radius:18px;background:rgba(2,6,23,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.groupNav{display:grid;grid-template-columns:1fr;gap:8px;overflow:visible}.groupNav button{width:100%;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035);transition:.16s}.groupNav button:hover,.groupNav button.active{background:linear-gradient(135deg,rgba(34,211,238,.18),rgba(34,197,94,.14));border-color:rgba(125,211,252,.38)}.featureCloud{display:flex!important;gap:8px;flex-wrap:wrap;margin-top:12px}.featureCloud span{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:999px;padding:6px 9px;color:#cbd5e1;font-size:12px}.hero{position:relative;overflow:hidden;padding:28px;border-radius:30px;background:linear-gradient(135deg,rgba(14,165,233,.18),rgba(139,92,246,.14) 46%,rgba(34,197,94,.10));border-color:rgba(255,255,255,.12)}.hero:before{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(125,211,252,.24),transparent 68%)}.hero h1{position:relative;margin-top:0;font-size:42px;letter-spacing:.02em}.hero p{position:relative;color:#cbd5e1}.stats{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat{border:1px solid rgba(255,255,255,.10);border-radius:18px;background:rgba(2,6,23,.28);padding:12px}.stat b{font-size:24px}.sunHomeGroup{margin-top:28px}.sunHomeGroupHeader{padding:0 4px;margin-bottom:12px}.sunHomeGroupTitle{font-size:22px}.sunHomeGroup .sunHomeGroupActions{opacity:.35}.sunHomeGroup:hover .sunHomeGroupActions,.sunHomeGroup.sorting .sunHomeGroupActions{opacity:1}.sunHomeAppGrid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:15px}.sunHomeAppGrid .card{position:relative;min-height:118px;height:auto;display:grid;grid-template-columns:54px minmax(0,1fr);grid-template-rows:auto 1fr;align-items:center;gap:10px 13px;padding:14px;border-radius:20px;background:linear-gradient(135deg,rgba(30,41,59,.70),rgba(15,23,42,.58));border:1px solid rgba(255,255,255,.10);box-shadow:0 14px 40px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .16s,border-color .16s,box-shadow .16s,background .16s}.sunHomeAppGrid .card:hover{transform:translateY(-3px);background:linear-gradient(135deg,rgba(30,64,175,.42),rgba(15,23,42,.70));border-color:rgba(125,211,252,.36);box-shadow:0 20px 55px rgba(0,0,0,.30)}.sunHomeAppGrid .card .ico{width:54px;height:54px;min-width:54px;border-radius:16px;grid-column:1;grid-row:2;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 24px rgba(0,0,0,.20)}.sunHomeAppGrid .card>div:last-child{grid-column:2;grid-row:2;min-width:0}.sunHomeAppGrid .card h3{font-size:17px;font-weight:800;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sunHomeAppGrid .card .card-desc{display:block;color:#cbd5e1;font-size:12px;line-height:1.35;max-height:2.7em;overflow:hidden}.sunHomeAppGrid .card .muted{display:block;color:#94a3b8;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.sunHomeAppGrid .cardStatusBadges{display:flex!important;position:static!important;grid-column:1/-1;grid-row:1;gap:6px;flex-wrap:wrap;margin:0;overflow:visible}.sunHomeAppGrid .cardStatusBadges .badge{font-size:10px;padding:3px 7px;background:rgba(2,6,23,.55);border-color:rgba(255,255,255,.10);white-space:nowrap}.badge-ok{color:#86efac!important}.badge-danger{color:#fca5a5!important}.badge-warn{color:#fde68a!important}.homeDockerPanel{border-radius:20px;background:linear-gradient(135deg,rgba(2,132,199,.18),rgba(15,23,42,.48));box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.homeDockerItem{background:rgba(2,6,23,.40);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.sunHomeAddCard{height:auto;min-height:118px;border-radius:20px;background:rgba(15,23,42,.34);transition:.16s}.sunHomeAddCard:hover{background:rgba(34,197,94,.14);border-color:rgba(134,239,172,.45)}@media(max-width:980px){.layout{grid-template-columns:1fr}.side{position:static}.groupNav{display:flex;overflow-x:auto}.groupNav button{width:auto}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.sunPanelCloneApp{padding:14px}.top{position:static;border-radius:20px}.brand{align-items:flex-start}.title{font-size:24px}.actions{width:100%}.actions .btn{flex:1;text-align:center;padding:9px}.hero{padding:20px}.hero h1{font-size:32px}.sunHomeAppGrid{grid-template-columns:1fr}.sunHomeAppGrid .card{min-height:110px}.network{justify-content:flex-start}}


/* Mobile-first full-width layout fix: avoid left-column squeeze and right empty canvas */
.homeMobileFullWidthFix{display:none}
.sunPanelCloneApp{width:min(100%,1480px);max-width:1480px;margin:0 auto;padding-left:clamp(12px,2.2vw,30px);padding-right:clamp(12px,2.2vw,30px)}
.layout{display:block!important;width:100%;max-width:100%}
.side{position:static!important;width:100%;max-width:100%;margin:14px 0 18px!important;display:block}
.main{width:100%;max-width:100%;min-width:0}
.groupNav{display:flex!important;flex-wrap:wrap;overflow:visible;gap:8px}
.groupNav button{width:auto;max-width:100%;white-space:nowrap}
.featureCloud{display:flex!important}
.sunHomeAppGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;width:100%}
@media(max-width:900px){
  html,body{overflow-x:hidden!important}
  .sunPanelCloneApp{width:100%!important;max-width:none!important;padding:12px 12px 72px!important;height:100dvh;overflow-y:auto;overflow-x:hidden}
  .top{position:static!important;display:block!important;padding:12px!important;border-radius:18px!important}
  .brand{margin-bottom:10px}.actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}.actions .btn{min-width:0;text-align:center;padding:9px 7px;font-size:13px}
  .network{justify-content:flex-start!important;margin:10px 0!important}
  .side{padding:12px!important;border-radius:18px!important;background:rgba(15,23,42,.50)!important;backdrop-filter:blur(14px)}
  .search{height:44px;margin-bottom:10px}
  .groupNav{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:6px;scrollbar-width:thin}
  .groupNav button{flex:0 0 auto;width:auto!important;max-width:72vw;overflow:hidden;text-overflow:ellipsis}
  .featureCloud{display:none!important}
  .hero{padding:18px!important;border-radius:20px!important}.hero h1{font-size:28px!important}.stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sunHomeGroup{margin-top:24px!important}.sunHomeGroupTitle{font-size:18px!important;max-width:calc(100vw - 96px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sunHomeAppGrid{grid-template-columns:1fr!important;gap:12px!important}
  .sunHomeAppGrid .card{width:100%!important;min-height:104px!important;grid-template-columns:50px minmax(0,1fr)!important;padding:12px!important;border-radius:18px!important}
  .sunHomeAppGrid .card .ico{width:50px!important;height:50px!important;min-width:50px!important;border-radius:14px!important}
  .sunHomeAppGrid .card h3{font-size:16px!important}.sunHomeAppGrid .card .card-desc{font-size:12px!important}.sunHomeAppGrid .cardStatusBadges .badge{font-size:10px!important}
  .sunPanelPowered{display:none!important}
}


/* Sun-Panel invisible scrollbar: keep smooth scrolling, hide ugly native rails */
.sunPanelInvisibleScrollbarMarker{display:none}
.groupNav,.sunHomeEditModal,.sunPanelEditBody{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.groupNav::-webkit-scrollbar,.sunHomeEditModal::-webkit-scrollbar,.sunPanelEditBody::-webkit-scrollbar{
  width:0!important;height:0!important;display:none!important;background:transparent!important;
}
/* 主页面滚动条：显示并美化（深色主题配套） */
html{scrollbar-width:thin!important;scrollbar-color:rgba(148,163,184,.5) transparent!important;}
html::-webkit-scrollbar,body::-webkit-scrollbar{width:10px!important;height:10px!important;display:block!important;background:transparent!important;}
html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{background:rgba(148,163,184,.45)!important;border-radius:8px!important;border:2px solid transparent!important;background-clip:padding-box!important;}
html::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover{background:rgba(186,200,220,.7)!important;}
html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{background:transparent!important;}
.sunPanelCloneApp{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scrollbar-gutter:stable!important}
.groupNav{-webkit-overflow-scrolling:touch;scrollbar-gutter:auto!important}


/* Sun-Panel exact clean sidebar: remove custom feature hint chips */
.sunPanelNoFeatureCloudMarker{display:none}
.featureCloud{display:none!important}


/* Home favorites section: only explicitly favorited cards appear here */
.homeFavoritesMarker{display:none}
.favoriteItemsSection{margin-top:26px}
.favoriteHomeGroup .sunHomeGroupTitle:before{content:'⭐ ';}
.homeFavoriteBtn{position:absolute;right:10px;bottom:10px;z-index:3;border:0;background:rgba(2,6,23,.62);color:#94a3b8;border-radius:999px;width:30px;height:30px;display:grid;place-items:center;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.homeFavoriteBtn.active{color:#fde68a;background:rgba(120,53,15,.75)}
.homeFavoriteBtn:hover{transform:scale(1.06);color:#fde68a}
.sunHomeAppGrid .card{padding-right:46px!important}


/* Sun-Panel official-style single-line IP status capsule */
.sunOfficialNetworkPillMarker{display:none}
.sun-network-capsule{display:flex;align-items:center;gap:8px;justify-content:flex-end;max-width:100%;margin:-4px 2px 12px;padding:6px;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:linear-gradient(135deg,rgba(15,23,42,.76),rgba(2,6,23,.48));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 34px rgba(0,0,0,.22);backdrop-filter:blur(14px);overflow:hidden}
.sun-network-capsule .pill-sec{min-width:0;display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;cursor:pointer;white-space:nowrap;overflow:hidden}
.sun-network-capsule .pill-sec:hover{background:rgba(59,130,246,.12)}
.sun-network-capsule .pill-label{flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:.04em;padding:2px 6px;border-radius:999px;color:#e0f2fe;background:rgba(14,165,233,.22)}
.sun-network-capsule .pill-label.lab-prx{color:#f5d0fe;background:rgba(168,85,247,.24)}
.sun-network-capsule .pill-val{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#f8fafc;font-weight:800;font-size:12px;max-width:128px}
.sun-network-capsule .pill-tag{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#94a3b8;font-size:12px;max-width:220px}
.sun-network-capsule .pill-sep{width:1px;height:18px;background:rgba(148,163,184,.22);flex:0 0 auto}
@media(max-width:900px){.sun-network-capsule{justify-content:flex-start;margin:8px 0 12px;border-radius:18px;overflow-x:auto;scrollbar-width:none}.sun-network-capsule::-webkit-scrollbar{display:none}.sun-network-capsule .pill-tag{max-width:150px}.sun-network-capsule .pill-val{max-width:112px}}


/* Put Sun-Panel IP capsule in the header center area */
.topCenterNetwork{flex:1 1 420px;min-width:280px;display:flex;align-items:center;justify-content:center;gap:10px;overflow:hidden}
.topCenterNetwork .network{flex:0 0 auto;margin:0!important;display:flex!important}.topCenterNetwork .network span{padding:7px 10px}
.topCenterNetwork .sun-network-capsule{flex:1 1 auto;min-width:260px;max-width:760px;margin:0!important;justify-content:center}
@media(max-width:1100px){.top{flex-wrap:wrap}.topCenterNetwork{order:3;flex-basis:100%;justify-content:flex-start}.topCenterNetwork .sun-network-capsule{max-width:none}}
@media(max-width:900px){.topCenterNetwork{display:block;min-width:0}.topCenterNetwork .network{margin:10px 0!important}.topCenterNetwork .sun-network-capsule{width:100%;min-width:0}}


/* Sun-Panel card hover shadow: hovered project is clearly focused */
.sunCardHoverShadowMarker{display:none}
.sunHomeAppGrid .card{transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease,background .18s ease!important}
.sunHomeAppGrid .card:hover{box-shadow:0 16px 42px rgba(0,0,0,.42),0 0 0 1px rgba(125,211,252,.30),0 0 24px rgba(56,189,248,.22)!important;transform:translateY(-3px)!important;border-color:rgba(125,211,252,.42)!important;background:linear-gradient(135deg,rgba(42,30,73,.94),rgba(30,41,59,.88))!important}
.sunHomeAppGrid.sorting .card:hover{box-shadow:0 12px 34px rgba(0,0,0,.36),0 0 0 1px rgba(115,242,138,.34),0 0 22px rgba(34,197,94,.20)!important;transform:translateY(-2px)!important}
@media(hover:none){.sunHomeAppGrid .card:hover{transform:none!important;box-shadow:none!important}}


/* Personalization component settings: search bar + system status */
.homeComponentSettingsV1{--home-component-settings-enabled:1}
.homeSearchDisabled #search{pointer-events:none;opacity:.58}
.hero.systemStatusCompact .stats{display:flex;gap:8px;flex-wrap:wrap}
.hero.systemStatusCompact .stat{min-width:92px;min-height:auto;padding:10px 12px;border-radius:14px}
.hero.systemStatusPlain{background:transparent!important;border-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
.hero.systemStatusPlain .stats{display:flex;gap:10px;flex-wrap:wrap}
.hero.systemStatusPlain .stat{background:transparent!important;border:0!important;box-shadow:none!important;padding:4px 8px;min-height:auto}


/* Sun-Panel system status gauge widget */
.sunSystemStatusWidget{display:none;margin:0 0 18px;padding:18px 20px;border-radius:24px;background:linear-gradient(135deg,rgba(15,23,42,.54),rgba(88,28,135,.22));border:1px solid rgba(255,255,255,.10);box-shadow:0 18px 55px rgba(0,0,0,.22);backdrop-filter:blur(14px)}
.sunSystemStatusWidget.open{display:block}.sunSystemStatusTitle{font-size:24px;font-weight:1000;margin:0 0 14px;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.35)}.sunSystemGaugeRow{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}.sunSystemGaugeItem{text-align:center;color:#fff;font-weight:900}.sunSystemGaugeCard{width:104px;height:92px;border-radius:18px;background:#0f172acc;border:1px solid rgba(255,255,255,.09);display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 12px 28px rgba(0,0,0,.18)}.sunSystemGauge{width:82px;height:54px}.sunSystemGaugeValue{font-size:16px;font-weight:1000;fill:#fff}.sunSystemGaugeTrack{fill:none;stroke:rgba(255,255,255,.32);stroke-width:9;stroke-linecap:round}.sunSystemGaugeBar{fill:none;stroke:#fff;stroke-width:9;stroke-linecap:round;transition:stroke-dasharray .3s}.sunSystemGaugeLabel{margin-top:8px;font-size:14px;letter-spacing:.04em}.systemStatusPlain+.sunSystemStatusWidget,.sunSystemStatusPlain .sunSystemStatusWidget{background:transparent;border:0;box-shadow:none}.systemStatusCompact .sunSystemGaugeCard{width:88px;height:78px}.systemStatusCompact .sunSystemGauge{width:70px;height:46px}


/* Sun-Panel editable system status widgets */
.sunSystemStatusEditableV1{--sun-status-editable:1}.sunSystemStatusHeader{display:flex;align-items:center;gap:12px;margin:0 0 14px}.sunSystemStatusHeader .sunSystemStatusTitle{margin:0}.sunStatusHeaderBtn{border:0;background:transparent;color:#fff;font-size:22px;font-weight:1000;cursor:pointer;padding:2px 4px;border-radius:8px}.sunStatusHeaderBtn:hover{background:#ffffff18}.sunSystemGaugeItem{position:relative}.sunStatusEditBtn{position:absolute;right:-7px;top:-7px;width:24px;height:24px;border-radius:999px;border:1px solid #ffffff22;background:#111827ee;color:#fff;display:none;place-items:center;cursor:pointer}.sunSystemGaugeItem:hover .sunStatusEditBtn{display:grid}.sunStatusWidgetModal{position:fixed;inset:auto auto 50% 50%;transform:translate(-50%,50%);width:min(620px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto;z-index:140;background:#2f2f2d;color:#f4efd0;border:1px solid #ffffff14;border-radius:18px;box-shadow:0 28px 90px #000b;padding:18px;display:none}@keyframes modalCardInStatus{from{opacity:0;transform:translate3d(-50%,46%,0) scale(.97)}to{opacity:1;transform:translate3d(-50%,50%,0) scale(1)}}
.sunStatusWidgetModal.open{display:block;animation:modalCardInStatus .26s cubic-bezier(.22,1,.36,1)}.sunStatusWidgetModalHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sunStatusTabs{display:flex;background:#242421;border-radius:10px;padding:4px;gap:4px;margin-bottom:14px}.sunStatusTabs button{flex:1;border:0;border-radius:8px;background:transparent;color:#eee;padding:10px;cursor:pointer;font-weight:900}.sunStatusTabs button.active{background:#55524b}.sunStatusPreview{border-radius:14px;min-height:150px;margin:12px 0;padding:28px;display:flex;gap:24px;align-items:center;justify-content:center;background-color:#dbeafe;background-image:linear-gradient(45deg,#fff 25%,transparent 25%),linear-gradient(-45deg,#fff 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#fff 75%),linear-gradient(-45deg,transparent 75%,#fff 75%);background-size:22px 22px;background-position:0 0,0 11px,11px -11px,-11px 0}.sunStatusPreviewPill{height:58px;min-width:245px;border-radius:16px;display:flex;align-items:center;gap:14px;padding:10px 18px}.sunStatusPreviewIcon{font-size:26px}.sunStatusPreviewLine{height:5px;border-radius:9px;margin-top:8px}.sunStatusModalGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sunStatusModalGrid label{display:block;font-weight:900;margin:0 0 6px}.sunStatusModalGrid input,.sunStatusModalGrid select{width:100%;background:#1f1f1c;color:#f4efd0;border:1px solid #111;border-radius:8px;padding:10px}.sunStatusModalActions{display:flex;justify-content:space-between;margin-top:16px}.sunStatusModalActions .ok{background:#73f28a;color:#102315;border:0}.sunSystemGaugeBar{stroke:var(--gauge-main,#fff)}.sunSystemGaugeTrack{stroke:var(--gauge-sub,rgba(255,255,255,.32))}.sunSystemGaugeValue{fill:var(--gauge-text,#fff)}


/* IP capsule no-truncate fix: show proxy IP/location fully instead of ellipsis */
.sunNetworkNoTruncateV1{--ip-pill-no-truncate:1}
.topCenterNetwork{overflow:visible}
.topCenterNetwork .sun-network-capsule{max-width:none;flex:1 1 auto;overflow:visible;flex-wrap:wrap;row-gap:6px;justify-content:center}
.sun-network-capsule .pill-sec{min-width:max-content;overflow:visible;white-space:nowrap;flex:0 0 auto}
.sun-network-capsule .pill-val,.sun-network-capsule .pill-tag{max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap;flex:0 0 auto}
@media(max-width:900px){.topCenterNetwork .sun-network-capsule{overflow-x:auto;overflow-y:visible;flex-wrap:nowrap;justify-content:flex-start}.sun-network-capsule .pill-val,.sun-network-capsule .pill-tag{max-width:none!important}}


/* IP capsule full-width row fix: parent must not squeeze/hide the tail text */
.sunNetworkFullRowV2{--ip-pill-full-row:1}
.top{flex-wrap:wrap;overflow:visible}
.top .brand{flex:0 0 auto}.top .actions{flex:0 0 auto}
.topCenterNetwork.sunNetworkFullRowV2{order:3;flex:0 0 100%;width:100%;max-width:100%;min-width:0;overflow:visible;display:flex;align-items:center;justify-content:center;margin-top:8px}
.topCenterNetwork.sunNetworkFullRowV2 .sun-network-capsule{width:auto;max-width:100%;min-width:0;overflow-x:auto;overflow-y:visible;flex-wrap:nowrap;justify-content:flex-start;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.topCenterNetwork.sunNetworkFullRowV2 .sun-network-capsule::-webkit-scrollbar{display:none}
.topCenterNetwork.sunNetworkFullRowV2 .pill-sec{flex:0 0 auto;min-width:max-content;overflow:visible}
.topCenterNetwork.sunNetworkFullRowV2 .pill-val,.topCenterNetwork.sunNetworkFullRowV2 .pill-tag{max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}


/* IP capsule inline center fix: stay in the top middle, not a separate row */
.sunNetworkInlineCenterV3{--ip-pill-inline-center:1}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:nowrap;overflow:visible}
.top .brand{flex:0 0 auto}.top .actions{flex:0 0 auto}
.topCenterNetwork.sunNetworkInlineCenterV3{order:0;flex:1 1 0;min-width:0;width:auto;max-width:none;margin-top:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.topCenterNetwork.sunNetworkInlineCenterV3 .network{display:none!important}
.topCenterNetwork.sunNetworkInlineCenterV3 .sun-network-capsule{width:auto;max-width:100%;min-width:0;overflow-x:auto;overflow-y:visible;flex-wrap:nowrap;justify-content:flex-start;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.topCenterNetwork.sunNetworkInlineCenterV3 .sun-network-capsule::-webkit-scrollbar{display:none}
.topCenterNetwork.sunNetworkInlineCenterV3 .pill-sec{flex:0 0 auto;min-width:max-content;overflow:visible}
.topCenterNetwork.sunNetworkInlineCenterV3 .pill-val,.topCenterNetwork.sunNetworkInlineCenterV3 .pill-tag{max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}
@media(max-width:900px){.top{flex-wrap:wrap}.topCenterNetwork.sunNetworkInlineCenterV3{order:2;flex:1 1 100%;width:100%;justify-content:center}.top .actions{order:3;width:100%}}


/* IP capsule content center polish: center the inner text group when there is spare width */
.sunNetworkContentCenterV4{--ip-pill-content-center:1}
.topCenterNetwork.sunNetworkInlineCenterV3 .sun-network-capsule{justify-content:center;text-align:center}
.topCenterNetwork.sunNetworkInlineCenterV3 .pill-sec{justify-content:center}
@media(max-width:900px){.topCenterNetwork.sunNetworkInlineCenterV3 .sun-network-capsule{justify-content:center}}


/* Sun-Panel-like drag/drop sorting icon for group headers */
.sunSortIconV2{--sun-sort-icon-v2:1;display:inline-flex!important;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;font-size:18px;line-height:1;color:#f8fafc;opacity:.92}
.sunSortIconV2:hover{background:rgba(255,255,255,.12);color:#86efac}.sunSortIconV2.sortActive{background:rgba(34,197,94,.18);color:#86efac}.sunSortIconV2 svg{width:18px;height:18px;display:block;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}


/* Align group add/sort icons to the same visual baseline */
.sunGroupHeaderIconAlignV3{--sun-group-icon-align-v3:1}
.sunHomeGroupActions{display:inline-flex;align-items:center;gap:8px;height:28px}
.sunHomeGroupActions .sunHomeIconBtn{width:26px;height:26px;display:inline-flex!important;align-items:center;justify-content:center;padding:0;line-height:1;border-radius:8px;vertical-align:middle}
.sunHomeGroupActions .sunAddIconV3{font-size:24px;font-weight:700;transform:translateY(-1px)}
.sunHomeGroupActions .sunSortIconV2{width:26px;height:26px;font-size:18px;transform:none}.sunHomeGroupActions .sunSortIconV2 svg{width:19px;height:19px}




/* Sun-Panel segmented add/sort group button from screenshot */
.sunGroupSegmentActionsV1{--sun-group-segment-actions-v1:1}
.sunGroupSegmentActionsV1 .sunHomeGroupActions{
  display:inline-flex!important;
  align-items:stretch!important;
  gap:0!important;
  width:76px!important;
  height:36px!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:opacity .12s ease;
}
.sunGroupSegmentActionsV1 .sunHomeGroup:hover > .sunHomeGroupHeader .sunHomeGroupActions,
.sunGroupSegmentActionsV1 .sunHomeGroup.sorting > .sunHomeGroupHeader .sunHomeGroupActions{opacity:1!important;pointer-events:auto!important}
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunHomeIconBtn{
  height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#77758f!important;
  text-shadow:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  box-shadow:none!important;
}
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunAddIconV3{
  width:44px!important;
  flex:0 0 44px!important;
  font-size:20px!important;
  font-weight:800!important;
  transform:none!important;
}
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunSortIconV2{
  width:32px!important;
  flex:0 0 32px!important;
  border-left:1px solid #22215a!important;
  font-size:14px!important;
  transform:none!important;
}
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunSortIconV2 svg{
  width:15px!important;
  height:15px!important;
  stroke:#77758f!important;
  stroke-width:2.1!important;
}
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunHomeIconBtn:hover,
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunHomeIconBtn.sortActive{
  background:transparent!important;
  color:#9694ad!important;
}
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunHomeIconBtn:hover svg,
.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunHomeIconBtn.sortActive svg{stroke:#9694ad!important}
@media(max-width:520px){.sunGroupSegmentActionsV1 .sunHomeGroupActions{width:70px!important;height:32px!important}.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunHomeIconBtn{height:32px!important}.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunAddIconV3{width:40px!important;flex-basis:40px!important;font-size:18px!important}.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunSortIconV2{width:30px!important;flex-basis:30px!important}.sunGroupSegmentActionsV1 .sunHomeGroupActions .sunSortIconV2 svg{width:14px!important;height:14px!important}}

/* Sun-Panel compact app cards v2: smaller, denser homepage project entries */
.sunHomeCompactCardsV2{--sun-home-compact-cards-v2:1}
.sunHomeAppGrid{grid-template-columns:repeat(auto-fill,minmax(142px,1fr))!important;gap:12px!important;align-items:stretch}
.sunHomeAppGrid .card{min-height:58px!important;height:58px!important;padding:8px 34px 8px 9px!important;border-radius:10px!important;gap:9px!important;background:rgba(31,22,55,.72)!important;box-shadow:none!important;display:flex!important;align-items:center!important;border:1px solid rgba(255,255,255,.08)!important}
.sunHomeAppGrid .card .ico{width:34px!important;height:34px!important;min-width:34px!important;border-radius:8px!important;font-size:17px!important;box-shadow:none!important}
.sunHomeAppGrid .card h3{font-size:14px!important;font-weight:650!important;line-height:1.15!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.sunHomeAppGrid .card .card-desc,.sunHomeAppGrid .card .muted,.sunHomeAppGrid .cardStatusBadges{display:none!important}
.sunHomeAppGrid .card>div:last-child{min-width:0!important;flex:1!important;overflow:hidden!important;padding-right:0!important}
.homeFavoriteBtn{right:6px!important;bottom:50%!important;transform:translateY(50%)!important;width:22px!important;height:22px!important;font-size:13px!important;background:rgba(2,6,23,.46)!important}
.sunHomeAddCard{min-height:58px!important;height:58px!important;border-radius:10px!important}.sunHomeAddCard .sunAddText{font-size:22px!important}
.sunHomeAppGrid .card:hover{transform:translateY(-1px)!important;box-shadow:0 8px 24px rgba(0,0,0,.25),0 0 0 1px rgba(125,211,252,.22)!important;background:rgba(42,30,73,.84)!important}
@media(max-width:900px){.sunHomeAppGrid{grid-template-columns:repeat(3,minmax(112px,1fr))!important;gap:10px!important}.sunHomeAppGrid .card{height:54px!important;min-height:54px!important;padding:7px 30px 7px 8px!important}.sunHomeAppGrid .card .ico{width:30px!important;height:30px!important;min-width:30px!important}.sunHomeAppGrid .card h3{font-size:13px!important}}
@media(max-width:520px){.sunHomeAppGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sunHomeAppGrid .card{height:52px!important;min-height:52px!important}}


/* Sun compact cards v3: compact but still show description and online status */
.sunHomeCompactCardsV3 sunHomeReferenceCardsV4 sunHomeSunTypographyV5 homeCardsPerRowSettingV1{--sun-home-compact-cards-v3:1}
.sunHomeAppGrid .card{min-height:74px!important;height:74px!important;padding:9px 34px 9px 10px!important;align-items:center!important}
.sunHomeAppGrid .card .ico{width:36px!important;height:36px!important;min-width:36px!important}
.sunHomeAppGrid .card h3{font-size:14px!important;line-height:1.1!important;margin:0 0 3px!important}
.sunHomeAppGrid .card .card-desc{display:block!important;font-size:11px!important;line-height:1.15!important;color:rgba(226,232,240,.72)!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%}
.sunHomeAppGrid .cardStatusBadges{display:flex!important;position:absolute!important;left:auto!important;right:7px!important;top:7px!important;grid-column:auto!important;margin:0!important;gap:0!important;z-index:3!important;pointer-events:none!important}
.sunHomeAppGrid .cardStatusBadges .badge{display:none!important}.sunHomeAppGrid .cardStatusBadges .badge:first-child{display:inline-flex!important;width:8px!important;height:8px!important;min-width:8px!important;padding:0!important;border-radius:999px!important;font-size:0!important;line-height:0!important;border:1px solid rgba(255,255,255,.35)!important;box-shadow:0 0 8px currentColor!important}
.sunHomeAppGrid .cardStatusBadges .badge-ok:first-child{background:#22c55e!important;color:#22c55e!important}.sunHomeAppGrid .cardStatusBadges .badge-danger:first-child{background:#ef4444!important;color:#ef4444!important}.sunHomeAppGrid .cardStatusBadges .badge-warn:first-child{background:#f59e0b!important;color:#f59e0b!important}
.homeFavoriteBtn{right:6px!important;bottom:6px!important;transform:none!important;width:21px!important;height:21px!important;font-size:12px!important}
@media(max-width:900px){.sunHomeAppGrid .card{height:70px!important;min-height:70px!important}.sunHomeAppGrid .card .card-desc{font-size:10.5px!important}}
@media(max-width:520px){.sunHomeAppGrid .card{height:68px!important;min-height:68px!important}}


/* Sun-Panel reference app cards v4: 4-column rounded cards, left icon + title/description */
.sunHomeReferenceCardsV4{--sun-home-reference-cards-v4:1}
.sunHomeAppGrid{grid-template-columns:repeat(4,minmax(210px,1fr))!important;gap:16px!important;align-items:stretch!important}
.sunHomeAppGrid .card{min-height:86px!important;height:86px!important;padding:13px 38px 13px 14px!important;border-radius:16px!important;gap:13px!important;background:rgba(33,32,60,.92)!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:none!important;display:flex!important;align-items:center!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;contain:layout style paint!important}
.sunHomeAppGrid .card .ico{width:52px!important;height:52px!important;min-width:52px!important;border-radius:13px!important;font-size:24px!important;background:rgba(255,255,255,.08);display:grid!important;place-items:center!important;overflow:hidden!important}
.sunHomeAppGrid .card h3{font-size:16px!important;font-weight:750!important;line-height:1.18!important;margin:0 0 5px!important;color:#fff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-shadow:0 1px 8px rgba(0,0,0,.25)!important}
.sunHomeAppGrid .card .card-desc{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;font-size:12px!important;line-height:1.25!important;color:rgba(241,245,249,.82)!important;margin:0!important;white-space:normal!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:break-word!important;max-height:2.5em!important}
.sunHomeAppGrid .card .muted{display:none!important}.sunHomeAppGrid .card>div:last-child{min-width:0!important;flex:1!important;overflow:hidden!important;padding-right:0!important}
.sunHomeAppGrid .cardStatusBadges{display:flex!important;position:absolute!important;left:auto!important;right:10px!important;top:10px!important;grid-column:auto!important;margin:0!important;gap:0!important;z-index:3!important;pointer-events:none!important}
.sunHomeAppGrid .cardStatusBadges .badge{display:none!important}.sunHomeAppGrid .cardStatusBadges .badge:first-child{display:inline-flex!important;width:9px!important;height:9px!important;min-width:9px!important;padding:0!important;border-radius:999px!important;font-size:0!important;line-height:0!important;border:1px solid rgba(255,255,255,.45)!important;box-shadow:0 0 9px currentColor!important}
.sunHomeAppGrid .cardStatusBadges .badge-ok:first-child{background:#22c55e!important;color:#22c55e!important}.sunHomeAppGrid .cardStatusBadges .badge-danger:first-child{background:#ef4444!important;color:#ef4444!important}.sunHomeAppGrid .cardStatusBadges .badge-warn:first-child{background:#f59e0b!important;color:#f59e0b!important}
.homeFavoriteBtn{right:8px!important;bottom:8px!important;transform:none!important;width:22px!important;height:22px!important;font-size:13px!important;background:rgba(2,6,23,.48)!important}
.sunHomeAppGrid .card:hover{transform:translateY(-2px)!important;box-shadow:0 12px 32px rgba(0,0,0,.30),0 0 0 1px rgba(255,255,255,.16)!important;background:rgba(45,39,82,.86)!important}
.sunHomeAddCard{min-height:86px!important;height:86px!important;border-radius:16px!important;background:rgba(31,30,58,.46)!important}.sunHomeAddCard .sunAddText{font-size:28px!important}
@media(max-width:1180px){.sunHomeAppGrid{grid-template-columns:repeat(3,minmax(190px,1fr))!important}}
@media(max-width:820px){.sunHomeAppGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.sunHomeAppGrid .card{height:78px!important;min-height:78px!important;padding:11px 34px 11px 12px!important}.sunHomeAppGrid .card .ico{width:44px!important;height:44px!important;min-width:44px!important}.sunHomeAppGrid .card h3{font-size:14px!important}.sunHomeAppGrid .card .card-desc{font-size:11px!important;-webkit-line-clamp:1!important;max-height:1.3em!important}}
@media(max-width:460px){.sunHomeAppGrid{grid-template-columns:1fr!important}.sunHomeAppGrid .card{height:76px!important;min-height:76px!important}}


/* Sun-Panel typography/cards v5: closer to reference homepage spacing, fonts, and icon scale */
.sunHomeSunTypographyV5{--sun-home-sun-typography-v5:1;--home-cards-per-row:8}
.homeCardsPerRowSettingV1{--home-cards-per-row-setting-v1:1}
.sunHomeAppGrid{grid-template-columns:repeat(var(--home-cards-per-row,8),minmax(0,1fr))!important;gap:10px!important}
.sunHomeAppGrid .card{height:66px!important;min-height:66px!important;padding:9px 27px 9px 9px!important;border-radius:12px!important;gap:8px!important;background:rgba(31,30,58,.74)!important;border-color:rgba(255,255,255,.09)!important}
.sunHomeAppGrid .card .ico{width:34px!important;height:34px!important;min-width:34px!important;border-radius:9px!important;font-size:17px!important;background:rgba(255,255,255,.92)!important;color:#111827!important;box-shadow:0 1px 0 rgba(255,255,255,.18),0 4px 10px rgba(0,0,0,.14)!important}
.sunHomeAppGrid .card .ico img,.sunHomeFetchedIcon{border-radius:9px!important;object-fit:contain!important;padding:0!important;background:transparent!important}
.sunHomeAppGrid .card h3{font-size:11.5px!important;font-weight:650!important;line-height:1.12!important;letter-spacing:0!important;margin:0 0 2px!important;color:#f8fafc!important;text-shadow:none!important}
.sunHomeAppGrid .card .card-desc{font-size:9.5px!important;font-weight:500!important;line-height:1.14!important;color:rgba(248,250,252,.78)!important;-webkit-line-clamp:1!important;max-height:1.15em!important;letter-spacing:0!important}
.sunHomeGroupTitle{font-size:17px!important;font-weight:800!important;letter-spacing:.01em!important}.sunHomeGroup{margin-top:38px!important}.sunHomeGroupHeader{margin:14px 0 12px!important}
.sunHomeAppGrid .cardStatusBadges{right:7px!important;top:7px!important}.sunHomeAppGrid .cardStatusBadges .badge:first-child{width:6px!important;height:6px!important;min-width:6px!important}
.homeFavoriteBtn{right:5px!important;bottom:5px!important;width:18px!important;height:18px!important;font-size:10px!important;opacity:.86!important}.homeFavoriteBtn:hover{opacity:1!important}
.sunHomeAppGrid .card:hover{transform:translateY(-1px)!important;background:rgba(48,42,88,.86)!important;box-shadow:0 8px 20px rgba(0,0,0,.22),0 0 0 1px rgba(255,255,255,.14)!important}
.sunHomeAddCard{height:66px!important;min-height:66px!important;border-radius:12px!important}
@media(max-width:1180px){.sunHomeAppGrid{grid-template-columns:repeat(5,minmax(0,1fr))!important}}
@media(max-width:820px){.sunHomeAppGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.sunHomeAppGrid .card{height:62px!important;min-height:62px!important;padding:8px 25px 8px 8px!important}.sunHomeAppGrid .card .ico{width:30px!important;height:30px!important;min-width:30px!important}.sunHomeAppGrid .card h3{font-size:11.5px!important}.sunHomeAppGrid .card .card-desc{font-size:9.5px!important}}
@media(max-width:460px){.sunHomeAppGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sunHomeAppGrid .card{height:62px!important;min-height:62px!important}}






/* Sun-style project icon scale: shorter/less tall app icons like Sun-Panel */
.homeSunProjectIconShortV1{--home-sun-project-icon-short-v1:1}
.sunHomeAppGrid .card{gap:9px!important;padding-left:11px!important}
.sunHomeAppGrid .card .ico{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  flex:0 0 32px!important;
  border-radius:8px!important;
  font-size:16px!important;
  line-height:1!important;
}
.sunHomeAppGrid .card .ico img,.sunHomeFetchedIcon{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  border-radius:8px!important;
}
@media(max-width:820px){.sunHomeAppGrid .card .ico{width:30px!important;height:30px!important;min-width:30px!important;flex-basis:30px!important;border-radius:8px!important;font-size:15px!important}.sunHomeAppGrid .card .ico img,.sunHomeFetchedIcon{border-radius:8px!important}}

/* Favorite star centering fix: align the glyph optically in the small round button */
.homeFavoriteStarCenterFixV1{--home-favorite-star-center-fix-v1:1}
.homeFavoriteBtn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  padding:0!important;
  box-sizing:border-box!important;
  font-family:Inter,ui-sans-serif,system-ui,"Segoe UI Symbol","Apple Color Emoji","Noto Color Emoji",sans-serif!important;
  font-weight:900!important;
  text-align:center!important;
}
.homeFavoriteBtn .homeFavoriteStar{
  display:block!important;
  width:1em!important;
  height:1em!important;
  line-height:1!important;
  transform:translateY(.08em)!important;
  transform-origin:center!important;
  pointer-events:none!important;
}
.homeFavoriteBtn:hover .homeFavoriteStar{transform:translateY(.08em)!important}

/* Homepage compact row spacing: reduce excessive reserved vertical gaps between groups */
.homeCompactRowSpacingV1{--home-compact-row-spacing-v1:1;--home-group-spacing:10px;--home-group-header-spacing:5px;--home-grid-gap:8px}
.favoriteItemsSection{margin-top:8px!important}
.sunHomeGroup{margin-top:var(--home-group-spacing,10px)!important;margin-bottom:6px!important;contain-intrinsic-size:190px!important}
.sunHomeGroupHeader{margin:4px 0 var(--home-group-header-spacing,5px)!important}
.sunHomeGroupTitle{line-height:1.08!important}
.sunHomeAppGrid{gap:var(--home-grid-gap,8px)!important}
.sunSystemStatusWidget{margin-bottom:8px!important}
.side{margin-bottom:8px!important}
@media(max-width:900px){.sunHomeGroup{margin-top:calc(var(--home-group-spacing,10px) * .85)!important;margin-bottom:5px!important}.sunHomeGroupHeader{margin:3px 0 var(--home-group-header-spacing,5px)!important}.favoriteItemsSection{margin-top:8px!important}.sunHomeAppGrid{gap:var(--home-grid-gap,8px)!important}}

/* Homepage scroll performance v1: reduce paint work while scrolling */
.homeScrollPerformanceV1{--home-scroll-performance-v1:1}
html,body{overscroll-behavior-y:none!important;scroll-behavior:auto!important}
.sunPanelCloneApp{overflow-y:auto!important;overflow-x:hidden!important;contain:layout style!important;scrollbar-width:thin!important;scrollbar-color:rgba(148,163,184,.5) transparent!important}
.sunPanelCloneApp::-webkit-scrollbar{width:10px!important;height:10px!important;display:block!important;background:transparent!important}
.sunPanelCloneApp::-webkit-scrollbar-thumb{background:rgba(180,195,215,.75)!important;border-radius:8px!important;border:2px solid transparent!important;background-clip:padding-box!important}
.sunPanelCloneApp::-webkit-scrollbar-thumb:hover{background:rgba(210,222,240,.92)!important}
.sunPanelCloneApp::-webkit-scrollbar-track{background:rgba(255,255,255,.06)!important;border-radius:8px!important}
.sunPanelWallpaperCover.cover.wallpaper{will-change:transform!important;filter:none!important;transform:none!important;background-attachment:scroll!important;pointer-events:none!important}
body.homeBgBlurEnabled .sunPanelWallpaperCover.cover.wallpaper{filter:none!important}
.sunPanelWallpaperMask.mask{will-change:auto!important;transform:translateZ(0)!important}
.top,.side,.homeDockerPanel,.sunSystemStatusWidget,.sun-network-capsule,.hero,.card,.glassBox{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.sunHomeAppGrid .card{contain:layout paint!important;content-visibility:auto!important;contain-intrinsic-size:78px 220px!important;will-change:auto!important;backface-visibility:hidden!important}
.sunHomeAppGrid .card:hover{will-change:transform!important}
.sunHomeGroup{content-visibility:auto!important;contain-intrinsic-size:520px!important;contain:layout paint style!important}
.sunHomeAppGrid{contain:layout paint!important}.homeFavoriteBtn{will-change:auto!important}.sunHomeContextActions{will-change:auto!important}
@media(hover:none){.sunHomeAppGrid .card{transition:none!important}.sunHomeAppGrid .card:hover{transform:none!important;box-shadow:none!important}.actions .btn:hover{transform:none!important}.sunHomeIconBtn:hover{transform:none!important}}


/* Homepage scroll performance v2: smooth fling by disabling expensive effects while scrolling */
.homeScrollPerformanceV2{--home-scroll-performance-v2:1;touch-action:pan-y}
.homeScrollPerformanceV2 .sunPanelCloneApp{scrollbar-gutter:stable both-edges;overscroll-behavior:contain!important;content-visibility:visible!important}
.homeScrollPerformanceV2 .sunHomeGroup{contain:layout paint!important;content-visibility:visible!important;contain-intrinsic-size:auto!important}
.homeScrollPerformanceV2 .sunHomeAppGrid{content-visibility:auto!important;contain-intrinsic-size:320px!important}
.homeScrollPerformanceV2 .sunHomeAppGrid .card{transform:translateZ(0)!important;transition:background-color .10s linear,border-color .10s linear!important}
.homeScrollPerformanceV2.homeIsScrolling .sunHomeAppGrid .card,
.homeScrollPerformanceV2.homeIsScrolling .homeFavoriteBtn,
.homeScrollPerformanceV2.homeIsScrolling .sunHomeIconBtn,
.homeScrollPerformanceV2.homeIsScrolling .btn{transition:none!important;animation:none!important}
.homeScrollPerformanceV2.homeIsScrolling .sunHomeAppGrid .card:hover{transform:translateZ(0)!important;box-shadow:none!important;background:rgba(31,30,58,.76)!important}
.homeScrollPerformanceV2.homeIsScrolling .homeFavoriteBtn,
.homeScrollPerformanceV2.homeIsScrolling .sunHomeGroupActions{pointer-events:none!important}
.homeScrollPerformanceV2.homeIsScrolling .sunPanelWallpaperCover.cover.wallpaper,
.homeScrollPerformanceV2.homeIsScrolling .sunPanelWallpaperMask.mask{will-change:auto!important;transform:translateZ(0)!important}
.homeScrollPerformanceV2.homeIsScrolling .top,
.homeScrollPerformanceV2.homeIsScrolling .side,
.homeScrollPerformanceV2.homeIsScrolling .right,
.homeScrollPerformanceV2.homeIsScrolling .panel,
.homeScrollPerformanceV2.homeIsScrolling .hero,
.homeScrollPerformanceV2.homeIsScrolling .card,
.homeScrollPerformanceV2.homeIsScrolling .glassBox,
.homeScrollPerformanceV2.homeIsScrolling .homeDockerPanel,
.homeScrollPerformanceV2.homeIsScrolling .sun-network-capsule,
.homeScrollPerformanceV2.homeIsScrolling .sunSystemStatusWidget{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media(prefers-reduced-motion:reduce){.homeScrollPerformanceV2 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.sunAuthGate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:radial-gradient(circle at 12% 5%,#22d3ee22,transparent 34%),radial-gradient(circle at 85% 0%,#8b5cf622,transparent 30%),linear-gradient(135deg,#050816,#0f172a 58%,#111827);animation:authGateFade .22s ease-out}
@keyframes authGateFade{from{opacity:0}to{opacity:1}}
@keyframes authCardIn{from{opacity:0;transform:translate3d(0,16px,0) scale(.97)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
.sunAuthCard{width:min(92vw,380px);padding:30px 28px 24px;border-radius:18px;background:rgba(17,24,39,.82);border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 60px rgba(0,0,0,.5);color:#e2e8f0;animation:authCardIn .28s cubic-bezier(.22,1,.36,1);will-change:transform,opacity}
.sunAuthBrand{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.sunAuthIcon{font-size:34px;width:52px;height:52px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#22d3ee33,#8b5cf633);border:1px solid rgba(148,163,184,.2)}
.sunAuthTitle{font-size:20px;font-weight:700;letter-spacing:.5px}
.sunAuthSub{font-size:12.5px;color:#94a3b8;margin-top:2px}
.sunAuthTabs{display:flex;gap:6px;margin-bottom:18px;background:rgba(15,23,42,.6);padding:4px;border-radius:11px}
.sunAuthTab{flex:1;padding:9px 0;border:0;border-radius:8px;background:transparent;color:#94a3b8;font-size:14px;font-weight:600;cursor:pointer;transition:.18s}
.sunAuthTab.active{background:linear-gradient(135deg,#22d3ee,#3b82f6);color:#06121f;box-shadow:0 4px 14px rgba(34,211,238,.25)}
.sunAuthPane{display:flex;flex-direction:column;gap:11px}
.sunAuthInput{width:100%;padding:12px 14px;border-radius:10px;border:1px solid rgba(148,163,184,.22);background:rgba(15,23,42,.7);color:#e2e8f0;font-size:14px;outline:none;transition:.18s;box-sizing:border-box}
.sunAuthInput:focus{border-color:#22d3ee;box-shadow:0 0 0 3px rgba(34,211,238,.16)}
.sunAuthBtn{margin-top:4px;padding:12px 0;border:0;border-radius:10px;background:linear-gradient(135deg,#22d3ee,#3b82f6);color:#06121f;font-size:15px;font-weight:700;letter-spacing:1px;cursor:pointer;transition:.18s}
.sunAuthBtn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.sunAuthBtn:active{transform:translateY(0)}
.sunAuthErr{min-height:16px;font-size:12.5px;color:#f87171;text-align:center}
.sunAuthFooter{margin-top:16px;text-align:center;font-size:11.5px;color:#64748b}
.sunSuperOnly{display:none!important}
body.sunIsSuper .sunSuperOnly{display:revert!important}
body.sunIsSuper .actions .sunSuperOnly,body.sunIsSuper .homeDockerHeader .sunSuperOnly{display:inline-flex!important}
body.sunIsSuper section.sunSuperOnly{display:block!important}
.sunInviteModal{position:fixed;inset:0;z-index:9998;display:none;place-items:center;background:rgba(2,6,23,.72)}
.sunInviteModal.open{display:grid;animation:authGateFade .18s ease-out}
.sunInviteModal.open>*{animation:modalCardInPlain .26s cubic-bezier(.22,1,.36,1)}
@keyframes modalCardIn{from{opacity:0;transform:translate3d(-50%,-46%,0) scale(.97)}to{opacity:1;transform:translate3d(-50%,-50%,0) scale(1)}}
@keyframes modalCardInPlain{from{opacity:0;transform:translate3d(0,14px,0) scale(.97)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
.sunInviteCard{width:min(94vw,640px);max-height:86vh;overflow:auto;padding:24px;border-radius:16px;background:rgba(17,24,39,.95);border:1px solid rgba(148,163,184,.18);color:#e2e8f0;box-shadow:0 24px 60px rgba(0,0,0,.5)}
.sunInviteHead{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.sunInviteHead h3{margin:0;font-size:18px}
.sunInviteGen{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;padding:14px;background:rgba(15,23,42,.6);border-radius:11px;margin-bottom:16px}
.sunInviteGen label{display:block;font-size:11.5px;color:#94a3b8;margin-bottom:4px}
.sunInviteGen input{padding:9px 11px;border-radius:8px;border:1px solid rgba(148,163,184,.22);background:rgba(15,23,42,.8);color:#e2e8f0;font-size:13px;outline:none;box-sizing:border-box}
.sunInviteTable{width:100%;border-collapse:collapse;font-size:13px}
.sunInviteTable th,.sunInviteTable td{text-align:left;padding:8px 10px;border-bottom:1px solid rgba(148,163,184,.12)}
.sunInviteTable th{color:#94a3b8;font-weight:600;font-size:11.5px}
.sunInviteCode{font-family:ui-monospace,monospace;letter-spacing:.5px;color:#22d3ee;cursor:pointer}
.sunInviteBadge{font-size:11px;padding:2px 8px;border-radius:99px}
.sunInviteBadge.used{background:#7f1d1d55;color:#fca5a5}
.sunInviteBadge.avail{background:#14532d55;color:#86efac}
.sunInviteBadge.expired{background:#78350f55;color:#fcd34d}

/* Login UX polish v1: labels, password visibility, remember-me, mobile-safe card */
.sunAuthCard{width:min(92vw,400px)!important;box-sizing:border-box!important}
.sunAuthField{display:flex;flex-direction:column;gap:5px}
.sunAuthField label{font-size:12px;color:#cbd5e1;font-weight:650;letter-spacing:.02em}
.sunAuthInputWrap{position:relative;display:flex;align-items:center}
.sunAuthInputWrap .sunAuthInput{padding-right:46px;margin:0}
.sunAuthEye{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;border-radius:8px;background:rgba(148,163,184,.13);color:#cbd5e1;cursor:pointer;display:grid;place-items:center;font-size:14px}
.sunAuthEye:hover{background:rgba(34,211,238,.16);color:#67e8f9}
.sunAuthRemember{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#94a3b8;user-select:none;margin:0 0 2px}
.sunAuthRemember input{width:15px;height:15px;accent-color:#22d3ee}
.sunAuthHint{font-size:11.5px;color:#64748b;text-align:center;margin-top:-2px;line-height:1.35}
.sunAuthInput::placeholder{color:#94a3b8;opacity:.78}
@media(max-width:420px){.sunAuthCard{width:calc(100vw - 28px)!important;padding:24px 18px 20px!important;border-radius:16px}.sunAuthTitle{font-size:18px}.sunAuthIcon{width:46px;height:46px}.topCenterNetwork{display:none!important}.actions{gap:6px}.actions .btn{padding:8px 9px!important;font-size:12px!important}}




.sunPanelCloneApp{transform:translateZ(0);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
body.is-scrolling .sunHomeAppGrid .card,body.is-scrolling .sunHomeAppGrid .card *,body.homeIsScrolling .sunHomeAppGrid .card,body.homeIsScrolling .sunHomeAppGrid .card *{transition:none!important;animation:none!important}
.sunHomeAppGrid .card{will-change:auto}



/* 顶部横条：宽度保持原样，仅降低高度 + 按钮/图标不透明度增强 */
.sunPanelCloneApp > .top{
  position: sticky !important;
  top: 8px !important;
  z-index: 9998 !important;
  margin: 0 auto !important;
  padding: 4px 14px !important;
  gap: 10px !important;
  min-height: 0 !important;
  background: rgba(15, 23, 42, 0.85) !important;
  /* backdrop-filter 已在 perfBoostV1 中禁用 */
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 22px !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32) !important;
  box-sizing: border-box !important;
}
/* 顶栏固定后，为下方内容让出高度 */
.sunPanelCloneApp{padding-top: 12px !important}
/* 移除首页 Docker 状态面板 */
#homeDockerPanel, .homeDockerPanel{display:none !important}
/* ==================== 性能优化 (perfBoostV1) ==================== */
/* 1. 关闭所有 backdrop-filter（GPU 合成大户，占滚动 60%+ 帧时间）*/
.top, .side, .homeDockerPanel, .sunSystemStatusWidget,
.sun-network-capsule, .hero, .card, .glassBox,
.sunPanelCloneApp > .top, .sunPanelCloneApp .layout .side,
.sunPanelCloneApp .hero, .sunPanelCloneApp .homeDockerPanel,
.sunHomeAppGrid .card{
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
/* 2. 关闭壁纸滤镜和缩放（reflow 触发器）*/
.sunPanelWallpaperCover.cover.wallpaper{
  filter: none !important;
  transform: none !important;
  will-change: auto !important;
}
/* 3. 精简阴影（大 blur radius 会强制 GPU 层）*/
.sunPanelCloneApp > .top{
  box-shadow: 0 4px 14px rgba(0,0,0,.35) !important;
}
.sunHomeAppGrid .card{
  box-shadow: 0 4px 12px rgba(0,0,0,.22) !important;
}
.side{
  box-shadow: 0 4px 14px rgba(0,0,0,.20) !important;
}
/* 4. 滚动时冻结所有过渡（继承原 homeIsScrolling 机制并扩大范围）*/
body.homeIsScrolling *,
body.homeIsScrolling *::before,
body.homeIsScrolling *::after{
  transition: none !important;
  animation-play-state: paused !important;
}
body.homeIsScrolling .sunHomeAppGrid .card:hover{transform:none !important}
/* 5. 关闭卡片 hover 变形位移，只留背景色变化，避免 GPU 层反复创建 */
.sunHomeAppGrid .card{
  transition: background-color .12s, border-color .12s !important;
}
.sunHomeAppGrid .card:hover{
  transform: none !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.30) !important;
}
/* 6. 主滚动容器启用平滑滚动加速 */
.sunPanelCloneApp{
  scroll-behavior: auto !important;
  overscroll-behavior: contain !important;
  contain: layout paint !important;
}
/* 7. 大量卡片时启用 content-visibility 跳过不可见区域渲染 */
.sunHomeGroup{
  content-visibility: auto;
  contain-intrinsic-size: auto 300px;
}
/* ===== 图标抓取候选选择器 (faviconPickerV1) ===== */
.sunHomeFaviconPicker{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center}
.sunHomeFaviconPicker.open{display:flex}
.sunHomeFaviconPicker .sunHomeFaviconPickerMask{position:absolute;inset:0;background:rgba(2,6,23,.65)}
.sunHomeFaviconPicker .sunHomeFaviconPickerBox{position:relative;background:#161c2b;color:#e2e8f0;border:1px solid rgba(255,255,255,.14);border-radius:20px;box-shadow:0 24px 60px rgba(0,0,0,.5);width:min(720px,94vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}
.sunHomeFaviconPicker .sunHomeFaviconPickerHead{padding:16px 18px 10px;border-bottom:1px solid rgba(255,255,255,.08);position:relative;display:flex;flex-direction:column;gap:4px}
.sunHomeFaviconPicker .sunHomeFaviconPickerHead b{font-size:16px}
.sunHomeFaviconPicker .sunHomeFaviconPickerHead .hint{font-size:12px;color:#94a3b8}
.sunHomeFaviconPicker .sunHomeFaviconPickerClose{position:absolute;top:10px;right:10px;background:transparent;border:0;color:#94a3b8;font-size:22px;cursor:pointer;width:32px;height:32px;border-radius:8px}
.sunHomeFaviconPicker .sunHomeFaviconPickerClose:hover{background:rgba(255,255,255,.08);color:#fff}
.sunHomeFaviconPicker .sunHomeFaviconPickerGrid{padding:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;overflow:auto;flex:1 1 auto}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.03);border-radius:14px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:border-color .12s,background .12s;position:relative;min-height:130px}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard:hover{background:rgba(56,189,248,.10);border-color:rgba(56,189,248,.5)}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard.active{background:rgba(34,197,94,.14);border-color:#22c55e;box-shadow:0 0 0 2px rgba(34,197,94,.35)}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard input[type=radio]{position:absolute;top:6px;left:6px;width:16px;height:16px;accent-color:#22c55e;cursor:pointer}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard img{width:64px;height:64px;object-fit:contain;background:rgba(2,6,23,.45);border-radius:10px;padding:4px}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard .urlHint{font-size:10px;color:#94a3b8;text-align:center;word-break:break-all;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard.broken{opacity:.55}
.sunHomeFaviconPicker .sunHomeFaviconPickerCard .brokenTag{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:rgba(239,68,68,.15);color:#fca5a5;border-radius:10px;font-size:11px}
.sunHomeFaviconPicker .sunHomeFaviconPickerForm{padding:12px 18px;border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sunHomeFaviconPicker .sunHomeFaviconPickerForm label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#94a3b8}
.sunHomeFaviconPicker .sunHomeFaviconPickerForm input,.sunHomeFaviconPicker .sunHomeFaviconPickerForm select{background:rgba(2,6,23,.6);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 10px;color:#e2e8f0;font-size:13px;height:36px}
.sunHomeFaviconPicker .sunHomeFaviconPickerActions{padding:12px 18px 16px;display:flex;justify-content:flex-end;gap:10px;border-top:1px solid rgba(255,255,255,.08)}
.sunHomeFaviconPicker .sunHomeFaviconPickerActions .sunPanelGetIconBtn.primary{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#16a34a;color:#fff}
.sunHomeFaviconPicker .sunHomeFaviconPickerActions .sunPanelGetIconBtn.primary:hover{filter:brightness(1.1)}
@media(max-width:560px){.sunHomeFaviconPicker .sunHomeFaviconPickerForm{grid-template-columns:1fr}.sunHomeFaviconPicker .sunHomeFaviconPickerGrid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}
.sunPanelCloneApp > .top .logo{
  width: 26px !important;
  height: 26px !important;
  border-radius: 9px !important;
  font-size: 13px !important;
  background:linear-gradient(135deg,#38bdf8,#22c55e) !important;
  box-shadow:0 8px 22px rgba(34,211,238,.55),inset 0 0 12px rgba(255,255,255,.45) !important;
  opacity:1 !important;
}
.sunPanelCloneApp > .top .brand{gap:8px !important;align-items:center !important}
.sunPanelCloneApp > .top .title{font-size:15px !important;line-height:1.1 !important;margin:0 !important}
.sunPanelCloneApp > .top .sub{font-size:10px !important;margin-top:0 !important;line-height:1.1 !important}
.sunPanelCloneApp > .top .actions{gap:5px !important}
.sunPanelCloneApp > .top .actions .btn{
  padding: 3px 10px !important;
  font-size: 11.5px !important;
  line-height: 1.2 !important;
  background:#0f172aee !important;
  border-color:rgba(255,255,255,.42) !important;
  color:#f8fafc !important;
  opacity:1 !important;
}
.sunPanelCloneApp > .top .actions .btn.primary{
  background:linear-gradient(135deg,#0ea5e9,#2563eb) !important;
  border:0 !important;
  color:#fff !important;
}
.sunPanelCloneApp > .top .actions .btn:hover{
  background:#111827f7 !important;
  border-color:rgba(125,211,252,.85) !important;
}
.sunPanelCloneApp > .top .topCenterNetwork .sun-network-capsule,
.sunPanelCloneApp > .top .topCenterNetwork .pill-sec{
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  padding: 3px 8px !important;
}
.sunPanelCloneApp > .top .topCenterNetwork .pill-sep{
  background: transparent !important;
  border-color: transparent !important;
}
.sunPanelCloneApp > .top .topCenterNetwork .pill-label,
.sunPanelCloneApp > .top .topCenterNetwork .pill-val,
.sunPanelCloneApp > .top .topCenterNetwork .pill-tag{
  background: transparent !important;
  border-color: transparent !important;
  color:#f1f5f9 !important;
  opacity:1 !important;
  font-size: 11.5px !important;
}
/* === cardHoverDescTooltipV1: hover 显示描述 + 复制 === */
.sunHomeDescTooltip{position:fixed;z-index:10060;max-width:min(360px,80vw);padding:11px 13px 11px 13px;background:rgba(2,6,23,.96);color:#eaf2ff;border:1px solid rgba(125,211,252,.35);border-radius:14px;box-shadow:0 22px 60px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:12.5px;line-height:1.55;pointer-events:auto;opacity:0;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;user-select:text;display:none;white-space:pre-wrap;word-break:break-word}
.sunHomeDescTooltip.open{display:block;opacity:1;transform:translateY(0)}
.sunHomeDescTooltip .descTitle{color:#7dd3fc;font-size:11.5px;font-weight:600;margin:0 0 5px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.sunHomeDescTooltip .descTitle .adminBadge{font-size:10px;padding:1px 7px;border-radius:8px;background:rgba(34,197,94,.16);border:1px solid rgba(34,197,94,.42);color:#86efac;font-weight:500}
.sunHomeDescTooltip .descBody{max-height:280px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;font-size:12.5px;color:#eaf2ff}
.sunHomeDescTooltip .descActions{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed rgba(255,255,255,.10)}
.sunHomeDescTooltip .descBtn{flex:1;padding:6px 8px;font-size:11.5px;border-radius:9px;border:1px solid rgba(125,211,252,.4);background:rgba(56,189,248,.08);color:#e0f2fe;cursor:pointer;transition:.12s}
.sunHomeDescTooltip .descBtn:hover{background:rgba(56,189,248,.22);border-color:rgba(125,211,252,.7)}
.sunHomeDescTooltip .descEmpty{color:#94a3b8;font-style:italic;font-size:11.5px}
/* === bulkOpsV1: 批量操作模式 (v2 精致版) === */
.sunBulkModeEntry{
  position:fixed;left:16px;bottom:16px;z-index:10040;
  padding:6px 12px 6px 10px;
  border-radius:8px;
  background:rgba(15,23,42,.55);
  color:#e0f2fe;
  border:1px solid rgba(148,163,184,.22);
  box-shadow:0 2px 8px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(14px) saturate(1.3);
  font-size:12px;font-weight:500;line-height:1;letter-spacing:.02em;cursor:pointer;
  display:none;align-items:center;gap:6px;
  transition:transform .15s,background .18s,border-color .18s,box-shadow .18s;
}
.sunBulkModeEntry::before{
  content:"";width:15px;height:15px;flex:0 0 15px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237dd3fc' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M12 2l9 4.5v11L12 22 3 17.5v-11L12 2z'/><path d='M3 6.5L12 11l9-4.5'/><path d='M12 11v11'/></svg>");
  background-repeat:no-repeat;background-position:center;background-size:contain;
}
.sunBulkModeEntry:hover{transform:translateY(-1px);background:rgba(15,23,42,.72);border-color:rgba(125,211,252,.4);box-shadow:0 4px 14px rgba(56,189,248,.18),inset 0 1px 0 rgba(255,255,255,.08);color:#f0f9ff}
.sunBulkModeEntry:active{transform:translateY(0)}
body.sunBulkModeActive .sunBulkModeEntry{
  background:linear-gradient(135deg,rgba(244,63,94,.28),rgba(190,18,60,.22));
  border-color:rgba(252,165,165,.45);
  color:#fee2e2;
}
body.sunBulkModeActive .sunBulkModeEntry::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fecaca' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M18 6L6 18M6 6l12 12'/></svg>");
}
.sunBulkModeEntry:active{transform:translateY(0)}
.sunBulkModeEntry .sunBulkLabel{display:none}
body.sunBulkModeActive .sunHomeAppGrid .card.sunHomeAppIcon{position:relative;transition:.14s;cursor:pointer !important}
body.sunBulkModeActive .sunHomeAppGrid .card.sunHomeAppIcon::before{
  content:"";position:absolute;left:7px;top:7px;width:17px;height:17px;
  border-radius:5px;background:rgba(2,6,23,.7);
  border:1.5px solid rgba(255,255,255,.5);
  backdrop-filter:blur(4px);z-index:5;transition:.14s;pointer-events:none;
  box-shadow:0 2px 5px rgba(0,0,0,.25);
}
body.sunBulkModeActive .sunHomeAppGrid .card.sunHomeAppIcon.bulkChecked::before{
  background:linear-gradient(135deg,#22d3ee,#10b981);
  border-color:#a7f3d0;
  box-shadow:0 0 12px rgba(34,211,238,.55),0 2px 5px rgba(0,0,0,.2);
}
body.sunBulkModeActive .sunHomeAppGrid .card.sunHomeAppIcon.bulkChecked::after{
  content:"";position:absolute;left:7px;top:7px;width:17px;height:17px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23052e1b' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'><polyline points='4 12 10 18 20 6'/></svg>");
  background-repeat:no-repeat;background-position:64% 70%;background-size:11px 11px;
  z-index:6;pointer-events:none;
}
body.sunBulkModeActive .sunHomeAppGrid .card.sunHomeAppIcon.bulkChecked{
  outline:2px solid rgba(134,239,172,.7);outline-offset:2px;
  background:linear-gradient(135deg,rgba(16,185,129,.16),rgba(15,23,42,.72)) !important;
}
body.sunBulkModeActive .sunHomeContextActions,body.sunBulkModeActive .homeFavoriteBtn{display:none !important}

/* 底部操作条 - 玻璃拟态 */
.sunBulkBar{
  position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);
  z-index:10041;
  display:none;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;
  padding:8px 10px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(30,41,59,.88));
  border:1px solid rgba(148,163,184,.18);
  box-shadow:0 22px 60px rgba(0,0,0,.55),0 4px 14px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(22px) saturate(1.4);
  max-width:calc(100vw - 32px);
  opacity:0;
  transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .2s;
}
body.sunBulkModeActive .sunBulkBar{display:flex;opacity:1;transform:translateX(-50%) translateY(0)}
.sunBulkBar .bulkStat{
  display:inline-flex;align-items:center;gap:4px;
  color:#e0f2fe;font-size:12px;font-weight:600;
  padding:6px 10px;border-radius:9px;
  background:linear-gradient(135deg,rgba(56,189,248,.18),rgba(99,102,241,.14));
  border:1px solid rgba(125,211,252,.28);
}
.sunBulkBar .bulkStat b{color:#67e8f9;font-size:13px;font-weight:800;margin:0 2px}
.sunBulkBar .bulkBtn{
  padding:6px 11px;font-size:12px;font-weight:600;
  border-radius:9px;border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);color:#e2e8f0;cursor:pointer;
  transition:transform .12s,background .12s,border-color .12s,box-shadow .12s;
  line-height:1;
}
.sunBulkBar .bulkBtn:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.24);transform:translateY(-1px)}
.sunBulkBar .bulkBtn:active{transform:translateY(0)}
.sunBulkBar .bulkBtn.primary{background:linear-gradient(135deg,rgba(34,197,94,.22),rgba(16,185,129,.18));border-color:rgba(134,239,172,.4);color:#dcfce7}
.sunBulkBar .bulkBtn.primary:hover{background:linear-gradient(135deg,rgba(34,197,94,.34),rgba(16,185,129,.28));border-color:rgba(134,239,172,.6);box-shadow:0 4px 12px rgba(16,185,129,.25)}
.sunBulkBar .bulkBtn.warn{background:linear-gradient(135deg,rgba(245,158,11,.22),rgba(234,88,12,.18));border-color:rgba(253,224,71,.32);color:#fef3c7}
.sunBulkBar .bulkBtn.warn:hover{background:linear-gradient(135deg,rgba(245,158,11,.34),rgba(234,88,12,.28));box-shadow:0 4px 12px rgba(234,88,12,.25)}
.sunBulkBar .bulkBtn.danger{background:linear-gradient(135deg,rgba(239,68,68,.22),rgba(190,18,60,.18));border-color:rgba(252,165,165,.4);color:#fecaca}
.sunBulkBar .bulkBtn.danger:hover{background:linear-gradient(135deg,rgba(239,68,68,.34),rgba(190,18,60,.28));box-shadow:0 4px 12px rgba(239,68,68,.3)}
.sunBulkBar .bulkBtn:disabled{opacity:.4;cursor:not-allowed;transform:none}
.sunBulkBar select{
  padding:6px 10px;font-size:12px;font-weight:500;
  border-radius:9px;border:1px solid rgba(255,255,255,.12);
  background:rgba(15,23,42,.85);color:#e2e8f0;cursor:pointer;
  max-width:140px;text-overflow:ellipsis;
}
.sunBulkBar select:hover{border-color:rgba(125,211,252,.4)}
.sunBulkBar .bulkSep{width:1px;height:18px;background:rgba(255,255,255,.1);margin:0 2px}
@media(max-width:640px){
  .sunBulkModeEntry{width:34px;height:34px;font-size:14px;left:12px;bottom:12px}
  .sunBulkBar{left:8px;right:8px;transform:none;max-width:none;padding:8px;bottom:14px;gap:5px}
  body.sunBulkModeActive .sunBulkBar{transform:translateY(0)}
  .sunBulkBar .bulkBtn{padding:6px 8px;font-size:11.5px}
  .sunBulkBar .bulkSep{display:none}
  .sunBulkBar select{max-width:110px}
}
