/* DiFabio Construction AI (da-*) — layout and behaviour of the Mayan AI chat, DiFabio branding */
:root{--da-o:#FC710D;--da-od:#de5e03;--da-odd:#8a3a00;--da-steel:#16181A;--da-steel-2:#202326;--da-ink:#0f1112}
.da-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.da-launch{position:fixed;right:20px;bottom:20px;z-index:900;display:flex;align-items:center;gap:10px;padding:7px 20px 7px 7px;border:0;border-radius:999px;background:linear-gradient(135deg,var(--da-o),var(--da-od));color:#111;box-shadow:0 14px 34px rgba(222,94,3,.42),0 2px 0 rgba(255,255,255,.25) inset;cursor:pointer;font-family:Archivo,system-ui,sans-serif;text-align:left;transition:transform .2s,box-shadow .2s}
.da-launch:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(222,94,3,.55)}
.da-launch:focus-visible{outline:3px solid #111;outline-offset:3px}
.da-av{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid #111;flex:0 0 auto}
.da-av img{width:34px;height:auto;object-fit:contain}
.da-av i{position:absolute;right:-2px;top:-2px;width:12px;height:12px;border-radius:50%;background:#22c55e;border:2px solid #fff;animation:da-live 1.8s ease-out infinite}
@keyframes da-live{0%{box-shadow:0 0 0 0 rgba(34,197,94,.7)}100%{box-shadow:0 0 0 10px rgba(34,197,94,0)}}
.da-lt b{display:block;font:800 17px/1 Archivo,sans-serif;font-stretch:75%;letter-spacing:.04em;text-transform:uppercase}
.da-lt small{display:block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin-top:3px}
html.da-on .da-launch{opacity:0;pointer-events:none}
@media (max-width:980px){
  .da-launch{right:12px;bottom:calc(var(--bar-h,64px) + 12px + env(safe-area-inset-bottom));padding:6px 16px 6px 6px}
  .da-launch .da-av{width:38px;height:38px}.da-launch .da-av img{width:29px}
  .da-launch .da-lt b{font-size:15px}
  .da-launch small{display:none}
  html.da-on .mbar{display:none!important}
}
.da-nudge{position:fixed;right:20px;bottom:88px;z-index:899;max-width:290px;display:grid;gap:4px;text-align:left;padding:14px 16px;border:0;border-radius:16px 16px 4px 16px;background:#fff;color:#111;box-shadow:0 18px 40px rgba(0,0,0,.35);font-family:Archivo,system-ui,sans-serif;cursor:pointer;animation:da-pop .35s ease}
.da-nudge b{font-size:15px;color:var(--da-odd)}.da-nudge span{font-size:13px;line-height:1.4;color:#333}
.da-nudge.out{opacity:0;transform:translateY(8px);transition:.35s}
@keyframes da-pop{from{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}
.da-panel{position:fixed;right:20px;bottom:20px;z-index:950;width:min(420px,calc(100vw - 40px));height:min(680px,calc(100vh - 40px));display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:#fff;color:#141414;border:1px solid #e2ded7;box-shadow:0 30px 80px rgba(0,0,0,.28),0 0 0 1px rgba(0,0,0,.04);font-family:Archivo,system-ui,sans-serif;opacity:0;transform:translateY(16px) scale(.98);transition:opacity .22s,transform .22s}
.da-panel.in{opacity:1;transform:none}
.da-panel[hidden]{display:none}
@media (max-width:759px){.da-panel{inset:0;width:100%;height:100%;height:100dvh;border-radius:0;border:0}}
.da-head{position:relative;display:flex;align-items:center;gap:12px;padding:14px 12px 16px 16px;padding-top:calc(14px + env(safe-area-inset-top));background:linear-gradient(135deg,var(--da-o),var(--da-od) 60%,var(--da-odd));color:#111}
.da-head::after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:repeating-linear-gradient(-45deg,#FC710D 0 10px,#141414 10px 20px)}
.da-ht{flex:1;min-width:0}.da-ht b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:800 18px/1 Archivo,sans-serif;font-stretch:75%;letter-spacing:.04em;text-transform:uppercase}.da-ht small{display:block;font-size:12px;font-weight:600;opacity:.85;margin-top:4px}
.da-ib{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;border:1px solid rgba(0,0,0,.35);background:rgba(255,255,255,.18);color:#111;cursor:pointer}
.da-ib:focus-visible{outline:2px solid #111;outline-offset:2px}.da-chip:focus-visible,.da-quickbar>*:focus-visible,.da-form button:focus-visible,.da-form input:focus-visible{outline:2px solid #b34700;outline-offset:2px}
.da-quickbar{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid #e2ded7;overflow-x:auto;scrollbar-width:none;background:#f7f5f1}
.da-quickbar::-webkit-scrollbar{display:none}
.da-quickbar>*{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:999px;border:1px solid #d6d1c8;background:#fff;color:#141414;text-decoration:none;font:600 13px Archivo,sans-serif;cursor:pointer}
.da-quickbar>*:hover{border-color:var(--da-o)}
.da-quickbar svg{width:15px;height:15px;color:#c95400}
.da-log{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:16px 14px 8px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.da-m{max-width:88%;padding:11px 14px;border-radius:16px;font-size:15px;line-height:1.5;animation:da-pop .22s ease;overflow-wrap:anywhere}
.da-b{align-self:flex-start;background:#f3f1ed;color:#141414;border:1px solid #e6e2db;border-bottom-left-radius:4px}
.da-u{align-self:flex-end;background:linear-gradient(135deg,var(--da-o),var(--da-od));color:#111;font-weight:600;border-bottom-right-radius:4px}
.da-b a{color:#b34700}.da-b small{display:block;margin-top:6px;color:#5c5c5c;font-size:12.5px}.da-b small a{color:#b34700}
.da-ul{margin:6px 0 8px;padding-left:18px;display:grid;gap:4px}
.da-typing{display:flex;gap:5px;padding:14px 16px}
.da-typing i{width:7px;height:7px;border-radius:50%;background:#9a948a;animation:da-dot 1s infinite}
.da-typing i:nth-child(2){animation-delay:.15s}.da-typing i:nth-child(3){animation-delay:.3s}
@keyframes da-dot{0%,80%,100%{opacity:.3;transform:none}40%{opacity:1;transform:translateY(-3px)}}
.da-chips{display:flex;flex-wrap:wrap;gap:8px;padding:4px 14px 10px;max-height:40%;overflow-y:auto}
.da-chips:empty{display:none}
.da-chip{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid #f0a46b;background:#fff7f0;color:#141414;font:600 14px Archivo,sans-serif;cursor:pointer;text-decoration:none;text-align:left;animation:da-pop .2s ease}
.da-chip:hover{background:#ffe9d6;border-color:var(--da-o)}
.da-chip.da-pri{background:linear-gradient(135deg,var(--da-o),var(--da-od));border-color:transparent;color:#111;font-weight:700}
.da-chip.da-link[target]::after{content:"\2197";margin-left:6px;opacity:.8}
.da-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid #e2ded7;background:#fff}
.da-form input{flex:1;min-width:0;height:46px;padding:0 14px;border-radius:12px;border:1px solid #cfc9bf;background:#fff;color:#141414;font:16px Archivo,sans-serif;outline:none}
.da-form input::placeholder{color:#76706a}
.da-form input:focus{border-color:var(--da-o)}
.da-form button{width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:12px;background:linear-gradient(135deg,var(--da-o),var(--da-od));color:#111;cursor:pointer}
.da-legal{margin:0;padding:0 14px calc(10px + env(safe-area-inset-bottom));background:#fff;font-size:11px;line-height:1.45;color:#5c5c5c}.da-legal a{color:#b34700}
@media (prefers-reduced-motion:reduce){.da-m,.da-chip,.da-panel,.da-nudge,.da-av i{animation:none;transition:none}}
@media print{.da-launch,.da-panel,.da-nudge{display:none!important}}
@media (max-width:759px){.da-ht b{font-size:16px;letter-spacing:.015em}.da-head{gap:10px}.da-head .da-ib{width:38px;height:38px}}
@media (max-width:380px){.da-ht b{white-space:normal;line-height:1.05}}
