/* Georgia Top Floors Hub — finishing layer (brand gold + charcoal). Pure CSS, no fonts or libraries. */
:root{
  --gtf-gold:#ad8400;--gtf-gold-hover:#987300;--gtf-gold-soft:#f7efd8;--gtf-gold-pale:#fcf8ed;
  --gtf-charcoal:#332e20;--gtf-ink:#2e2a22;--gtf-muted:#716a5e;--gtf-bg:#f6f2e9;--gtf-border:#e8dfd0;
  --ux-ease:cubic-bezier(.2,.8,.2,1);
  --ux-focus:0 0 0 3px #fff,0 0 0 5px rgba(173,132,0,.38);
  --ux-pop:0 26px 60px rgba(37,31,23,.22),0 4px 14px rgba(37,31,23,.10);
  --ux-gold-grad:linear-gradient(180deg,#c29a1b 0%,#ad8400 100%);
}

/* ---------- Touch feedback on every page ---------- */
.btn,.button,.demo-account,.priority-pill,.assistant-chip,button{transition:transform .14s var(--ux-ease),box-shadow .2s var(--ux-ease),background-color .2s ease,border-color .2s ease}
.btn:not(:disabled):active,.button:not(:disabled):active,.demo-account:active,.priority-pill:active{transform:scale(.965)}
:where(a,button,summary,[role=tab]):focus-visible{outline:none!important;box-shadow:var(--ux-focus)!important}
.ux-ripple-host{position:relative}
.ux-ripple-wrap{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none}
.ux-ripple{position:absolute;border-radius:50%;background:currentColor;opacity:.16;transform:scale(0);animation:ux-ripple .6s var(--ux-ease) forwards}
@keyframes ux-ripple{to{transform:scale(1);opacity:0}}

/* ---------- Demo sign-in page (was rendering with browser defaults) ---------- */
body.gtf-auth-page{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--gtf-ink);background:#f7f4ec}
.gtf-auth-page .login-brand h1{font-weight:850;letter-spacing:-.045em}
.gtf-auth-page .login-card h2{font-weight:850;letter-spacing:-.03em;color:#211c15}
.gtf-auth-page .login-card .sub{color:var(--gtf-muted);line-height:1.55;font-size:14.5px}
.gtf-auth-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid #ddd1bd;background:#fff;border-radius:14px;padding:10px 16px;color:#393329;font-weight:800;font-size:14.5px;cursor:pointer;text-decoration:none}
.gtf-auth-page .btn:hover{border-color:#cfbea1;box-shadow:0 8px 20px rgba(51,46,32,.08);transform:translateY(-1px)}
.gtf-auth-page .btn.primary{background:var(--ux-gold-grad);border-color:var(--gtf-gold);color:#211b10;box-shadow:0 10px 22px rgba(173,132,0,.22)}
.gtf-auth-page .btn.primary:hover{background:linear-gradient(180deg,#b78e12 0%,#987300 100%)}
.gtf-auth-page .login-field input{background:#fff;color:var(--gtf-ink);transition:border-color .18s ease,box-shadow .18s ease}
.gtf-auth-page .login-field input:focus{outline:none;border-color:var(--gtf-gold);box-shadow:0 0 0 4px rgba(173,132,0,.14)}
.gtf-auth-page .demo-account{font:inherit;color:inherit;text-align:left;transition:transform .16s var(--ux-ease),border-color .16s ease,box-shadow .16s ease}
.gtf-auth-page .demo-account:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(51,46,32,.07)}
.gtf-auth-page .demo-account span:last-child{color:var(--gtf-gold);font-weight:800}
.gtf-auth-page .forgot-link{display:inline-flex;gap:6px;align-items:center;color:#8a6a00;font-weight:750;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.gtf-auth-page .back-link{margin-bottom:18px}

/* ---------- Settings follows the GTF identity (gold + charcoal) ---------- */
body.settings-page{background:radial-gradient(circle at 92% 0%,rgba(173,132,0,.08),transparent 26%),#f6f2e9;color:var(--gtf-ink)}
.settings-page .gtf-settings-brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.settings-page .gtf-settings-brand img{height:34px;width:auto;display:block}
.settings-page .gtf-settings-brand small{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gtf-muted);font-weight:800}
.settings-page .settings-tabs button[aria-selected=true]{background:var(--gtf-gold-soft);color:#5a4500}
.settings-page .button.primary{background:var(--ux-gold-grad);color:#211b10;border-color:var(--gtf-gold)}
.settings-page .button.primary:hover{background:linear-gradient(180deg,#b78e12 0%,#987300 100%)}
.settings-page .avatar{background:var(--gtf-gold-soft);color:#6b5200}
.settings-page .status-pill.connected{background:#e8f6ee;color:#267a4a}

/* ---------- Help button (star mascot) ---------- */
.ruach-star{display:block;overflow:visible}
.ruach-star .rs-eyes{transform-origin:32px 34px;animation:rs-blink 6s infinite}
.ruach-star .rs-body{transform-origin:32px 34px;animation:rs-breathe 5s ease-in-out infinite}
@keyframes rs-blink{0%,93%,100%{transform:scaleY(1)}96%{transform:scaleY(.15)}}
@keyframes rs-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
.gtf-help{position:fixed;right:22px;bottom:22px;z-index:900;display:grid;justify-items:end;gap:12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.gtf-help-fab{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(173,132,0,.35);background:radial-gradient(circle at 30% 25%,#3a3328,#211b14);box-shadow:0 14px 32px rgba(33,27,20,.32),0 0 0 4px rgba(247,239,216,.65);cursor:pointer;padding:0;animation:gtf-float 5s ease-in-out infinite}
.gtf-help-fab:hover{transform:translateY(-3px) scale(1.04)}
.gtf-help-fab[aria-expanded=true]{animation:none}
@keyframes gtf-float{0%,100%{translate:0 0}50%{translate:0 -4px}}
.gtf-help-bubble{position:relative;max-width:260px;padding:13px 32px 13px 15px;border-radius:18px 18px 6px 18px;background:#211b14;color:#efe6d4;font-size:13.5px;line-height:1.45;box-shadow:var(--ux-pop);animation:gtf-pop .35s var(--ux-ease)}
.gtf-help-bubble b{display:block;color:#f4d77c;margin-bottom:3px;font-size:14.5px}
.gtf-help-bubble button{position:absolute;top:7px;right:7px;width:24px;height:24px;border:0;border-radius:50%;background:transparent;color:#cdbf9f;cursor:pointer;font-size:16px;line-height:1}
.gtf-help-panel{width:min(372px,calc(100vw - 32px));max-height:min(580px,calc(100dvh - 130px));display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden;border-radius:22px;background:#fffdf8;border:1px solid var(--gtf-border);box-shadow:var(--ux-pop);transform-origin:bottom right;animation:gtf-pop .28s var(--ux-ease)}
.gtf-help-panel[hidden]{display:none}
@keyframes gtf-pop{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
.gtf-help-head{display:flex;align-items:center;gap:12px;padding:15px 15px 12px;background:linear-gradient(135deg,#211b14,#3a3021);color:#fff}
.gtf-help-head div{flex:1;display:grid;gap:2px}
.gtf-help-head strong{font-size:16px;font-weight:850;letter-spacing:-.01em}
.gtf-help-head span{font-size:12px;color:#d8cdb6}
.gtf-help-head button{width:32px;height:32px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;cursor:pointer;font-size:18px;line-height:1}
.gtf-help-langs{display:flex;gap:6px;padding:10px 12px 4px}
.gtf-help-langs button{border:1px solid var(--gtf-border);background:#fff;color:#5a5144;border-radius:999px;padding:5px 11px;font-size:12px;font-weight:800;cursor:pointer}
.gtf-help-langs button[aria-pressed=true]{background:var(--gtf-gold-soft);border-color:#e0c77d;color:#5a4500}
.gtf-help-topics{overflow-y:auto;padding:6px 8px 8px;display:grid;gap:3px;align-content:start}
.gtf-help-topics details{border-radius:14px}
.gtf-help-topics details[open]{background:var(--gtf-gold-pale)}
.gtf-help-topics summary{list-style:none;cursor:pointer;position:relative;padding:12px 34px 12px 12px;border-radius:14px;font-weight:800;font-size:14px;color:#2e2a22}
.gtf-help-topics summary::-webkit-details-marker{display:none}
.gtf-help-topics summary::after{content:"+";position:absolute;right:14px;top:50%;translate:0 -50%;color:var(--gtf-gold);font-size:18px;transition:rotate .2s}
.gtf-help-topics details[open] summary::after{rotate:45deg}
.gtf-help-topics summary:hover{background:#faf5e8}
.gtf-help-topics p{margin:0 12px 10px;font-size:13.5px;line-height:1.6;color:#5d564b}
.gtf-help-action{display:inline-flex;align-items:center;gap:6px;margin:0 12px 12px;padding:9px 14px;border:0;border-radius:999px;background:var(--ux-gold-grad);color:#211b10;font-weight:850;font-size:13px;text-decoration:none;cursor:pointer}
.gtf-help-foot{display:flex;flex-wrap:wrap;gap:6px;padding:11px 12px;border-top:1px solid #efe7d8;background:#fcfaf5}
.gtf-help-foot a,.gtf-help-foot button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:0;border-radius:999px;background:#f3ecdc;color:#4d4231;font-size:12.5px;font-weight:800;text-decoration:none;cursor:pointer}
.gtf-help-foot a.primary{background:#211b14;color:#f4d77c}
@media(max-width:760px){.gtf-help{right:14px;bottom:14px}.gtf-help-fab{width:54px;height:54px}}
@media print{.gtf-help{display:none!important}}
@media(prefers-reduced-motion:reduce){.ruach-star .rs-eyes,.ruach-star .rs-body,.gtf-help-fab,.gtf-help-panel,.gtf-help-bubble{animation:none!important}.btn,.button,.demo-account,.priority-pill,button{transition:none!important}}

/* Office header actions on phones: one consistent, tappable size (Messages was 16px, others 11px). */
@media(max-width:760px){body.office-page .actions .btn{font-size:13px!important;padding:8px 12px!important;min-height:38px!important;white-space:nowrap}}

/* =====================================================================
   GTF · identidade padrão (Ouro, grafite e piso de madeira). Ver DESIGN.md.
   Fontes Barlow hospedadas no próprio site (subconjunto latino, ~30 KB cada).
   ===================================================================== */
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/Barlow-Regular.woff) format("woff")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500 900;font-display:swap;src:url(assets/fonts/Barlow-Bold.woff) format("woff")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:600 700;font-display:swap;src:url(assets/fonts/BarlowCondensed-Bold.woff) format("woff")}
@font-face{font-family:"Barlow Condensed";font-style:normal;font-weight:800 900;font-display:swap;src:url(assets/fonts/BarlowCondensed-ExtraBold.woff) format("woff")}
:root{
  --gtf-logo-gold:#c9a646;
  --gtf-graphite:#211b14;
  --gtf-night:#16120d;
  --font-display:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;
  --font-body:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  /* Padrão espinha de peixe: o desenho do piso de madeira, em ouro bem sutil */
  --gtf-herringbone:repeating-linear-gradient(45deg,rgba(201,166,70,.075) 0 2px,transparent 2px 46px),repeating-linear-gradient(-45deg,rgba(201,166,70,.075) 0 2px,transparent 2px 46px);
}
body{font-family:var(--font-body)!important}
h1,h2,.brand-title,.page-title,.section-title,.login-card h2,.login-brand h1,.gtf-help-head strong,.settings-heading h1,.entry-card h2,.office-greeting,#officeGreeting{font-family:var(--font-display)!important;letter-spacing:-.01em}
h1,.login-brand h1,.settings-heading h1{font-weight:800!important}
h2,h3{font-weight:700}
.gtf-auth-page .login-brand h1{text-transform:uppercase;letter-spacing:0;line-height:.95}
.gtf-auth-page .login-card h2{text-transform:uppercase;letter-spacing:.01em}
/* Superfícies escuras ganham o piso em espinha de peixe */
.login-brand,body.office-page .sidebar,body.crew-page header,body.customer-page header{background-image:var(--gtf-herringbone),radial-gradient(circle at 15% 5%,rgba(201,166,70,.18),transparent 34%)!important;background-color:var(--gtf-night)!important}
body.office-page .sidebar{box-shadow:inset -1px 0 0 rgba(201,166,70,.18)}
/* Cartões e campos: bordas macias, nada quadrado */
.card,.panel,.kpi,.table-wrap{border-radius:20px}
input,select,textarea{border-radius:12px}
input:focus,select:focus,textarea:focus{border-color:var(--gtf-gold)!important;box-shadow:0 0 0 4px rgba(173,132,0,.14)!important;outline:none}
/* Mascote estrela: vida discreta */
.ruach-star .rs-eyes{animation:rs-blink 6s infinite}

/* Balão de boas-vindas não bloqueia cliques (só o X é clicável). */
.gtf-help-bubble{pointer-events:none}.gtf-help-bubble button{pointer-events:auto}
