
:root {
  --tc-accent: #3b82f6;
  --tc-bg-deep: #090d14;
  --tc-bg-soft: #101722;
  --tc-card: rgba(18, 27, 40, .78);
  --tc-card-strong: rgba(22, 34, 50, .94);
  --tc-border: rgba(148, 163, 184, .18);
  --tc-text: #e8eef9;
  --tc-muted: #9fb0c7;
  --tc-radius: 18px;
  --tc-shadow: 0 18px 45px rgba(0,0,0,.28);
}
html[data-tc-profile="bluegray"] { --tc-bg-deep:#0b111a; --tc-bg-soft:#111b28; }
html[data-tc-profile="midnight"] { --tc-bg-deep:#050814; --tc-bg-soft:#0b1224; }
html[data-tc-profile="black"] { --tc-bg-deep:#030406; --tc-bg-soft:#090b0f; }
html[data-tc-profile="deep"] { --tc-bg-deep:#090d14; --tc-bg-soft:#101722; }

body:not(.share-v317-body) {
  background:
    radial-gradient(circle at 18% -10%, color-mix(in srgb, var(--tc-accent) 20%, transparent), transparent 34%),
    radial-gradient(circle at 100% 5%, rgba(56, 189, 248, .10), transparent 30%),
    linear-gradient(180deg, var(--tc-bg-deep), #070a10) !important;
  color: var(--tc-text);
}
body.tc-custom-bg-v712 {
  background-image:
    linear-gradient(180deg, rgba(7,10,16,.74), rgba(7,10,16,.88)),
    var(--tc-user-background) !important;
  background-size: cover !important;
  background-position: center !important;
  background-attachment: fixed !important;
}
.card,.tile,.file-card,.panel,.modal,.admin-card,.v317-card,
[class*="card"], [class*="panel"] {
  border-color: var(--tc-border) !important;
}
.tile,.file-card,.grid-item,.vault-item,.v497-thumb,.family-share-card-v568 {
  background: linear-gradient(180deg, rgba(22,34,50,.82), rgba(13,20,31,.80)) !important;
  border: 1px solid var(--tc-border) !important;
  border-radius: var(--tc-radius) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.18) !important;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.tile:hover,.file-card:hover,.grid-item:hover,.vault-item:hover,.v497-thumb:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--tc-accent) 45%, var(--tc-border)) !important;
  box-shadow: var(--tc-shadow) !important;
}
.selected,.tile.selected,.file-card.selected,.grid-item.selected {
  outline: 2px solid color-mix(in srgb, var(--tc-accent) 75%, white) !important;
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--tc-accent) 22%, transparent), var(--tc-shadow) !important;
}
.preview img,.preview video,.file-card img,.tile img {
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,.08);
}
.file-symbol,.file-icon,.preview .file-symbol {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: clamp(32px, 5vw, 58px) !important;
}
.video-preview::after,.preview:has(video)::after {
  content:"▶";
  position:absolute;
  inset:auto 12px 12px auto;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(0,0,0,.55);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
}
[data-quality],.quality-badge,.badge-quality,.badge-hd,.badge-fhd,.badge-4k {
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--tc-accent) 85%, #111827) !important;
  color:white !important;
}
aside,.sidebar,.side,.nav-sidebar {
  background: linear-gradient(180deg, rgba(10,16,25,.94), rgba(8,12,18,.94)) !important;
  border-right: 1px solid var(--tc-border) !important;
}
.sidebar button,.side button,.nav-sidebar button,.sidebar a,.side a,.nav-sidebar a {
  border-radius: 13px !important;
}
.sidebar button.active,.side button.active,.nav-sidebar .active,
[aria-current="page"] {
  background: color-mix(in srgb, var(--tc-accent) 18%, transparent) !important;
  border-color: color-mix(in srgb, var(--tc-accent) 45%, transparent) !important;
  box-shadow: inset 3px 0 0 var(--tc-accent);
}
body.tc-sidebar-compact-v712 aside,
body.tc-sidebar-compact-v712 .sidebar,
body.tc-sidebar-compact-v712 .side,
body.tc-sidebar-compact-v712 .nav-sidebar {
  width: 82px !important;
  min-width: 82px !important;
}
body.tc-sidebar-large-v712 aside,
body.tc-sidebar-large-v712 .sidebar,
body.tc-sidebar-large-v712 .side,
body.tc-sidebar-large-v712 .nav-sidebar {
  width: 288px !important;
  min-width: 288px !important;
}
body.tc-compact-v712 .tile,
body.tc-compact-v712 .file-card,
body.tc-compact-v712 .grid-item {
  padding: 10px !important;
  gap: 8px !important;
}
body.tc-animations-off-v712 *,
body.tc-animations-off-v712 *::before,
body.tc-animations-off-v712 *::after {
  animation: none !important;
  transition: none !important;
}
.tc-skeleton-v712 {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  min-height: 120px;
  background: linear-gradient(90deg, rgba(148,163,184,.08), rgba(148,163,184,.16), rgba(148,163,184,.08));
  background-size: 240% 100%;
  animation: tcSkeletonV712 1.2s ease-in-out infinite;
}
@keyframes tcSkeletonV712 { 0%{background-position:100% 0} 100%{background-position:-100% 0} }
.tc-bottom-nav-v712 { display:none; }
@media(max-width: 820px) {
  .tc-bottom-nav-v712 {
    position: fixed;
    z-index: 9999;
    left: 10px;
    right: 10px;
    bottom: 10px;
    height: 62px;
    border: 1px solid var(--tc-border);
    background: rgba(10,16,25,.92);
    backdrop-filter: blur(16px);
    border-radius: 22px;
    box-shadow: var(--tc-shadow);
    display:flex;
    align-items:center;
    justify-content:space-around;
    padding: 0 8px;
  }
  .tc-bottom-nav-v712 a {
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
    min-width:54px; color:var(--tc-muted); text-decoration:none; font-size:11px;
  }
  .tc-bottom-nav-v712 a.active { color: var(--tc-accent); }
  body { padding-bottom: 78px; }
}
.tc-toast-history-v712 {
  position: fixed; z-index: 10010; right: 18px; bottom: 84px;
  width: min(380px, calc(100vw - 28px)); max-height: 46vh; overflow:auto;
  border:1px solid var(--tc-border); border-radius: 18px; background: rgba(9,13,20,.96);
  box-shadow: var(--tc-shadow); padding: 10px; display:none;
}
.tc-toast-history-v712.show { display:block; }
.tc-toast-history-v712 .item { padding: 10px; border-radius: 12px; background: rgba(255,255,255,.04); margin: 6px 0; color: var(--tc-text); }
.tc-settings-grid-v712 { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px; }
.tc-settings-card-v712 {
  border:1px solid var(--tc-border); border-radius:18px; background:var(--tc-card); padding:16px;
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.tc-settings-card-v712 label { display:block; color:var(--tc-muted); font-size:13px; margin:10px 0 5px; }
.tc-settings-card-v712 input,.tc-settings-card-v712 select {
  width:100%; min-height:38px; border-radius:12px; border:1px solid var(--tc-border);
  background:rgba(5,10,18,.75); color:var(--tc-text); padding:8px 10px; box-sizing:border-box;
}
.tc-settings-card-v712 button,.tc-v712-btn {
  min-height:40px; border-radius:12px; border:1px solid color-mix(in srgb,var(--tc-accent) 45%,transparent);
  background:color-mix(in srgb,var(--tc-accent) 82%,#111827); color:white; font-weight:800; cursor:pointer;
}
.tc-private-home-v712,.tc-update-center-v712,.tc-upload-center-v712 {
  border:1px solid var(--tc-border); border-radius:22px;
  background:linear-gradient(180deg, rgba(20,31,48,.86), rgba(9,14,23,.86));
  padding:18px; box-shadow:var(--tc-shadow); margin:14px 0;
}
.tc-private-home-v712 {
  background: radial-gradient(circle at 20% 0%, rgba(59,130,246,.18), transparent 35%),
              linear-gradient(180deg, rgba(16,24,40,.94), rgba(8,11,18,.94));
}
.tc-family-accent-v712 { border-left: 4px solid #22c55e !important; }
.tc-password-strength-v712 { height: 9px; border-radius: 99px; background: rgba(255,255,255,.09); overflow:hidden; margin-top:7px; }
.tc-password-strength-v712 span { display:block;height:100%;width:0%;background:#ef4444;transition:width .18s ease, background .18s ease; }
body.tc-table-modern-v712 table, body.tc-table-modern-v712 .list, body.tc-table-modern-v712 .file-list {
  border-collapse: separate !important; border-spacing: 0 8px !important;
}
.preview-actions-v637,.preview-actions-v634,.preview-download-btn-v637,.preview-download-btn-v634,.tc-preview-direct-download-v708,[data-v711-direct-download]{
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
