/*
 * TravTools · © MUNLabs
 * final_ui_pass.css — Layout-Pass
 * Scope: Layout-Stabilisierung (Auth-Raster, Chat-Raster, Welten-Raster, Formularbreiten).
 * Optik (Glas, Glow, Farben) kommt ausschliesslich aus den Tokens (shared.css)
 * und der Komponenten-Ebene (css/premium.css). Keine Markup-Aenderung noetig.
 */

/* -----------------------------
   Generische Seiten-Huelle / Karten
------------------------------ */
.tt-main{min-width:0;}

.tt-main .tt-card,
.tt-main .tt-content-card,
.tt-main .tt-panel,
.tt-main .tt-box,
.tt-main .tt-patch-card,
.tt-main .tt-about-card,
.tt-main .tt-donate-card,
.tt-main .tt-founder-card,
.tt-main .tt-auth-card,
.tt-main .tt-login-card,
.tt-main .tt-reg-card,
.tt-main .tt-change-card,
.tt-main .tt-delete-card,
.tt-main .tt-reset-card,
.tt-main .tt-world-card,
.tt-main .tt-mini-world,
.tt-main .tt-form-box,
.tt-main .tt-top-item,
.tt-main .tt-feed-item,
.tt-main .tt-role-card,
.tt-main .tt-feat-card,
.tt-main .tt-suold-form,
.tt-main .tt-table-card{
  border-radius:var(--tt-ui-radius-lg)!important;
  box-shadow:var(--tt-ui-shadow-soft);
  min-height:0!important;
}

.tt-main .tt-world-card,
.tt-main .tt-mini-world,
.tt-main .tt-role-card,
.tt-main .tt-feat-card,
.tt-main .tt-top-item,
.tt-main .tt-feed-item,
.tt-main .tt-patch-card,
.tt-main .tt-about-card,
.tt-main .tt-donate-card,
.tt-main .tt-founder-card{
  background:var(--tt-grad-card)!important;
  border:1px solid var(--tt-ui-line)!important;
}

.tt-main .tt-world-card:hover,
.tt-main .tt-mini-world:hover,
.tt-main .tt-role-card:hover,
.tt-main .tt-feat-card:hover,
.tt-main .tt-top-item:hover,
.tt-main .tt-feed-item:hover,
.tt-main .tt-patch-card:hover,
.tt-main .tt-about-card:hover,
.tt-main .tt-donate-card:hover,
.tt-main .tt-founder-card:hover{
  background:linear-gradient(180deg, var(--tt-surface-hover), var(--tt-surface-glass))!important;
  border-color:var(--tt-ui-line-strong)!important;
  box-shadow:0 0 0 1px rgba(242,193,74,.10) inset, var(--tt-glow-gold-soft), var(--tt-ui-shadow-soft)!important;
}

/* -----------------------------
   Generische Formular-Controls
------------------------------ */
.tt-main button,
.tt-main input[type="button"],
.tt-main input[type="submit"],
.tt-main input[type="reset"]{-webkit-appearance:none;appearance:none;}

.tt-main .tt-input,
.tt-main .tt-inp,
.tt-main .tt-select,
.tt-main .tt-textarea,
.tt-main .tt-donate-input,
.tt-main .tt-search-input,
.tt-main .tt-chat-textarea,
.tt-main .tt-suold-input,
.tt-main input[type="text"],
.tt-main input[type="email"],
.tt-main input[type="password"],
.tt-main input[type="date"],
.tt-main input[type="number"],
.tt-main input[type="url"],
.tt-main select,
.tt-main textarea{
  width:100%;
  min-height:46px;
  padding:12px 14px;
  border-radius:var(--tt-ui-radius)!important;
  background:var(--tt-surface-input)!important;
  border:1px solid var(--tt-line-strong)!important;
  color:var(--tt-text)!important;
  font:inherit;
  box-sizing:border-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.tt-main textarea,.tt-main .tt-textarea,.tt-main .tt-chat-textarea{min-height:120px;resize:vertical;}
.tt-main .tt-chat-textarea{min-height:46px;}

.tt-main .tt-input:focus,
.tt-main .tt-inp:focus,
.tt-main .tt-select:focus,
.tt-main .tt-textarea:focus,
.tt-main .tt-donate-input:focus,
.tt-main .tt-search-input:focus,
.tt-main .tt-chat-textarea:focus,
.tt-main .tt-suold-input:focus,
.tt-main input[type="text"]:focus,
.tt-main input[type="email"]:focus,
.tt-main input[type="password"]:focus,
.tt-main input[type="date"]:focus,
.tt-main input[type="number"]:focus,
.tt-main input[type="url"]:focus,
.tt-main select:focus,
.tt-main textarea:focus{
  outline:none;
  border-color:var(--tt-line-gold)!important;
  box-shadow:var(--tt-focus-ring)!important;
}
.tt-main input[type="checkbox"]{accent-color:var(--tt-gold);}

/* -----------------------------
   Patchnotes / Info-Seiten
------------------------------ */
.tt-main .tt-patch-wrap,
.tt-main .tt-about-wrap,
.tt-main .tt-donate-wrap,
.tt-main .tt-founder-wrap,
.tt-main .tt-auth-wrap,
.tt-main .tt-login-wrap,
.tt-main .tt-reg-wrap,
.tt-main .tt-change-wrap,
.tt-main .tt-delete-wrap,
.tt-main .tt-reset-wrap,
.tt-main .tt-mw-wrap,
.tt-main .tt-chat-wrap{width:100%;max-width:none;margin:0;}

.tt-main .tt-patch-card form,
.tt-main .tt-donate-form,
.tt-main .tt-form-box,
.tt-main .tt-auth-card,
.tt-main .tt-login-card,
.tt-main .tt-reg-card,
.tt-main .tt-change-card,
.tt-main .tt-delete-card,
.tt-main .tt-reset-card{min-height:0!important;}

.tt-main .tt-upload-zone{
  border-radius:var(--tt-ui-radius-lg)!important;
  min-height:136px;
  background:var(--tt-surface-glass)!important;
  border:2px dashed var(--tt-line-gold-soft)!important;
}

/* -----------------------------
   Auth-Seiten (Raster: Logo links, Karte rechts)
------------------------------ */
.tt-main .tt-auth-wrap,
.tt-main .tt-login-wrap,
.tt-main .tt-reg-wrap,
.tt-main .tt-change-wrap,
.tt-main .tt-delete-wrap,
.tt-main .tt-reset-wrap{
  display:grid!important;
  grid-template-columns:minmax(280px,440px) minmax(0,1fr)!important;
  gap:40px;
  align-items:center!important;
}
.tt-main .tt-auth-logo,
.tt-main .tt-big-logo,
.tt-main .tt-side-logo{
  background:transparent!important;border:0!important;box-shadow:none!important;
  display:flex;justify-content:center;align-items:center;
}
.tt-main .tt-auth-logo img,
.tt-main .tt-big-logo img,
.tt-main .tt-side-logo img{
  width:min(440px,86%);max-width:440px;height:auto;
  filter:drop-shadow(0 18px 50px rgba(0,0,0,.5)) drop-shadow(0 0 40px rgba(242,193,74,.22));
  animation:tt-rise-in .8s var(--tt-ease-out) 1 backwards;
}
.tt-main .tt-auth-card,
.tt-main .tt-login-card,
.tt-main .tt-reg-card,
.tt-main .tt-change-card,
.tt-main .tt-delete-card,
.tt-main .tt-reset-card{max-width:540px!important;width:100%;margin-left:auto;}

/* -----------------------------
   Chat / Tickets
------------------------------ */
.tt-main .tt-chat-wrap{
  display:grid!important;
  grid-template-columns:minmax(260px,300px) minmax(0,1fr)!important;
  align-items:stretch;
  min-height:680px!important;
  height:calc(100vh - 170px)!important;
  border-radius:var(--tt-ui-radius-lg)!important;
  overflow:hidden;
}
.tt-main .tt-chat-sidebar{width:auto!important;min-width:0!important;background:var(--tt-surface-2)!important;}
.tt-main .tt-chat-main{min-width:0;display:flex;flex-direction:column;}
.tt-main .tt-friend-list{padding:10px!important;gap:8px!important;}
.tt-main .tt-friend-list .tt-u-item,
.tt-main .tt-ticket-item,
.tt-main .tt-chat-item{
  min-height:62px!important;padding:10px 12px!important;border-radius:14px!important;
  border:1px solid var(--tt-line)!important;background:var(--tt-surface-glass)!important;
}
.tt-main .tt-friend-list .tt-u-item.active,
.tt-main .tt-ticket-item.active,
.tt-main .tt-chat-item.active{
  background:linear-gradient(90deg, rgba(242,193,74,.18), rgba(242,193,74,.04))!important;
  border-color:var(--tt-line-gold)!important;
  box-shadow:inset 3px 0 0 var(--tt-gold), 0 0 18px rgba(242,193,74,.10);
}
.tt-main .tt-msg-area{min-height:0;padding:18px!important;}
.tt-main .tt-msg{max-width:min(78%,760px);}
.tt-main .tt-msg-bubble{border-radius:16px!important;}
.tt-main .tt-form-container{padding:28px!important;}
.tt-main .tt-form-box{max-width:760px!important;margin:0!important;}

/* -----------------------------
   Meine Welten / Account-Karten
------------------------------ */
.tt-main .tt-worlds-grid,.tt-main .tt-invites-grid,.tt-main .tt-profile-grid,.tt-main .tt-req-grid{align-items:start;}
.tt-main .tt-worlds-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))!important;gap:20px!important;}
.tt-main .tt-world-card{overflow:hidden;}
.tt-main .tt-wc-body{text-align:left!important;justify-content:flex-start!important;gap:10px;}
.tt-main .tt-wc-footer,.tt-main .tt-mw-footer,.tt-main .wiz-actions,.tt-main .tt-req-actions{flex-wrap:wrap;gap:10px!important;}
.tt-main .tt-menu-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
.tt-main .tt-welcome-card,.tt-main .tt-menu-shell,.tt-main .tt-actions-shell{background:transparent!important;border:0!important;box-shadow:none!important;}

/* -----------------------------
   Was ist / Spenden / Gruender / Patchnotes
------------------------------ */
.tt-main .tt-grid-2,.tt-main .tt-grid-3,.tt-main .tt-cards-grid,.tt-main .tt-feed-grid,.tt-main .tt-founder-grid,.tt-main .tt-donate-grid,.tt-main .tt-info-grid{align-items:start;}
.tt-main .tt-badge-showcase{align-items:flex-start!important;text-align:left!important;}
.tt-main .tt-badge-row{justify-content:flex-start!important;gap:12px!important;flex-wrap:wrap;}
.tt-main .tt-user-preview,.tt-main .tt-top-name{display:inline-flex;align-items:center;gap:4px;}

/* -----------------------------
   Responsive
------------------------------ */
@media (max-width:960px){
  .tt-main .tt-auth-wrap,.tt-main .tt-login-wrap,.tt-main .tt-reg-wrap,.tt-main .tt-change-wrap,.tt-main .tt-delete-wrap,.tt-main .tt-reset-wrap,.tt-main .tt-chat-wrap{
    grid-template-columns:1fr!important;height:auto!important;min-height:0!important;
  }
  .tt-main .tt-auth-card,.tt-main .tt-login-card,.tt-main .tt-reg-card,.tt-main .tt-change-card,.tt-main .tt-delete-card,.tt-main .tt-reset-card{max-width:none!important;margin-left:0;}
  .tt-main .tt-chat-main{min-height:520px;}
  .tt-main .tt-auth-logo img,.tt-main .tt-big-logo img,.tt-main .tt-side-logo img{animation:none;}
}
