*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
::selection{background:#808080;color:#fff;}
::-moz-selection{background:#808080;color:#fff;}

:root{
  accent-color:#808080;
  --g0:#080808; --g1:#111111; --g2:#1a1a1a; --g3:#222222;
  --g4:#2e2e2e; --g5:#3d3d3d; --g6:#555555; --accent:#808080;
  --accent-dim:#3a3a3a; --warn:#c0622a; --ok:#808080;
  --text:#d8d8d8; --text-dim:#888888; --text-muted:#4a4a4a;
  --border:rgba(120,120,120,0.14); --border-strong:rgba(120,120,120,0.26);
  --surface:rgba(12,12,12,0.72);
}

html,body{
  width:100%;height:100%;
  background:#050505;
  font-family:'Syne',sans-serif;
  color:var(--text);
}

@media(min-width:681px){
  html,body{overflow:hidden;}
}

#bg{
  position:fixed;inset:0;z-index:0;
  pointer-events:none;
}

#outer{
  position:fixed;
  inset:16px 20px;
  z-index:1;
  border-radius:10px;
  box-shadow:
    0 0 0 16px #050505,
    0 0 0 17px rgba(80,80,80,0.18),
    0 8px 60px rgba(0,0,0,0.95);
  overflow:hidden;
  border:1px solid rgba(100,100,100,0.22);
  display:flex;
  flex-direction:column;
}

@media(max-width:680px){
  #outer{
    position:relative;
    inset:unset;
    margin:8px;
    min-height:calc(100dvh - 16px);
    overflow-y:auto;
    overflow-x:hidden;
    box-shadow:
      0 0 0 8px #050505,
      0 0 0 9px rgba(80,80,80,0.18),
      0 8px 40px rgba(0,0,0,0.95);
  }
}

#outer::before,#outer::after{
  content:'';position:absolute;
  width:14px;height:14px;
  border-color:var(--accent-dim);
  border-style:solid;
  z-index:20;opacity:0.5;
  pointer-events:none;
}
#outer::before{top:0;left:0;border-width:1px 0 0 1px;border-radius:4px 0 0 0;}
#outer::after{bottom:0;right:0;border-width:0 1px 1px 0;border-radius:0 0 4px 0;}

#app{
  display:flex;flex-direction:column;
  background:rgba(8,8,8,0.84);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  flex:1;
  min-height:0;
}

@media(min-width:681px){
  #app{position:absolute;inset:0;}
}

#nav{
  display:flex;align-items:center;gap:10px;
  padding:0 16px;height:50px;
  border-bottom:1px solid var(--border);
  background:rgba(8,8,8,0.7);
  flex-shrink:0;
  opacity:0;
  animation:fadeDown 0.55s 0.08s ease forwards;
  min-width:0;
}
.nav-brand{
  display:flex;align-items:center;gap:9px;
  text-decoration:none;flex-shrink:0;
}
.nav-logo{width:24px;height:24px;border-radius:5px;object-fit:contain;opacity:0.75;}
.nav-title{font-family:'Syne',sans-serif;font-weight:700;font-size:14px;letter-spacing:0.05em;color:var(--text);}
.nav-title em{color:var(--accent);font-style:normal;}
.sep{flex:1;min-width:0;}
.btn-discord{
  display:flex;align-items:center;gap:6px;
  padding:5px 12px;border-radius:6px;
  background:rgba(88,101,242,0.12);
  border:1px solid rgba(88,101,242,0.22);
  color:#9399e0;
  font-family:'Syne',sans-serif;font-size:11.5px;font-weight:500;
  cursor:pointer;white-space:nowrap;
  text-decoration:none;
  transition:background 0.15s;
  flex-shrink:0;
}
.btn-discord:hover{background:rgba(88,101,242,0.2);}

.user-badge{
  display:flex;align-items:center;gap:7px;
  padding:4px 8px;border-radius:6px;
  background:rgba(255,255,255,0.02);
  border:1px solid var(--border);
  min-width:0;flex-shrink:1;
  overflow:hidden;
}
.user-avatar{width:22px;height:22px;border-radius:4px;border:1px solid var(--border-strong);object-fit:cover;flex-shrink:0;}
.user-name{font-family:'Syne',sans-serif;font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.btn-reports{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--ok);text-decoration:none;transition:opacity 0.15s;padding:2px 6px;border-radius:4px;background:rgba(136,136,136,0.15);white-space:nowrap;flex-shrink:0;}
.btn-reports:hover{opacity:0.8;background:rgba(136,136,136,0.25);}
.btn-logout{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--warn);text-decoration:none;transition:opacity 0.15s;white-space:nowrap;flex-shrink:0;}
.btn-logout:hover{opacity:0.8;}

@media(max-width:400px){
  .btn-reports{display:none;}
  .user-name{max-width:70px;}
}

#body{flex:1;display:flex;overflow:hidden;}
@media(min-width:681px){ #body{flex-direction:row;overflow:hidden;} }
@media(max-width:680px){ #body{flex-direction:column;overflow:visible;} }

#left{
  display:flex;flex-direction:column;
  justify-content:center;
  border-right:1px solid var(--border);
  opacity:0;
  animation:fadeLeft 0.65s 0.22s ease forwards;
}
@media(min-width:681px){
  #left{width:40%;flex-shrink:0;padding:28px 32px 28px 28px;}
}
@media(max-width:680px){
  #left{width:100%;border-right:none;border-bottom:1px solid var(--border);padding:20px 18px 22px;justify-content:flex-start;}
}

.page-my-reports #left { padding:20px 24px; justify-content: flex-start; }
.page-my-reports .main-input {
  flex: none;
  margin-bottom: 8px;
}

.eyebrow{font-family:'DM Mono',monospace;font-size:9.5px;letter-spacing:0.13em;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.eyebrow::before{content:'';display:block;width:20px;height:1px;background:var(--accent-dim);}
h1{font-family:'Syne',sans-serif;font-size:clamp(20px,2.8vw,36px);font-weight:700;line-height:1.2;color:var(--text);margin-bottom:10px;}
h1 em{font-style:normal;color:var(--g6);}
.sub{font-size:12.5px;line-height:1.72;color:var(--text-dim);margin-bottom:20px;max-width:360px;}

@media(max-width:680px){
  h1{font-size:24px;}
  .sub{font-size:12px;margin-bottom:16px;}
}

.search-row{display:flex;gap:7px;margin-bottom:10px;flex-wrap:wrap;}
@media(max-width:680px){ .search-row{flex-wrap:nowrap;} }

.platform-select{
  background:rgba(255,255,255,0.035); border:1px solid var(--border-strong);
  border-radius:7px; padding:9px 28px 9px 13px; font-family:'DM Mono',monospace;font-size:12.5px;
  color:var(--text);outline:none; cursor:pointer; transition:border-color 0.2s,background 0.2s;
  appearance:none; -webkit-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'><path d='M1 1L5 5L9 1' stroke='%23888888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat:no-repeat; background-position:right 11px center; flex-shrink:0; min-width:0;
}
@media(max-width:680px){
  .platform-select{padding-left:10px;padding-right:26px;font-size:11.5px;width:96px;}
}
.platform-select:focus{border-color:var(--accent);background-color:rgba(120,120,120,0.05);}
.platform-select option{background:#0d0d0d;color:var(--text);}

.main-input{
  flex:1; min-width:0; background:rgba(255,255,255,0.035);
  border:1px solid var(--border-strong); border-radius:7px; padding:9px 13px;
  font-family:'DM Mono',monospace;font-size:12.5px; color:var(--text);outline:none;
  transition:border-color 0.2s,background 0.2s;
}
.main-input::placeholder{color:var(--text-muted);}
.main-input:focus{border-color:var(--accent);background:rgba(120,120,120,0.05);}
@media(max-width:680px){ .main-input{font-size:16px;} }

.btn-go{
  padding:9px 14px;border-radius:7px; background:var(--accent-dim);
  border:1px solid rgba(120,120,120,0.45); color:var(--text);
  font-family:'Syne',sans-serif;font-size:12px;font-weight:600;
  letter-spacing:0.03em;cursor:pointer; transition:background 0.15s,border-color 0.15s;
  white-space:nowrap; flex-shrink:0; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:10px;
}
.btn-go:hover{background:var(--accent);border-color:var(--accent);}
.btn-go:disabled{opacity:0.35;cursor:not-allowed;}

#val-msg{font-family:'DM Mono',monospace;font-size:10.5px;color:var(--warn);min-height:14px;margin-top:-4px;}

.tool-promo { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--border); display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.tool-promo p { font-family: 'DM Mono', monospace; font-size: 10.5px; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; }
.btn-download { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 6px; background: rgba(255, 255, 255, 0.03); border: 1px solid var(--border-strong); color: var(--text); font-family: 'Syne', sans-serif; font-size: 12.5px; font-weight: 600; text-decoration: none; transition: background 0.15s, border-color 0.15s; }
.btn-download:hover { background: rgba(255, 255, 255, 0.08); border-color: var(--text-dim); }

#list-container { flex:1; overflow-y:auto; scrollbar-width:thin; scrollbar-color:var(--g4) transparent; padding-right: 8px; margin-bottom: 12px; }
#list-container::-webkit-scrollbar{width:3px;}
#list-container::-webkit-scrollbar-thumb{background:var(--g4);border-radius:2px;}
.list-item { display: flex; align-items: center; justify-content: space-between; padding: 12px 14px; background: rgba(255,255,255,0.02); border: 1px solid var(--border); border-radius: 6px; margin-bottom: 8px; cursor: pointer; transition: 0.15s; }
.list-item:hover { background: rgba(255,255,255,0.05); border-color: var(--accent); }
.list-item-left { display: flex; align-items: center; gap: 10px; }
.li-plat { font-family: 'DM Mono', monospace; font-size: 10px; color: var(--accent); text-transform: uppercase; }
.li-name { font-size: 14px; font-weight: 600; color: var(--text); }
.li-date { font-family: 'DM Mono', monospace; font-size: 10px; color: var(--text-muted); }
.pag-row { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--border); padding-top: 12px; }
.btn-pag { background: var(--accent-dim); border: 1px solid var(--border-strong); color: var(--text); padding: 5px 12px; border-radius: 5px; font-family: 'DM Mono', monospace; font-size: 11px; cursor: pointer; }
.btn-pag:disabled { opacity: 0.3; cursor: not-allowed; }
.pag-info { font-family: 'DM Mono', monospace; font-size: 10px; color: var(--text-muted); }

#right{flex:1;display:flex;flex-direction:column;opacity:0;animation:fadeRight 0.65s 0.32s ease forwards;}
@media(min-width:681px){ #right{overflow:hidden;} }
@media(max-width:680px){ #right{overflow:visible;min-height:300px;} }

#results{flex:1;padding:20px 18px;scrollbar-width:thin;scrollbar-color:var(--g4) transparent;}
@media(min-width:681px){ #results{overflow-y:auto;padding:22px 24px;} }
#results::-webkit-scrollbar{width:3px;}
#results::-webkit-scrollbar-thumb{background:var(--g4);border-radius:2px;}

.ph{height:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:16px;}
.ph-ring{width:50px;height:50px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-muted);margin-bottom:2px;}
.ph-h{font-family:'Syne',sans-serif;font-size:13px;font-weight:600;color:var(--text-dim);}
.ph-p{font-family:'DM Mono',monospace;font-size:11px;color:var(--text-muted);max-width:220px;line-height:1.6;}

.st-load{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;}
.spinner{width:28px;height:28px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:spin 0.7s linear infinite;}
.st-load p{font-family:'DM Mono',monospace;font-size:11px;color:var(--text-muted);}

.st-err{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:20px;}
.st-err p{font-family:'DM Mono',monospace;font-size:11.5px;color:var(--warn);max-width:230px;line-height:1.65;}
.btn-clr{font-family:'DM Mono',monospace;font-size:10.5px;padding:4px 11px;border-radius:5px;background:none;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:border-color 0.15s,color 0.15s;}
.btn-clr:hover{border-color:var(--border-strong);color:var(--text-dim);}

.card{border:1px solid var(--border-strong);border-radius:8px;background:rgba(10,10,10,0.55);overflow:hidden;opacity:0;animation:fadeUp 0.38s ease forwards;}
.card-head{padding:14px 16px 12px;border-bottom:1px solid var(--border);}
.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:11px;}
.avatar{width:40px;height:40px;border-radius:7px;flex-shrink:0;border:1px solid var(--border-strong);background:rgba(80,80,80,0.08);display:flex;align-items:center;justify-content:center;font-family:'Instrument Serif',serif;font-size:19px;color:var(--accent);}
.name-block{flex:1;min-width:0;}
.pname{font-family:'Syne',sans-serif;font-size:15px;font-weight:700;color:var(--text);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pid{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--text-muted);}
.badges{display:flex;align-items:center;gap:5px;flex-wrap:wrap;}
.badge{font-family:'DM Mono',monospace;font-size:9.5px;letter-spacing:0.06em;text-transform:uppercase;padding:2px 8px;border-radius:3px;white-space:nowrap;}
.b-flag{background:rgba(192,98,42,0.13);border:1px solid rgba(192,98,42,0.3);color:#c87050;}
.b-clean{background:rgba(100,100,100,0.1);border:1px solid rgba(140,140,140,0.28);color:#aaaaaa;}
.b-plat{background:rgba(80,80,80,0.07);border:1px solid var(--border);color:var(--text-muted);}
.card-meta{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--text-muted);}

.rep-title{font-family:'DM Mono',monospace;font-size:9.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-muted);padding:12px 16px 7px;}
.rep-row{display:flex;align-items:center;gap:8px;padding:9px 16px;border-top:1px solid var(--border);transition:background 0.14s;}
.rep-row:hover{background:rgba(255,255,255,0.015);}
.rep-bar{width:3px;align-self:stretch;border-radius:2px;min-height:32px;flex-shrink:0;opacity:0.65;}
.rep-icon{font-size:15px;width:20px;text-align:center;flex-shrink:0;}
.rep-label{font-family:'Syne',sans-serif;font-size:12.5px;font-weight:600;color:var(--text);flex:1;min-width:0;}
.rep-count{font-family:'DM Mono',monospace;font-size:11px;color:var(--text-dim);white-space:nowrap;}
.rep-date{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--text-muted);white-space:nowrap;}

@media(max-width:400px){
  .rep-date{display:none;}
  .rep-label{font-size:11.5px;}
}

.no-rep{padding:24px 16px;text-align:center;font-family:'DM Mono',monospace;font-size:11px;color:var(--text-muted);}

.changelog-box { font-family: 'DM Mono', monospace; font-size: 11.5px; color: var(--text-dim); line-height: 1.7; padding: 12px 16px 20px; }

.card-tabs-container { display: flex; border-bottom: 1px solid var(--border); background: rgba(0,0,0,0.18); flex-wrap: wrap; }
.card-tab-btn { font-family: 'DM Mono', monospace; font-size: 10px; color: var(--text-dim); background: none; border: none; padding: 10px 14px; cursor: pointer; transition: color 0.15s, border-color 0.15s; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.card-tab-btn:hover { color: var(--text); }
.card-tab-btn.active { color: var(--text); border-bottom-color: var(--accent); }
.tab-pane { display: none; }
.tab-pane.active-pane { display: block; }
.details-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; padding: 14px 16px; }
.details-item { border: 1px solid var(--border); padding: 8px 10px; border-radius: 5px; background: rgba(255,255,255,0.01); }
.details-lbl { font-family: 'DM Mono', monospace; font-size: 9px; color: var(--text-muted); text-transform: uppercase; margin-bottom: 2px; }
.details-val { font-family: 'Syne', sans-serif; font-size: 13px; font-weight: 600; color: var(--text); }
.history-list { padding: 6px 16px 14px; }
.history-row { display: flex; justify-content: space-between; font-family: 'DM Mono', monospace; font-size: 11px; padding: 8px 0; border-bottom: 1px solid var(--border); color: var(--text-dim); }
.history-row:last-child { border-bottom: none; }
.history-name { color: var(--text); }
.match-item { border-bottom: 1px solid var(--border); }
.match-item:last-child { border-bottom: none; }
.match-header { padding: 10px 16px; display: flex; align-items: center; justify-content: space-between; cursor: pointer; transition: background 0.14s; }
.match-header:hover { background: rgba(255,255,255,0.015); }
.match-left { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.match-guid { font-family: 'DM Mono', monospace; font-size: 11px; color: var(--text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.match-reason-tag { font-family: 'DM Mono', monospace; font-size: 9px; padding: 1px 5px; border-radius: 3px; background: rgba(192,98,42,0.1); border: 1px solid rgba(192,98,42,0.25); color: #c87050; width: max-content; }
.match-right { font-family: 'DM Mono', monospace; font-size: 10px; color: var(--text-muted); white-space: nowrap; display: flex; align-items: center; gap: 6px; }
.match-expanded { display: none; background: rgba(0,0,0,0.18); padding: 12px 16px; border-top: 1px solid var(--border); }
.match-stats-title { font-family: 'DM Mono', monospace; font-size: 9px; color: var(--text-muted); text-transform: uppercase; margin-bottom: 6px; }
.match-stats-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 12px; }
.match-stat-box { background: rgba(8,8,8,0.4); border: 1px solid var(--border); border-radius: 4px; padding: 6px; text-align: center; }
.match-stat-box .num { font-family: 'DM Mono', monospace; font-size: 13px; font-weight: 500; color: var(--text); }
.match-stat-box .lbl { font-family: 'DM Mono', monospace; font-size: 8.5px; color: var(--text-muted); }
.btn-replay { font-family: 'DM Mono', monospace; font-size: 9.5px; padding: 4px 10px; border-radius: 4px; background: var(--accent-dim); border: 1px solid rgba(120,120,120,0.3); color: var(--text); cursor: pointer; transition: background 0.15s; }
.btn-replay:hover { background: var(--accent); }

#foot{
  border-top:1px solid var(--border);
  padding:8px 18px; display:flex; align-items:center; justify-content:space-between; gap:10px;
  background:rgba(8,8,8,0.6); flex-shrink:0; opacity:0; animation:fadeUp 0.5s 0.5s ease forwards;
}
.f-copy{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--text-muted);white-space:nowrap;}
.f-note{font-family:'DM Mono',monospace;font-size:9.5px;color:var(--text-muted);text-align:right;max-width:380px;line-height:1.5;}
.f-note em{color:var(--accent-dim);font-style:normal;}
@media(max-width:680px){ .f-note{display:none;} }

#ticker-bar { display: flex; align-items: center; height: 50px; border-bottom: 1px solid var(--border); background: rgba(8,8,8,0.7); overflow: hidden; flex-shrink: 0; opacity: 0; animation: fadeDown 0.55s 0.15s ease forwards; }
.ticker-wrap { width: 100%; overflow: hidden; display: flex; }
.ticker-move { display: inline-flex; white-space: nowrap; animation: tickerScroll 25s linear infinite; }
.ticker-item { display: inline-flex; align-items: center; gap: 6px; padding: 0 40px; font-family: 'DM Mono', monospace; font-size: 11.5px; color: var(--text-dim); }
.ticker-plat { color: var(--accent); text-transform: capitalize; }
.ticker-name { color: var(--text); font-family: 'Syne', sans-serif; font-weight: 600; font-size: 13px; }
.ticker-time { color: var(--text-muted); }

@keyframes tickerScroll { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
@media (max-width: 680px) {
  .ticker-item { font-size: 10.5px; padding: 0 25px; }
  .ticker-name { font-size: 12px; }
}

/* Modals & Dialog Windows */
.modal-overlay {
  position: fixed; inset: 0;
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px);
  z-index: 999; display: none; align-items: center; justify-content: center; padding: 16px;
  opacity: 1; transition: opacity 0.2s ease;
}
.modal-content {
  background: rgba(13, 13, 13, 0.92); border: 1px solid var(--border-strong); border-radius: 10px;
  padding: 24px; max-width: 380px; width: 100%; text-align: center;
  box-shadow: 0 20px 50px rgba(0,0,0,0.85);
  animation: fadeUp 0.22s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.modal-h { font-family: 'Syne', sans-serif; font-weight: 700; font-size: 18px; color: var(--text); margin-bottom: 8px; }
.modal-p { font-family: 'DM Mono', monospace; font-size: 11.5px; color: var(--text-dim); line-height: 1.6; margin-bottom: 20px; }
.modal-actions { display: flex; flex-direction: column; gap: 8px; align-items: center; }
.btn-close-modal { font-family: 'DM Mono', monospace; font-size: 10px; color: var(--text-muted); background: none; border: none; cursor: pointer; margin-top: 4px; }
.btn-close-modal:hover { color: var(--text-dim); }

/* Animation configuration overrides for modal closures */
.modal-overlay.closing { opacity: 0; }
.modal-overlay.closing .modal-content { animation: fadeClose 0.2s cubic-bezier(0.16, 1, 0.3, 1) forwards; }

/* Custom Action Button Trigger without standard background bindings */
.btn-dispute-trigger {
  background: none !important;
  border: 1px solid transparent;
  color: var(--ok);
  font-family: 'DM Mono', monospace;
  font-size: 9.5px;
  padding: 2px 6px;
  cursor: pointer;
  margin-left: auto;
  border-radius: 4px;
  transition: color 0.15s, border-color 0.15s;
}
.btn-dispute-trigger:hover {
  color: var(--text);
  border-color: var(--border);
  background: rgba(255,255,255,0.02) !important;
}

/* Toast Containers Layout Matrix */
.toast-container {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 10px;
  pointer-events: none;
}
.toast {
  background: rgba(10, 10, 10, 0.9);
  backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
  border: 1px solid var(--border-strong);
  border-left: 3px solid var(--accent);
  color: var(--text);
  font-family: 'DM Mono', monospace;
  font-size: 11.5px;
  padding: 12px 18px;
  border-radius: 4px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.6);
  pointer-events: auto;
  transform: translateX(130%);
  animation: toastIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.toast.toast-out {
  animation: toastOut 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes toastIn { to { transform: translateX(0); } }
@keyframes toastOut { from { transform: translateX(0); } to { transform: translateX(130%); } }
@keyframes fadeClose { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(10px); } }
@keyframes fadeDown{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeLeft{from{opacity:0;transform:translateX(-14px);}to{opacity:1;transform:translateX(0);}}
@keyframes fadeRight{from{opacity:0;transform:translateX(14px);}to{opacity:1;transform:translateX(0);}}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
@keyframes spin{to{transform:rotate(360deg);}}