/* EDGE CONTROL V3.1.1 HOTFIX
   V3 base first, then V3.1 polish. */
/* PANEL.AMPME.DEV — EDGE CONTROL V3 */
:root{
  --canvas:#09090a !important; --surface:#111214 !important; --surface-2:#151618 !important;
  --border:#292824 !important; --border-strong:#3a352f !important;
  --text:#f2eee7 !important; --muted:#aaa49b !important; --faint:#746f68 !important;
  --accent:#ff7d1a !important; --accent-hover:#ff9134 !important; --accent-soft:rgba(255,125,26,.10) !important;
  --danger:#ff645d !important; --danger-soft:rgba(255,100,93,.10) !important;
  --radius:18px !important; --radius-sm:12px !important;
  --shadow-sm:0 1px 0 rgba(255,255,255,.03),0 16px 46px rgba(0,0,0,.24) !important;
  --shadow-md:0 24px 70px rgba(0,0,0,.42) !important;
}
html{background:#09090a}
body{
  background:
    radial-gradient(circle at 18% -8%,rgba(255,116,12,.12),transparent 30%),
    radial-gradient(circle at 95% 105%,rgba(255,132,25,.08),transparent 28%),
    #09090a !important;
  color:var(--text)!important;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background-image:
    linear-gradient(rgba(255,255,255,.016) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:linear-gradient(to bottom,black,transparent 88%);
}
::selection{background:rgba(255,125,26,.28);color:#fff}
.card,.sidecard,.panel,.toolbar,.library-controls,.modal,.dialog,.sheet{
  background:rgba(17,18,20,.88)!important;border-color:rgba(255,255,255,.075)!important;
  box-shadow:var(--shadow-sm)!important;backdrop-filter:blur(18px)
}
input,select,textarea,.input,.select{background:#0c0d0e!important;color:#eee9e1!important;border-color:#34312d!important}
input:focus,select:focus,textarea:focus,.input:focus,.select:focus{
  border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(255,125,26,.10)!important
}
button,.btn,.topbtn,.signout{transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease!important}
.btn:hover,.topbtn:hover,.signout:hover{border-color:#765036!important;color:#ff9c50!important}

body.v3-app header,body.v3-app .topbar{
  background:rgba(11,12,13,.84)!important;border-color:rgba(255,255,255,.07)!important;
  backdrop-filter:blur(22px)!important;box-shadow:0 12px 50px rgba(0,0,0,.25)!important
}
body.v3-app header .brand .mark,body.v3-app .topbar .logo{
  background:linear-gradient(145deg,#ff9b46,#ff6d00)!important;
  box-shadow:0 0 28px rgba(255,117,13,.22)!important
}
body.v3-app header .brand .name,body.v3-app .brandtitle{
  letter-spacing:.09em!important;font-family:var(--mono)!important;font-weight:800!important
}
body.v3-app header .brand .sub,body.v3-app .brandsub{color:#77716a!important}
.v3-health{
  display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 11px;
  border:1px solid #33402e;border-radius:11px;background:#121712;
  color:#afd7a4;font:700 9px/1 var(--mono);letter-spacing:.08em;white-space:nowrap
}
.v3-health i{width:7px;height:7px;border-radius:50%;background:#86dc68;box-shadow:0 0 15px #86dc68}

body.v3-app .container{max-width:1640px!important;gap:18px!important}
body.v3-app .sidebar{gap:12px!important}
body.v3-app .card-title,body.v3-app .sidehead{
  color:#ff9340!important;font-family:var(--mono)!important;font-size:10px!important;letter-spacing:.11em!important
}
body.v3-app .stat{border-color:#282724!important}
body.v3-app .stat-val{color:#f2eee7!important}
body.v3-app .status-row{color:#aaa49b!important;border-color:#282724!important}
body.v3-app .status-row .dot{background:#8adb71!important;box-shadow:0 0 15px rgba(138,219,113,.5)!important}
body.v3-app .dropzone{
  background:radial-gradient(circle at 50% 0,rgba(255,125,26,.08),transparent 62%),#0d0e0f!important;
  border-color:#4c3b2e!important;color:#d8d2ca!important
}
body.v3-app .dropzone:hover{
  border-color:#ff7d1a!important;background:rgba(255,125,26,.055)!important;
  box-shadow:inset 0 0 45px rgba(255,125,26,.035)!important
}
body.v3-app .dropzone svg{stroke:#ff8b32!important}
body.v3-app .library-controls{
  background:rgba(14,15,16,.88)!important;border:1px solid rgba(255,255,255,.07)!important;border-radius:18px!important
}
body.v3-app .breadcrumb,body.v3-app .path,body.v3-app .mono{font-family:var(--mono)!important}
body.v3-app .grid > *,body.v3-app .filecard,body.v3-app .file-card,body.v3-app .folder-card,body.v3-app .item-card{
  border-color:#292824!important;background:linear-gradient(180deg,rgba(20,21,22,.96),rgba(14,15,16,.96))!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important
}
body.v3-app .grid > *:hover,body.v3-app .filecard:hover,body.v3-app .file-card:hover,body.v3-app .folder-card:hover{
  transform:translateY(-2px);border-color:#6d4930!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 0 1px rgba(255,125,26,.05)!important
}
body.v3-app img{background:#0c0d0e}
body.v3-app #loader{background:rgba(8,8,9,.72)!important;backdrop-filter:blur(8px)!important}
body.v3-app .spinner{border-color:#342f2b!important;border-top-color:#ff7d1a!important}
body.v3-app #toast{background:#151617!important;border:1px solid #3b332d!important;color:#eee9e1!important}

*{scrollbar-color:#4c3b2e #0e0f10}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#0e0f10}
::-webkit-scrollbar-thumb{background:#3c332c;border:2px solid #0e0f10;border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:#68452f}

/* cinematic login */
body.v3-login{
  min-height:100vh!important;display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr)!important;
  align-items:center!important;gap:6vw!important;padding:80px max(32px,7vw)!important;overflow:hidden
}
body.v3-login:after{
  content:"";position:fixed;inset:-10%;pointer-events:none;z-index:-1;
  background:radial-gradient(circle at 26% 30%,rgba(255,126,26,.13),transparent 22%),
             radial-gradient(circle at 84% 74%,rgba(255,126,26,.07),transparent 24%);
  filter:blur(10px)
}
.v3-login-hero{max-width:780px;position:relative;animation:v3Rise .8s cubic-bezier(.2,.8,.2,1) both}
.v3-login-kicker{font:800 11px/1.4 var(--mono);letter-spacing:.13em;color:#ff8b32}
.v3-login-hero h1{margin:24px 0 22px!important;font-size:clamp(64px,7.4vw,118px)!important;line-height:.88!important;letter-spacing:-.06em!important;font-weight:760!important}
.v3-login-hero h1 span{color:#ff9845}
.v3-login-hero p{max-width:650px;color:#938d84;font-size:17px;line-height:1.7}
.v3-login-stats{display:flex;gap:42px;margin-top:38px}
.v3-login-stats div{display:flex;flex-direction:column;gap:7px}
.v3-login-stats strong{font-size:25px}
.v3-login-stats span{font:700 9px var(--mono);letter-spacing:.12em;color:#77716a}
.v3-edge-map{height:230px;margin-top:30px;position:relative;opacity:.9}
.v3-edge-map svg{width:100%;height:100%;overflow:visible}
.v3-edge-map line{stroke:#49372a;stroke-width:1}
.v3-edge-map circle{fill:#72533d}
.v3-edge-map circle.hot{fill:#ff7d1a;filter:drop-shadow(0 0 8px #ff7d1a)}
body.v3-login .auth{
  max-width:510px!important;width:100%!important;justify-self:center;background:rgba(16,17,18,.90)!important;
  border-color:rgba(255,255,255,.08)!important;border-radius:30px!important;padding:38px!important;
  box-shadow:0 30px 100px rgba(0,0,0,.48)!important;backdrop-filter:blur(24px);
  animation:v3Card .85s .08s cubic-bezier(.2,.8,.2,1) both
}
body.v3-login .auth:before{content:"";display:block;height:2px;margin:-38px 0 34px;background:linear-gradient(90deg,transparent,#ff7d1a,transparent)}
body.v3-login .auth .brand{margin-bottom:28px!important}
body.v3-login .auth .mark{background:linear-gradient(145deg,#ff9b46,#ff6d00)!important;box-shadow:0 0 26px rgba(255,117,13,.22)!important}
body.v3-login .auth h1{font-size:31px!important;margin-bottom:7px!important}
body.v3-login .auth .lead{color:#8f8981!important;margin-bottom:28px!important}
body.v3-login .auth label{font-family:var(--mono)!important;font-size:9px!important;font-weight:800!important;letter-spacing:.11em!important;color:#918a81!important}
body.v3-login .auth input{height:56px!important;padding:0 14px!important;margin-top:8px;border-radius:14px!important;background:#0b0c0d!important;color:#f3eee7!important}
body.v3-login .auth button[type="submit"]{
  height:62px!important;margin-top:12px!important;border-radius:18px!important;color:#1b120c!important;
  background:linear-gradient(180deg,#ff9639,#ff7410)!important;border:1px solid #ffa45e!important;
  font-family:var(--mono)!important;letter-spacing:.08em!important;font-size:11px!important;font-weight:900!important;
  position:relative;overflow:hidden;box-shadow:0 13px 35px rgba(255,111,8,.16)!important
}
body.v3-login .auth button[type="submit"]:hover{background:linear-gradient(180deg,#ffa24d,#ff7b18)!important;box-shadow:0 17px 44px rgba(255,111,8,.24)!important}
body.v3-login .auth button.v3-auth-loading:after{
  content:"";position:absolute;left:12px;right:12px;bottom:7px;height:3px;border-radius:4px;
  background:#ffd2ad;transform-origin:left;animation:v3Progress .9s ease forwards
}
body.v3-login .error{background:rgba(255,84,75,.08)!important;border-color:rgba(255,84,75,.25)!important;color:#ff928d!important;border-radius:12px!important}
.v3-auth-state{display:flex;align-items:center;gap:8px;margin-top:18px;color:#77716a;font:750 9px var(--mono);letter-spacing:.09em}
.v3-auth-state i{width:7px;height:7px;border-radius:50%;background:#ff7d1a;box-shadow:0 0 15px #ff7d1a}

@keyframes v3Rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes v3Card{from{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:none}}
@keyframes v3Progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}

@media(max-width:980px){
  body.v3-login{grid-template-columns:1fr!important;overflow:auto;padding-top:45px!important}
  .v3-login-hero h1{font-size:64px!important}.v3-edge-map{display:none}
  body.v3-login .auth{justify-self:start}.v3-login-stats{margin-bottom:10px}
}
@media(max-width:640px){
  body.v3-login{padding:28px 16px 40px!important}.v3-login-hero h1{font-size:54px!important}
  .v3-login-hero p{font-size:14px}.v3-login-stats{gap:18px;justify-content:space-between}
  .v3-login-stats strong{font-size:19px}
  body.v3-login .auth{padding:25px!important;border-radius:24px!important}
  body.v3-login .auth:before{margin:-25px 0 25px}.v3-health{display:none}
}
@media(prefers-reduced-motion:reduce){.v3-login-hero,body.v3-login .auth{animation:none!important}}


/* ===== V3.1 POLISH LAYER ===== */
/* EDGE CONTROL V3.1 — IMPECCABLE POLISH
   UI layer only. Backend forms/actions remain untouched. */

/* ---------- GLOBAL TUNING ---------- */
:root{
  --ec-bg:#08090a;
  --ec-panel:#111214;
  --ec-panel-2:#151719;
  --ec-panel-3:#0d0e0f;
  --ec-line:#2a2926;
  --ec-line-hot:#6b442c;
  --ec-text:#f1ede6;
  --ec-muted:#969087;
  --ec-dim:#6f6a63;
  --ec-orange:#ff7d1a;
  --ec-orange-2:#ff9b46;
  --ec-green:#8edb72;
  --ec-red:#ff6861;
  --ec-shadow:0 18px 55px rgba(0,0,0,.34);
}
html{background:var(--ec-bg)!important}
body.v3-app,body.v3-login{
  background:
    radial-gradient(850px 520px at 5% -8%,rgba(255,111,9,.10),transparent 58%),
    radial-gradient(760px 600px at 105% 108%,rgba(255,125,26,.075),transparent 58%),
    var(--ec-bg)!important;
}
body.v3-app *{box-sizing:border-box}
body.v3-app a,body.v3-login a{text-decoration-color:rgba(255,125,26,.5)}

/* ---------- TOP BARS ---------- */
body.v3-app header,
body.v3-app .topbar{
  background:rgba(8,9,10,.90)!important;
  border-bottom:1px solid rgba(255,255,255,.065)!important;
  box-shadow:0 10px 45px rgba(0,0,0,.28)!important;
}
body.v3-app .topbtn,
body.v3-app .signout{
  background:#101113!important;
  border:1px solid #302f2c!important;
  color:#b7b1a8!important;
  box-shadow:none!important;
}
body.v3-app .topbtn:hover,
body.v3-app .signout:hover{
  background:#171412!important;
  border-color:#65452f!important;
  color:#ff9b49!important;
}
body.v3-app .topbtn.active{
  background:rgba(255,125,26,.11)!important;
  border-color:rgba(255,125,26,.38)!important;
  color:#ff9b49!important;
  box-shadow:inset 0 0 0 1px rgba(255,125,26,.035)!important;
}
body.v3-app .topuser{color:#7f7972!important}
body.v3-app .topuser b{color:#ded8cf!important}

/* ---------- STORAGE: index.php ---------- */
body.v3-app .ampme-storage-widget{
  background:linear-gradient(180deg,#151617,#101112)!important;
  color:var(--ec-text)!important;
  border:1px solid #34312c!important;
  box-shadow:0 16px 42px rgba(0,0,0,.30)!important;
  backdrop-filter:blur(18px);
}
body.v3-app .ampme-storage-title,
body.v3-app .ampme-storage-pct{color:#ded8cf!important}
body.v3-app .ampme-storage-meta{color:#807a72!important}
body.v3-app .ampme-storage-bar{background:#292723!important}
body.v3-app .ampme-storage-fill{
  background:linear-gradient(90deg,#d45d0a,#ff8e35)!important;
  box-shadow:0 0 16px rgba(255,125,26,.16)!important;
}
body.v3-app .ampme-storage-widget.warn{border-color:rgba(255,104,97,.45)!important}
body.v3-app .ampme-storage-widget.warn .ampme-storage-pct{color:#ff8b85!important}
body.v3-app .ampme-storage-widget.warn .ampme-storage-fill{
  background:linear-gradient(90deg,#b93f39,#ff6861)!important
}

/* ---------- STORAGE: gen.php ---------- */
body.v3-app .headerstorage{
  width:210px!important;
  background:linear-gradient(180deg,#151617,#101112)!important;
  border:1px solid #34312c!important;
  border-radius:12px!important;
  box-shadow:0 8px 26px rgba(0,0,0,.22)!important;
}
body.v3-app .headerstoragetop{color:#8c867e!important}
body.v3-app .headerstoragetop b{color:#e5dfd6!important}
body.v3-app .headerstoragebar{background:#292723!important}
body.v3-app .headerstoragebar span{
  background:linear-gradient(90deg,#dc610b,#ff9138)!important;
  box-shadow:0 0 12px rgba(255,125,26,.16)!important;
}
body.v3-app .headerstoragebottom{color:#777169!important}

/* ---------- INDEX SIDEBAR ---------- */
body.v3-app .sidebar .card,
body.v3-app .sidebar-summary .card{
  background:linear-gradient(180deg,rgba(18,19,21,.98),rgba(14,15,16,.98))!important;
  border-color:#2b2a27!important;
}
body.v3-app .card-title{
  color:#ff9140!important;
  letter-spacing:.12em!important;
}
body.v3-app .stat-label{color:#918b82!important}
body.v3-app .stat-val{color:#eee8df!important}
body.v3-app .seo-overview-stat{
  background:#0e0f10!important;
  border-color:#292824!important;
}
body.v3-app .seo-overview-stat strong{color:#f0eae2!important}
body.v3-app .seo-overview-stat span{color:#777169!important}
body.v3-app .sidebar .btn,
body.v3-app .sidebar-actions .btn{
  background:#111214!important;border-color:#393631!important;color:#c6c0b7!important
}
body.v3-app .sidebar .btn:hover,
body.v3-app .sidebar-actions .btn:hover{
  border-color:#735039!important;color:#ff9b49!important;background:#181411!important
}

/* ---------- GEN.PHP COMPLETE SKIN ---------- */
body.v3-app .shell{background:transparent!important}
body.v3-app .layout{background:transparent!important}
body.v3-app .sidecard,
body.v3-app .toolbar,
body.v3-app .contentcard,
body.v3-app .flash{
  background:linear-gradient(180deg,#121315,#0f1011)!important;
  border-color:#2c2b28!important;
  color:var(--ec-text)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.22)!important;
}
body.v3-app .sidehead{
  color:#ff9140!important;
  font-family:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace!important;
  letter-spacing:.12em!important;
}
body.v3-app .dropzone{
  background:
    radial-gradient(circle at 50% 0,rgba(255,125,26,.075),transparent 66%),
    #0c0d0e!important;
  border-color:#4b392d!important;
}
body.v3-app .dropzone:hover,
body.v3-app .dropzone.dragover{
  background:rgba(255,125,26,.055)!important;
  border-color:#ff7d1a!important;
}
body.v3-app .dropicon{color:#ff8d35!important}
body.v3-app .droptitle{color:#d8d1c8!important}
body.v3-app .dropsub,
body.v3-app .uploadmeta,
body.v3-app .uploadsummary{color:#7d7770!important}
body.v3-app .nichepicker{
  background:#0c0d0e!important;color:#ddd7cf!important;border:1px solid #34322e!important
}
body.v3-app .overviewrow{
  color:#8e887f!important;
  border-color:#292824!important;
}
body.v3-app .overviewrow b{color:#eee8df!important}
body.v3-app .queueitem{
  background:#0d0e0f!important;border-color:#292824!important
}
body.v3-app .queueitem img{background:#0a0b0c!important}
body.v3-app .qname{color:#d9d3ca!important}
body.v3-app .qsize{color:#777169!important}

/* breadcrumb that was bright white */
body.v3-app .breadcrumbbar{
  background:linear-gradient(180deg,#131416,#101112)!important;
  color:#8f8981!important;
  border:1px solid #2d2c29!important;
  border-radius:15px!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important;
}
body.v3-app .breadcrumb a{color:#bdb6ad!important}
body.v3-app .breadcrumb b{color:#f0eae2!important}

/* generator toolbar */
body.v3-app .toolbar{
  background:linear-gradient(180deg,#111214,#0e0f10)!important;
}
body.v3-app .toolbar label,
body.v3-app .toolbarlabel{
  color:#79736c!important;
}
body.v3-app .toolbar input,
body.v3-app .toolbar select{
  background:#0a0b0c!important;
  color:#d9d3ca!important;
  border-color:#33312e!important;
}
body.v3-app .toolbar input:focus,
body.v3-app .toolbar select:focus{
  border-color:#ff7d1a!important;
  box-shadow:0 0 0 3px rgba(255,125,26,.09)!important;
}
body.v3-app .toolbarend{color:#777169!important}
body.v3-app .viewbtn,
body.v3-app .viewtoggle button{
  background:#121315!important;border-color:#34312d!important;color:#8e887f!important
}
body.v3-app .viewbtn.active,
body.v3-app .viewtoggle button.active{
  color:#ff9642!important;background:rgba(255,125,26,.09)!important;border-color:#69462f!important
}

/* generator content area */
body.v3-app .contentcard{
  background:#0d0e0f!important;
  border-color:#2b2a27!important;
}
body.v3-app .filegrid{background:transparent!important}
body.v3-app .filecard{
  background:linear-gradient(180deg,#151618,#111214)!important;
  border:1px solid #302f2c!important;
  border-radius:15px!important;
  overflow:hidden!important;
  box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
}
body.v3-app .filecard:hover{
  transform:translateY(-2px)!important;
  border-color:#65452f!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),0 0 0 1px rgba(255,125,26,.035)!important;
}
body.v3-app .preview{
  background:#0b0c0d!important;
  border-bottom:1px solid #292824!important;
}
body.v3-app .folderpreview{
  background:
    radial-gradient(circle at 50% 40%,rgba(255,125,26,.08),transparent 45%),
    #0d0e0f!important;
  color:#ff8730!important;
  border-bottom:1px solid #292824!important;
}
body.v3-app .filename{color:#eee8df!important}
body.v3-app .meta{color:#807a72!important}
body.v3-app .pill{
  background:#22211f!important;color:#9b958d!important;border:1px solid #302e2a!important
}
body.v3-app .pill.ready{
  background:rgba(142,219,114,.09)!important;
  color:#a9e795!important;
  border-color:rgba(142,219,114,.24)!important
}
body.v3-app .nichebadge{
  background:rgba(255,125,26,.09)!important;
  color:#ff9b49!important;
  border:1px solid rgba(255,125,26,.22)!important
}
body.v3-app .cardactions{border-top:0!important}
body.v3-app .ghost{
  background:#0d0e0f!important;
  border:1px solid #393631!important;
  color:#c4beb6!important;
}
body.v3-app .ghost:hover{
  background:#191512!important;
  border-color:#714b31!important;
  color:#ff9b49!important;
}
body.v3-app .primary{
  background:linear-gradient(180deg,#ff9437,#ff7410)!important;
  border-color:#ff9f56!important;
  color:#1d130d!important;
  box-shadow:0 8px 22px rgba(255,111,7,.13)!important;
}
body.v3-app .primary:hover{filter:brightness(1.06)}
body.v3-app .danger{
  background:rgba(255,104,97,.055)!important;
  border-color:rgba(255,104,97,.26)!important;
  color:#ff837d!important
}
body.v3-app .invalid,
body.v3-app .clientmsg{
  background:#1a140d!important;border-color:#5e4322!important;color:#dfa35c!important
}
body.v3-app .empty{color:#817b73!important}
body.v3-app .footerhint{color:#716c65!important}

/* inputs / controls that were bright */
body.v3-app button:not(.primary):not(.btn-primary),
body.v3-app select,
body.v3-app input[type="text"],
body.v3-app input[type="search"],
body.v3-app input[type="date"]{
  color-scheme:dark
}

/* ---------- INDEX MAIN LIBRARY ---------- */
body.v3-app .library-controls{
  background:linear-gradient(180deg,#111214,#0e0f10)!important;
  border-color:#2d2c29!important;
  box-shadow:0 10px 30px rgba(0,0,0,.16)!important
}
body.v3-app .grid > article,
body.v3-app .grid > .item,
body.v3-app .grid > .file-card,
body.v3-app .grid > .folder-card{
  background:linear-gradient(180deg,#151618,#111214)!important;
}
body.v3-app .grid .actions,
body.v3-app .card-actions{
  border-color:#292824!important;
}
body.v3-app .grid button,
body.v3-app .grid .btn{
  background:#0d0e0f!important;color:#c5bfb7!important;border-color:#393631!important
}
body.v3-app .grid button:hover,
body.v3-app .grid .btn:hover{
  border-color:#704b32!important;color:#ff9b49!important;background:#191512!important
}

/* ---------- CINEMATIC LOGIN POLISH ---------- */
body.v3-login{perspective:1200px}
body.v3-login .v3-login-hero,
body.v3-login .auth{will-change:transform,opacity}
body.v3-login .auth{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
body.v3-login .auth:after{
  content:"";position:absolute;inset:-1px;z-index:-1;pointer-events:none;
  background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(255,125,26,.10),transparent 42%);
  opacity:.65;transition:opacity .25s
}
body.v3-login .field,
body.v3-login input{transition:border-color .2s,box-shadow .2s,background .2s,transform .2s!important}
body.v3-login input:focus{
  transform:translateY(-1px);
  background:#0d0e0f!important;
  border-color:#ff7d1a!important;
  box-shadow:0 0 0 3px rgba(255,125,26,.085),0 12px 30px rgba(0,0,0,.14)!important
}
.v3-edge-map line{
  stroke-dasharray:5 8;
  animation:v31Route 8s linear infinite;
}
.v3-edge-map circle.hot{animation:v31Pulse 2.3s ease-in-out infinite}
.v3-edge-map circle.hot:nth-of-type(2n){animation-delay:.6s}
@keyframes v31Route{to{stroke-dashoffset:-120}}
@keyframes v31Pulse{0%,100%{opacity:.65;filter:drop-shadow(0 0 4px #ff7d1a)}50%{opacity:1;filter:drop-shadow(0 0 14px #ff7d1a)}}

.v31-login-pulse{
  position:fixed;pointer-events:none;border:1px solid rgba(255,125,26,.35);
  width:18px;height:18px;border-radius:50%;transform:translate(-50%,-50%);
  animation:v31CursorPulse .55s ease-out forwards;z-index:100
}
@keyframes v31CursorPulse{to{width:78px;height:78px;opacity:0;border-color:rgba(255,125,26,0)}}

/* ---------- SUCCESS HANDOFF ---------- */
#v31-handoff{
  position:fixed;inset:0;z-index:9999;display:grid;place-items:center;
  background:
    radial-gradient(circle at 50% 45%,rgba(255,125,26,.10),transparent 26%),
    rgba(7,8,9,.96);
  opacity:1;transition:opacity .55s cubic-bezier(.2,.8,.2,1);
}
#v31-handoff.hide{opacity:0;pointer-events:none}
.v31-handoff-inner{text-align:center;transform:translateY(8px);animation:v31HandoffIn .55s cubic-bezier(.2,.8,.2,1) forwards}
.v31-handoff-icon{
  width:52px;height:52px;margin:0 auto 18px;border-radius:16px;
  display:grid;place-items:center;color:#1a110b;font-weight:900;
  background:linear-gradient(145deg,#ffa14b,#ff720d);
  box-shadow:0 0 44px rgba(255,125,26,.26)
}
.v31-handoff-kicker{font:800 10px ui-monospace,monospace;letter-spacing:.14em;color:#ff8f38;margin-bottom:9px}
.v31-handoff-title{font-size:29px;font-weight:800;letter-spacing:-.035em;color:#f2eee7}
.v31-handoff-sub{margin-top:7px;font-size:12px;color:#79736c}
.v31-handoff-line{width:220px;height:3px;margin:20px auto 0;background:#252420;border-radius:99px;overflow:hidden}
.v31-handoff-line i{display:block;width:100%;height:100%;background:#ff7d1a;transform-origin:left;animation:v31Load .8s ease both}
@keyframes v31HandoffIn{to{transform:none}}
@keyframes v31Load{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* stagger after login */
body.v31-enter .container > *,
body.v31-enter .layout > *,
body.v31-enter .filegrid > *,
body.v31-enter .grid > *{
  animation:v31Enter .48s cubic-bezier(.2,.8,.2,1) both;
}
body.v31-enter .filegrid > *:nth-child(2n),
body.v31-enter .grid > *:nth-child(2n){animation-delay:.035s}
body.v31-enter .filegrid > *:nth-child(3n),
body.v31-enter .grid > *:nth-child(3n){animation-delay:.07s}
body.v31-enter .filegrid > *:nth-child(5n),
body.v31-enter .grid > *:nth-child(5n){animation-delay:.105s}
@keyframes v31Enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* responsive */
@media(max-width:1050px){
  body.v3-app .headerstorage{display:none!important}
}
@media(max-width:700px){
  body.v3-app .topbtn{background:#101113!important}
  body.v3-app .filecard{border-radius:13px!important}
}
@media(prefers-reduced-motion:reduce){
  .v3-edge-map line,.v3-edge-map circle.hot,
  body.v31-enter .container > *,body.v31-enter .layout > *,
  body.v31-enter .filegrid > *,body.v31-enter .grid > *{animation:none!important}
}

