/* ── Admin Panel ─────────────────────────────────────────── */
.t-btn-admin{background:rgba(99,102,241,.15);border-color:rgba(99,102,241,.35);color:#a5b4fc;}
.t-btn-admin:hover{background:rgba(99,102,241,.28);border-color:#6366f1;color:#fff;}
.admin-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:var(--z-lightbox,500);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);}
.admin-panel{background:#111;border:1px solid rgba(255,255,255,.09);border-radius:16px;width:min(96vw,1100px);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.6);}
.admin-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.07);gap:12px;flex-wrap:wrap;}
.admin-title{font-size:.95rem;font-weight:700;color:#f0f0f0;display:flex;align-items:center;gap:8px;}
.admin-badge-icon{font-size:1.1rem;}
.admin-search{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:6px 12px;color:#f0f0f0;font-size:.8rem;font-family:'Inter',sans-serif;width:200px;outline:none;}
.admin-search:focus{border-color:rgba(99,102,241,.5);}
.admin-refresh-btn,.admin-close-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a0a0a0;cursor:pointer;padding:6px 10px;font-size:.85rem;transition:.15s;}
.admin-refresh-btn:hover,.admin-close-btn:hover{background:rgba(255,255,255,.12);color:#fff;}
.admin-stats{display:flex;gap:12px;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.07);flex-wrap:wrap;}
.admin-stat-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px 16px;flex:1;min-width:100px;}
.admin-stat-n{font-size:1.4rem;font-weight:700;color:#a5b4fc;}
.admin-stat-l{font-size:.7rem;color:rgba(255,255,255,.4);margin-top:2px;}
.admin-table-wrap{overflow:auto;flex:1;}
.admin-table{width:100%;border-collapse:collapse;font-size:.78rem;}
.admin-table th{padding:10px 14px;text-align:left;color:rgba(255,255,255,.4);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.07);position:sticky;top:0;background:#111;z-index:1;}
.admin-table td{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.05);color:rgba(240,240,240,.85);vertical-align:middle;}
.admin-table tr:hover td{background:rgba(255,255,255,.03);}
.admin-loading{text-align:center;padding:32px;color:rgba(255,255,255,.3);font-size:.82rem;}
.admin-plan-badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;}
.admin-plan-badge.prem{background:rgba(245,158,11,.15);border:1px solid rgba(245,158,11,.3);color:#fbbf24;}
.admin-plan-badge.free{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.5);}
.admin-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.15);border:1.5px solid rgba(255,255,255,.2);}
.admin-dot.online{background:#10b981;border-color:#34d399;box-shadow:0 0 6px rgba(16,185,129,.5);}
.admin-footer{padding:10px 20px;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:rgba(255,255,255,.3);}


/* ═══════════════════════════════════════════════════════
 CSS CUSTOM PROPERTIES (DESIGN TOKENS)
 Cores,espaçamentos e efeitos centralizados aqui.
 Para temas futuros,basta sobrescrever estas variáveis.
═══════════════════════════════════════════════════════ */
:root{--clr-text: #f0f0f0;--clr-text-dim: rgba(240,240,240,.35);--clr-text-faint: rgba(240,240,240,.25);--clr-text-muted: rgba(240,240,240,.3);--clr-white: #fff;--clr-bg: #0a0a0a;--clr-bg-2: #111;--clr-bg-card: rgba(255,255,255,.03);--clr-border: rgba(255,255,255,.07);--clr-border-soft: rgba(255,255,255,.06);--clr-border-strong: rgba(255,255,255,.12);--clr-border-faint: rgba(255,255,255,.05);--clr-indigo: #6366f1;--clr-indigo-dark: #4f46e5;--clr-indigo-light: #a5b4fc;--clr-indigo-10: rgba(99,102,241,.1);--clr-indigo-20: rgba(99,102,241,.2);--clr-indigo-30: rgba(99,102,241,.3);--clr-indigo-40: rgba(99,102,241,.4);--clr-indigo-50: rgba(99,102,241,.5);--clr-overlay-50: rgba(0,0,0,.5);--clr-overlay-80: rgba(0,0,0,.8);--clr-success: #10b981;--clr-warning: #f59e0b;--clr-danger: #ef4444;--clr-danger-light: #fca5a5;--clr-teal: #14b8a6;--clr-teal-20: rgba(20,184,166,.2);--font-main: 'Inter',sans-serif;--font-mono: 'JetBrains Mono',monospace;--font-brand: 'Syne',sans-serif;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--transition-fast: .15s ease;--transition-mid: .2s ease;--transition-slow: .3s ease;--z-note: 10;--z-toolbar: 100;--z-panel: 200;--z-modal: 300;--z-toast: 400;--z-lightbox: 500;}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:'Inter',sans-serif;background:var(--clr-bg);color:var(--clr-text);overflow:hidden;display:flex;flex-direction:column}
body{opacity:0;transition:opacity .4s ease}body.page-ready{opacity:1}
@media(prefers-reduced-motion:reduce){body{transition:none;opacity:1}}
#crm-board{flex:1;overflow:auto;padding:20px;display:none;}
#crm-board.visible{display:block;}#auth-screen{position:fixed;inset:0;z-index:3000;display:flex;overflow:hidden;background:#0a0a0a;}.auth-left{width:42%;flex-shrink:0;background:#0d0d0d;border-right:1px solid var(--clr-border-soft);display:flex;flex-direction:column;justify-content:center;padding:200px 50px 40px;position:relative;overflow:hidden;}.auth-left::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 15% 25%,rgba(99,102,241,.14) 0%,transparent 60%),radial-gradient(ellipse 50% 40% at 85% 75%,rgba(20,184,166,.1) 0%,transparent 60%);}.auth-grid{position:absolute;inset:0;background-image:linear-gradient(var(--clr-bg-card) 1px,transparent 1px),linear-gradient(90deg,var(--clr-bg-card) 1px,transparent 1px);background-size:40px 40px;}.auth-shape{position:absolute;border-radius:14px;animation:shapeFloat 9s ease-in-out infinite alternate;}.sh1{width:70px;height:70px;background:rgba(99,102,241,.14);top:12%;right:10%;border:1px solid rgba(99,102,241,.22);}.sh2{width:42px;height:42px;background:rgba(20,184,166,.1);bottom:20%;right:16%;border:1px solid rgba(20,184,166,.2);animation-duration:6.5s;animation-delay:-3s;}.sh3{width:26px;height:26px;background:rgba(245,158,11,.1);top:52%;left:7%;border:1px solid rgba(245,158,11,.18);animation-duration:11s;animation-delay:-5s;}@keyframes shapeFloat{from{transform:translate(0,0) rotate(0deg)}to{transform:translate(14px,18px) rotate(8deg)}}.auth-brand-wrap{position:relative;z-index:2;margin-bottom:40px;}.auth-brand-logo{font-family:'Syne',sans-serif;font-size:2.1rem;font-weight:800;letter-spacing:-2px;color:var(--clr-text);display:flex;align-items:center;gap:10px;margin-bottom:6px;}.logo-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-teal));box-shadow:0 0 12px var(--clr-indigo-50);}#pixel-canvas{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.18;image-rendering:pixelated;}.auth-brand-sub{font-size:.78rem;color:rgba(240,240,240,.3);letter-spacing:.4px;}.auth-features{position:relative;z-index:2;display:flex;flex-direction:column;gap:15px;}.auth-feat{display:flex;align-items:flex-start;gap:12px;}.feat-icon{width:32px;height:32px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.82rem;}.fi1{background:rgba(99,102,241,.14);border:1px solid rgba(99,102,241,.22);}.fi2{background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.2);}.fi3{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.18);}.fi4{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.18);}.feat-title{font-size:.8rem;font-weight:600;color:var(--clr-text);margin-bottom:2px;}.feat-desc{font-size:.72rem;color:rgba(240,240,240,.35);line-height:1.5;}.auth-right{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 48px;gap:0;position:relative;overflow:hidden;}.auth-right::before{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,.06) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;}.auth-welcome{width:min(390px,100%);margin-bottom:28px;animation:welcomeIn .8s cubic-bezier(.16,1,.3,1) both;}@keyframes welcomeIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}.auth-welcome-eyebrow{display:flex;align-items:center;gap:8px;font-size:.68rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:rgba(99,102,241,.8);margin-bottom:10px;animation:welcomeIn .8s cubic-bezier(.16,1,.3,1) .1s both;}.auth-welcome-eyebrow-line{flex:1;height:1px;background:linear-gradient(90deg,var(--clr-indigo-40),transparent);}.auth-welcome-heading{font-family:'Syne',sans-serif;font-size:2.2rem;font-weight:800;letter-spacing:-1.5px;line-height:1.1;color:var(--clr-text);margin-bottom:10px;animation:welcomeIn .8s cubic-bezier(.16,1,.3,1) .18s both;}.auth-welcome-heading .hl{background:linear-gradient(135deg,#818cf8,var(--clr-indigo),var(--clr-indigo-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.auth-welcome-desc{font-size:.82rem;color:rgba(240,240,240,.38);line-height:1.6;animation:welcomeIn .8s cubic-bezier(.16,1,.3,1) .26s both;}.auth-cursor{display:inline-block;width:2px;height:1em;background:var(--clr-indigo);margin-left:2px;vertical-align:middle;animation:cursorBlink .9s steps(1) infinite;}@keyframes cursorBlink{0%,49%{opacity:1}50%,100%{opacity:0}}.auth-stats{display:flex;gap:20px;margin-top:14px;animation:welcomeIn .8s cubic-bezier(.16,1,.3,1) .34s both;}.auth-stat{display:flex;align-items:center;gap:6px;}.auth-stat-dot{width:6px;height:6px;border-radius:50%;}.auth-stat-txt{font-size:.72rem;color:rgba(240,240,240,.35);}.auth-card{width:min(390px,100%);background:rgba(16,16,18,.8);border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:26px 28px;backdrop-filter:blur(12px);box-shadow:0 20px 60px var(--clr-overlay-50),0 0 0 1px rgba(255,255,255,.04);}.auth-card.anim{animation:cardRise .65s cubic-bezier(.16,1,.3,1) both;}@keyframes cardRise{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-card-title{display:none;}.auth-card-sub{display:none;}.auth-tabs{display:flex;margin-bottom:20px;border-radius:10px;background:rgba(255,255,255,.04);padding:4px;border:1px solid var(--clr-border-soft);}.auth-tab{flex:1;padding:8px;text-align:center;font-size:.79rem;font-weight:500;border:none;background:none;color:rgba(240,240,240,.35);cursor:pointer;border-radius:7px;transition:all .2s;font-family:'Inter',sans-serif;}.auth-tab.active{background:rgba(255,255,255,.08);color:var(--clr-text);box-shadow:0 1px 4px rgba(0,0,0,.4);}.auth-form{animation:fadeUp .2s ease both;}@keyframes fadeUp{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.a-lbl{font-size:.66rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:rgba(240,240,240,.4);margin-bottom:7px;}.a-inp{width:100%;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);border-radius:9px;padding:12px 14px;font-family:'Inter',sans-serif;font-size:.87rem;color:var(--clr-text);outline:none;transition:border-color .18s,box-shadow .18s;margin-bottom:14px;}.a-inp:focus{border-color:var(--clr-indigo-50);box-shadow:0 0 0 3px var(--clr-indigo-10);}.a-inp::placeholder{color:rgba(240,240,240,.18);}.a-row{display:flex;gap:10px;}.a-row>.a-grp{flex:1;}.a-grp{margin-bottom:14px;}.a-grp .a-inp{margin-bottom:0;}.a-hint{font-size:.7rem;color:rgba(240,240,240,.25);margin-bottom:20px;line-height:1.6;}.auth-btn{width:100%;padding:13px;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));border:none;border-radius:9px;font-family:'Inter',sans-serif;font-size:.88rem;font-weight:600;color:#fff;cursor:pointer;transition:opacity .15s,transform .1s,box-shadow .2s;box-shadow:0 4px 18px rgba(99,102,241,.35);}.auth-btn:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 6px 24px rgba(99,102,241,.45);}.auth-btn:active{transform:translateY(0);opacity:.75;}.auth-switch{text-align:center;margin-top:16px;font-size:.76rem;color:rgba(240,240,240,.3);}.auth-switch a{color:#818cf8;cursor:pointer;font-weight:500;text-decoration:underline;text-underline-offset:3px;}.auth-error{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.22);border-radius:8px;padding:9px 13px;font-size:.77rem;color:rgba(252,165,165,.9);margin-bottom:14px;display:none;}.auth-error.show{display:block;}@media(max-width:640px){.auth-left{display:none;}.auth-right{padding:20px;}}#toolbar{height:80px;background:#0d0d0d;border-bottom:1px solid var(--clr-border);display:flex;align-items:center;padding:0 16px;gap:8px;flex-shrink:0;z-index:500;}.t-logo{display:flex;align-items:center;margin-right:4px;white-space:nowrap;}.t-logo img{height:67px;width:auto;display:block;}.t-sep{width:1px;height:22px;background:rgba(255,255,255,.08);flex-shrink:0;}.t-pill{display:flex;align-items:center;gap:6px;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:4px 12px 4px 8px;font-size:.74rem;color:rgba(240,240,240,.5);white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;}.t-dot{width:5px;height:5px;border-radius:50%;background:var(--clr-indigo);box-shadow:0 0 5px rgba(99,102,241,.6);flex-shrink:0;}.t-btn{display:flex;align-items:center;gap:5px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:7px;padding:6px 11px;font-family:'Inter',sans-serif;font-size:.74rem;color:rgba(240,240,240,.5);cursor:pointer;white-space:nowrap;transition:all .18s;}.t-btn:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14);color:var(--clr-text);}.t-btn svg{width:13px;height:13px;flex-shrink:0;}.t-btn.primary{background:rgba(99,102,241,.15);border-color:var(--clr-indigo-30);color:var(--clr-indigo-light);font-weight:600;}.t-btn.primary:hover{background:rgba(99,102,241,.25);border-color:var(--clr-indigo-50);color:#c7d2fe;}.t-spacer{flex:1;}.t-count{font-family:'JetBrains Mono',monospace;font-size:.67rem;color:rgba(240,240,240,.22);}#board{flex:1;position:relative;overflow:hidden;background:#0a0a0a;background-size:32px 32px;user-select:none;transition:background .4s;}#board-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;pointer-events:none;transition:opacity .4s;opacity:1;}#board-dots{position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.035) 1px,transparent 0);background-size:32px 32px;pointer-events:none;transition:opacity .4s;}#empty-hint{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;opacity:.14;display:flex;flex-direction:column;align-items:center;gap:10px;z-index:1;}.ei-box{width:50px;height:50px;border-radius:12px;border:1.5px dashed rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin:0 auto;}.ei-txt{font-size:.76rem;color:var(--clr-text);letter-spacing:.3px;font-weight:500;}#wp-panel{position:fixed;bottom:70px;right:16px;z-index:900;background:#111;border:1px solid var(--clr-border-strong);border-radius:14px;padding:18px;width:280px;box-shadow:0 16px 48px rgba(0,0,0,.7);animation:fadeUp .2s ease both;display:none;}#wp-panel.open{display:block;}.wp-title{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;color:var(--clr-text);margin-bottom:14px;}.wp-section{font-size:.62rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:rgba(240,240,240,.35);margin-bottom:8px;}.wp-pixels{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}.wp-pixel-swatch{width:52px;height:36px;border-radius:7px;cursor:pointer;border:1.5px solid rgba(255,255,255,.08);transition:all .15s;overflow:hidden;flex-shrink:0;position:relative;}.wp-pixel-swatch:hover{border-color:var(--clr-indigo-50);transform:scale(1.06);}.wp-pixel-swatch.active{border-color:var(--clr-indigo);box-shadow:0 0 0 2px rgba(99,102,241,.35);}.wp-pixel-swatch canvas{width:100%;height:100%;display:block;image-rendering:pixelated;}.wp-pixel-label{font-size:.48rem;color:rgba(255,255,255,.5);text-align:center;position:absolute;bottom:2px;left:0;right:0;letter-spacing:.3px;}.wp-colors{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px;}.wp-swatch{width:28px;height:28px;border-radius:7px;cursor:pointer;border:2px solid transparent;transition:transform .15s,border-color .15s,box-shadow .15s;flex-shrink:0;}.wp-swatch:hover{transform:scale(1.2);}.wp-swatch.active{border-color:rgba(255,255,255,.6);box-shadow:0 0 0 2px rgba(255,255,255,.15);}.wp-gradients{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px;}.wp-grad{width:54px;height:32px;border-radius:7px;cursor:pointer;border:2px solid transparent;transition:transform .15s,border-color .15s;flex-shrink:0;}.wp-grad:hover{transform:scale(1.06);}.wp-grad.active{border-color:rgba(255,255,255,.6);}.wp-upload-btn{width:100%;padding:9px;background:var(--clr-border-soft);border:1px dashed rgba(255,255,255,.15);border-radius:8px;font-family:'Inter',sans-serif;font-size:.8rem;color:rgba(240,240,240,.6);cursor:pointer;transition:all .15s;position:relative;text-align:center;}.wp-upload-btn:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);color:var(--clr-text);}.wp-upload-btn input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;}.wp-reset{width:100%;padding:7px;background:none;border:1px solid var(--clr-border);border-radius:8px;font-family:'Inter',sans-serif;font-size:.77rem;color:rgba(240,240,240,.35);cursor:pointer;margin-top:8px;transition:all .15s;}.wp-reset:hover{border-color:rgba(255,255,255,.15);color:rgba(240,240,240,.7);}.sp-btn.ws{background:rgba(20,184,166,.12);color:#2dd4bf;border:1px solid rgba(20,184,166,.28);}.sp-btn.ws:hover{background:rgba(20,184,166,.24);}#ws-toolbar-btn{display:none;}.ws-active-badge{display:inline-flex;align-items:center;gap:5px;background:rgba(20,184,166,.18);border:1px solid rgba(20,184,166,.35);color:#2dd4bf;border-radius:20px;padding:3px 10px;font-size:.7rem;font-weight:600;cursor:pointer;transition:all .15s;}.ws-active-badge:hover{background:rgba(20,184,166,.3);}.ws-invite-acts{display:flex;gap:5px;flex-shrink:0;}.ws-invite-accept,.ws-invite-reject{padding:4px 10px;border-radius:6px;font-family:'Inter',sans-serif;font-size:.71rem;font-weight:600;cursor:pointer;transition:all .15s;border:none;}.ws-invite-accept{background:rgba(99,102,241,.15);color:var(--clr-indigo-light);border:1px solid rgba(99,102,241,.25);}.ws-invite-accept:hover{background:rgba(99,102,241,.28);}.ws-invite-reject{background:none;color:rgba(240,240,240,.3);}.ws-invite-reject:hover{color:rgba(240,240,240,.7);}.shp-badge{background:rgba(20,184,166,.15);color:#2dd4bf;border:1px solid rgba(20,184,166,.25);}.note{position:fixed;width:240px;border-radius:14px;display:flex;flex-direction:column;pointer-events:all;will-change:left,top;border:1px solid rgba(255,255,255,.1);box-shadow:0 6px 28px rgba(0,0,0,.55);transition:box-shadow .2s,border-color .2s,transform .15s;overflow:hidden;}.note:hover{box-shadow:0 14px 48px rgba(0,0,0,.75);transform:translateY(-2px);}.note.dragging{box-shadow:0 28px 70px rgba(0,0,0,.85)!important;transition:none!important;z-index:9999!important;cursor:grabbing!important;transform:scale(1.025) rotate(.3deg)!important;}.note.overdue{border-color:rgba(239,68,68,.5)!important;}.n-resize{position:absolute;bottom:0;right:0;width:18px;height:18px;cursor:se-resize;z-index:10;display:flex;align-items:flex-end;justify-content:flex-end;padding:3px;opacity:0;transition:opacity .2s;}.note:hover .n-resize{opacity:1;}.n-resize svg{width:9px;height:9px;color:rgba(255,255,255,.3);}.n-bar{height:3px;width:100%;flex-shrink:0;}.n-head{padding:0;cursor:grab;display:flex;flex-direction:column;}.n-head:active{cursor:grabbing;}.n-chip-row{display:flex;align-items:center;gap:5px;padding:11px 12px 8px;}.n-chip{display:inline-flex;align-items:center;gap:3px;border-radius:20px;padding:2px 8px 2px 5px;font-size:.57rem;font-weight:700;letter-spacing:.7px;text-transform:uppercase;}.n-chip-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;}.n-del{width:20px;height:20px;border:none;background:none;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.2);transition:all .15s;flex-shrink:0;margin-left:auto;}.n-del:hover{background:rgba(239,68,68,.2);color:var(--clr-danger-light);}.n-del svg{width:10px;height:10px;}.n-pin-btn{width:20px;height:20px;border:none;background:none;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.2);transition:all .15s;flex-shrink:0;font-size:.7rem;}.n-pin-btn:hover{background:rgba(245,158,11,.15);color:#fcd34d;}.n-pin-btn.active{color:#fcd34d;background:rgba(245,158,11,.15);}.note.pinned .n-expand-area{max-height:none !important;overflow:visible !important;}.n-title-row{padding:4px 12px 9px;}.n-title{display:block;width:100%;background:transparent;border:none;outline:none;resize:none;font-family:'Inter',sans-serif;font-size:.92rem;font-weight:700;color:#fff;-webkit-text-fill-color:#fff;line-height:1.35;padding:0;cursor:text;overflow:hidden;min-height:20px;}.n-title::placeholder{color:rgba(255,255,255,.25);-webkit-text-fill-color:rgba(255,255,255,.25);}.n-body-inline{padding:2px 12px 14px;}.n-text{width:100%;background:none;border:none;outline:none;resize:none;font-family:'Inter',sans-serif;font-size:.77rem;color:rgba(255,255,255,.5);-webkit-text-fill-color:rgba(255,255,255,.5);line-height:1.68;padding:0;cursor:text;min-height:36px;}.n-text::placeholder{color:rgba(255,255,255,.18);-webkit-text-fill-color:rgba(255,255,255,.18);}.n-expand-area{max-height:none;overflow:visible;}.note:hover .n-expand-area,.note.expanded .n-expand-area{max-height:none;}.n-sep{height:1px;background:rgba(255,255,255,.08);margin:0;}.n-dates{padding:10px 12px;display:flex;flex-direction:column;gap:6px;}.n-dates-lbl{font-size:.56rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.2);margin-bottom:2px;}.n-date-row{display:flex;align-items:center;gap:6px;}.n-date-tag{font-family:'JetBrains Mono',monospace;font-size:.58rem;color:rgba(255,255,255,.25);min-width:34px;}.n-dinput{flex:1;background:var(--clr-border-soft);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:4px 8px;font-family:'JetBrains Mono',monospace;font-size:.61rem;color:rgba(255,255,255,.65);-webkit-text-fill-color:rgba(255,255,255,.65);outline:none;transition:border-color .15s;color-scheme:dark;cursor:pointer;}.n-dinput:focus{border-color:var(--clr-indigo-50);background:rgba(99,102,241,.07);}.n-badge{margin:0 10px 8px;border-radius:7px;padding:6px 10px;display:flex;align-items:center;gap:7px;font-family:'JetBrains Mono',monospace;font-size:.61rem;font-weight:500;}.n-badge svg{width:10px;height:10px;flex-shrink:0;}.n-badge.info{background:rgba(99,102,241,.14);color:var(--clr-indigo-light);border:1px solid rgba(99,102,241,.24);}.n-badge.warn{background:rgba(245,158,11,.13);color:#fcd34d;border:1px solid rgba(245,158,11,.24);}.n-badge.urgent{background:rgba(239,68,68,.13);color:var(--clr-danger-light);border:1px solid rgba(239,68,68,.28);animation:urgPulse 1.8s ease-in-out infinite;}@keyframes urgPulse{0%,100%{opacity:.75}50%{opacity:1}}.n-status-pill{display:inline-flex;align-items:center;gap:4px;border-radius:20px;padding:2px 7px 2px 5px;border:1px solid transparent;cursor:pointer;font-family:'Inter',sans-serif;font-size:.57rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;transition:all .2s;user-select:none;flex-shrink:0;}.n-status-pill:hover{filter:brightness(1.15);}.n-status-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;transition:all .3s;}.n-status-pill.s-todo{background:rgba(148,163,184,.1);border-color:rgba(148,163,184,.22);color:#94a3b8;}.n-status-pill.s-todo .n-status-dot{background:#94a3b8;}.n-status-pill.s-progress{background:rgba(99,102,241,.14);border-color:var(--clr-indigo-30);color:var(--clr-indigo-light);}.n-status-pill.s-progress .n-status-dot{background:var(--clr-indigo);box-shadow:0 0 5px rgba(99,102,241,.8);animation:progressPulse 1.4s ease-in-out infinite;}.n-status-pill.s-done{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.28);color:#6ee7b7;}.n-status-pill.s-done .n-status-dot{background:var(--clr-success);}.n-status-pill.s-closed{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.25);color:var(--clr-danger-light);}.n-status-pill.s-closed .n-status-dot{background:var(--clr-danger);}@keyframes progressPulse{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.5);opacity:1}}.n-status-menu{background:#1a1a1a;border:1px solid var(--clr-border-strong);border-radius:10px;padding:4px;box-shadow:0 8px 28px rgba(0,0,0,.6);min-width:130px;animation:menuPop .15s cubic-bezier(.16,1,.3,1) both;}@keyframes menuPop{from{opacity:0;transform:scale(.92) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.n-status-opt{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:7px;cursor:pointer;font-family:'Inter',sans-serif;font-size:.75rem;font-weight:500;color:rgba(240,240,240,.7);transition:background .15s;white-space:nowrap;}.n-status-opt:hover{background:var(--clr-border);color:var(--clr-text);}.n-status-opt.sel{color:var(--clr-text);font-weight:600;}.n-status-opt-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}.note.status-done .n-title{opacity:.45;text-decoration:line-through;text-decoration-color:rgba(255,255,255,.25);}.note.status-done .n-text{opacity:.45;}.note.status-closed .n-title{opacity:.3;}.note.status-closed .n-body-inline,.note.status-closed .n-dates{opacity:.35;}@keyframes noteDone{0%{transform:scale(1);box-shadow:0 6px 30px var(--clr-overlay-50);}30%{transform:scale(1.04);box-shadow:0 0 0 4px rgba(16,185,129,.35),0 8px 32px rgba(16,185,129,.2);}60%{transform:scale(.98);}100%{transform:scale(1);box-shadow:0 6px 30px var(--clr-overlay-50);}}@keyframes noteClosed{0%{transform:scale(1);box-shadow:0 6px 30px var(--clr-overlay-50);}25%{transform:scale(1.03) rotate(-1deg);box-shadow:0 0 0 4px rgba(239,68,68,.3);}50%{transform:scale(.97) rotate(.5deg);}75%{transform:scale(1.01);}100%{transform:scale(1);box-shadow:0 6px 30px var(--clr-overlay-50);}}@keyframes noteProgress{0%{box-shadow:0 6px 30px var(--clr-overlay-50);}50%{box-shadow:0 0 0 3px var(--clr-indigo-40),0 8px 28px var(--clr-indigo-20);}100%{box-shadow:0 6px 30px var(--clr-overlay-50);}}.note.anim-done{animation:noteDone .55s cubic-bezier(.16,1,.3,1) both;}.note.anim-closed{animation:noteClosed .55s cubic-bezier(.16,1,.3,1) both;}.note.anim-progress{animation:noteProgress .55s cubic-bezier(.16,1,.3,1) both;}.note-burst{pointer-events:none;position:absolute;inset:0;overflow:visible;z-index:999;}.burst-particle{position:absolute;border-radius:50%;animation:burstOut .5s ease-out forwards;pointer-events:none;}@keyframes burstOut{0%{transform:translate(0,0) scale(1);opacity:1;}100%{transform:translate(var(--tx),var(--ty)) scale(0);opacity:0;}}.note.status-progress .n-bar{animation:barGlow 2s ease-in-out infinite alternate;}@keyframes barGlow{from{filter:brightness(1)}to{filter:brightness(1.5) drop-shadow(0 0 6px currentColor)}}.n-color-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 8px 4px 6px;border-radius:20px;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:.62rem;font-weight:600;letter-spacing:.5px;color:rgba(255,255,255,.5);background:var(--clr-border-soft);transition:all .15s;}.n-color-btn:hover{background:var(--clr-border-strong);color:rgba(255,255,255,.8);}.n-color-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;}.n-color-pop{position:absolute;z-index:10001;background:#1a1a1a;border:1px solid var(--clr-border-strong);border-radius:12px;padding:10px;box-shadow:0 12px 36px rgba(0,0,0,.7);display:grid;grid-template-columns:repeat(6,1fr);gap:6px;width:172px;animation:menuPop .15s cubic-bezier(.16,1,.3,1) both;}.n-color-pop .swatch{width:20px;height:20px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:transform .15s,border-color .15s,box-shadow .15s;flex-shrink:0;}.n-color-pop .swatch:hover{transform:scale(1.3);}.n-color-pop .swatch.active{border-color:rgba(255,255,255,.75);box-shadow:0 0 0 2px rgba(255,255,255,.18);}.n-files{padding:0 10px 10px;display:flex;flex-direction:column;gap:4px;}.f-item{background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.08);border-radius:7px;padding:5px 8px;display:flex;align-items:center;gap:6px;font-size:.71rem;color:rgba(255,255,255,.65);}.f-item svg{width:10px;height:10px;opacity:.4;flex-shrink:0;}.f-link{text-decoration:none;color:inherit;display:flex;align-items:center;gap:4px;flex:1;overflow:hidden;}.f-link:hover .f-name{color:#fff;}.f-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.71rem;}.f-sz{font-size:.59rem;opacity:.35;flex-shrink:0;font-family:'JetBrains Mono',monospace;}.f-del{background:none;border:none;cursor:pointer;color:rgba(255,255,255,.22);font-size:.8rem;padding:0 2px;transition:color .15s;flex-shrink:0;}.f-del:hover{color:rgba(239,68,68,.8);}.f-drop{border:1px dashed rgba(255,255,255,.1);border-radius:7px;padding:6px 10px;font-size:.69rem;color:rgba(255,255,255,.28);text-align:center;cursor:pointer;position:relative;transition:all .15s;}.f-drop:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.6);}.f-drop.drag-on{background:rgba(99,102,241,.08);border-color:var(--clr-indigo-40);}.f-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;}.note.has-viewer{border-radius:14px 0 0 14px;border-right-color:transparent !important;z-index:200 !important;}.f-viewer{position:fixed;width:420px;border-radius:0 14px 14px 0;background:#0e0e0e;border:1px solid rgba(255,255,255,.13);border-left:none;display:flex;flex-direction:column;box-shadow:8px 6px 40px rgba(0,0,0,.7);z-index:199;overflow:hidden;animation:viewerSlide .22s cubic-bezier(.16,1,.3,1) both;}@keyframes viewerSlide{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}.fv-header{display:flex;align-items:center;gap:8px;padding:9px 12px;background:rgba(255,255,255,.04);border-bottom:1px solid var(--clr-border);flex-shrink:0;flex-wrap:wrap;}.fv-zoom-bar{display:flex;align-items:center;gap:4px;width:100%;padding-top:7px;border-top:1px solid var(--clr-border-soft);}.fv-zoom-btn{width:24px;height:24px;border:1px solid rgba(255,255,255,.1);background:var(--clr-border-faint);border-radius:5px;color:rgba(240,240,240,.7);font-size:.9rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;font-family:'Inter',sans-serif;font-weight:600;}.fv-zoom-btn:hover{background:var(--clr-border-strong);border-color:rgba(255,255,255,.2);color:#fff;}.fv-zoom-val{min-width:42px;text-align:center;font-family:'JetBrains Mono',monospace;font-size:.68rem;color:rgba(240,240,240,.55);}.fv-zoom-reset{font-size:.65rem;color:rgba(240,240,240,.35);cursor:pointer;padding:2px 6px;border-radius:4px;background:none;border:none;transition:color .15s;font-family:'Inter',sans-serif;}.fv-zoom-reset:hover{color:rgba(240,240,240,.8);}.fv-zoom-spacer{flex:1;}.fv-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.77rem;font-weight:500;color:rgba(240,240,240,.8);}.fv-type{font-family:'JetBrains Mono',monospace;font-size:.62rem;color:rgba(240,240,240,.3);background:var(--clr-border-soft);border-radius:4px;padding:2px 6px;flex-shrink:0;}.fv-close{width:22px;height:22px;border:none;background:none;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center;color:rgba(240,240,240,.3);transition:all .15s;flex-shrink:0;}.fv-close:hover{background:rgba(239,68,68,.15);color:rgba(252,165,165,.9);}.fv-close svg{width:11px;height:11px;}.fv-body{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:12px;position:relative;}.fv-body img{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px;box-shadow:0 4px 20px var(--clr-overlay-50);}.fv-body canvas{display:block;width:100%;border-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,.4);}.fv-text{width:100%;height:100%;background:var(--clr-bg-card);border:1px solid var(--clr-border);border-radius:8px;padding:12px;font-family:'JetBrains Mono',monospace;font-size:.75rem;color:rgba(240,240,240,.75);line-height:1.7;overflow:auto;white-space:pre-wrap;word-break:break-all;}.fv-unsupported{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;color:rgba(240,240,240,.35);}.fv-unsupported .fv-big-icon{font-size:2.5rem;}.fv-unsupported p{font-size:.8rem;line-height:1.5;}.fv-dl-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(99,102,241,.15);border:1px solid var(--clr-indigo-30);color:var(--clr-indigo-light);border-radius:8px;padding:8px 16px;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .15s;cursor:pointer;margin-top:4px;}.fv-dl-btn:hover{background:rgba(99,102,241,.25);border-color:var(--clr-indigo-50);}.f-item.viewing{background:rgba(99,102,241,.15) !important;border-color:rgba(99,102,241,.35) !important;}.f-eye{background:none;border:none;cursor:pointer;color:rgba(240,240,240,.3);font-size:.75rem;padding:0 2px;transition:color .15s;flex-shrink:0;display:flex;align-items:center;}.f-eye:hover{color:var(--clr-indigo-light);}.f-eye svg{width:11px;height:11px;}.modal-bg{position:fixed;inset:0;z-index:1500;background:rgba(0,0,0,.78);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:fadeIn .18s both;}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.modal{background:#111;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px 30px;width:min(510px,93vw);box-shadow:0 32px 80px rgba(0,0,0,.9);animation:cardRise .24s cubic-bezier(.16,1,.3,1) both;max-height:90vh;overflow-y:auto;}.m-h1{font-family:'Syne',sans-serif;font-size:1.4rem;font-weight:700;color:var(--clr-text);letter-spacing:-.3px;margin-bottom:3px;}.m-sub{font-size:.73rem;color:rgba(240,240,240,.3);margin-bottom:20px;}.m-lbl{font-size:.65rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:rgba(240,240,240,.38);margin-bottom:7px;}.m-inp{width:100%;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:10px 13px;font-family:'Inter',sans-serif;font-size:.85rem;color:var(--clr-text);outline:none;transition:border-color .18s,box-shadow .18s;resize:vertical;margin-bottom:16px;}.m-inp:focus{border-color:rgba(99,102,241,.45);box-shadow:0 0 0 3px rgba(99,102,241,.08);}.m-inp::placeholder{color:rgba(240,240,240,.18);}.m-div{height:1px;background:var(--clr-border);margin:4px 0 16px;}.m-sec{font-size:.62rem;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:rgba(240,240,240,.35);margin-bottom:10px;}.m-dates{display:flex;gap:10px;margin-bottom:14px;}.m-dw{flex:1;}.m-dlbl{font-size:.62rem;font-weight:500;color:rgba(240,240,240,.3);margin-bottom:5px;}.m-dinp{width:100%;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:9px 11px;font-family:'JetBrains Mono',monospace;font-size:.78rem;color:var(--clr-text);outline:none;transition:border-color .18s;color-scheme:dark;}.m-dinp:focus{border-color:rgba(99,102,241,.45);}.m-rem-box{background:var(--clr-bg-card);border:1px solid var(--clr-border);border-radius:9px;padding:12px 14px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px;}.m-rem-row{display:flex;align-items:center;gap:10px;}.m-toggle{position:relative;width:36px;height:20px;flex-shrink:0;}.m-toggle input{opacity:0;width:0;height:0;position:absolute;}.m-slider{position:absolute;inset:0;background:rgba(255,255,255,.1);border-radius:20px;cursor:pointer;transition:background .2s;}.m-slider::before{content:'';position:absolute;width:14px;height:14px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s;opacity:.5;}.m-toggle input:checked+.m-slider{background:var(--clr-indigo);}.m-toggle input:checked+.m-slider::before{transform:translateX(16px);opacity:1;}.m-rem-lbl{font-size:.81rem;color:rgba(240,240,240,.5);cursor:pointer;flex:1;}.m-rem-sub{display:flex;align-items:center;gap:8px;padding-left:46px;}.m-rem-days{width:60px;background:var(--clr-border-soft);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:5px 8px;font-family:'JetBrains Mono',monospace;font-size:.79rem;color:var(--clr-text);outline:none;text-align:center;transition:border-color .18s;}.m-rem-days:focus{border-color:rgba(99,102,241,.45);}.m-rem-unit{font-size:.74rem;color:rgba(240,240,240,.3);}.m-crow{display:none;}.m-sw{display:none;}.m-color-row{display:flex;align-items:center;gap:10px;margin-bottom:22px;}.m-color-preview{width:28px;height:28px;border-radius:50%;border:2px solid rgba(255,255,255,.2);flex-shrink:0;cursor:pointer;transition:transform .15s;}.m-color-preview:hover{transform:scale(1.1);}.m-color-grid{display:flex;flex-wrap:wrap;gap:6px;flex:1;}.m-color-grid .m-sw{display:flex;width:22px;height:22px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:transform .15s,border-color .15s,box-shadow .15s;}.m-color-grid .m-sw:hover{transform:scale(1.25);}.m-color-grid .m-sw.sel{border-color:rgba(255,255,255,.65);box-shadow:0 0 0 2px rgba(255,255,255,.15);}.m-btns{display:flex;gap:10px;}.m-btns button{flex:1;padding:11px;border-radius:8px;border:none;font-family:'Inter',sans-serif;font-size:.85rem;cursor:pointer;font-weight:500;transition:all .15s;}.m-cancel{background:var(--clr-border-faint);color:rgba(240,240,240,.5);}.m-cancel:hover{background:rgba(255,255,255,.09);}.m-confirm{background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));color:#fff;font-weight:600;box-shadow:0 3px 12px var(--clr-indigo-30);}.m-confirm:hover{opacity:.9;box-shadow:0 5px 16px rgba(99,102,241,.45);}#fb-setup-banner{position:fixed;top:0;left:0;right:0;z-index:9999;background:linear-gradient(90deg,#92400e,#78350f);border-bottom:1px solid rgba(251,191,36,.3);padding:10px 20px;display:none;align-items:center;justify-content:center;gap:12px;font-family:'Inter',sans-serif;font-size:.8rem;color:#fde68a;}#fb-setup-banner.show{display:flex;}#fb-setup-banner a{color:#fcd34d;font-weight:600;text-decoration:underline;cursor:pointer;}#fb-setup-banner strong{color:#fff;}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(14px);background:#1c1c1c;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 18px;font-size:.78rem;font-family:'Inter',sans-serif;color:var(--clr-text);box-shadow:0 8px 28px var(--clr-overlay-50);z-index:5000;opacity:0;pointer-events:none;transition:opacity .22s,transform .22s;white-space:nowrap;display:flex;align-items:center;gap:8px;}#toast.show{opacity:1;transform:translateX(-50%) translateY(0);}#chat-notif-stack{position:fixed;bottom:24px;right:24px;z-index:6000;display:flex;flex-direction:column-reverse;gap:8px;pointer-events:none;max-width:320px;}.chat-notif{display:flex;align-items:center;gap:10px;background:#1a1a1a;border:1px solid var(--clr-border-strong);border-left:3px solid var(--clr-indigo);border-radius:12px;padding:10px 14px;box-shadow:0 8px 32px rgba(0,0,0,.65);pointer-events:all;cursor:pointer;animation:notifIn .3s cubic-bezier(.16,1,.3,1) both;transition:opacity .2s,transform .2s;}.chat-notif.hiding{opacity:0;transform:translateX(20px);}@keyframes notifIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}.chat-notif-avatar{width:36px;height:36px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;color:#fff;font-family:'Inter',sans-serif;position:relative;}.chat-notif-online{position:absolute;bottom:1px;right:1px;width:8px;height:8px;border-radius:50%;background:var(--clr-success);border:1.5px solid #1a1a1a;}.chat-notif-body{flex:1;min-width:0;}.chat-notif-name{font-size:.78rem;font-weight:600;color:var(--clr-text);margin-bottom:2px;}.chat-notif-text{font-size:.74rem;color:rgba(240,240,240,.55);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.chat-notif-time{font-size:.62rem;color:rgba(240,240,240,.25);flex-shrink:0;font-family:'JetBrains Mono',monospace;}.chat-notif-close{background:none;border:none;cursor:pointer;color:rgba(240,240,240,.25);font-size:.85rem;padding:0 2px;flex-shrink:0;transition:color .15s;pointer-events:all;}.chat-notif-close:hover{color:rgba(240,240,240,.8);}/* ════════════════════════════════════════
 SOCIAL — Friends & Chat
════════════════════════════════════════ */
#btn-social{position:relative;}.t-notif-badge{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background:var(--clr-danger);border:2px solid #0d0d0d;font-size:.58rem;font-weight:700;color:#fff;display:none;align-items:center;justify-content:center;font-family:'Inter',sans-serif;}.t-notif-badge.show{display:flex;}#social-panel{position:fixed;top:62px;right:16px;z-index:1400;width:320px;max-height:calc(100vh - 80px);background:#111;border:1px solid rgba(255,255,255,.11);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.75);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(-10px) scale(.97);pointer-events:none;transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);}#social-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:all;}.sp-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--clr-border);flex-shrink:0;}.sp-title{font-family:'Syne',sans-serif;font-size:.95rem;font-weight:700;color:var(--clr-text);}.sp-tabs{display:flex;gap:4px;}.sp-tab{padding:5px 12px;border-radius:7px;border:none;background:none;font-family:'Inter',sans-serif;font-size:.74rem;font-weight:500;color:rgba(240,240,240,.4);cursor:pointer;transition:all .18s;}.sp-tab.active{background:rgba(99,102,241,.15);color:var(--clr-indigo-light);border:1px solid rgba(99,102,241,.28);}.sp-tab:not(.active):hover{background:var(--clr-border-soft);color:rgba(240,240,240,.75);}.sp-body{flex:1;overflow-y:auto;padding:10px;}.sp-add-row{display:flex;gap:6px;margin-bottom:12px;}.sp-add-inp{flex:1;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:8px 11px;font-family:'Inter',sans-serif;font-size:.8rem;color:var(--clr-text);outline:none;transition:border-color .18s;}.sp-add-inp:focus{border-color:rgba(99,102,241,.45);}.sp-add-inp::placeholder{color:rgba(240,240,240,.2);}.sp-add-btn{padding:8px 13px;background:rgba(99,102,241,.18);border:1px solid var(--clr-indigo-30);border-radius:8px;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:600;color:var(--clr-indigo-light);cursor:pointer;white-space:nowrap;transition:all .15s;}.sp-add-btn:hover{background:var(--clr-indigo-30);border-color:var(--clr-indigo-50);}#social-panel{width:360px!important;}.profile-photo-wrap{display:flex;align-items:center;gap:14px;padding:14px 14px 12px;border-bottom:1px solid var(--clr-border-soft);margin-bottom:2px;}.profile-avatar-big{width:48px;height:48px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;color:#fff;font-family:'Inter',sans-serif;position:relative;overflow:hidden;cursor:pointer;border:2px solid rgba(99,102,241,.25);transition:border-color .2s;}.profile-avatar-big:hover{border-color:rgba(99,102,241,.6);}.profile-avatar-big img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}.profile-avatar-big .avatar-edit-overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;border-radius:50%;font-size:.58rem;color:#fff;font-family:'Inter',sans-serif;font-weight:600;}.profile-avatar-big:hover .avatar-edit-overlay{opacity:1;}.profile-avatar-big input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;}.profile-info-wrap{flex:1;min-width:0;}.profile-name-label{font-size:.85rem;font-weight:600;color:var(--clr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.profile-role-label{font-size:.7rem;color:rgba(240,240,240,.35);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.profile-status-wrap{margin-top:6px;}.sp-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;margin-bottom:2px;transition:background .15s;cursor:default;position:relative;border:1px solid transparent;}.sp-row:hover{background:rgba(255,255,255,.04);border-color:var(--clr-border-soft);}.sp-avatar{width:38px;height:38px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.92rem;font-weight:700;color:#fff;position:relative;font-family:'Inter',sans-serif;overflow:hidden;}.sp-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;position:absolute;inset:0;}.sp-info{flex:1;min-width:0;}.sp-name{font-size:.82rem;font-weight:600;color:var(--clr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sp-meta{font-size:.68rem;color:rgba(240,240,240,.32);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sp-actions{display:flex;gap:4px;flex-shrink:0;opacity:0;transition:opacity .15s;}.sp-row:hover .sp-actions{opacity:1;}.sp-btn{width:28px;height:28px;border-radius:7px;border:none;display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif;font-size:.78rem;cursor:pointer;transition:all .15s;flex-shrink:0;background:var(--clr-border-faint);color:rgba(240,240,240,.5);}.sp-btn:hover{background:rgba(255,255,255,.1);color:var(--clr-text);}.sp-btn.accept{background:rgba(16,185,129,.15);color:#6ee7b7;border:1px solid rgba(16,185,129,.2);}.sp-btn.accept:hover{background:rgba(16,185,129,.28);}.sp-btn.reject{background:rgba(239,68,68,.1);color:var(--clr-danger-light);border:1px solid rgba(239,68,68,.15);}.sp-btn.reject:hover{background:rgba(239,68,68,.22);}.sp-btn.chat{background:rgba(99,102,241,.12);color:var(--clr-indigo-light);}.sp-btn.chat:hover{background:rgba(99,102,241,.28);}.sp-btn.ws{background:rgba(20,184,166,.1);color:#2dd4bf;}.sp-btn.ws:hover{background:rgba(20,184,166,.24);}.sp-btn.invite{background:rgba(245,158,11,.1);color:#fcd34d;}.sp-btn.invite:hover{background:rgba(245,158,11,.22);}.sp-btn.remove:hover{background:rgba(239,68,68,.1);color:var(--clr-danger-light);}.sp-online-dot{position:absolute;bottom:1px;right:1px;width:9px;height:9px;border-radius:50%;border:2px solid #111;}.sp-online-dot.online{background:var(--clr-success);box-shadow:0 0 5px rgba(16,185,129,.6);}.sp-online-dot.offline{background:#374151;}.sp-online-dot.busy{background:var(--clr-danger);box-shadow:0 0 5px rgba(239,68,68,.5);}.sp-online-dot.working{background:var(--clr-warning);box-shadow:0 0 5px rgba(245,158,11,.5);}#my-status-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:4px 10px 4px 7px;font-family:'Inter',sans-serif;font-size:.72rem;font-weight:500;color:rgba(240,240,240,.65);cursor:pointer;transition:all .15s;white-space:nowrap;}#my-status-btn:hover{background:var(--clr-border-soft);border-color:rgba(255,255,255,.2);}#my-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--clr-success);transition:background .2s;box-shadow:0 0 5px rgba(16,185,129,.6);}.status-menu-pop{position:fixed;z-index:2000;background:#111;border:1px solid var(--clr-border-strong);border-radius:12px;padding:6px;box-shadow:0 12px 40px rgba(0,0,0,.7);min-width:170px;}.status-menu-opt{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:500;color:rgba(240,240,240,.75);transition:background .12s;}.status-menu-opt:hover{background:var(--clr-border);}.status-menu-opt.active{background:var(--clr-border-faint);color:var(--clr-text);}.status-menu-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;}.sp-info{flex:1;min-width:0;}.sp-name{font-size:.82rem;font-weight:600;color:var(--clr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sp-meta{font-size:.7rem;color:rgba(240,240,240,.35);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sp-actions{display:flex;gap:5px;flex-shrink:0;}.sp-btn{padding:4px 10px;border-radius:6px;border:none;font-family:'Inter',sans-serif;font-size:.71rem;font-weight:600;cursor:pointer;transition:all .15s;}.sp-btn.accept{background:rgba(16,185,129,.15);color:#6ee7b7;border:1px solid rgba(16,185,129,.25);}.sp-btn.accept:hover{background:rgba(16,185,129,.28);}.sp-btn.reject{background:rgba(239,68,68,.1);color:var(--clr-danger-light);border:1px solid rgba(239,68,68,.2);}.sp-btn.reject:hover{background:rgba(239,68,68,.22);}.sp-btn.chat{background:rgba(99,102,241,.15);color:var(--clr-indigo-light);border:1px solid rgba(99,102,241,.25);}.sp-btn.chat:hover{background:rgba(99,102,241,.28);}.sp-btn.remove{background:rgba(255,255,255,.04);color:rgba(240,240,240,.35);border:1px solid rgba(255,255,255,.08);}.sp-btn.remove:hover{background:rgba(239,68,68,.1);color:var(--clr-danger-light);border-color:rgba(239,68,68,.2);}.sp-empty{text-align:center;padding:24px 0;font-size:.76rem;color:rgba(240,240,240,.25);}.sp-section-lbl{font-size:.6rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:rgba(240,240,240,.2);margin:10px 2px 5px;padding:0 2px;}.sp-divider{height:1px;background:var(--clr-border-faint);margin:6px 0;}.chat-win{opacity:0;transform:translateY(12px);transition:opacity .22s cubic-bezier(.16,1,.3,1),transform .22s cubic-bezier(.16,1,.3,1);}.chat-win.visible{opacity:1;transform:translateY(0);}.sp-row{opacity:0;transform:translateY(8px);animation:rowIn .22s cubic-bezier(.16,1,.3,1) forwards;}@keyframes rowIn{to{opacity:1;transform:translateY(0);}}.sp-row:nth-child(1){animation-delay:.02s;}.sp-row:nth-child(2){animation-delay:.04s;}.sp-row:nth-child(3){animation-delay:.06s;}.sp-row:nth-child(4){animation-delay:.08s;}.sp-row:nth-child(5){animation-delay:.10s;}.sp-row:nth-child(6){animation-delay:.12s;}.chat-msg{opacity:0;transform:translateY(6px);animation:msgIn .18s cubic-bezier(.16,1,.3,1) forwards;}@keyframes msgIn{to{opacity:1;transform:translateY(0);}}.sp-group-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--clr-bg-card);border:1px solid var(--clr-border);cursor:pointer;transition:all .15s;margin-bottom:6px;}.sp-group-row:hover{background:rgba(99,102,241,.07);border-color:var(--clr-indigo-20);}.sp-group-icon{width:34px;height:34px;border-radius:10px;flex-shrink:0;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.85rem;}.sp-group-info{flex:1;min-width:0;}.sp-group-name{font-size:.82rem;font-weight:600;color:var(--clr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sp-group-meta{font-size:.7rem;color:rgba(240,240,240,.35);margin-top:1px;}.sp-group-actions{display:flex;gap:5px;flex-shrink:0;}.sp-new-group-row{display:flex;gap:7px;margin-bottom:8px;}.sp-new-group-inp{flex:1;background:var(--clr-border-soft);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:7px 11px;font-family:'Inter',sans-serif;font-size:.78rem;color:var(--clr-text);outline:none;transition:border-color .15s;}.sp-new-group-inp::placeholder{color:rgba(240,240,240,.25);}.sp-new-group-inp:focus{border-color:var(--clr-indigo-40);}.sp-new-group-btn{padding:7px 12px;border-radius:8px;border:none;background:var(--clr-indigo-20);color:var(--clr-indigo-light);font-family:'Inter',sans-serif;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;}.sp-new-group-btn:hover{background:rgba(99,102,241,.35);}.group-invite-notif{position:fixed;bottom:24px;right:24px;z-index:6100;width:290px;background:#111;border:1px solid rgba(255,255,255,.1);border-left:3px solid var(--clr-indigo);border-radius:12px;box-shadow:0 16px 48px rgba(0,0,0,.7);padding:12px 14px;animation:notifIn .3s cubic-bezier(.16,1,.3,1) both;transition:opacity .2s,transform .2s;pointer-events:all;}.group-invite-notif.hiding{opacity:0;transform:translateX(20px);}.group-member-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;display:inline-block;margin-right:4px;}.sp-btn.invite{background:rgba(245,158,11,.12);color:#fcd34d;border:1px solid rgba(245,158,11,.22);}.sp-btn.invite:hover{background:rgba(245,158,11,.25);}.sp-row.pending-in .sp-name{color:#fcd34d;}.chat-win{position:fixed;bottom:0;z-index:1600;width:300px;height:420px;background:#111;border:1px solid rgba(255,255,255,.11);border-bottom:none;border-radius:14px 14px 0 0;display:flex;flex-direction:column;box-shadow:0 -8px 40px rgba(0,0,0,.6);transition:height .25s cubic-bezier(.16,1,.3,1);pointer-events:all;}.chat-win.minimized{height:46px;overflow:hidden;}.chat-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--clr-border);cursor:pointer;flex-shrink:0;user-select:none;background:var(--clr-bg-card);border-radius:14px 14px 0 0;}.chat-header-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0;position:relative;}.chat-online-dot{position:absolute;bottom:0;right:0;width:7px;height:7px;border-radius:50%;border:1.5px solid #111;}.chat-online-dot.online{background:var(--clr-success);}.chat-online-dot.offline{background:#374151;}.chat-title{flex:1;font-size:.8rem;font-weight:600;color:var(--clr-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.chat-unread{background:var(--clr-danger);color:#fff;border-radius:10px;font-size:.62rem;font-weight:700;padding:1px 6px;font-family:'Inter',sans-serif;}.chat-close-btn{background:none;border:none;cursor:pointer;color:rgba(240,240,240,.3);font-size:.9rem;padding:0 2px;transition:color .15s;flex-shrink:0;}.chat-close-btn:hover{color:var(--clr-text);}.chat-clear-btn{background:none;border:none;cursor:pointer;color:rgba(240,240,240,.22);font-size:.72rem;padding:0 3px;transition:color .15s;flex-shrink:0;font-family:'Inter',sans-serif;letter-spacing:.2px;}.chat-clear-btn:hover{color:rgba(239,68,68,.8);}.chat-msgs{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:6px;}.chat-msg{display:flex;flex-direction:column;max-width:82%;}.chat-msg.mine{align-self:flex-end;align-items:flex-end;}.chat-msg.theirs{align-self:flex-start;align-items:flex-start;}.chat-bubble{padding:7px 11px;border-radius:12px;font-size:.79rem;line-height:1.5;word-break:break-word;font-family:'Inter',sans-serif;}.chat-msg.mine .chat-bubble{background:rgba(99,102,241,.22);color:#e0e7ff;border-radius:12px 12px 4px 12px;}.chat-msg.theirs .chat-bubble{background:var(--clr-border);color:rgba(240,240,240,.85);border-radius:12px 12px 12px 4px;}.chat-time{font-size:.6rem;color:rgba(240,240,240,.25);margin-top:2px;font-family:'JetBrains Mono',monospace;}.chat-file-bubble{display:flex;align-items:center;gap:7px;padding:7px 10px;border-radius:10px;background:var(--clr-border-soft);border:1px solid rgba(255,255,255,.1);font-size:.75rem;cursor:pointer;transition:background .15s;text-decoration:none;color:rgba(240,240,240,.8);max-width:220px;}.chat-file-bubble:hover{background:rgba(255,255,255,.1);}.chat-file-bubble svg{width:14px;height:14px;opacity:.6;flex-shrink:0;}.chat-file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.chat-file-sz{font-size:.61rem;opacity:.4;flex-shrink:0;font-family:'JetBrains Mono',monospace;}.chat-img{max-width:100%;max-height:200px;border-radius:10px;display:block;cursor:zoom-in;object-fit:cover;box-shadow:0 2px 10px rgba(0,0,0,.4);transition:opacity .15s;}.chat-img:hover{opacity:.88;}#chat-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.9);display:none;align-items:center;justify-content:center;cursor:zoom-out;}#chat-lightbox.open{display:flex;}#chat-lightbox img{max-width:90vw;max-height:90vh;border-radius:8px;object-fit:contain;}.chat-input-row{display:flex;align-items:flex-end;gap:6px;padding:8px 10px;border-top:1px solid var(--clr-border);flex-shrink:0;}.chat-file-btn{width:30px;height:30px;border:1px solid rgba(255,255,255,.1);background:var(--clr-border-faint);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:rgba(240,240,240,.4);transition:all .15s;flex-shrink:0;position:relative;}.chat-file-btn:hover{background:rgba(255,255,255,.1);color:rgba(240,240,240,.8);}.chat-file-btn svg{width:14px;height:14px;}.chat-file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;}.chat-inp{flex:1;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:7px 10px;font-family:'Inter',sans-serif;font-size:.8rem;color:var(--clr-text);outline:none;resize:none;transition:border-color .18s;max-height:80px;overflow-y:auto;min-height:30px;line-height:1.4;}.chat-inp:focus{border-color:rgba(99,102,241,.45);}.chat-inp::placeholder{color:rgba(240,240,240,.2);}.chat-send{width:30px;height:30px;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:opacity .15s;flex-shrink:0;}.chat-send:hover{opacity:.85;}.chat-send svg{width:14px;height:14px;}::-webkit-scrollbar{width:4px;height:4px;}::-webkit-scrollbar-track{background:transparent;}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px;}#auth-screen.landing-scroll{overflow-y:auto !important;overflow-x:hidden !important;flex-direction:column !important;}.auth-hero{display:flex;min-height:100vh;flex-shrink:0;}.lp-section{width:100%;padding:100px 8vw;border-top:1px solid var(--clr-border-soft);flex-shrink:0;}.lp-section:nth-child(odd){background:#0a0a0a;}.lp-section:nth-child(even){background:#0d0d0f;}.lp-eyebrow{display:flex;align-items:center;gap:8px;font-size:.62rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(99,102,241,.7);margin-bottom:20px;}.lp-eyebrow-dot{width:4px;height:4px;border-radius:50%;background:var(--clr-indigo);}.lp-title{font-family:'Syne',sans-serif;font-size:clamp(2.4rem,5vw,3.8rem);font-weight:800;color:var(--clr-text);letter-spacing:-2px;line-height:1.1;margin-bottom:24px;}.lp-title .hl{background:linear-gradient(135deg,#818cf8,var(--clr-indigo),var(--clr-indigo-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.lp-subtitle{font-size:1.05rem;color:rgba(240,240,240,.5);line-height:1.8;max-width:560px;}.lp-cols{display:flex;gap:80px;align-items:center;}.lp-cols.reverse{flex-direction:row-reverse;}.lp-col-text{flex:1;min-width:0;}.lp-col-visual{flex:1.1;min-width:0;}.lp-feats{display:flex;flex-direction:column;gap:20px;margin-top:40px;}.lp-feat{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-radius:12px;background:var(--clr-bg-card);border:1px solid var(--clr-border);transition:border-color .2s,background .2s;}.lp-feat:hover{border-color:rgba(99,102,241,.22);background:rgba(99,102,241,.04);}.lp-feat-icon{width:36px;height:36px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.9rem;}.lp-feat-title{font-size:.87rem;font-weight:600;color:var(--clr-text);margin-bottom:4px;}.lp-feat-desc{font-size:.77rem;color:rgba(240,240,240,.38);line-height:1.55;}.lp-stats-row{display:flex;gap:0;margin-top:40px;border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden;}.lp-stat-box{flex:1;padding:22px 16px;text-align:center;border-right:1px solid var(--clr-border);background:rgba(255,255,255,.02);}.lp-stat-box:last-child{border-right:none;}.lp-stat-num{font-family:'Syne',sans-serif;font-size:2rem;font-weight:800;color:var(--clr-text);letter-spacing:-1px;line-height:1;}.lp-stat-num .hl{background:linear-gradient(135deg,#818cf8,var(--clr-indigo));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.lp-stat-label{font-size:.68rem;color:rgba(240,240,240,.32);margin-top:5px;letter-spacing:.3px;}.lp-how{display:flex;flex-direction:column;gap:0;margin-top:36px;position:relative;}.lp-how::before{content:'';position:absolute;left:18px;top:20px;bottom:20px;width:1px;background:linear-gradient(180deg,var(--clr-indigo-40),rgba(20,184,166,.3),transparent);}.lp-how-step{display:flex;gap:18px;padding:16px 0;}.lp-how-num{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#1a1b3e,#111);border:1px solid rgba(99,102,241,.35);display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;color:var(--clr-indigo-light);flex-shrink:0;position:relative;z-index:1;}.lp-how-title{font-size:.87rem;font-weight:600;color:var(--clr-text);margin-bottom:4px;padding-top:6px;}.lp-how-desc{font-size:.77rem;color:rgba(240,240,240,.38);line-height:1.55;}.lp-quote{background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.14);border-left:3px solid var(--clr-indigo);border-radius:12px;padding:22px 24px;margin-top:36px;}.lp-quote-text{font-size:.87rem;color:rgba(240,240,240,.6);line-height:1.7;font-style:italic;}.lp-quote-author{font-size:.7rem;color:rgba(240,240,240,.28);margin-top:10px;font-weight:600;}.lp-mock{background:#0e0e10;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6);}.lp-mock-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--clr-bg-card);border-bottom:1px solid var(--clr-border-soft);}.lp-mock-dot{width:9px;height:9px;border-radius:50%;}.lp-mock-body{padding:16px;min-height:200px;position:relative;}.mock-note{position:absolute;border-radius:12px;width:192px;padding:0;overflow:hidden;cursor:default;transition:box-shadow .2s,transform .2s,width .25s,height .25s;box-shadow:0 4px 20px var(--clr-overlay-50);}.mock-note:hover{box-shadow:0 8px 32px rgba(0,0,0,.7);transform:translateY(-2px) scale(1.02);z-index:10 !important;}.mock-note-bar{height:3px;}.mock-note-head{padding:9px 11px 6px;display:flex;flex-direction:column;gap:5px;}.mock-note-chip-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}.mock-note-chip{display:inline-flex;align-items:center;gap:3px;border-radius:20px;padding:2px 7px;font-size:.52rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;border:1px solid;}.mock-note-status{display:inline-flex;align-items:center;gap:4px;border-radius:20px;padding:2px 8px;font-size:.56rem;font-weight:600;border:1px solid;margin-left:auto;}.mock-note-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}.mock-note-title{font-size:.78rem;font-weight:700;color:var(--clr-text);line-height:1.3;padding:0 11px 4px;}.mock-note-body{font-size:.64rem;color:rgba(240,240,240,.45);padding:0 11px 8px;line-height:1.5;}.mock-note-sep{height:1px;background:var(--clr-border-soft);margin:0;}.mock-note-dates{padding:6px 11px 8px;display:flex;flex-direction:column;gap:3px;opacity:0;max-height:0;overflow:hidden;transition:opacity .2s,max-height .25s;}.mock-note:hover .mock-note-dates{opacity:1;max-height:60px;}.mock-note-date-row{display:flex;align-items:center;gap:5px;font-size:.58rem;color:rgba(240,240,240,.3);}.mock-note-pulse{animation:notePulse 3s ease-in-out infinite;}@keyframes notePulse{0%,100%{box-shadow:0 4px 20px var(--clr-overlay-50)}50%{box-shadow:0 8px 28px rgba(99,102,241,.25)}}.mock-badge-float{position:absolute;background:#111;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:7px 10px;font-size:.65rem;font-weight:600;color:var(--clr-text);box-shadow:0 8px 24px rgba(0,0,0,.6);display:flex;align-items:center;gap:6px;white-space:nowrap;animation:floatBadge 4s ease-in-out infinite;font-family:'Inter',sans-serif;}.mock-badge-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}@keyframes floatBadge{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}.mock-sp-row{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:8px;}.mock-sp-av{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#fff;font-family:'Inter',sans-serif;flex-shrink:0;}.mock-sp-name{font-size:.76rem;font-weight:600;color:var(--clr-text);}.mock-sp-meta{font-size:.64rem;color:rgba(240,240,240,.35);}.mock-sp-online{width:7px;height:7px;border-radius:50%;background:var(--clr-success);flex-shrink:0;box-shadow:0 0 5px rgba(16,185,129,.6);}.mock-chat-win{background:#111;border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden;}.mock-chat-hdr{display:flex;align-items:center;gap:8px;padding:9px 12px;background:var(--clr-bg-card);border-bottom:1px solid var(--clr-border);}.mock-chat-av{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;color:#fff;font-family:'Inter',sans-serif;}.mock-chat-name{font-size:.75rem;font-weight:600;color:var(--clr-text);}.mock-chat-msgs{padding:10px;display:flex;flex-direction:column;gap:6px;}.mock-msg{max-width:80%;padding:6px 10px;border-radius:10px;font-size:.71rem;color:rgba(240,240,240,.85);}.mock-msg.mine{align-self:flex-end;background:rgba(99,102,241,.22);color:#e0e7ff;border-radius:10px 10px 3px 10px;}.mock-msg.theirs{align-self:flex-start;background:var(--clr-border);border-radius:10px 10px 10px 3px;}.mock-typing{display:flex;align-items:center;gap:4px;padding:8px 12px;}.mock-typing-dot{width:5px;height:5px;border-radius:50%;background:rgba(240,240,240,.3);animation:typingBounce 1.2s ease-in-out infinite;}.mock-typing-dot:nth-child(2){animation-delay:.2s;}.mock-typing-dot:nth-child(3){animation-delay:.4s;}@keyframes typingBounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-5px)}}.lp-cta{padding:100px 8vw;text-align:center;background:#0a0a0a;border-top:1px solid var(--clr-border-soft);}.lp-cta-title{font-family:'Syne',sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:800;color:var(--clr-text);letter-spacing:-1.5px;margin-bottom:16px;line-height:1.15;}.lp-cta-desc{font-size:.95rem;color:rgba(240,240,240,.38);margin-bottom:40px;line-height:1.7;}.lp-cta-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));border:none;border-radius:12px;padding:14px 28px;font-family:'Inter',sans-serif;font-size:.95rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s;box-shadow:0 8px 28px rgba(99,102,241,.35);}.lp-cta-btn:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 12px 40px var(--clr-indigo-50);}.lp-scroll-hint{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:auto;padding-top:32px;cursor:pointer;opacity:.35;transition:opacity .2s;}.lp-scroll-hint:hover{opacity:.65;}.lp-scroll-hint span{font-size:.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(240,240,240,.8);}.lp-scroll-hint svg{color:rgba(240,240,240,.8);animation:scrollBounce 2s ease-in-out infinite;}@keyframes scrollBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}.lp-footer{text-align:center;padding:32px;border-top:1px solid var(--clr-border-faint);font-size:.72rem;color:rgba(240,240,240,.2);letter-spacing:.5px;}.lp-faq-item:hover{border-color:rgba(99,102,241,.25)!important;}.lp-faq-item.open{border-color:var(--clr-indigo-20)!important;}.lp-faq-item.open .lp-faq-arrow{transform:rotate(180deg);}.lp-faq-item.open .lp-faq-body{max-height:200px!important;}.lp-divider{height:1px;background:linear-gradient(90deg,transparent,var(--clr-indigo-30),rgba(20,184,166,.2),transparent);}@media(max-width:768px){.lp-section{padding:64px 24px;}.lp-cols,.lp-cols.reverse{flex-direction:column;}.lp-col-visual{width:100%;}}/* ══════════════════════════════════════════════
 MOBILE RESPONSIVE — iPhone & Android
══════════════════════════════════════════════ */
@media (max-width: 768px){.auth-hero{flex-direction: column !important;min-height: 100vh !important;}.auth-left{width: 100% !important;min-height: auto !important;padding: 40px 24px 28px !important;border-right: none !important;border-bottom: 1px solid var(--clr-border-soft) !important;justify-content: flex-start !important;}.auth-brand-logo{font-size: 1.5rem;}.auth-brand-sub{font-size: .72rem;}.auth-features{gap: 10px;margin-top: 20px;}.feat-title{font-size: .78rem;}.feat-desc{font-size: .68rem;}.auth-shape,.auth-grid{display: none;}.lp-scroll-hint{display: none !important;}.auth-right{width: 100% !important;flex: none !important;padding: 28px 20px 40px !important;align-items: stretch !important;}.auth-welcome{width: 100% !important;margin-bottom: 18px;}.auth-welcome-heading{font-size: 1.5rem;letter-spacing: -.5px;}.auth-welcome-desc{font-size: .8rem;}.auth-stats{gap: 10px;flex-wrap: wrap;}.auth-stat-txt{font-size: .68rem;}.auth-card{width: 100% !important;padding: 20px 18px !important;}.auth-tabs{margin-bottom: 16px;}.a-inp{padding: 11px 13px;font-size: .85rem;}.auth-btn{padding: 12px;font-size: .85rem;}#toolbar{height: auto !important;flex-wrap: wrap;gap: 5px;padding: 8px 10px;}.t-logo{font-size: .95rem;}.t-pill{max-width: 100px;font-size: .65rem;padding: 3px 8px 3px 6px;}.t-btn{padding: 5px 8px;font-size: .68rem;gap: 3px;}.t-btn svg{width: 11px;height: 11px;}.t-sep{display: none;}.t-spacer{flex: 1;min-width: 4px;}.t-count{font-size: .6rem;}#board{overflow-y: auto !important;overflow-x: hidden !important;display: flex !important;flex-direction: column !important;align-items: center !important;padding: 12px 0 100px !important;gap: 10px !important;}.note:hover{transform: none !important;}.note.dragging{transform: scale(1.02) !important;}.modal-bg{align-items: flex-end !important;padding: 0;}.modal{width: 100vw !important;border-radius: 20px 20px 0 0 !important;padding: 22px 18px 32px !important;max-height: 92vh;overflow-y: auto;}#social-panel{width: calc(100vw - 24px) !important;left: 12px !important;right: 12px !important;top: 58px !important;max-height: calc(100vh - 80px);}#wp-panel{width: calc(100vw - 24px) !important;right: 12px !important;bottom: auto !important;top: 58px !important;max-height: 80vh;overflow-y: auto;}.chat-win{width: calc(100vw - 16px) !important;right: 8px !important;left: auto !important;}.f-viewer{position: fixed !important;left: 0 !important;right: 0 !important;bottom: 0 !important;top: auto !important;width: 100vw !important;height: 85vh !important;border-radius: 20px 20px 0 0 !important;border-left: none !important;border-top: 1px solid rgba(255,255,255,.13) !important;}.note.has-viewer{border-radius: 14px !important;border-right: 1px solid rgba(255,255,255,.1) !important;}.lp-section{padding:48px 18px;width:100% !important;box-sizing:border-box;}.lp-cols,.lp-cols.reverse{flex-direction:column !important;gap:28px;}.lp-col-text{width:100% !important;min-width:0 !important;flex:none !important;}.lp-col-visual{display:none !important;}.lp-cols > *{width:100% !important;}.lp-title{font-size:1.85rem;letter-spacing:-.8px;}.lp-subtitle{font-size:.87rem;line-height:1.7;}.lp-feats{margin-top:22px;gap:10px;}.lp-feat{padding:13px 14px;gap:12px;}.lp-feat-icon{width:32px;height:32px;flex-shrink:0;}.lp-feat-title{font-size:.83rem;}.lp-feat-desc{font-size:.74rem;}.lp-stats-row{flex-direction:column;}.lp-stat-box{border-right:none;border-bottom:1px solid var(--clr-border);padding:16px;}.lp-stat-box:last-child{border-bottom:none;}.lp-stat-num{font-size:1.5rem;}.lp-how{margin-top:20px;}.lp-how::before{display:none;}.lp-how-step{padding:10px 0;gap:12px;}.lp-how-num{width:28px;height:28px;font-size:.7rem;flex-shrink:0;}.lp-how-title{font-size:.83rem;padding-top:4px;}.lp-how-desc{font-size:.74rem;}.lp-quote{padding:14px 16px;margin-top:20px;}.lp-quote-text{font-size:.8rem;}.lp-eyebrow{margin-bottom:12px;font-size:.58rem;}.lp-cta{padding:48px 18px;text-align:center;}.lp-cta-title{font-size:1.65rem;}.lp-cta-desc{font-size:.84rem;}.lp-cta-btn{padding:12px 22px;font-size:.88rem;width:100%;justify-content:center;}.lp-footer{padding:22px 18px;font-size:.67rem;}.lp-divider{display:none;}.sp-btn,.auth-btn,.lp-cta-btn{min-height: 42px;}.sp-add-inp{padding: 10px 12px;}}@media (max-width: 430px){.auth-left{padding: 32px 18px 22px !important;}.auth-right{padding: 22px 16px 32px !important;}.auth-welcome-heading{font-size: 1.3rem;}.auth-card{padding: 18px 14px !important;}.auth-stats{display: none;}.auth-features{display: none;}#toolbar{padding: 6px 8px;gap: 3px;}.t-btn{padding: 5px 6px;font-size: .64rem;}.n-title{font-size: .86rem;}.n-text{font-size: .74rem;}.chat-win{width: 100vw !important;right: 0 !important;border-radius: 16px 16px 0 0 !important;}.lp-title{font-size: 1.55rem;}.lp-subtitle{font-size: .82rem;}.lp-feat{padding: 11px 13px;}}@media (hover:none) and (pointer:coarse){.note{user-select: none;-webkit-user-select: none;}#board,.chat-msgs,.sp-body,.modal{-webkit-overflow-scrolling: touch;}.note:hover{box-shadow: 0 6px 30px rgba(0,0,0,.6) !important;border-color: rgba(255,255,255,.1) !important;transform: none !important;}}/* ════════════════════════════════════════
 LANES — fileiras verticais no board
════════════════════════════════════════ */
#board.lane-mode{display:flex;flex-direction:row;align-items:flex-start;overflow-x:auto;overflow-y:hidden;gap:14px;padding:20px 20px 40px;}.board-lane{flex-shrink:0;width:280px;display:flex;flex-direction:column;gap:0;background:rgba(255,255,255,.025);border:1px solid var(--clr-border);border-radius:14px;overflow:hidden;transition:border-color .2s,box-shadow .2s;}.board-lane.drag-over{border-color:var(--clr-indigo-40);box-shadow:0 0 0 2px rgba(99,102,241,.12);}.lane-header{display:flex;align-items:center;gap:8px;padding:10px 12px 9px;border-bottom:1px solid var(--clr-border-soft);background:rgba(255,255,255,.02);cursor:default;flex-shrink:0;}.lane-accent{width:10px;height:10px;border-radius:50%;flex-shrink:0;}.lane-title{flex:1;font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;color:var(--clr-text);background:none;border:none;outline:none;padding:0;cursor:pointer;caret-color:var(--clr-indigo-light);}.lane-title:focus{cursor:text;}.lane-count{font-size:.62rem;font-family:'JetBrains Mono',monospace;color:rgba(240,240,240,.22);background:var(--clr-border-faint);border-radius:20px;padding:2px 7px;flex-shrink:0;}.lane-menu-btn{background:none;border:none;cursor:pointer;color:rgba(240,240,240,.2);font-size:.95rem;padding:0 2px;transition:color .15s;line-height:1;flex-shrink:0;}.lane-menu-btn:hover{color:rgba(240,240,240,.7);}.lane-notes{display:flex;flex-direction:column;gap:8px;padding:10px 10px 6px;min-height:60px;overflow-y:auto;max-height:calc(100vh - 200px);}#board.lane-mode .note{position:relative !important;left:auto !important;top:auto !important;width:100% !important;min-width:0 !important;max-width:none !important;margin:0 !important;flex-shrink:0;}.lane-add-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;margin:0 10px 10px;border:1px dashed var(--clr-border);border-radius:8px;background:none;font-family:'Inter',sans-serif;font-size:.74rem;color:rgba(240,240,240,.22);cursor:pointer;transition:all .18s;}.lane-add-btn:hover{border-color:var(--clr-indigo-30);color:rgba(165,180,252,.6);background:rgba(99,102,241,.04);}.lane-add-col{flex-shrink:0;width:240px;display:flex;align-items:center;justify-content:center;gap:8px;height:52px;border:1.5px dashed var(--clr-border);border-radius:14px;background:none;font-family:'Inter',sans-serif;font-size:.78rem;font-weight:500;color:rgba(240,240,240,.2);cursor:pointer;transition:all .2s;align-self:flex-start;}.lane-add-col:hover{border-color:rgba(99,102,241,.35);color:rgba(165,180,252,.6);background:rgba(99,102,241,.04);}#btn-lane-mode{background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);}#btn-lane-mode.active{background:rgba(99,102,241,.15);color:var(--clr-indigo-light);border-color:rgba(99,102,241,.28);}.note.lane-dragging{opacity:.45;}.confirm-clear-pop{position: fixed;inset: 0;z-index: 99999;background: rgba(0,0,0,.65);display: flex;align-items: center;justify-content: center;opacity: 0;transition: opacity .2s;backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}.confirm-clear-pop.visible{opacity: 1;}.confirm-clear-card{background: #151515;border: 1px solid var(--clr-border-strong);border-radius: 18px;padding: 28px 28px 24px;width: min(380px,90vw);box-shadow: 0 24px 80px rgba(0,0,0,.8);display: flex;flex-direction: column;align-items: center;gap: 10px;transform: scale(.95);transition: transform .2s;text-align: center;}.confirm-clear-pop.visible .confirm-clear-card{transform: scale(1);}.confirm-clear-icon{font-size: 2rem;margin-bottom: 4px;}.confirm-clear-title{font-family:'Syne',sans-serif;font-size:1.1rem;font-weight:700;color:var(--clr-text);}.confirm-clear-desc{font-family:'Inter',sans-serif;font-size:.8rem;color:rgba(240,240,240,.45);line-height:1.6;max-width:280px;}.confirm-clear-btns{display:flex;gap:10px;margin-top:8px;width:100%;}.confirm-clear-cancel{flex:1;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:var(--clr-border-faint);color:rgba(240,240,240,.6);font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;}.confirm-clear-cancel:hover{background:rgba(255,255,255,.1);color:var(--clr-text);}.confirm-clear-ok{flex:1;padding:10px;border-radius:10px;border:1px solid rgba(239,68,68,.35);background:rgba(239,68,68,.15);color:var(--clr-danger-light);font-family:'Inter',sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s;}.confirm-clear-ok:hover{background:rgba(239,68,68,.28);color:#fff;}.note.stack-target{box-shadow: 0 0 0 2px rgba(99,102,241,.7),0 8px 32px var(--clr-indigo-30) !important;transform: scale(1.02) !important;transition: box-shadow .15s,transform .15s !important;}.stack-wrap.stack-target{box-shadow: 0 0 0 2px rgba(99,102,241,.7),0 8px 32px var(--clr-indigo-30) !important;border-color: rgba(99,102,241,.6) !important;}.stack-wrap{position: absolute;display: flex;flex-direction: column;gap: 0;min-width: 270px;border-radius: 12px;overflow: hidden;box-shadow: 0 8px 32px var(--clr-overlay-50);}.stack-header{display: flex;align-items: center;gap: 8px;padding: 9px 12px;background: rgba(255,255,255,.04);border-bottom: 1px solid var(--clr-border);cursor: grab;user-select: none;}.stack-header:active{cursor: grabbing;}.shb{width: 3px;height: 16px;border-radius: 2px;flex-shrink: 0;}.stack-header-title{flex: 1;font-family: 'Inter',sans-serif;font-size: .78rem;font-weight: 600;color: var(--clr-text);background: none;border: none;outline: none;padding: 0;cursor: pointer;caret-color: var(--clr-indigo-light);min-width: 0;}.stack-header-title::placeholder{color: rgba(240,240,240,.25);font-weight: 400;}.stack-header-title:focus{cursor: text;}.stack-header-count{font-size: .62rem;font-family: 'JetBrains Mono',monospace;color: rgba(240,240,240,.3);background: var(--clr-border-soft);border-radius: 20px;padding: 2px 7px;flex-shrink: 0;}.stack-toggle-btn{background: var(--clr-border-soft);border: 1px solid rgba(255,255,255,.1);color: rgba(240,240,240,.6);font-size: 1rem;cursor: pointer;width: 28px;height: 28px;border-radius: 7px;display: flex;align-items: center;justify-content: center;flex-shrink: 0;transition: all .15s;}.stack-toggle-btn:hover{background: var(--clr-border-strong);color: var(--clr-text);border-color: rgba(255,255,255,.2);}.stack-body{display: flex;flex-direction: column;max-height: 600px;overflow-y: auto;transition: max-height .25s cubic-bezier(.16,1,.3,1);}.stack-body.collapsed{max-height: 0;overflow: hidden;}.stack-card-row{display: flex;align-items: center;gap: 8px;padding: 8px 12px;border-bottom: 1px solid var(--clr-border-faint);cursor: pointer;transition: background .14s;}.stack-card-row:last-child{border-bottom: none;}.stack-card-row:hover{background: var(--clr-border-faint);}.stack-card-row-bar{width: 3px;height: 14px;border-radius: 2px;flex-shrink: 0;}.stack-card-row-title{flex: 1;font-family: 'Inter',sans-serif;font-size: .78rem;font-weight: 500;color: var(--clr-text);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.stack-card-row-expand,.stack-card-row-unstack{width: 22px;height: 22px;border: none;border-radius: 5px;background: none;color: rgba(240,240,240,.25);font-size: .72rem;cursor: pointer;display: flex;align-items: center;justify-content: center;opacity: 0;transition: all .14s;flex-shrink: 0;}.stack-card-row:hover .stack-card-row-expand,.stack-card-row:hover .stack-card-row-unstack{opacity: 1;}.stack-card-row-expand:hover{background: var(--clr-indigo-20);color: var(--clr-indigo-light);}.stack-card-row-unstack:hover{background: rgba(245,158,11,.2);color: #fcd34d;}#lofi-btn{display: inline-flex;align-items: center;gap: 6px;background: var(--clr-indigo-10);border: 1px solid rgba(99,102,241,.22);border-radius: 20px;padding: 4px 12px 4px 9px;font-family: 'Inter',sans-serif;font-size: .72rem;font-weight: 500;color: rgba(165,180,252,.8);cursor: pointer;transition: all .2s;white-space: nowrap;max-width: 220px;}#lofi-btn:hover{background: var(--clr-indigo-20);border-color: var(--clr-indigo-40);color: var(--clr-indigo-light);}#lofi-btn.playing{background: rgba(99,102,241,.18);border-color: var(--clr-indigo-40);color: var(--clr-indigo-light);}#lofi-icon{font-size: .85rem;flex-shrink: 0;}#lofi-btn.playing #lofi-icon{animation: lofiBeat .8s ease-in-out infinite;}@keyframes lofiBeat{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}#lofi-track{font-size: .67rem;color: rgba(165,180,252,.6);overflow: hidden;text-overflow: ellipsis;white-space: nowrap;max-width: 160px;font-family: 'Inter',sans-serif;animation: lofiScroll 12s linear infinite;}@keyframes lofiScroll{0%,20%{transform:translateX(0)}80%,100%{transform:translateX(-30%)}}
/* ── Google Sign-In button ── */
.auth-divider{display:flex;align-items:center;gap:10px;margin:16px 0;color:rgba(240,240,240,.2);font-size:.72rem;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.07);}
.btn-google{width:100%;padding:11px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:9px;font-family:'Inter',sans-serif;font-size:.86rem;font-weight:500;color:rgba(240,240,240,.85);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .18s;margin-bottom:14px;}
.btn-google:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);color:var(--clr-text);}
.btn-google:active{transform:scale(.98);}
.btn-google svg{width:18px;height:18px;flex-shrink:0;}

/* ── Sort / Filter Panel ── */
#sort-panel{position:fixed;top:62px;left:50%;transform:translateX(-50%);z-index:1200;width:min(520px,96vw);background:#111;border:1px solid var(--clr-border-strong);border-radius:16px;padding:18px 20px 16px;box-shadow:0 20px 60px rgba(0,0,0,.8);display:none;animation:fadeUp .18s cubic-bezier(.16,1,.3,1) both;}
#sort-panel.open{display:block;}
.sort-panel-title{font-family:'Syne',sans-serif;font-size:.9rem;font-weight:700;color:var(--clr-text);margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.sort-panel-title span{font-size:.68rem;font-weight:500;color:rgba(240,240,240,.3);background:var(--clr-bg-card);border:1px solid var(--clr-border);border-radius:20px;padding:2px 8px;}
.sort-section{margin-bottom:14px;}
.sort-section-lbl{font-size:.58rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:rgba(240,240,240,.25);margin-bottom:8px;}
.sort-chips{display:flex;flex-wrap:wrap;gap:6px;}
.sort-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:20px;border:1px solid var(--clr-border);background:var(--clr-bg-card);font-family:'Inter',sans-serif;font-size:.74rem;font-weight:500;color:rgba(240,240,240,.5);cursor:pointer;transition:all .15s;user-select:none;}
.sort-chip:hover{border-color:rgba(255,255,255,.2);color:var(--clr-text);background:rgba(255,255,255,.06);}
.sort-chip.active{background:rgba(99,102,241,.18);border-color:var(--clr-indigo-40);color:var(--clr-indigo-light);font-weight:600;}
.sort-chip.active-status-todo{background:rgba(148,163,184,.12);border-color:rgba(148,163,184,.3);color:#94a3b8;}
.sort-chip.active-status-progress{background:rgba(99,102,241,.18);border-color:var(--clr-indigo-40);color:var(--clr-indigo-light);}
.sort-chip.active-status-done{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3);color:#6ee7b7;}
.sort-chip.active-status-closed{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:var(--clr-danger-light);}
.sort-chip-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.sort-panel-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--clr-border-faint);margin-top:4px;}
.sort-active-badge{font-size:.7rem;color:rgba(240,240,240,.3);}
.sort-active-badge b{color:var(--clr-indigo-light);}
.sort-reset{font-size:.72rem;color:rgba(240,240,240,.3);background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;padding:4px 8px;border-radius:6px;transition:all .15s;}
.sort-reset:hover{background:rgba(255,255,255,.06);color:rgba(240,240,240,.7);}

/* ── Personal Workspace Manager ── */
#pw-panel{position:fixed;top:62px;left:12px;z-index:1300;width:260px;background:#111;border:1px solid var(--clr-border-strong);border-radius:14px;padding:14px;box-shadow:0 16px 48px rgba(0,0,0,.8);display:none;animation:fadeUp .18s cubic-bezier(.16,1,.3,1) both;}
#pw-panel.open{display:block;}
.pw-header{font-family:'Syne',sans-serif;font-size:.82rem;font-weight:700;color:var(--clr-text);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;}
.pw-header span{font-size:.62rem;color:rgba(240,240,240,.28);font-family:'Inter',sans-serif;font-weight:400;}
.pw-list{display:flex;flex-direction:column;gap:3px;margin-bottom:10px;max-height:240px;overflow-y:auto;}
.pw-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:9px;cursor:pointer;border:1px solid transparent;transition:all .15s;position:relative;}
.pw-item:hover{background:rgba(255,255,255,.05);border-color:var(--clr-border);}
.pw-item.active{background:rgba(99,102,241,.12);border-color:var(--clr-indigo-30);}
.pw-item-dot{width:7px;height:7px;border-radius:50%;background:rgba(240,240,240,.2);flex-shrink:0;transition:background .15s;}
.pw-item.active .pw-item-dot{background:var(--clr-indigo);box-shadow:0 0 6px rgba(99,102,241,.7);}
.pw-item-name{flex:1;font-size:.8rem;font-weight:500;color:rgba(240,240,240,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pw-item.active .pw-item-name{color:var(--clr-text);font-weight:600;}
.pw-item-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s;}
.pw-item:hover .pw-item-actions{opacity:1;}
.pw-item-btn{width:20px;height:20px;border:none;background:none;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:rgba(240,240,240,.35);transition:all .12s;}
.pw-item-btn:hover{background:rgba(255,255,255,.08);color:rgba(240,240,240,.8);}
.pw-item-btn.del:hover{background:rgba(239,68,68,.15);color:var(--clr-danger-light);}
.pw-item-rename{flex:1;background:rgba(255,255,255,.06);border:1px solid var(--clr-indigo-40);border-radius:5px;padding:2px 6px;font-family:'Inter',sans-serif;font-size:.8rem;color:var(--clr-text);outline:none;}
.pw-add-row{display:flex;gap:6px;}
.pw-add-inp{flex:1;background:var(--clr-border-faint);border:1px solid var(--clr-border);border-radius:8px;padding:7px 10px;font-family:'Inter',sans-serif;font-size:.78rem;color:var(--clr-text);outline:none;transition:border-color .15s;}
.pw-add-inp:focus{border-color:var(--clr-indigo-40);}
.pw-add-inp::placeholder{color:rgba(240,240,240,.2);}
.pw-add-btn{padding:7px 11px;border-radius:8px;border:none;background:var(--clr-indigo-20);color:var(--clr-indigo-light);font-family:'Inter',sans-serif;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap;}
.pw-add-btn:hover{background:var(--clr-indigo-30);}
.pw-divider{height:1px;background:var(--clr-border-faint);margin:10px 0 8px;}
.pw-leave-row{display:flex;gap:6px;}
.pw-leave-btn{flex:1;padding:6px;border-radius:7px;border:1px solid var(--clr-border);background:none;font-family:'Inter',sans-serif;font-size:.72rem;color:rgba(240,240,240,.4);cursor:pointer;transition:all .15s;text-align:center;}
.pw-leave-btn:hover{background:rgba(255,255,255,.05);color:rgba(240,240,240,.7);}
.pw-leave-btn.danger{border-color:rgba(239,68,68,.25);color:rgba(252,165,165,.6);}
.pw-leave-btn.danger:hover{background:rgba(239,68,68,.1);color:var(--clr-danger-light);}

/* ── Premium / Monetização ── */
.premium-modal-bg{position:fixed;inset:0;z-index:4000;background:rgba(0,0,0,.85);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s both;}
.premium-modal{background:#111;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:32px;width:min(420px,93vw);box-shadow:0 40px 100px rgba(0,0,0,.9);position:relative;}
.pm-close{position:absolute;top:14px;right:14px;background:none;border:none;color:rgba(240,240,240,.3);cursor:pointer;font-size:1.1rem;transition:color .15s;}.pm-close:hover{color:rgba(240,240,240,.8);}
.pm-badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,rgba(245,158,11,.2),rgba(251,191,36,.1));border:1px solid rgba(245,158,11,.35);border-radius:20px;padding:4px 12px;font-size:.68rem;font-weight:700;color:#fbbf24;letter-spacing:.5px;text-transform:uppercase;margin-bottom:16px;}
.pm-title{font-family:'Syne',sans-serif;font-size:1.8rem;font-weight:800;color:var(--clr-text);letter-spacing:-1px;line-height:1.1;margin-bottom:8px;}
.pm-title .hl{background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.pm-desc{font-size:.82rem;color:rgba(240,240,240,.45);line-height:1.7;margin-bottom:20px;}
.pm-features{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}
.pm-feat{display:flex;align-items:center;gap:10px;font-size:.8rem;color:rgba(240,240,240,.7);}
.pm-feat-icon{width:22px;height:22px;border-radius:6px;background:rgba(245,158,11,.15);border:1px solid rgba(245,158,11,.25);display:flex;align-items:center;justify-content:center;font-size:.75rem;flex-shrink:0;}
.pm-renovar-titulo{font-family:'Syne',sans-serif;font-size:.92rem;font-weight:700;color:var(--clr-text);margin-bottom:10px;}

/* Escolha de plano no modal Premium — mensal x anual */
.pm-planos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;}
.pm-plano{position:relative;background:var(--clr-border-faint);border:1.5px solid rgba(255,255,255,.1);border-radius:12px;
  padding:14px 12px 12px;cursor:pointer;text-align:center;transition:border-color .18s,background .18s;font-family:'Inter',sans-serif;}
.pm-plano:hover{background:rgba(255,255,255,.06);}
.pm-plano.ativo{border-color:rgba(99,102,241,.6);background:rgba(99,102,241,.12);}
.pm-plano b{display:block;font-family:'Syne',sans-serif;font-size:1.6rem;font-weight:800;color:var(--clr-text);letter-spacing:-1px;line-height:1.1;}
.pm-plano span{display:block;font-size:.68rem;color:rgba(240,240,240,.42);margin-top:3px;}
.pm-plano i{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#10b981,#059669);
  border-radius:20px;padding:2px 9px;font-size:.58rem;font-weight:700;font-style:normal;color:#fff;white-space:nowrap;}
.pm-plano.ativo span{color:rgba(240,240,240,.62);}

.pm-price{display:flex;align-items:baseline;gap:4px;margin-bottom:20px;}
.pm-price-val{font-family:'Syne',sans-serif;font-size:2.4rem;font-weight:800;color:var(--clr-text);}
.pm-price-period{font-size:.78rem;color:rgba(240,240,240,.35);}
.pm-pix-box{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px;text-align:center;margin-bottom:16px;}
.pm-qr{width:180px;height:180px;margin:0 auto 12px;background:#fff;border-radius:8px;padding:8px;display:flex;align-items:center;justify-content:center;}
.pm-qr canvas{width:164px!important;height:164px!important;}
.pm-pix-label{font-size:.72rem;color:rgba(240,240,240,.4);margin-bottom:8px;}
.pm-pix-key{font-family:'JetBrains Mono',monospace;font-size:.75rem;color:rgba(240,240,240,.7);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:6px 10px;cursor:pointer;transition:all .15s;word-break:break-all;}
.pm-pix-key:hover{background:rgba(255,255,255,.1);color:var(--clr-text);}
.pm-pix-copied{font-size:.65rem;color:var(--clr-success);margin-top:4px;display:none;}
.pm-note{font-size:.68rem;color:rgba(240,240,240,.25);text-align:center;line-height:1.6;margin-top:12px;}
.pm-limit-bar{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;margin-bottom:16px;}
.pm-limit-label{font-size:.72rem;color:rgba(240,240,240,.45);margin-bottom:6px;display:flex;justify-content:space-between;}
.pm-limit-label b{color:var(--clr-text);}
.pm-limit-track{height:6px;background:rgba(255,255,255,.08);border-radius:3px;overflow:hidden;}
.pm-limit-fill{height:100%;border-radius:3px;background:var(--clr-success);transition:width .4s;}
.pm-limit-fill.warn{background:var(--clr-warning);}
.pm-limit-fill.full{background:var(--clr-danger);}
.t-premium-badge{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,rgba(245,158,11,.2),rgba(251,191,36,.1));border:1px solid rgba(245,158,11,.3);border-radius:20px;padding:2px 8px;font-size:.62rem;font-weight:700;color:#fbbf24;cursor:pointer;transition:all .15s;margin-left:4px;}
.t-premium-badge:hover{background:rgba(245,158,11,.25);}

/* ═══════════════════════════════════════════════════
   CRM / RECORDS — Módulo financeiro
═══════════════════════════════════════════════════ */

/* ── View Toggle Button ── */
#btn-crm-view{background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);}
#btn-crm-view.active{background:rgba(20,184,166,.15);color:#2dd4bf;border-color:rgba(20,184,166,.35);}

/* ── Dashboard Summary Bar — cards soltos, minimalistas ── */
#crm-dashboard{display:none;background:transparent;border-bottom:none;padding:22px 22px 4px;flex-shrink:0;animation:fadeUp .2s ease both;}
#crm-dashboard.visible{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap;}
.crm-dash-card{display:flex;align-items:center;gap:12px;padding:15px 18px;border:1px solid var(--clr-border-soft);border-radius:14px;background:var(--clr-bg-card);flex:1;min-width:172px;transition:border-color .2s,transform .2s,background .2s;}
.crm-dash-card:hover{border-color:rgba(99,102,241,.25);transform:translateY(-1px);background:rgba(255,255,255,.03);}
.crm-dash-card-action{flex:0 0 auto;min-width:0;border:none;background:none;padding:0;}
.crm-dash-card-action:hover{transform:none;background:none;}
.crm-dash-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.92rem;flex-shrink:0;}
.crm-dash-label{font-size:.6rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:rgba(240,240,240,.32);margin-bottom:3px;}
.crm-dash-value{font-family:'JetBrains Mono',monospace;font-size:1.08rem;font-weight:700;color:var(--clr-text);letter-spacing:-.2px;}
.crm-dash-spacer{flex:1;min-width:4px;}
@media(max-width:900px){#crm-dashboard.visible{gap:10px;}.crm-dash-card{min-width:calc(50% - 5px);flex:1 1 calc(50% - 5px);}.crm-dash-spacer{display:none;}.crm-dash-card-action{flex:1 1 100%;}.crm-dash-card-action button{width:100%;justify-content:center;}}

/* ── Table View Container — clean, arejado ── */
#crm-board{display:none;flex:1;overflow:auto;padding:22px;}
#crm-board.visible{display:block;}
.crm-table-wrap{background:var(--clr-bg-card);border:1px solid var(--clr-border-soft);border-radius:16px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.18);}
.crm-table{width:100%;border-collapse:collapse;}
.crm-table thead tr{background:rgba(255,255,255,.025);border-bottom:1px solid var(--clr-border-soft);}
.crm-table th{padding:13px 18px;text-align:left;font-family:'Inter',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:rgba(240,240,240,.28);white-space:nowrap;}
.crm-table td{padding:15px 18px;border-bottom:1px solid var(--clr-border-faint);font-family:'Inter',sans-serif;font-size:.83rem;color:rgba(240,240,240,.82);vertical-align:middle;}
.crm-table tbody tr:last-child td{border-bottom:none;}
.crm-table tbody tr{transition:background .15s;cursor:default;}
.crm-table tbody tr:hover{background:rgba(255,255,255,.025);}
.crm-table tbody tr.overdue-row{border-left:2px solid var(--clr-danger);}
.crm-table tbody tr.overdue-row td:first-child{padding-left:16px;}

/* ── Record client name cell ── */
.crm-name-cell{display:flex;align-items:center;gap:10px;}
.crm-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0;font-family:'Inter',sans-serif;box-shadow:0 2px 8px rgba(99,102,241,.25);}
.crm-client-name{font-weight:600;color:var(--clr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px;}
.crm-client-desc{font-size:.68rem;color:rgba(240,240,240,.3);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px;}

/* ── Value cell ── */
.crm-value-cell{font-family:'JetBrains Mono',monospace;font-weight:600;color:var(--clr-text);font-size:.85rem;}

/* ── Status toggle pill ── */
.crm-status-pill{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:3px 10px 3px 8px;font-family:'Inter',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .2s;user-select:none;border:1px solid transparent;}
.crm-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;}
.crm-status-pill.paid{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3);color:#6ee7b7;}
.crm-status-pill.paid .crm-status-dot{background:var(--clr-success);}
.crm-status-pill.pending{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.25);color:#fcd34d;}
.crm-status-pill.pending .crm-status-dot{background:var(--clr-warning);}
.crm-status-pill.overdue{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:var(--clr-danger-light);animation:urgPulse 1.8s ease-in-out infinite;}
.crm-status-pill.overdue .crm-status-dot{background:var(--clr-danger);}
.crm-status-pill:hover{filter:brightness(1.2);}

/* ── Date cell ── */
.crm-date-inp{background:transparent;border:none;outline:none;font-family:'JetBrains Mono',monospace;font-size:.75rem;color:rgba(240,240,240,.55);cursor:pointer;color-scheme:dark;padding:4px 6px;border-radius:5px;transition:background .15s;}
.crm-date-inp:hover{background:rgba(255,255,255,.06);}
.crm-date-inp:focus{background:rgba(99,102,241,.1);color:var(--clr-text);}
.crm-date-overdue{color:var(--clr-danger-light) !important;}

/* ── Table actions ── */
.crm-row-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s;}
.crm-table tbody tr:hover .crm-row-actions{opacity:1;}
.crm-act-btn{width:24px;height:24px;border:none;background:none;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:rgba(240,240,240,.3);transition:all .12s;flex-shrink:0;}
.crm-act-btn:hover{background:rgba(255,255,255,.08);color:rgba(240,240,240,.8);}
.crm-act-btn.del:hover{background:rgba(239,68,68,.15);color:var(--clr-danger-light);}
.crm-act-btn svg{width:12px;height:12px;}

/* ── Value editor inline ── */
.crm-value-inp{background:var(--clr-border-faint);border:1px solid var(--clr-indigo-40);border-radius:6px;padding:4px 8px;font-family:'JetBrains Mono',monospace;font-size:.82rem;color:var(--clr-text);outline:none;width:110px;}

/* ── Add Record Button in table ── */
.crm-add-row{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:1px solid var(--clr-border-soft);cursor:pointer;transition:background .15s;}
.crm-add-row:hover{background:rgba(99,102,241,.05);}
.crm-add-row-icon{width:22px;height:22px;border-radius:6px;border:1.5px dashed rgba(99,102,241,.4);display:flex;align-items:center;justify-content:center;color:rgba(99,102,241,.6);font-size:.85rem;}
.crm-add-row-txt{font-size:.78rem;color:rgba(240,240,240,.3);}

/* ── Convert note badge ── */
.n-convert-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:20px;border:1px solid rgba(20,184,166,.3);background:rgba(20,184,166,.1);color:#2dd4bf;font-family:'Inter',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.4px;cursor:pointer;transition:all .18s;white-space:nowrap;}
.n-convert-btn:hover{background:rgba(20,184,166,.22);border-color:rgba(20,184,166,.5);}
.n-convert-btn.converted{background:rgba(20,184,166,.06);color:rgba(45,212,191,.5);cursor:default;border-color:rgba(20,184,166,.15);}

/* ── CRM Record Modal ── */
.crm-modal-row{display:flex;gap:10px;margin-bottom:14px;}
.crm-modal-col{flex:1;min-width:0;}
.crm-modal-lbl{font-size:.62rem;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:rgba(240,240,240,.35);margin-bottom:6px;}
.crm-modal-inp{width:100%;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.09);border-radius:8px;padding:9px 12px;font-family:'Inter',sans-serif;font-size:.85rem;color:var(--clr-text);outline:none;transition:border-color .18s;color-scheme:dark;}
.crm-modal-inp:focus{border-color:rgba(99,102,241,.45);box-shadow:0 0 0 3px rgba(99,102,241,.07);}
.crm-modal-inp::placeholder{color:rgba(240,240,240,.18);}
.crm-status-select{display:flex;gap:8px;margin-bottom:14px;}
.crm-status-opt{flex:1;padding:9px 8px;border-radius:9px;border:1.5px solid transparent;cursor:pointer;text-align:center;font-family:'Inter',sans-serif;font-size:.76rem;font-weight:600;transition:all .18s;user-select:none;}
.crm-status-opt.sel-paid{background:rgba(16,185,129,.15);border-color:rgba(16,185,129,.4);color:#6ee7b7;}
.crm-status-opt.sel-pending{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35);color:#fcd34d;}
.crm-status-opt:not(.sel-paid):not(.sel-pending){background:var(--clr-border-faint);border-color:rgba(255,255,255,.08);color:rgba(240,240,240,.4);}

/* ── Empty CRM state ── */
.crm-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:14px;text-align:center;}
.crm-empty-icon{font-size:2.2rem;opacity:.3;}
.crm-empty-title{font-family:'Syne',sans-serif;font-size:1rem;font-weight:700;color:rgba(240,240,240,.35);}
.crm-empty-desc{font-size:.76rem;color:rgba(240,240,240,.22);max-width:280px;line-height:1.6;}
.crm-empty-btn{display:inline-flex;align-items:center;gap:6px;background:rgba(99,102,241,.15);border:1px solid var(--clr-indigo-30);color:var(--clr-indigo-light);border-radius:9px;padding:9px 16px;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .18s;}
.crm-empty-btn:hover{background:rgba(99,102,241,.28);}

/* ── Converted note chip in note card ── */
.n-crm-chip{display:inline-flex;align-items:center;gap:3px;border-radius:20px;padding:2px 7px;font-size:.56rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.22);color:#2dd4bf;}

/* ── Note Type Picker ── */
.note-type-grid{display:flex;gap:10px;margin:16px 0 4px;}
.note-type-card{flex:1;padding:16px 14px;border-radius:12px;border:1.5px solid var(--clr-border);background:var(--clr-bg-card);cursor:pointer;transition:all .18s;position:relative;text-align:center;}
.note-type-card:hover{border-color:var(--clr-indigo-40);background:rgba(99,102,241,.05);transform:translateY(-2px);}
.note-type-icon{font-size:1.8rem;margin-bottom:8px;}
.note-type-title{font-size:.88rem;font-weight:700;color:var(--clr-text);margin-bottom:4px;}
.note-type-desc{font-size:.72rem;color:rgba(240,240,240,.38);line-height:1.5;}
.note-type-badge{display:inline-block;margin-top:8px;background:rgba(20,184,166,.15);border:1px solid rgba(20,184,166,.3);color:#2dd4bf;border-radius:20px;padding:1px 8px;font-size:.6rem;font-weight:700;letter-spacing:.5px;}
#pick-client:hover{border-color:rgba(20,184,166,.5);background:rgba(20,184,166,.04);}

/* ── Back button in modal ── */
.m-back-row{display:flex;align-items:center;gap:12px;margin-bottom:6px;}
.m-back-btn{background:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:.75rem;color:rgba(240,240,240,.35);padding:4px 8px;border-radius:6px;transition:all .15s;}
.m-back-btn:hover{background:rgba(255,255,255,.06);color:rgba(240,240,240,.7);}

/* ── Client Note Card — extra UI no board ── */
.note.is-client-note{width:280px;}
/* Client block is always visible, not hidden by expand-area */
.n-client-block{display:block !important;}
/* Reduce min textarea height for client notes so value block shows */
.note.is-client-note .n-text{min-height:18px !important;}
/* Make chip visible and styled */
.n-crm-chip{display:inline-flex !important;align-items:center;gap:3px;border-radius:20px;padding:2px 7px;font-size:.56rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.22);color:#2dd4bf;white-space:nowrap;}
/* Client block sub-elements */
.n-client-value{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 8px;gap:8px;}
.n-client-val-num{font-family:'JetBrains Mono',monospace;font-size:.95rem;font-weight:700;color:var(--clr-text);}
.n-client-val-num.paid{color:#6ee7b7;}
.n-client-val-num.overdue{color:var(--clr-danger-light);}
.n-client-status-toggle{display:inline-flex;align-items:center;gap:4px;border-radius:20px;padding:3px 9px 3px 7px;font-family:'Inter',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .2s;border:1px solid transparent;user-select:none;}
.n-client-status-toggle.paid{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3);color:#6ee7b7;}
.n-client-status-toggle.pending{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.25);color:#fcd34d;}
.n-client-status-toggle.overdue{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:var(--clr-danger-light);animation:urgPulse 1.8s ease-in-out infinite;}
.n-client-status-toggle:hover{filter:brightness(1.2);}
.n-client-due{padding:0 10px 8px;font-family:'JetBrains Mono',monospace;font-size:.6rem;color:rgba(240,240,240,.3);}
.n-client-due.overdue{color:var(--clr-danger-light);}
.n-client-val-num{font-family:'JetBrains Mono',monospace;font-size:.95rem;font-weight:700;color:var(--clr-text);}
.n-client-val-num.paid{color:#6ee7b7;}
.n-client-val-num.overdue{color:var(--clr-danger-light);}
.n-client-status-toggle{display:inline-flex;align-items:center;gap:4px;border-radius:20px;padding:3px 9px 3px 7px;font-family:'Inter',sans-serif;font-size:.6rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:all .2s;border:1px solid transparent;user-select:none;}
.n-client-status-toggle.paid{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3);color:#6ee7b7;}
.n-client-status-toggle.pending{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.25);color:#fcd34d;}
.n-client-status-toggle.overdue{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.3);color:var(--clr-danger-light);animation:urgPulse 1.8s ease-in-out infinite;}
.n-client-status-toggle:hover{filter:brightness(1.2);}
.n-client-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;}
.n-client-due{padding:0 10px 8px;font-family:'JetBrains Mono',monospace;font-size:.6rem;color:rgba(240,240,240,.3);}
.n-client-due.overdue{color:var(--clr-danger-light);}
/* Client block is always visible, not inside expand-area */
.n-client-block{display:block !important;}

/* ── CRM Table toolbar with clear button ── */
.crm-table-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
.crm-toolbar-title{font-family:'Syne',sans-serif;font-size:.95rem;font-weight:700;color:var(--clr-text);letter-spacing:-.2px;}
.crm-count-badge{font-family:'JetBrains Mono',monospace;font-size:.64rem;color:rgba(240,240,240,.35);background:var(--clr-border-faint);border-radius:20px;padding:2px 9px;}
.crm-table-toolbar-spacer{flex:1;}
.crm-clear-btn{display:flex;align-items:center;gap:5px;padding:7px 13px;border-radius:9px;border:1px solid rgba(239,68,68,.2);background:rgba(239,68,68,.06);color:var(--clr-danger-light);font-family:'Inter',sans-serif;font-size:.73rem;font-weight:600;cursor:pointer;transition:all .18s;}
.crm-clear-btn:hover{background:rgba(239,68,68,.16);border-color:rgba(239,68,68,.38);}
.crm-clear-btn svg{width:12px;height:12px;}

/* ── CRM charts (donut + barras mensais) ─────────────────────────────── */
#crm-charts-row{display:none;gap:12px;padding:0 22px 22px;flex-wrap:wrap;}
#crm-charts-row.visible{display:flex;}
.crm-chart-panel{background:var(--clr-bg-card);border:1px solid var(--clr-border-soft);border-radius:16px;padding:16px 18px;flex:1;min-width:220px;transition:border-color .2s;}
.crm-chart-panel:hover{border-color:rgba(255,255,255,.14);}
.crm-chart-panel-wide{flex:2;min-width:280px;}
.crm-chart-title{font-family:'Syne',sans-serif;font-size:.78rem;font-weight:700;color:var(--clr-text-dim);margin-bottom:12px;letter-spacing:-.1px;}
.crm-chart-empty{font-size:.75rem;color:var(--clr-text-faint);padding:20px 0;text-align:center;}
.crm-chart-donut-wrap{display:flex;align-items:center;gap:16px;}
.crm-donut-svg{flex-shrink:0;}
.crm-donut-legend{display:flex;flex-direction:column;gap:7px;}
.crm-donut-leg-item{font-size:.72rem;color:var(--clr-text-dim);display:flex;align-items:center;gap:6px;}
.crm-donut-leg-item b{color:var(--clr-text);font-family:'JetBrains Mono',monospace;font-weight:600;}
.crm-donut-leg-item .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.crm-chart-bars-host{min-height:96px;display:flex;align-items:flex-end;}
.crm-bars-wrap{display:flex;align-items:flex-end;gap:10px;width:100%;height:88px;padding-top:8px;}
.crm-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;height:100%;}
.crm-bar{width:100%;max-width:26px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--clr-indigo-light),var(--clr-indigo));transition:height .3s ease;}
.crm-bar-lbl{font-size:.62rem;color:var(--clr-text-faint);text-transform:capitalize;}

/* ── Alertas de atraso: pulso contínuo + flash na transição ──────────── */
@keyframes overduePulse{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.45);}50%{box-shadow:0 0 0 6px rgba(239,68,68,0);}}
@keyframes overdueFlash{0%{background:rgba(239,68,68,.55);}100%{background:transparent;}}
.note.overdue{animation:overduePulse 1.8s ease-in-out infinite;}
.crm-table tbody tr.overdue-row{animation:overduePulse 2.2s ease-in-out infinite;}
.crm-status-pill.overdue{animation:overduePulse 1.6s ease-in-out infinite;}
.note.overdue-flash,.crm-table tbody tr.overdue-flash{animation:overdueFlash 1.1s ease-out 2;}

/* ── Busca de clientes ── */
.crm-search-wrap{position:relative;display:flex;align-items:center;}
.crm-search-wrap svg{position:absolute;left:9px;width:13px;height:13px;color:rgba(240,240,240,.3);pointer-events:none;}
.crm-search-inp{background:var(--clr-bg-card);border:1px solid var(--clr-border-soft);border-radius:8px;padding:6px 10px 6px 28px;font-family:'Inter',sans-serif;font-size:.75rem;color:var(--clr-text);outline:none;width:160px;transition:width .2s ease,border-color .15s;}
.crm-search-inp:focus{width:200px;border-color:var(--clr-indigo-40);}
.crm-search-inp::placeholder{color:rgba(240,240,240,.25);}

/* ── Cabecalhos ordenaveis ── */
.crm-th-sort{cursor:pointer;user-select:none;transition:color .15s;}
.crm-th-sort:hover{color:var(--clr-text);}
.crm-sort-arrow{display:inline-block;width:9px;margin-left:3px;opacity:0;transition:opacity .15s;}
.crm-th-sort.sorted .crm-sort-arrow{opacity:1;}
.crm-th-sort.sorted .crm-sort-arrow::after{content:'▲';font-size:.55rem;}
.crm-th-sort.sorted.desc .crm-sort-arrow::after{content:'▼';}

/* ── Entrada animada das linhas ── */
@keyframes crmRowIn{from{opacity:0;transform:translateY(4px);}to{opacity:1;transform:translateY(0);}}
.crm-table tbody tr.crm-row-in{animation:crmRowIn .28s ease both;}

/* ── Celula de vencimento (clique para editar, igual ao valor) ── */
.crm-date-cell{font-family:'JetBrains Mono',monospace;font-size:.75rem;color:rgba(240,240,240,.65);cursor:pointer;padding:4px 6px;border-radius:5px;transition:background .15s;text-transform:capitalize;}
.crm-date-cell:hover{background:var(--clr-border-faint);}
.crm-date-cell.crm-date-overdue{color:var(--clr-danger-light);}
.crm-date-empty{color:rgba(240,240,240,.25);font-style:italic;}
.crm-date-inp-edit{background:var(--clr-border-faint);border:1px solid var(--clr-indigo-40);border-radius:6px;padding:4px 8px;font-family:'JetBrains Mono',monospace;font-size:.75rem;color:var(--clr-text);outline:none;color-scheme:dark;}

/* ── Graficos animados ── */
.crm-donut-svg circle{transition:stroke-dasharray .8s cubic-bezier(.16,1,.3,1);}
.crm-donut-visual{position:relative;flex-shrink:0;}
.crm-donut-center{position:absolute;left:0;top:0;width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;}
.crm-donut-center b{font-family:'JetBrains Mono',monospace;font-size:.72rem;color:var(--clr-text);}
.crm-donut-center span{font-size:.52rem;color:rgba(240,240,240,.35);text-transform:uppercase;letter-spacing:.5px;margin-top:1px;}
.crm-donut-legend .crm-donut-leg-item{opacity:0;animation:fadeUp .3s ease forwards;}
.crm-donut-legend .crm-donut-leg-item:nth-child(1){animation-delay:.15s;}
.crm-donut-legend .crm-donut-leg-item:nth-child(2){animation-delay:.25s;}
.crm-donut-legend .crm-donut-leg-item:nth-child(3){animation-delay:.35s;}

.crm-bar{transition:height .7s cubic-bezier(.16,1,.3,1);position:relative;cursor:default;}
.crm-bar.crm-bar-current{background:linear-gradient(180deg,#5eead4,var(--clr-teal));}
.crm-bar-col{position:relative;}
.crm-bar-tooltip{position:absolute;bottom:100%;left:50%;transform:translateX(-50%) translateY(-4px) scale(.9);background:#161616;border:1px solid var(--clr-border-strong);border-radius:6px;padding:3px 7px;font-family:'JetBrains Mono',monospace;font-size:.62rem;color:var(--clr-text);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s,transform .12s;margin-bottom:4px;z-index:5;}
.crm-bar-col:hover .crm-bar-tooltip{opacity:1;transform:translateX(-50%) translateY(0) scale(1);}
.crm-bar-col:hover .crm-bar{filter:brightness(1.15);}
.crm-bar-lbl.crm-bar-lbl-current{color:var(--clr-teal);font-weight:700;}

/* ── Checklist da nota ── */
.n-cl-badge{display:none;align-items:center;font-family:'JetBrains Mono',monospace;font-size:.6rem;font-weight:600;color:rgba(240,240,240,.4);background:rgba(255,255,255,.06);border-radius:20px;padding:2px 7px;}
.n-cl-badge.complete{color:#6ee7b7;background:rgba(16,185,129,.14);}
.n-checklist-wrap{padding:8px 12px 10px;}
.n-checklist-head{display:flex;align-items:center;justify-content:space-between;font-size:.6rem;font-weight:600;letter-spacing:1.1px;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:6px;}
.n-checklist-add{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);width:16px;height:16px;border-radius:5px;font-size:.72rem;line-height:1;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;}
.n-checklist-add:hover{background:var(--clr-indigo-20);border-color:var(--clr-indigo-40);color:var(--clr-indigo-light);}
.n-checklist-list{display:flex;flex-direction:column;gap:2px;}
.n-cl-item{display:flex;align-items:center;gap:7px;padding:3px 4px;border-radius:6px;transition:background .12s;}
.n-cl-item:hover{background:rgba(255,255,255,.04);}
.n-cl-item:hover .n-cl-del{opacity:1;}
.n-cl-check{width:13px;height:13px;flex-shrink:0;accent-color:var(--clr-indigo);cursor:pointer;}
.n-cl-text{flex:1;min-width:0;background:transparent;border:none;outline:none;font-family:'Inter',sans-serif;font-size:.76rem;color:rgba(255,255,255,.75);padding:2px 0;}
.n-cl-text::placeholder{color:rgba(255,255,255,.2);}
.n-cl-item.done .n-cl-text{color:rgba(255,255,255,.3);text-decoration:line-through;}
.n-cl-del{background:none;border:none;color:rgba(255,255,255,.25);width:16px;height:16px;flex-shrink:0;cursor:pointer;opacity:0;transition:opacity .12s,color .12s;display:flex;align-items:center;justify-content:center;}
.n-cl-del:hover{color:var(--clr-danger-light);}
.n-cl-del svg{width:10px;height:10px;}

/* ── Documentos anexados ao cliente (modal CRM) ── */
.crm-doc-list{display:flex;flex-direction:column;gap:5px;margin-bottom:8px;}
.crm-doc-item{display:flex;align-items:center;gap:8px;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.08);border-radius:7px;padding:6px 9px;}
.crm-doc-name{flex:1;min-width:0;font-size:.76rem;color:var(--clr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.crm-doc-size{font-family:'JetBrains Mono',monospace;font-size:.62rem;color:rgba(240,240,240,.3);flex-shrink:0;}
.crm-doc-del{background:none;border:none;color:rgba(255,255,255,.3);cursor:pointer;flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;}
.crm-doc-del:hover{color:var(--clr-danger-light);}
.crm-doc-del svg{width:10px;height:10px;}
.crm-doc-add{display:block;width:100%;padding:9px;background:var(--clr-border-soft);border:1px dashed rgba(255,255,255,.15);border-radius:8px;font-family:'Inter',sans-serif;font-size:.75rem;color:rgba(240,240,240,.5);text-align:center;cursor:pointer;margin-bottom:14px;transition:all .15s;}
.crm-doc-add:hover{border-color:var(--clr-indigo-40);color:var(--clr-indigo-light);}
.crm-doc-add input{display:none;}
.crm-doc-count{font-size:.6rem;color:rgba(240,240,240,.35);font-weight:500;cursor:pointer;}
.crm-doc-count:hover{color:var(--clr-indigo-light);}

/* ── Visualizador de documento do cliente (imagem/PDF) ── */
.crm-doc-viewer-bg{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(3px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:30px;}
.crm-doc-viewer{width:min(880px,100%);height:min(88vh,900px);background:#141414;border:1px solid var(--clr-border-strong);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6);}
.crm-doc-viewer-head{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--clr-border);flex-shrink:0;}
.crm-doc-viewer-name{flex:1;min-width:0;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:600;color:var(--clr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.crm-doc-viewer-dl{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;background:var(--clr-border-faint);color:var(--clr-text);text-decoration:none;font-size:.9rem;flex-shrink:0;}
.crm-doc-viewer-dl:hover{background:var(--clr-indigo-20);}
.crm-doc-viewer-close{background:var(--clr-border-faint);border:none;color:var(--clr-text);width:26px;height:26px;border-radius:7px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.crm-doc-viewer-close svg{width:12px;height:12px;}
.crm-doc-viewer-close:hover{background:rgba(239,68,68,.2);color:var(--clr-danger-light);}
.crm-doc-viewer-body{flex:1;display:flex;align-items:center;justify-content:center;overflow:auto;padding:16px;}
.crm-doc-viewer-body-pdf{flex-direction:column;align-items:center;overflow-y:auto;gap:10px;padding:14px;}
.crm-doc-viewer-loading{color:rgba(240,240,240,.4);font-size:.8rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;}
.crm-doc-viewer-loading a{color:var(--clr-indigo-light);}

/* ── Videochamada ── */
.chat-call-btn{background:none;border:none;cursor:pointer;color:rgba(45,212,191,.7);font-size:.85rem;padding:0 3px;transition:color .15s;flex-shrink:0;}
.chat-call-btn:hover{color:var(--clr-teal);}
@keyframes callInvitePulse{0%,100%{background:rgba(20,184,166,.12);}50%{background:rgba(20,184,166,.28);}}
.chat-call-invite{display:none;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;font-family:'Inter',sans-serif;font-size:.72rem;color:#5eead4;animation:callInvitePulse 1.6s ease-in-out infinite;flex-shrink:0;}
.chat-call-invite .chat-call-join{background:var(--clr-teal);border:none;color:#04201c;font-weight:700;font-size:.68rem;padding:3px 10px;border-radius:20px;cursor:pointer;flex-shrink:0;}

/* Janela flutuante, arrastável e redimensionável — não toma a tela toda,
   pra dar pra ver/usar o workspace por trás dela ao mesmo tempo. */
#call-overlay{position:fixed;left:auto;top:auto;right:20px;bottom:20px;width:340px;height:260px;min-width:220px;min-height:160px;max-width:90vw;max-height:80vh;background:rgba(12,12,12,.97);border:1px solid var(--clr-border-strong);border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.6);z-index:3000;display:flex;flex-direction:column;overflow:hidden;resize:both;}
.call-header{display:flex;align-items:center;justify-content:center;padding:7px 10px;flex-shrink:0;cursor:grab;background:var(--clr-bg-card);border-bottom:1px solid var(--clr-border);user-select:none;}
.call-header:active{cursor:grabbing;}
.call-title{font-family:'Syne',sans-serif;font-size:.74rem;font-weight:700;color:var(--clr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* Mosaico: por padrao todo mundo (camera ou tela compartilhada) fica do
   mesmo tamanho de miniatura — nunca uma pessoa/tela toma a janela toda
   sozinha. Expandir uma tela especifica e escolha do usuario (botao ⤢),
   nunca automatico. */
.call-grid{flex:1;display:flex;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:6px;overflow:auto;padding:6px;min-height:0;}
.call-tile{position:relative;background:#000;border-radius:8px;overflow:hidden;border:1px solid var(--clr-border-strong);flex:0 0 auto;width:min(150px,100%);height:112px;transition:width .25s cubic-bezier(.16,1,.3,1),height .25s cubic-bezier(.16,1,.3,1);}
.call-grid.has-focus .call-tile{width:84px;height:60px;order:1;}
.call-grid.has-focus .call-tile.focused{order:-1;flex:1 1 100%;width:100%;height:min(65%,320px);}
.call-tile video{width:100%;height:100%;object-fit:cover;display:block;}
.call-tile-label{position:absolute;left:6px;bottom:4px;background:rgba(0,0,0,.55);color:#fff;font-size:.58rem;font-family:'Inter',sans-serif;padding:2px 7px;border-radius:20px;}
.call-tile-expand{position:absolute;top:5px;right:5px;width:20px;height:20px;border-radius:5px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s,background .15s;font-size:.6rem;padding:0;}
.call-tile:hover .call-tile-expand{opacity:1;}
.call-tile.focused .call-tile-expand{opacity:1;background:rgba(99,102,241,.5);}
.call-controls{display:flex;align-items:center;justify-content:center;gap:8px;padding:7px;flex-shrink:0;border-top:1px solid var(--clr-border);}
.call-ctrl-btn{width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:var(--clr-text);font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0;}
.call-ctrl-btn:hover{background:rgba(255,255,255,.16);}
.call-ctrl-btn.off{background:rgba(239,68,68,.25);border-color:rgba(239,68,68,.4);}
.call-ctrl-btn.active{background:rgba(99,102,241,.3);border-color:rgba(99,102,241,.5);color:#c7d2fe;}
.call-ctrl-btn.leave{background:var(--clr-danger);border-color:var(--clr-danger);transform:rotate(135deg);}
.call-ctrl-btn.leave:hover{background:#dc2626;}

/* ── Painel de próximos eventos ── */
#events-panel{position:fixed;top:62px;left:50%;transform:translateX(-50%);z-index:1200;width:min(420px,94vw);max-height:76vh;overflow:auto;background:#111;border:1px solid var(--clr-border-strong);border-radius:14px;padding:14px 16px;box-shadow:0 20px 60px rgba(0,0,0,.8);display:none;animation:fadeUp .18s cubic-bezier(.16,1,.3,1) both;}
#events-panel.open{display:block;}
.events-panel-title{font-family:'Syne',sans-serif;font-size:.86rem;font-weight:700;color:var(--clr-text);display:flex;flex-direction:column;gap:2px;margin-bottom:10px;}
.events-panel-sub{font-family:'Inter',sans-serif;font-size:.66rem;font-weight:400;color:rgba(240,240,240,.35);}
.events-empty{text-align:center;padding:24px 10px;font-size:.78rem;color:rgba(240,240,240,.35);}
.events-item{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:8px;cursor:pointer;transition:background .12s;}
.events-item:hover{background:rgba(255,255,255,.05);}
.events-item-icon{font-size:1.05rem;flex-shrink:0;}
.events-item-body{flex:1;min-width:0;}
.events-item-title{font-size:.8rem;font-weight:600;color:var(--clr-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.events-item-sub{font-family:'JetBrains Mono',monospace;font-size:.65rem;color:rgba(240,240,240,.35);margin-top:1px;}

/* ── Abas do painel pessoal (Eventos / Orçamento / Despesas / Tarefas) ── */
.events-tabs{display:flex;gap:4px;margin-bottom:12px;background:var(--clr-border-faint);border-radius:9px;padding:3px;}
.events-tab{flex:1;background:none;border:none;padding:6px 4px;border-radius:7px;font-family:'Inter',sans-serif;font-size:.68rem;font-weight:600;color:rgba(240,240,240,.4);cursor:pointer;transition:all .15s;white-space:nowrap;}
.events-tab.active{background:var(--clr-indigo-20);color:var(--clr-indigo-light);}
.events-tab-body{display:none;}
.events-tab-body.active{display:block;}

.events-ics-upload{display:block;text-align:center;padding:8px;margin-bottom:10px;background:var(--clr-border-faint);border:1px dashed rgba(255,255,255,.15);border-radius:8px;font-size:.72rem;color:rgba(240,240,240,.5);cursor:pointer;transition:all .15s;}
.events-ics-upload:hover{border-color:var(--clr-indigo-40);color:var(--clr-indigo-light);}
.events-ics-upload input{display:none;}

.budget-set-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;font-size:.78rem;color:rgba(240,240,240,.6);}
.budget-set-row input{width:110px;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.1);border-radius:7px;padding:6px 9px;font-family:'JetBrains Mono',monospace;font-size:.78rem;color:var(--clr-text);outline:none;text-align:right;}
.budget-summary{display:flex;flex-direction:column;gap:8px;}
.budget-row{display:flex;justify-content:space-between;font-size:.76rem;color:rgba(240,240,240,.6);}
.budget-row b{color:var(--clr-text);font-family:'JetBrains Mono',monospace;}
.budget-bar-track{height:8px;background:var(--clr-border-faint);border-radius:20px;overflow:hidden;margin:4px 0;}
.budget-bar-fill{height:100%;background:linear-gradient(90deg,var(--clr-indigo),var(--clr-teal));border-radius:20px;transition:width .4s ease;}
.budget-bar-fill.over{background:linear-gradient(90deg,#f59e0b,var(--clr-danger));}

.expense-add-row{display:flex;gap:6px;margin-bottom:12px;}
.expense-add-row input[type=text]{flex:1;min-width:0;}
.expense-add-row input[type=number]{width:80px;}
.expense-add-row input{background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.1);border-radius:7px;padding:7px 9px;font-family:'Inter',sans-serif;font-size:.76rem;color:var(--clr-text);outline:none;}
.expense-add-row button{width:32px;background:var(--clr-indigo-20);border:1px solid var(--clr-indigo-30);border-radius:7px;color:var(--clr-indigo-light);font-size:1rem;cursor:pointer;flex-shrink:0;}
.expense-item{display:flex;align-items:center;gap:8px;padding:7px 4px;border-bottom:1px solid var(--clr-border-faint);font-size:.78rem;}
.expense-item:last-child{border-bottom:none;}
.expense-item-desc{flex:1;min-width:0;color:rgba(240,240,240,.75);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.expense-item-val{font-family:'JetBrains Mono',monospace;color:var(--clr-danger-light);font-weight:600;flex-shrink:0;}
.expense-item-del{background:none;border:none;color:rgba(240,240,240,.25);cursor:pointer;flex-shrink:0;width:16px;height:16px;}
.expense-item-del:hover{color:var(--clr-danger-light);}
.expenses-empty,.mtasks-empty{text-align:center;padding:16px 0;font-size:.75rem;color:rgba(240,240,240,.3);}

.events-mtask-add{width:100%;margin-top:8px;padding:8px;background:var(--clr-border-faint);border:1px dashed rgba(255,255,255,.15);border-radius:8px;font-size:.74rem;color:rgba(240,240,240,.5);cursor:pointer;transition:all .15s;}
.events-mtask-add:hover{border-color:var(--clr-indigo-40);color:var(--clr-indigo-light);}
.mtask-item{display:flex;align-items:center;gap:8px;padding:5px 2px;}
.mtask-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--clr-indigo);flex-shrink:0;}
.mtask-item input[type=text]{flex:1;min-width:0;background:transparent;border:none;outline:none;font-family:'Inter',sans-serif;font-size:.78rem;color:rgba(240,240,240,.8);}
.mtask-item.done input[type=text]{color:rgba(240,240,240,.3);text-decoration:line-through;}
.mtask-item-del{background:none;border:none;color:rgba(240,240,240,.2);cursor:pointer;flex-shrink:0;width:16px;height:16px;}
.mtask-item-del:hover{color:var(--clr-danger-light);}
.mtask-item-day{width:38px !important;flex:none !important;text-align:center;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.1);border-radius:5px;font-family:'JetBrains Mono',monospace;font-size:.68rem;color:rgba(240,240,240,.5) !important;padding:3px 2px !important;}
.mtask-item.mtask-late{animation:overduePulse 1.8s ease-in-out infinite;}
.mtask-item.mtask-late .mtask-item-day{color:var(--clr-danger-light) !important;border-color:rgba(239,68,68,.4);}

/* ── Importar calendário: .ics + Outlook ── */
.events-import-row{display:flex;gap:6px;margin-bottom:10px;}
.events-import-row .events-ics-upload{flex:1;margin-bottom:0;}
.events-outlook-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;background:rgba(0,120,212,.1);border:1px solid rgba(0,120,212,.3);border-radius:8px;font-family:'Inter',sans-serif;font-size:.72rem;color:#5ea6e6;cursor:pointer;transition:all .15s;}
.events-outlook-btn:hover{background:rgba(0,120,212,.2);}
.events-outlook-btn.connected{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.3);color:#6ee7b7;}

/* ── Orçamento por categoria ── */
.budget-cat-title{font-size:.6rem;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:rgba(240,240,240,.25);margin:14px 0 8px;}
.budget-cat-row{display:flex;align-items:center;gap:8px;font-size:.74rem;color:rgba(240,240,240,.6);margin-bottom:7px;}
.budget-cat-icon{flex-shrink:0;}
.budget-cat-label{width:82px;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.budget-cat-track{flex:1;height:6px;background:var(--clr-border-faint);border-radius:20px;overflow:hidden;}
.budget-cat-fill{height:100%;border-radius:20px;}
.budget-cat-val{font-family:'JetBrains Mono',monospace;font-size:.68rem;color:rgba(240,240,240,.4);flex-shrink:0;width:62px;text-align:right;}

/* ── Navegador de mês + gráfico de categorias das despesas ── */
.expense-month-nav{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px;}
.expense-month-nav button{background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.1);color:rgba(240,240,240,.6);width:24px;height:24px;border-radius:6px;cursor:pointer;}
.expense-month-nav button:hover{background:rgba(255,255,255,.1);}
.expense-month-nav span{font-family:'JetBrains Mono',monospace;font-size:.76rem;color:var(--clr-text);text-transform:capitalize;min-width:110px;text-align:center;}
.expense-chart-wrap{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:12px;min-height:80px;}
.expense-add-row2{display:flex;gap:6px;margin-bottom:12px;}
.expense-add-row2 select{flex:1;background:var(--clr-border-faint);border:1px solid rgba(255,255,255,.1);border-radius:7px;padding:7px 9px;font-family:'Inter',sans-serif;font-size:.74rem;color:var(--clr-text);outline:none;}
.expense-add-row2 button{padding:7px 14px;background:var(--clr-indigo-20);border:1px solid var(--clr-indigo-30);border-radius:7px;color:var(--clr-indigo-light);font-size:.74rem;font-weight:600;cursor:pointer;white-space:nowrap;}
.expense-item-cat{font-size:.85rem;flex-shrink:0;}
#btn-events{position:relative;}

/* ── Nav fixa da landing page (estilo notion.com) ── */
.lp-nav{position:sticky;top:0;z-index:500;display:flex;align-items:center;gap:28px;padding:14px 32px;background:rgba(10,10,10,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0;}
.lp-nav-logo{display:flex;align-items:center;gap:8px;font-family:'Syne',sans-serif;font-size:1.05rem;font-weight:800;color:var(--clr-text);letter-spacing:-.5px;}
.lp-nav-links{display:flex;gap:22px;flex:1;}
.lp-nav-links a{font-family:'Inter',sans-serif;font-size:.8rem;font-weight:500;color:rgba(240,240,240,.55);text-decoration:none;transition:color .15s;}
.lp-nav-links a:hover,.lp-nav-links a.active{color:var(--clr-text);}
.lp-nav-cta{background:var(--clr-text);color:#0a0a0a;border:none;border-radius:8px;padding:8px 18px;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:700;cursor:pointer;transition:opacity .15s;}
.lp-nav-cta:hover{opacity:.85;}
@media(max-width:768px){.lp-nav-links{display:none;}.lp-nav{padding:12px 18px;}}

/* ── Scroll reveal das seções da landing (fade + slide sutil) ── */
.lp-reveal{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);}
.lp-reveal.in-view{opacity:1;transform:translateY(0);}

/* ── Bento grid (seção "O que é o MyDesk") ── */
.lp-bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(90px,auto);gap:14px;}
.lp-bento-item{background:var(--clr-bg-card);border:1px solid var(--clr-border);border-radius:16px;padding:22px;transition:border-color .25s,transform .25s;}
.lp-bento-item:hover{border-color:rgba(99,102,241,.28);transform:translateY(-3px);}
.lp-bento-visual{grid-column:span 4;grid-row:span 2;padding:0;overflow:hidden;}
.lp-bento-feat{grid-column:span 2;}
.lp-bento-stat{grid-column:span 2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;}
.lp-bento-wide{grid-column:span 6;display:flex;align-items:center;gap:18px;}
.lp-bento-wide .lp-feat-icon{flex-shrink:0;}
@media(max-width:900px){.lp-bento{grid-template-columns:repeat(2,1fr);}.lp-bento-visual{grid-column:span 2;}.lp-bento-feat,.lp-bento-stat,.lp-bento-wide{grid-column:span 2;}.lp-bento-wide{flex-direction:column;text-align:center;}}
@media(max-width:560px){.lp-bento{grid-template-columns:1fr;}.lp-bento-visual,.lp-bento-feat,.lp-bento-stat,.lp-bento-wide{grid-column:span 1;}}

/* ── Badge de anúncio no hero ── */
.lp-announce{display:inline-flex;align-items:center;gap:6px;background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.28);border-radius:20px;padding:5px 14px;font-family:'Inter',sans-serif;font-size:.68rem;font-weight:600;color:var(--clr-indigo-light);margin-bottom:14px;width:fit-content;animation:announcePulse 2.4s ease-in-out infinite;}
@keyframes announcePulse{0%,100%{box-shadow:0 0 0 0 rgba(99,102,241,.25);}50%{box-shadow:0 0 0 5px rgba(99,102,241,0);}}

/* ── Coleção de wallpapers prontos ────────────────────────────────────── */
.wp-gallery{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.wp-gallery-swatch{width:52px;height:36px;border-radius:7px;cursor:pointer;border:1.5px solid rgba(255,255,255,.08);transition:all .15s;background-size:cover;background-position:center;flex-shrink:0;}
.wp-gallery-swatch:hover{border-color:var(--clr-indigo-40);transform:scale(1.06);}
.wp-gallery-swatch.active{border-color:var(--clr-indigo);box-shadow:0 0 0 2px rgba(99,102,241,.35);}
/* O gradiente continua como fundo de reserva: é o que aparece no instante
   antes de a miniatura carregar, e se ela faltar. */
.wp-gallery-swatch.is-video{background-color:#12121e;background-image:linear-gradient(135deg,#1a1a2e,#0d0d0d);position:relative;}
/* O ▶ virou selo de canto para não brigar com o cadeado do outro canto. */
.wp-gallery-play{position:absolute;left:2px;top:1px;font-size:.55rem;line-height:1;
  padding:2px 3px;border-radius:5px;color:#fff;background:rgba(0,0,0,.55);
  text-shadow:0 1px 2px rgba(0,0,0,.6);}

/* ══════════════════════════════════════════════════════════════════════
   LANDING — "CLAUSE" MARKETING HERO + SEÇÕES INSPIRADAS NO TEMPLATE
   (badge flutuante, headline com marcador, trust bar, dashboard split,
   integrações, testemunho) — integradas à identidade índigo/teal do MyDesk.
═══════════════════════════════════════════════════════════════════════ */
.lp-hero2{position:relative;padding:96px 8vw 64px;text-align:center;max-width:920px;margin:0 auto;overflow:visible;animation:heroIn2 .8s cubic-bezier(.16,1,.3,1) both;}
@keyframes heroIn2{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.lp-float-avatar{position:absolute;width:56px;height:56px;border-radius:50%;background:var(--clr-bg-card);border:1px solid var(--clr-border-strong);display:flex;align-items:center;justify-content:center;font-size:1.4rem;box-shadow:0 12px 30px rgba(0,0,0,.5);animation:floatBadge 4.6s ease-in-out infinite;z-index:1;}
.lp-float-avatar.fa1{top:6px;left:1%;animation-delay:-.4s;}
.lp-float-avatar.fa2{top:64px;right:3%;animation-delay:-1.6s;}
.lp-float-avatar.fa3{bottom:56px;left:7%;animation-delay:-2.7s;}
.lp-float-avatar.fa4{bottom:-6px;right:11%;animation-delay:-3.6s;}
.lp-float-arrow{position:absolute;bottom:-3px;right:-3px;width:17px;height:17px;border-radius:50%;background:var(--clr-success);border:2px solid #0a0a0a;display:flex;align-items:center;justify-content:center;}
.lp-float-arrow::before{content:'↗';font-size:.55rem;color:#fff;font-weight:700;}
@media(max-width:900px){.lp-float-avatar{display:none;}}
.lp-hero2-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.28);border-radius:20px;padding:6px 16px;font-size:.7rem;font-weight:600;color:var(--clr-indigo-light);margin-bottom:24px;animation:announcePulse 2.4s ease-in-out infinite;}
.lp-hero2-title{font-family:'Syne',sans-serif;font-size:clamp(2.2rem,5.5vw,3.5rem);font-weight:800;letter-spacing:-2px;line-height:1.16;color:var(--clr-text);margin-bottom:20px;}
.lp-hero2-title .hl-mark{position:relative;white-space:nowrap;color:var(--clr-text);}
.lp-hero2-title .hl-mark::after{content:'';position:absolute;left:-3%;right:-3%;bottom:3px;height:.3em;background:rgba(245,158,11,.32);z-index:-1;border-radius:2px;}
.lp-hero2-sub{font-size:1rem;color:rgba(240,240,240,.5);line-height:1.8;max-width:560px;margin:0 auto 30px;}
.lp-hero2-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:44px;}
.lp-hero2-btn-fill{background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));border:none;border-radius:10px;padding:13px 26px;font-family:'Inter',sans-serif;font-size:.88rem;font-weight:600;color:#fff;cursor:pointer;box-shadow:0 8px 24px rgba(99,102,241,.35);transition:all .2s;}
.lp-hero2-btn-fill:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 12px 32px rgba(99,102,241,.45);}
.lp-hero2-btn-outline{background:none;border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:13px 26px;font-family:'Inter',sans-serif;font-size:.88rem;font-weight:600;color:var(--clr-text);cursor:pointer;transition:all .2s;}
.lp-hero2-btn-outline:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.3);}
.lp-hero2-trust{display:flex;flex-direction:column;align-items:center;gap:14px;}
.lp-hero2-trust-txt{font-size:.66rem;letter-spacing:.6px;color:rgba(240,240,240,.28);text-transform:uppercase;font-weight:600;}
.lp-trust-logos{display:flex;gap:26px;flex-wrap:wrap;justify-content:center;}
.lp-trust-logo{font-size:.82rem;font-weight:600;color:rgba(240,240,240,.35);display:flex;align-items:center;gap:6px;font-family:'Inter',sans-serif;transition:color .2s;}
.lp-trust-logo:hover{color:rgba(240,240,240,.72);}
@media(max-width:768px){.lp-hero2{padding:64px 22px 40px;}.lp-hero2-title{font-size:1.9rem;letter-spacing:-1px;}.lp-hero2-sub{font-size:.87rem;}.lp-trust-logos{gap:14px 20px;}}

/* ── Hero real (dentro de .auth-left) — badges flutuantes + headline com marcador ── */
.auth-hero-content{position:relative;z-index:2;animation:heroIn2 .8s cubic-bezier(.16,1,.3,1) both;}
.auth-hero-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(99,102,241,.1);border:1px solid rgba(99,102,241,.28);border-radius:20px;padding:5px 14px;font-family:'Inter',sans-serif;font-size:.68rem;font-weight:600;color:var(--clr-indigo-light);margin-bottom:18px;width:fit-content;animation:announcePulse 2.4s ease-in-out infinite;}
.auth-hero-title{font-family:'Syne',sans-serif;font-size:2.15rem;font-weight:800;letter-spacing:-1.3px;line-height:1.16;color:var(--clr-text);margin-bottom:14px;}
.auth-hero-title .hl-mark{position:relative;white-space:nowrap;color:var(--clr-text);}
.auth-hero-title .hl-mark::after{content:'';position:absolute;left:-3%;right:-3%;bottom:2px;height:.3em;background:rgba(245,158,11,.32);z-index:-1;border-radius:2px;}
.auth-hero-sub{font-size:.86rem;color:rgba(240,240,240,.45);line-height:1.7;max-width:380px;margin-bottom:26px;}
.auth-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px;}
.auth-hero-ctas .lp-hero2-btn-fill,.auth-hero-ctas .lp-hero2-btn-outline{padding:11px 20px;font-size:.82rem;}
.auth-hero-trust{display:flex;flex-direction:column;gap:10px;}
.auth-hero-trust-txt{font-size:.62rem;letter-spacing:.5px;color:rgba(240,240,240,.25);text-transform:uppercase;font-weight:600;}
.auth-hero-trust .lp-trust-logos{gap:16px;justify-content:flex-start;}
.auth-hero-trust .lp-trust-logo{font-size:.74rem;}
@media(max-width:768px){.auth-hero-title{font-size:1.6rem;}.auth-hero-sub{max-width:100%;}}

/* ── Modal de conexão com Outlook ── */
.outlook-modal-brand{display:flex;align-items:center;gap:8px;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:600;color:rgba(240,240,240,.5);margin-bottom:16px;}
.outlook-modal-help{font-size:.72rem;color:rgba(240,240,240,.32);line-height:1.6;margin:-4px 0 18px;}
.outlook-modal-help a{color:#a5b4fc;text-decoration:underline;text-underline-offset:2px;}

/* ── Dashboard dinâmico + notificações + tarefas (bloco estilo "features") ── */
.lp-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.lp-dash-card{background:var(--clr-bg-card);border:1px solid var(--clr-border);border-radius:16px;padding:26px;transition:border-color .25s,transform .25s;}
.lp-dash-card:hover{border-color:rgba(99,102,241,.25);transform:translateY(-2px);}
.lp-dash-big{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:0;overflow:hidden;padding:0!important;}
.lp-dash-text{flex:1;padding:30px;display:flex;flex-direction:column;justify-content:center;min-width:240px;}
.lp-dash-visual{flex:1;background:#0a0a0a;padding:22px;display:flex;flex-direction:column;gap:16px;min-width:260px;border-left:1px solid var(--clr-border-soft);}
.lp-dash-visual-hdr{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;color:rgba(240,240,240,.4);}
.lp-dash-avatars span{display:inline-flex;width:20px;height:20px;border-radius:50%;background:var(--clr-border-strong);align-items:center;justify-content:center;font-size:.6rem;margin-left:-6px;border:2px solid #0a0a0a;}
.lp-chart-bars{flex:1;display:flex;align-items:flex-end;gap:8px;min-height:120px;}
.lp-chart-bar{flex:1;height:6%;background:rgba(255,255,255,.08);border-radius:4px 4px 0 0;transition:height 1.1s cubic-bezier(.16,1,.3,1);}
.lp-chart-bar.active{background:linear-gradient(180deg,#818cf8,var(--clr-indigo));}
.lp-reveal.in-view .lp-chart-bar{height:var(--h);}
.lp-dash-cta{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:9px;padding:10px 18px;font-family:'Inter',sans-serif;font-size:.8rem;font-weight:600;color:var(--clr-text);cursor:pointer;width:fit-content;transition:all .18s;}
.lp-dash-cta:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);}
.lp-toggle-list,.lp-activity-list{display:flex;flex-direction:column;gap:10px;}
.lp-toggle-row{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:rgba(240,240,240,.6);padding:8px 0;border-bottom:1px solid var(--clr-border-faint);}
.lp-toggle-row:last-child{border-bottom:none;}
.lp-toggle-mini{width:32px;height:18px;border-radius:20px;background:rgba(255,255,255,.1);position:relative;flex-shrink:0;}
.lp-toggle-mini::before{content:'';position:absolute;width:12px;height:12px;left:3px;top:3px;background:#fff;border-radius:50%;opacity:.5;transition:transform .2s;}
.lp-toggle-mini.on{background:var(--clr-indigo);}
.lp-toggle-mini.on::before{transform:translateX(14px);opacity:1;}
.lp-activity-item{display:flex;gap:10px;align-items:flex-start;font-size:.76rem;color:rgba(240,240,240,.6);line-height:1.5;}
.lp-activity-av{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--clr-indigo),var(--clr-indigo-dark));display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;color:#fff;flex-shrink:0;}
.lp-activity-time{display:block;font-size:.64rem;color:rgba(240,240,240,.25);margin-top:2px;}
@media(max-width:900px){.lp-dash-big{flex-direction:column;}.lp-dash-visual{border-left:none;border-top:1px solid var(--clr-border-soft);}}
@media(max-width:768px){.lp-dash-grid{grid-template-columns:1fr;}}

/* ── Faixa escura de integrações ── */
.lp-integrations{background:linear-gradient(180deg,#0c0d1a,#08090f);padding:90px 8vw;text-align:center;border-top:1px solid var(--clr-border-soft);border-bottom:1px solid var(--clr-border-soft);position:relative;overflow:hidden;}
.lp-integrations::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.05) 1px,transparent 0);background-size:26px 26px;pointer-events:none;}
.lp-int-title{font-family:'Syne',sans-serif;font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:800;color:var(--clr-text);letter-spacing:-1.2px;margin:14px 0;position:relative;}
.lp-int-sub{font-size:.92rem;color:rgba(240,240,240,.42);max-width:520px;margin:0 auto 18px;line-height:1.7;position:relative;}
.lp-int-link{font-size:.78rem;font-weight:600;color:#a5b4fc;text-decoration:underline;text-underline-offset:3px;position:relative;}
.lp-int-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:44px;position:relative;}
.lp-int-icon{width:104px;height:78px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:1.5rem;transition:all .2s;}
.lp-int-icon span{font-size:.6rem;color:rgba(240,240,240,.4);font-family:'Inter',sans-serif;font-weight:600;}
.lp-int-icon:hover{border-color:rgba(99,102,241,.35);transform:translateY(-3px);background:rgba(99,102,241,.06);}
@media(max-width:768px){.lp-integrations{padding:56px 24px;}.lp-int-icon{width:84px;height:66px;font-size:1.2rem;}}

/* ── Testemunho / citação de propósito ── */
.lp-testimonial{max-width:720px;margin:0 auto;text-align:center;}
.lp-testimonial-mark{font-family:'Syne',sans-serif;font-size:3rem;color:var(--clr-indigo);line-height:1;margin-bottom:8px;opacity:.6;}
.lp-testimonial-quote{font-family:'Syne',sans-serif;font-size:clamp(1.2rem,2.4vw,1.6rem);font-weight:700;color:var(--clr-text);line-height:1.5;letter-spacing:-.3px;}
.lp-testimonial-author{margin-top:20px;font-size:.8rem;color:rgba(240,240,240,.35);font-weight:600;}

/* ── CTA final: botão outline adicional ── */
.lp-cta-btn-outline{display:inline-flex;align-items:center;gap:10px;background:none;border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:14px 28px;font-family:'Inter',sans-serif;font-size:.95rem;font-weight:600;color:var(--clr-text);cursor:pointer;transition:all .2s;margin-left:12px;}
.lp-cta-btn-outline:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.32);transform:translateY(-2px);}
@media(max-width:768px){.lp-cta-btn-outline{margin-left:0;margin-top:12px;width:100%;justify-content:center;}}

/* ══════════════════════════════════════════════════════════════════════
   LANDING — NOVA IDENTIDADE VISUAL (tema claro, estilo Notion)
   Tudo escopado dentro de #auth-screen — o app em si (index.html) segue
   100% no tema escuro índigo/teal original, nenhuma variável --clr-*
   global é alterada aqui, só os seletores exclusivos da landing.
═══════════════════════════════════════════════════════════════════════ */
#auth-screen{background:#fff;}

/* ── Nav clara ── */
#auth-screen .lp-nav{background:rgba(255,255,255,.92);border-bottom:1px solid #ececea;}
#auth-screen .lp-nav-logo{color:#191919;}
#auth-screen .lp-nav-links a{color:#454440;}
#auth-screen .lp-nav-links a:hover,#auth-screen .lp-nav-links a.active{color:#191919;}
#auth-screen .lp-nav-cta{background:#191919;color:#fff;}
#auth-screen .lp-nav-cta:hover{opacity:.82;}

/* ── Hero principal ── */
#auth-screen .lpN-hero{max-width:900px;margin:0 auto;padding:64px 8vw 56px;text-align:center;}
#auth-screen .lpN-avatars{display:flex;justify-content:center;gap:10px;margin-bottom:28px;flex-wrap:wrap;}
#auth-screen .lpN-avatar{width:48px;height:48px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;box-shadow:0 6px 18px rgba(0,0,0,.08);border:2px solid #e5e5e3;animation:floatBadge 4.4s ease-in-out infinite;}
#auth-screen .lpN-avatar.c1{border-color:#6366f1;animation-delay:-.2s;}
#auth-screen .lpN-avatar.c2{border-color:#14b8a6;animation-delay:-.8s;}
#auth-screen .lpN-avatar.c3{border-color:#f59e0b;animation-delay:-1.4s;}
#auth-screen .lpN-avatar.c4{border-color:#ef4444;animation-delay:-2s;}
#auth-screen .lpN-avatar.c5{border-color:#8b5cf6;animation-delay:-2.6s;}
#auth-screen .lpN-avatar.c6{border-color:#10b981;animation-delay:-3.2s;}
#auth-screen .lpN-title{font-family:'Syne',sans-serif;font-weight:800;font-size:clamp(2.4rem,6vw,4rem);line-height:1.12;letter-spacing:-2px;color:#191919;margin-bottom:22px;}
#auth-screen .lpN-pill{display:inline-flex;align-items:center;gap:8px;background:#eceafd;color:#4f46e5;border-radius:40px;padding:2px 22px 2px 14px;}
#auth-screen .lpN-pill::before{content:'';width:12px;height:12px;border-radius:50%;background:#6366f1;flex-shrink:0;}
#auth-screen .lpN-sub{font-size:1.05rem;color:#5f5e5b;max-width:520px;margin:0 auto 30px;line-height:1.7;}
#auth-screen .lpN-ctas{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:52px;}
#auth-screen .lpN-btn-fill{background:#191919;color:#fff;border:none;border-radius:40px;padding:13px 26px;font-family:'Inter',sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .18s;}
#auth-screen .lpN-btn-fill:hover{opacity:.85;transform:translateY(-1px);}
#auth-screen .lpN-btn-outline{background:#eceafd;color:#4f46e5;border:none;border-radius:40px;padding:13px 26px;font-family:'Inter',sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .18s;}
#auth-screen .lpN-btn-outline:hover{background:#e0ddfb;}
#auth-screen .lpN-shot{max-width:760px;margin:0 auto;box-shadow:0 30px 70px rgba(0,0,0,.16),0 4px 14px rgba(0,0,0,.06);border-color:#e5e5e3;}
#auth-screen .lpN-shot-tag{margin-left:10px;font-size:.62rem;color:rgba(240,240,240,.3);font-family:'JetBrains Mono',monospace;}
#auth-screen .lpN-trust{margin-top:44px;display:flex;flex-direction:column;align-items:center;gap:14px;}
#auth-screen .lpN-trust-txt{font-size:.64rem;letter-spacing:.6px;text-transform:uppercase;color:#a5a49e;font-weight:600;}
#auth-screen .lpN-trust-logos{display:flex;gap:28px;flex-wrap:wrap;justify-content:center;}
#auth-screen .lpN-trust-logos span{font-size:.86rem;font-weight:600;color:#78776f;}
@media(max-width:700px){#auth-screen .lpN-hero{padding:44px 20px 40px;}#auth-screen .lpN-title{font-size:2rem;}#auth-screen .lpN-avatar{width:38px;height:38px;font-size:1rem;}}

/* ── Seção de login/registro ── */
#auth-screen .lpN-auth-section{background:#faf9f7;border-top:1px solid #ececea;padding:64px 20px;display:flex;flex-direction:column;align-items:center;}
#auth-screen .lpN-auth-intro{text-align:center;margin-bottom:26px;}
#auth-screen .lpN-auth-eyebrow{font-size:.66rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#6366f1;margin-bottom:10px;}
#auth-screen .lpN-auth-heading{font-family:'Syne',sans-serif;font-size:1.7rem;font-weight:800;color:#191919;letter-spacing:-.6px;margin-bottom:8px;}
#auth-screen .lpN-auth-desc{font-size:.86rem;color:#6b6a66;}

/* ── Card do formulário — claro ── */
#auth-screen .auth-card{background:#fff;border:1px solid #ececea;box-shadow:0 20px 50px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);backdrop-filter:none;}
#auth-screen .auth-tabs{background:#f3f2ef;border-color:#ececea;}
#auth-screen .auth-tab{color:#8a8983;}
#auth-screen .auth-tab.active{background:#fff;color:#191919;box-shadow:0 1px 4px rgba(0,0,0,.08);}
#auth-screen .a-lbl{color:#8a8983;}
#auth-screen .a-inp{background:#f7f7f5;border:1px solid #e5e5e3;color:#191919;}
#auth-screen .a-inp::placeholder{color:#b8b7b1;}
#auth-screen .a-hint{color:#a5a49e;}
#auth-screen .auth-divider{color:#c3c2bc;}
#auth-screen .btn-google{background:#fff;border:1px solid #e5e5e3;color:#3a3934;}
#auth-screen .btn-google:hover{background:#f7f7f5;}
#auth-screen .auth-switch{color:#8a8983;}
#auth-screen .auth-switch a{color:#4f46e5;}
#auth-screen .auth-error{background:#fef2f2;border-color:#fecaca;color:#b91c1c;}
#auth-screen #forgot-pass{color:#8a8983!important;}

/* ── Seções de conteúdo (bento, feats, how, quote, stats) ── */
#auth-screen .lp-section:nth-child(odd),
#auth-screen .lp-section:nth-child(even){background:#fff;border-top:1px solid #ececea;}
#auth-screen .lp-eyebrow{color:#8a8983;}
#auth-screen .lp-eyebrow-dot{background:var(--clr-indigo);}
#auth-screen .lp-title{color:#191919;}
#auth-screen .lp-title .hl,#auth-screen .lp-stat-num .hl{background:linear-gradient(135deg,#6366f1,#4f46e5);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
#auth-screen .lp-subtitle{color:#5f5e5b;}
#auth-screen .lp-feat{background:#f7f7f5;border-color:#ececea;}
#auth-screen .lp-feat:hover{border-color:rgba(99,102,241,.35);background:#f2f1fd;}
#auth-screen .lp-feat-title{color:#191919;}
#auth-screen .lp-feat-desc{color:#78776f;}
#auth-screen .lp-bento-item{background:#f7f7f5;border-color:#ececea;}
#auth-screen .lp-bento-item:hover{border-color:rgba(99,102,241,.3);}
#auth-screen .lp-stat-num{color:#191919;}
#auth-screen .lp-stat-label{color:#8a8983;}
#auth-screen .lp-how-num{background:#f0f0fd;border-color:rgba(99,102,241,.3);color:#4f46e5;}
#auth-screen .lp-how-title{color:#191919;}
#auth-screen .lp-how-desc{color:#78776f;}
#auth-screen .lp-quote{background:#f0f0fd;border-color:rgba(99,102,241,.16);}
#auth-screen .lp-quote-text{color:#3a3934;}
#auth-screen .lp-quote-author{color:#8a8983;}
#auth-screen .lp-divider{background:linear-gradient(90deg,transparent,#e5e5e3,transparent);}
#auth-screen .lp-dash-card{background:#f7f7f5;border-color:#ececea;}
#auth-screen .lp-dash-card:hover{border-color:rgba(99,102,241,.3);}
#auth-screen .lp-toggle-row{color:#3a3934;border-color:#ececea;}
#auth-screen .lp-activity-item{color:#3a3934;}
#auth-screen .lp-activity-time{color:#a5a49e;}
#auth-screen .lp-dash-cta{background:#191919;border:none;color:#fff;}
#auth-screen .lp-dash-cta:hover{opacity:.85;}

/* ── Integrações, testemunho ── */
#auth-screen .lp-integrations{background:#faf9f7;border-color:#ececea;}
#auth-screen .lp-integrations::before{opacity:.5;}
#auth-screen .lp-int-title{color:#191919;}
#auth-screen .lp-int-sub{color:#78776f;}
#auth-screen .lp-int-link{color:#4f46e5;}
#auth-screen .lp-int-icon{background:#fff;border-color:#ececea;}
#auth-screen .lp-int-icon span{color:#a5a49e;}
#auth-screen .lp-testimonial-mark{color:#d4d3cd;}
#auth-screen .lp-testimonial-quote{color:#191919;}
#auth-screen .lp-testimonial-author{color:#8a8983;}

/* ── FAQ ── */
#auth-screen .lp-faq-item{border-color:#ececea!important;}
#auth-screen .lp-faq-item>div:first-child{background:#f7f7f5!important;}
#auth-screen .lp-faq-item span:first-of-type{color:#191919!important;}
#auth-screen .lp-faq-arrow{color:#a5a49e!important;}
#auth-screen .lp-faq-body div{color:#5f5e5b!important;}

/* ── CTA final e rodapé ── */
#auth-screen .lp-cta{background:#faf9f7;border-color:#ececea;}
#auth-screen .lp-cta-title{color:#191919;}
#auth-screen .lp-cta-desc{color:#6b6a66;}
#auth-screen .lp-cta-btn{background:#191919;box-shadow:none;}
#auth-screen .lp-cta-btn:hover{opacity:.85;box-shadow:none;transform:translateY(-2px);}
#auth-screen .lp-cta-btn-outline{border-color:#dcdbd7;color:#191919;}
#auth-screen .lp-cta-btn-outline:hover{background:#f7f7f5;}
#auth-screen .lpN-cta-trust{color:#a5a49e;}
#auth-screen .lp-footer2{background:#fff;border-color:#ececea;}
#auth-screen .lp-footer2-brand-name{color:#191919;}
#auth-screen .lp-footer2-brand-desc{color:#8a8983;}
#auth-screen .lp-footer2-col a{color:#78776f!important;}
#auth-screen .lp-footer2-col a:hover{color:#191919!important;}
#auth-screen .lp-footer2-col-title{color:#b8b7b1;}
#auth-screen .lp-footer2-col span[style]{color:#78776f!important;}
#auth-screen .lp-footer2-bottom{color:#a5a49e;border-color:#ececea;}

/* ── Pricing (planos) — retemados diretamente no HTML (ver login.html) ── */
#auth-screen #lp-pricing{background:#fff;}
#auth-screen .lpN-plan-card{background:#f7f7f5;border:1px solid #ececea;border-radius:20px;padding:28px;display:flex;flex-direction:column;flex:1;min-width:260px;}
#auth-screen .lpN-plan-card.premium{background:linear-gradient(135deg,#eceafd,#f5f4fe);border-color:rgba(99,102,241,.3);position:relative;overflow:hidden;}
#auth-screen .lpN-plan-eyebrow{font-size:.65rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#8a8983;margin-bottom:14px;}
#auth-screen .lpN-plan-card.premium .lpN-plan-eyebrow{color:#4f46e5;}
#auth-screen .lpN-plan-price{font-family:'Syne',sans-serif;font-size:2.6rem;font-weight:800;color:#191919;letter-spacing:-2px;line-height:1;margin-bottom:4px;}
#auth-screen .lpN-plan-period{font-size:.78rem;color:#8a8983;margin-bottom:24px;}
#auth-screen .lpN-plan-feats{display:flex;flex-direction:column;gap:10px;flex:1;margin-bottom:24px;}
#auth-screen .lpN-plan-feat{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#3a3934;}
#auth-screen .lpN-plan-feat.off{color:#b8b7b1;}
#auth-screen .lpN-plan-feat .ck{color:#10b981;font-size:.9rem;}
#auth-screen .lpN-plan-card.premium .lpN-plan-feat .ck{color:#4f46e5;}
#auth-screen .lpN-plan-feat .x{opacity:.4;font-size:.9rem;}
#auth-screen .lpN-plan-btn{width:100%;padding:12px;border-radius:10px;font-family:'Inter',sans-serif;font-size:.86rem;font-weight:600;cursor:pointer;transition:all .18s;border:1px solid #e2e1dc;background:#efeeea;color:#3a3934;}
#auth-screen .lpN-plan-btn:hover{background:#e6e5e0;}
#auth-screen .lpN-plan-btn.premium{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;color:#fff;box-shadow:0 4px 18px rgba(99,102,241,.3);}
#auth-screen .lpN-plan-badge{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,#6366f1,#4f46e5);border-radius:20px;padding:3px 10px;font-size:.62rem;font-weight:700;color:#fff;letter-spacing:.5px;text-transform:uppercase;}
#auth-screen .lpN-plan-note{text-align:center;margin-top:20px;font-size:.72rem;color:#a5a49e;}

/* ── "Como funciona" — passos horizontais numerados (substitui o antigo layout de 2 colunas texto+mock) ── */
#auth-screen .lpN-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-bottom:44px;}
#auth-screen .lpN-steps::before{content:'';position:absolute;top:22px;left:12%;right:12%;height:1px;background:#e5e5e3;z-index:0;}
#auth-screen .lpN-step{position:relative;text-align:center;padding:0 16px;z-index:1;}
#auth-screen .lpN-step-num{width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid #6366f1;color:#4f46e5;font-family:'Syne',sans-serif;font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;}
#auth-screen .lpN-step-title{font-size:.92rem;font-weight:700;color:#191919;margin-bottom:6px;}
#auth-screen .lpN-step-desc{font-size:.78rem;color:#78776f;line-height:1.6;}
@media(max-width:768px){#auth-screen .lpN-steps{grid-template-columns:1fr;gap:28px;}#auth-screen .lpN-steps::before{display:none;}}

/* ── Grid de recursos — substitui as antigas 4 seções repetitivas (Social/Personalização/Pilhas/Segurança) por um único grid de cards ── */
#auth-screen .lpN-fgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
#auth-screen .lpN-fcard{background:#f7f7f5;border:1px solid #ececea;border-radius:16px;padding:22px;transition:all .2s;}
#auth-screen .lpN-fcard:hover{border-color:rgba(99,102,241,.3);transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.06);}
#auth-screen .lpN-fcard-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;margin-bottom:14px;}
#auth-screen .lpN-fcard-title{font-size:.88rem;font-weight:700;color:#191919;margin-bottom:6px;}
#auth-screen .lpN-fcard-desc{font-size:.76rem;color:#78776f;line-height:1.6;}
@media(max-width:900px){#auth-screen .lpN-fgrid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){#auth-screen .lpN-fgrid{grid-template-columns:1fr;}}

/* ── Footer multi-coluna ── */
.lp-footer2{padding:56px 8vw 28px;border-top:1px solid var(--clr-border-faint);background:#08090c;}
.lp-footer2-grid{display:flex;gap:60px;flex-wrap:wrap;justify-content:space-between;max-width:1100px;margin:0 auto 36px;}
.lp-footer2-brand{max-width:260px;}
.lp-footer2-brand-name{display:flex;align-items:center;gap:8px;font-family:'Syne',sans-serif;font-weight:800;font-size:1rem;color:var(--clr-text);margin-bottom:10px;}
.lp-footer2-brand-desc{font-size:.76rem;color:rgba(240,240,240,.32);line-height:1.7;}
.lp-footer2-col-title{font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:rgba(240,240,240,.3);margin-bottom:14px;}
.lp-footer2-col a{display:block;font-size:.79rem;color:rgba(240,240,240,.5);text-decoration:none;margin-bottom:10px;transition:color .15s;cursor:pointer;}
.lp-footer2-col a:hover{color:var(--clr-text);}
.lp-footer2-bottom{max-width:1100px;margin:0 auto;padding-top:22px;border-top:1px solid var(--clr-border-faint);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.7rem;color:rgba(240,240,240,.2);}
@media(max-width:640px){.lp-footer2{padding:40px 22px 24px;}.lp-footer2-grid{gap:28px;}.lp-footer2-bottom{flex-direction:column;text-align:center;}}
/* ── Videochamada: câmeras responsivas que acompanham o tamanho da janela ──
   As tiles deixam de ter tamanho fixo e passam a crescer/encolher preenchendo
   o espaço disponível. Ao redimensionar o overlay, os vídeos redimensionam junto.
   O modo foco (.has-focus) é preservado com as regras originais. */
#call-grid:not(.has-focus){align-content:stretch;}
#call-grid:not(.has-focus) .call-tile{flex:1 1 45%;width:auto;height:auto;min-width:120px;min-height:0;transition:none;}
#call-grid:not(.has-focus) .call-tile:only-child{flex-basis:100%;}
#call-tile video,.call-tile video{width:100%;height:100%;object-fit:cover;background:#000;}
/* Modo foco: destaque maior e responsivo em janelas grandes */
#call-grid.has-focus .call-tile.focused{height:auto;flex:1 1 100%;aspect-ratio:16/9;max-height:72%;}
/* ── Corpo da nota não empurra os controles ──
   O textarea do corpo cresce até um limite e passa a rolar internamente,
   assim datas/checklist/cor/anexar nunca são empurrados pra fora do card. */
.n-text{max-height:200px;overflow-y:auto;}
/* ── Animação de entrada da página principal — "reveal" forte ──
   Um véu com o logo se abre; a toolbar cai com mola; as notas dão pop
   escalonado; o fundo faz um zoom sutil. Em #board-bg/#board-bg-video
   animamos SÓ transform (são irmãos das notas, não ancestrais — não
   criam containing-block que desloque as notas position:fixed). */
#app-enter-veil{position:fixed;inset:0;z-index:99999;pointer-events:none;display:grid;place-items:center;
  background:radial-gradient(ellipse 70% 60% at 50% 42%, rgba(40,42,90,.45), transparent 68%), #08080d;
  animation:veilOut .9s cubic-bezier(.7,0,.2,1) both;}
#app-enter-veil .veil-logo{width:74px;height:74px;border-radius:20px;display:grid;place-items:center;font-size:34px;
  background:linear-gradient(135deg,#6366f1,#14b8a6);
  box-shadow:0 14px 70px rgba(99,102,241,.6),inset 0 0 0 1px rgba(255,255,255,.16);
  animation:veilLogo .9s cubic-bezier(.16,1,.3,1) both;}
@keyframes veilOut{0%{opacity:1}38%{opacity:1}100%{opacity:0;visibility:hidden}}
@keyframes veilLogo{0%{opacity:0;transform:scale(.72)}40%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.22)}}

@keyframes appToolbarIn{0%{opacity:0;transform:translateY(-48px)}60%{opacity:1}100%{opacity:1;transform:none}}
@keyframes appBgZoom{from{transform:scale(1.09)}to{transform:none}}
@keyframes appNotePop{0%{opacity:0;transform:translateY(30px) scale(.88)}100%{opacity:1;transform:none}}
@keyframes appFadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

body.app-enter #toolbar{animation:appToolbarIn .7s cubic-bezier(.22,1.18,.36,1) .22s both;}
body.app-enter #board-bg,body.app-enter #board-bg-canvas,body.app-enter #board-pixel-canvas{animation:appBgZoom 1.05s cubic-bezier(.16,1,.3,1) both;}
body.app-enter .note{animation:appNotePop .6s cubic-bezier(.34,1.32,.5,1) .34s both;}
body.app-enter #crm-dashboard,body.app-enter #crm-charts-row,body.app-enter #crm-board{animation:appFadeUp .7s cubic-bezier(.16,1,.3,1) .34s both;}
@media(prefers-reduced-motion:reduce){
  #app-enter-veil{animation:veilOut .3s ease both;}
  body.app-enter #toolbar,body.app-enter #board-bg,body.app-enter #board-bg-canvas,body.app-enter #board-pixel-canvas,
  body.app-enter .note,body.app-enter #crm-dashboard,body.app-enter #crm-charts-row,body.app-enter #crm-board{animation:none;}
}
/* Pino — nota fixada ganha destaque âmbar e vai pra frente */
.note.pinned{box-shadow:0 0 0 1.5px rgba(245,158,11,.6),0 14px 40px rgba(245,158,11,.18),0 10px 30px rgba(0,0,0,.5)!important;
  border-color:rgba(245,158,11,.42)!important;}

/* ══════════════════════════════════════════════════════════════
   PASTAS (pilhas/stacks) — visual mais bonito e menos compacto
   ══════════════════════════════════════════════════════════════ */
.stack-wrap{min-width:298px;border-radius:16px !important;
  box-shadow:0 16px 44px rgba(0,0,0,.5),0 2px 10px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06) !important;}
.stack-header{gap:11px;padding:14px 16px;background:rgba(255,255,255,.06) !important;}
.shb{width:3px;height:17px;border-radius:2px;flex-shrink:0;}
.stack-header-color-dot{width:14px !important;height:14px !important;box-shadow:0 0 0 3px rgba(255,255,255,.06);}
.stack-header-title{font-size:.88rem !important;font-weight:700 !important;letter-spacing:-.2px;}
.stack-header-count{background:rgba(255,255,255,.09);color:rgba(255,255,255,.6);font-size:.66rem;font-weight:700;padding:3px 10px;border-radius:20px;min-width:24px;text-align:center;}
.stack-toggle-btn{width:31px !important;height:31px !important;border-radius:9px !important;font-size:1rem;}
.stack-toggle-btn:hover{background:rgba(255,255,255,.11) !important;color:#fff !important;}
.stack-card-row{gap:12px;padding:12px 15px;border-bottom-color:rgba(255,255,255,.05) !important;}
.stack-card-row:last-child{border-bottom:none;}
.stack-card-row:hover{background:rgba(255,255,255,.055) !important;}
.stack-card-row-bar{width:4px !important;height:24px !important;border-radius:3px !important;}
.stack-card-row-title{font-size:.84rem !important;font-weight:600 !important;}
.stack-card-row-status{font-size:.66rem !important;}
.stack-card-row-color{width:11px !important;height:11px !important;}
.stack-card-row-expand,.stack-card-row-unstack{width:24px !important;height:24px !important;border-radius:7px !important;}
.stack-card-row-expand:hover,.stack-card-row-unstack:hover{background:rgba(255,255,255,.08) !important;color:rgba(240,240,240,.7) !important;}

/* ══════════════════════════════════════════════════════════════
   PRÉVIA DE HTML no visualizador de arquivos
   ══════════════════════════════════════════════════════════════ */
.fv-html{flex:1 1 auto;width:100%;min-height:60vh;border:0;border-radius:8px;background:#fff;display:block;}
.fv-html-nota{flex:0 0 auto;width:100%;padding:8px 12px;margin-bottom:10px;border-radius:8px;
  background:rgba(245,158,11,.12);border:1px solid rgba(245,158,11,.28);
  font-family:'Inter',sans-serif;font-size:.72rem;color:#fcd34d;text-align:center;line-height:1.5;}

/* ══════════════════════════════════════════════════════════════
   AVISO DE E-MAIL NÃO CONFIRMADO
   Faixa logo abaixo da barra de ferramentas. Avisa, não bloqueia.
   ══════════════════════════════════════════════════════════════ */
#aviso-email{position:fixed;left:50%;transform:translateX(-50%);z-index:900;display:flex;align-items:center;gap:10px;
  max-width:min(680px,calc(100vw - 32px));padding:10px 12px 10px 16px;border-radius:12px;
  background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.32);backdrop-filter:blur(10px);
  box-shadow:0 12px 34px rgba(0,0,0,.4);animation:fadeUp .3s ease both;}
#aviso-email .ae-ico{font-size:1rem;color:#fcd34d;flex-shrink:0;}
#aviso-email .ae-txt{font-family:'Inter',sans-serif;font-size:.8rem;color:rgba(255,255,255,.86);line-height:1.4;}
#aviso-email .ae-txt b{color:#fcd34d;font-weight:600;}
#aviso-email .ae-btn{flex-shrink:0;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.85);
  border-radius:8px;padding:6px 12px;font-family:'Inter',sans-serif;font-size:.74rem;font-weight:600;cursor:pointer;transition:background .16s;}
#aviso-email .ae-btn:hover:not(:disabled){background:rgba(255,255,255,.18);}
#aviso-email .ae-btn:disabled{opacity:.5;cursor:default;}
#aviso-email .ae-btn.ae-ok{background:rgba(16,185,129,.2);border-color:rgba(16,185,129,.4);color:#6ee7b7;}
#aviso-email .ae-btn.ae-ok:hover:not(:disabled){background:rgba(16,185,129,.32);}
#aviso-email .ae-x{flex-shrink:0;background:none;border:none;color:rgba(255,255,255,.4);font-size:.9rem;cursor:pointer;padding:2px 4px;line-height:1;}
#aviso-email .ae-x:hover{color:#fff;}
@media(max-width:640px){
  #aviso-email{flex-wrap:wrap;justify-content:flex-end;}
  #aviso-email .ae-txt{flex-basis:100%;}
}

/* ══════════════════════════════════════════════════════════════
   CRM (Clientes) — dashboard
   Faixa em gradiente com busca, três cartões de indicador com
   minigráfico, painel de linha + painel de barras, e a tabela.
   Paleta verde→ciano sobre quase-preto; os gráficos são SVG
   montado à mão (a CSP não permite lib externa).
   ══════════════════════════════════════════════════════════════ */
#crm-dashboard.visible{display:block !important;padding:0;}

/* ── Faixa superior ── */
.cdash-hero{position:relative;display:flex;align-items:center;gap:16px;padding:26px 26px 74px;
  background:
    radial-gradient(88% 150% at 10% -18%, rgba(110,231,183,.95) 0%, rgba(16,185,129,.72) 26%, rgba(13,148,136,.35) 52%, transparent 72%),
    linear-gradient(100deg,#0c6b5f 0%,#0e8b84 20%,#0c7e93 44%,#0a4258 68%,#06161f 100%);}
.cdash-hero-title{font-family:'Syne',sans-serif;font-size:1.55rem;font-weight:800;letter-spacing:-.6px;color:#fff;margin:0;flex-shrink:0;}
.cdash-search{position:relative;display:flex;align-items:center;flex:1;max-width:440px;margin-left:auto;}
.cdash-search svg{position:absolute;left:15px;width:16px;height:16px;color:rgba(255,255,255,.45);pointer-events:none;}
.cdash-search input{width:100%;background:rgba(4,26,28,.62);border:1px solid rgba(255,255,255,.09);border-radius:12px;
  padding:12px 16px 12px 42px;font-family:'Inter',sans-serif;font-size:.85rem;color:#fff;outline:none;transition:border-color .18s,background .18s;}
.cdash-search input::placeholder{color:rgba(255,255,255,.42);}
.cdash-search input:focus{border-color:rgba(110,231,183,.5);background:rgba(4,26,28,.8);}
.cdash-hero-btn{flex-shrink:0;width:46px;height:46px;border-radius:12px;background:rgba(4,26,28,.62);border:1px solid rgba(255,255,255,.09);
  color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s,transform .18s;}
.cdash-hero-btn svg{width:19px;height:19px;}
.cdash-hero-btn:hover{background:rgba(4,26,28,.85);transform:translateY(-1px);}

/* ── Cartões de indicador (montam sobre a faixa) ── */
.cdash-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));gap:16px;padding:0 26px;margin-top:-56px;position:relative;z-index:2;}
.cdash-kpi{background:#080c0d;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:16px 18px 14px;
  box-shadow:0 20px 44px rgba(0,0,0,.5);animation:crmCardRise .5s cubic-bezier(.16,1,.3,1) both;}
.cdash-kpi:nth-child(2){animation-delay:.07s;} .cdash-kpi:nth-child(3){animation-delay:.14s;}
@keyframes crmCardRise{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.cdash-kpi-lbl{font-size:.82rem;font-weight:500;color:rgba(255,255,255,.72);}
.cdash-kpi-mid{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 10px;}
.cdash-kpi-num{font-family:'Syne',sans-serif;font-size:1.72rem;font-weight:800;letter-spacing:-1px;color:#fff;line-height:1.1;font-variant-numeric:tabular-nums;min-width:0;}
.cdash-spark{flex:0 1 112px;min-width:56px;height:44px;}
.cdash-spark svg{width:100%;height:100%;display:block;overflow:visible;}
.cdash-kpi-foot{display:flex;align-items:center;gap:9px;}
.cdash-delta{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:7px;
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.5);font-variant-numeric:tabular-nums;}
.cdash-delta.up{background:rgba(16,185,129,.15);color:#4ade80;}
.cdash-delta.down{background:rgba(239,68,68,.15);color:#f87171;}
.cdash-vs{font-size:.72rem;color:rgba(255,255,255,.4);}
.cdash-vs.alerta{color:#f87171;}

/* ── Painéis ── */
#crm-charts-row.visible{display:grid !important;grid-template-columns:minmax(0,1fr) 350px;gap:16px;padding:18px 26px 18px;align-items:stretch;}
.cdash-panel{background:#080c0d;border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:18px 20px;box-shadow:0 16px 42px rgba(0,0,0,.42);min-width:0;}
.cdash-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap;}
.cdash-panel-title{font-family:'Syne',sans-serif;font-size:1.02rem;font-weight:700;color:#fff;letter-spacing:-.3px;}
.cdash-segs{display:flex;gap:2px;}
.cdash-seg{background:none;border:none;color:rgba(255,255,255,.42);font-family:'Inter',sans-serif;font-size:.76rem;font-weight:500;
  padding:7px 13px;border-radius:9px;cursor:pointer;transition:background .16s,color .16s;}
.cdash-seg:hover{color:rgba(255,255,255,.82);}
.cdash-seg.active{background:#1b2323;color:#fff;font-weight:600;}
.cdash-range{background:#1b2323;border:1px solid rgba(255,255,255,.07);border-radius:9px;padding:7px 13px;font-size:.74rem;color:rgba(255,255,255,.68);white-space:nowrap;}

/* Gráfico de linha */
#crm-line-chart{position:relative;}
#crm-line-chart svg{width:100%;height:238px;display:block;overflow:visible;}
/* pathLength="1" no path → dasharray independente do tamanho real da linha. */
#crm-line-chart .crm-line-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:crmDraw 1.8s cubic-bezier(.16,1,.3,1) .2s forwards;}
@keyframes crmDraw{to{stroke-dashoffset:0}}
.cdash-axis{font-family:'Inter',sans-serif;font-size:10.5px;fill:rgba(255,255,255,.34);}
.cdash-chart-empty{display:flex;align-items:center;justify-content:center;height:200px;font-size:.78rem;color:rgba(255,255,255,.26);text-align:center;}

/* Gráfico de barras */
.cdash-bars{display:flex;align-items:stretch;gap:12px;height:238px;}
.cdash-bars-axis{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:22px;font-size:.66rem;color:rgba(255,255,255,.34);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;}
.cdash-bars-plot{flex:1;display:flex;align-items:flex-end;gap:8px;min-width:0;}
.crm-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:100%;position:relative;min-width:0;}
/* padding-top reserva a faixa onde o balão aparece: sem ela, a barra mais
   alta empurrava o balão para fora do painel. */
.crm-bar-area{flex:1;min-height:0;width:100%;display:flex;align-items:flex-end;justify-content:center;position:relative;padding-top:34px;}
.crm-bar{position:relative;width:100%;max-width:26px;min-height:0;border-radius:7px 7px 0 0;background:linear-gradient(180deg,#0f766e,#115e59);
  transition:height .7s cubic-bezier(.16,1,.3,1),filter .15s;}
.crm-bar.crm-bar-current{background:linear-gradient(180deg,#6ee7b7,#22d3ee);box-shadow:0 0 20px rgba(110,231,183,.35);}
.crm-bar-col:hover .crm-bar{filter:brightness(1.25);}
.crm-bar-lbl{font-size:.66rem;color:rgba(255,255,255,.42);text-transform:capitalize;}
.crm-bar-lbl.crm-bar-lbl-current{color:#fff;font-weight:600;}
.crm-bar-tooltip{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:8px;background:#1b2323;
  border-radius:7px;padding:4px 9px;font-family:'Inter',sans-serif;font-size:.68rem;font-weight:600;color:#fff;white-space:nowrap;
  opacity:0;pointer-events:none;transition:opacity .14s;z-index:5;box-shadow:0 6px 16px rgba(0,0,0,.45);}
.crm-bar-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid transparent;border-top-color:#1b2323;}
.crm-bar-col:hover .crm-bar-tooltip,.crm-bar-tooltip.fixa{opacity:1;}

/* ── Tabela ── */
#crm-board.visible{display:block !important;padding:0 26px 26px;}
.cdash-panel-table{padding:20px 22px 6px;}
.crm-table-toolbar{margin-bottom:4px;flex-wrap:wrap;}
.crm-toolbar-title{font-family:'Syne',sans-serif;font-size:1.08rem;font-weight:700;}
.crm-count-badge{background:rgba(45,212,191,.14);color:#5eead4;font-size:.66rem;padding:3px 11px;border-radius:20px;font-weight:700;}
.cdash-pill-btn{display:inline-flex;align-items:center;gap:7px;background:#1b2323;border:1px solid rgba(255,255,255,.06);
  color:rgba(255,255,255,.72);border-radius:10px;padding:9px 14px;font-family:'Inter',sans-serif;font-size:.76rem;font-weight:500;
  cursor:pointer;transition:background .16s,color .16s;white-space:nowrap;}
.cdash-pill-btn:hover{background:#252e2e;color:#fff;}
.cdash-pill-btn svg{width:14px;height:14px;flex-shrink:0;}
.cdash-pill-btn.ativo{background:rgba(45,212,191,.16);border-color:rgba(45,212,191,.3);color:#5eead4;}
.cdash-pill-btn.danger{color:#f87171;}
.cdash-pill-btn.danger:hover{background:rgba(239,68,68,.16);color:#fca5a5;}
.crm-table-wrap{background:transparent !important;border:none !important;border-radius:0 !important;box-shadow:none !important;overflow:visible !important;}
.crm-table thead tr{background:transparent !important;border-bottom:1px solid rgba(255,255,255,.09) !important;}
.crm-table th{padding:14px 14px !important;font-size:.62rem !important;letter-spacing:1.2px !important;color:rgba(255,255,255,.4) !important;}
.crm-table td{padding:14px 14px !important;font-size:.86rem !important;border-bottom:1px solid rgba(255,255,255,.05) !important;}
.crm-table tbody tr:hover{background:rgba(255,255,255,.03) !important;}
.crm-table tbody tr.overdue-row{border-left:none;}
.cdash-id{font-family:'JetBrains Mono',monospace;font-size:.78rem;color:rgba(255,255,255,.55);white-space:nowrap;}
.crm-avatar{width:44px !important;height:44px !important;border-radius:10px !important;font-size:.9rem !important;color:#04120f !important;box-shadow:0 3px 10px rgba(0,0,0,.35) !important;}
.crm-client-name{font-weight:500 !important;font-size:.88rem !important;max-width:230px;}
.crm-value-cell{font-size:.9rem !important;font-weight:600 !important;color:#fff !important;font-family:'Inter',sans-serif !important;}
.crm-date-cell{color:rgba(255,255,255,.66);}
.crm-status-pill{border-radius:20px;padding:5px 13px;font-size:.7rem;font-weight:600;text-transform:none;letter-spacing:0;border:none;}
.crm-status-pill .crm-status-dot{display:none;}
.crm-status-pill.paid{background:rgba(16,185,129,.16);color:#34d399;}
.crm-status-pill.pending{background:rgba(234,179,8,.16);color:#fde047;}
.crm-status-pill.overdue{background:rgba(239,68,68,.16);color:#f87171;animation:none;}
.cdash-kebab{width:28px;height:28px;border:none;background:none;border-radius:8px;color:rgba(255,255,255,.4);cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;}
.cdash-kebab:hover{background:rgba(255,255,255,.08);color:#fff;}
.cdash-kebab svg{width:16px;height:16px;}

/* Menu flutuante (kebab da linha, Filtrar, Ordenar por) */
.cdash-menu{position:fixed;background:#12191a;border:1px solid rgba(255,255,255,.09);border-radius:12px;padding:6px;
  box-shadow:0 22px 54px rgba(0,0,0,.65);z-index:9000;min-width:186px;animation:crmCardRise .16s ease both;}
.cdash-menu-item{display:flex;align-items:center;gap:9px;width:100%;background:none;border:none;border-radius:8px;padding:9px 11px;
  font-family:'Inter',sans-serif;font-size:.8rem;color:rgba(255,255,255,.78);cursor:pointer;text-align:left;transition:background .13s,color .13s;}
.cdash-menu-item:hover{background:rgba(255,255,255,.07);color:#fff;}
.cdash-menu-item.sel{color:#5eead4;}
.cdash-menu-item.danger{color:#f87171;}
.cdash-menu-item.danger:hover{background:rgba(239,68,68,.14);}
.cdash-menu-item svg{width:14px;height:14px;flex-shrink:0;}

@media(max-width:1040px){
  #crm-charts-row.visible{grid-template-columns:1fr !important;}
  .cdash-kpis{grid-template-columns:repeat(auto-fit,minmax(196px,1fr));margin-top:-46px;}
  .cdash-kpi-num{font-size:1.5rem;}
  .cdash-hero{flex-wrap:wrap;padding-bottom:64px;}
  .cdash-hero-title{font-size:1.3rem;}
  .cdash-search{max-width:none;margin-left:0;order:3;flex-basis:100%;}
}

/* CRM — container rolável */
#crm-view{display:none;}
#crm-view.visible{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;}
#crm-view #crm-board.visible{flex:none !important;overflow:visible !important;}

/* ═══════════════════════════════════════════════════════════════════
   VISUALIZADOR DE ARQUIVO — modal centralizado
   Ele era um painel colado à direita da nota, com z-index = "z da nota + 1".
   Como o z das notas cresce a cada clique, qualquer nota clicada depois
   passava na frente dele, e o painel ainda tapava as notas vizinhas. Como
   modal com fundo escurecido ele fica na frente do quadro inteiro, sem
   cobrir nota nenhuma e sem precisar reorganizar o board do usuário.
   Só no desktop: abaixo de 768px o painel vira folha inferior (regra própria).
   ═══════════════════════════════════════════════════════════════════ */
.fv-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.62);
  backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
  z-index:6150;animation:fvFade .18s ease both;}
@keyframes fvFade{from{opacity:0}to{opacity:1}}
/* Vale também no celular (folha inferior), senão o fundo escuro cobriria o painel. */
.f-viewer{z-index:6200 !important;}

@media (min-width:769px){
  .f-viewer{
    top:50% !important; left:50% !important; right:auto !important; bottom:auto !important;
    transform:translate(-50%,-50%);
    width:min(860px,92vw) !important;
    height:min(80vh,780px) !important;
    border-radius:16px !important;
    border:1px solid rgba(255,255,255,.13) !important;
    box-shadow:0 30px 90px rgba(0,0,0,.75) !important;
    z-index:6200 !important;
    animation:fvPop .2s cubic-bezier(.16,1,.3,1) both;
  }
  @keyframes fvPop{
    from{opacity:0;transform:translate(-50%,-50%) scale(.97)}
    to  {opacity:1;transform:translate(-50%,-50%) scale(1)}
  }
}


/* ═══════════════════════════════════════════════════════════════════
   BARRA DE PROGRESSO DA CHECKLIST (anunciada na landing)
   ═══════════════════════════════════════════════════════════════════ */
.n-prog{height:6px;border-radius:3px;background:rgba(255,255,255,.09);margin:2px 0 9px;overflow:hidden;}
.n-prog>span{display:block;height:100%;width:0;border-radius:3px;
  background:linear-gradient(90deg,#6366f1,#14b8a6);
  transition:width .35s cubic-bezier(.16,1,.3,1);}
.n-prog.completo>span{background:linear-gradient(90deg,#10b981,#34d399);}

/* ═══════════════════════════════════════════════════════════════════
   CHAT — mesma coloração do reel da landing: bolha própria em gradiente
   violeta, bolha do outro em cinza escuro
   ═══════════════════════════════════════════════════════════════════ */
.chat-msg.mine .chat-bubble{
  background:linear-gradient(135deg,#7c5cff,#5b5bf0) !important;
  color:#fff !important;
  border-radius:14px 14px 4px 14px !important;
  box-shadow:0 3px 12px rgba(99,102,241,.28);}
.chat-msg.theirs .chat-bubble{
  background:#23232e !important;
  color:rgba(240,240,240,.9) !important;
  border-radius:14px 14px 14px 4px !important;
  border:1px solid rgba(255,255,255,.05);}
.chat-msg.mine .chat-time{color:rgba(190,180,255,.55);}


/* ═══════════════════════════════════════════════════════════════════
   CORES EM GRADIENTE (Premium)
   ═══════════════════════════════════════════════════════════════════ */
.swatch.grad{box-shadow:0 0 0 1px rgba(255,255,255,.14) inset;position:relative;}
.swatch.travado{position:relative;}
.swatch.travado::after{content:'🔒';position:absolute;inset:0;display:flex;align-items:center;
  justify-content:center;font-size:.55rem;background:rgba(0,0,0,.5);border-radius:inherit;}
.swatch.travado:hover{transform:none;}
.n-color-pop .swatch-sep{flex-basis:100%;height:0;margin:3px 0 1px;border-top:1px solid rgba(255,255,255,.08);}
.n-color-pop .swatch-sep::before{content:'Gradientes ⭐';display:block;font-family:'Inter',sans-serif;
  font-size:.55rem;color:rgba(240,240,240,.35);margin-top:4px;letter-spacing:.4px;}

.m-sw.travado{position:relative;opacity:.5;}
.m-sw.travado::after{content:"F512";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.5rem;background:rgba(0,0,0,.45);border-radius:inherit;}


/* ═══════════════════════════════════════════════════════════════════
   CHAMADA — AO VIVO, cronômetro, onda de áudio e quem está falando
   ═══════════════════════════════════════════════════════════════════ */
.call-header{gap:12px;align-items:center;}
.call-live{display:inline-flex;align-items:center;gap:6px;font-size:.6rem;font-weight:700;
  color:#fff;background:rgba(239,68,68,.92);padding:4px 10px;border-radius:20px;
  letter-spacing:.5px;flex-shrink:0;font-family:'Inter',sans-serif;}
.call-live i{width:5px;height:5px;border-radius:50%;background:#fff;animation:callPisca 1s steps(1) infinite;}
@keyframes callPisca{0%,49%{opacity:1}50%,100%{opacity:.15}}
.call-timer{font-family:'JetBrains Mono',monospace;font-size:.72rem;
  color:rgba(240,240,240,.5);flex-shrink:0;font-variant-numeric:tabular-nums;}
.call-wave{display:flex;align-items:center;gap:3px;height:20px;margin-left:auto;flex-shrink:0;}
.call-wave i{width:3px;height:12%;border-radius:2px;background:#34d399;
  transition:height .08s linear;}
.call-wave i:nth-child(even){background:#6ee7b7;}
.call-tile.falando{outline:2px solid #34d399;outline-offset:-2px;
  box-shadow:0 0 22px rgba(52,211,153,.35);}
@media(prefers-reduced-motion:reduce){.call-live i{animation:none;}}


/* ═══════════════════════════════════════════════════════════════════
   PASTAS REDIMENSIONÁVEIS — alça na borda direita
   ═══════════════════════════════════════════════════════════════════ */
.stack-wrap{position:relative;}
.stack-resize{position:absolute;top:0;right:0;width:8px;height:100%;cursor:ew-resize;
  z-index:3;background:transparent;transition:background .15s;}
.stack-resize:hover{background:linear-gradient(90deg,transparent,rgba(255,255,255,.14));}
.stack-resize::after{content:'';position:absolute;top:50%;right:2px;width:2px;height:26px;
  border-radius:2px;background:rgba(255,255,255,.18);transform:translateY(-50%);
  opacity:0;transition:opacity .15s;}
.stack-wrap:hover .stack-resize::after{opacity:1;}


/* ═══════════════════════════════════════════════════════════════════
   CHAMADA — avatar enquanto a câmera está fechada
   A chamada começa sem vídeo; o vídeo só aparece quando a pessoa abre.
   ═══════════════════════════════════════════════════════════════════ */
.call-avatar{position:absolute;inset:0;display:none;align-items:center;justify-content:center;
  font-family:'Syne',sans-serif;font-weight:800;font-size:clamp(1.6rem,7vw,3rem);color:#fff;
  letter-spacing:-1px;text-shadow:0 2px 12px rgba(0,0,0,.35);}
.call-tile.sem-camera .call-avatar{display:flex;}
.call-tile.sem-camera video{opacity:0;}
.call-ctrl-btn.off{background:rgba(239,68,68,.18) !important;border-color:rgba(239,68,68,.4) !important;
  opacity:.9;position:relative;}
.call-ctrl-btn.off::after{content:'';position:absolute;left:12%;right:12%;top:50%;height:2px;
  background:#f87171;transform:rotate(-20deg);border-radius:2px;}

/* ═══════════════════════════════════════════════════════════════════
   CHECKLIST — mesmo desenho do reel da landing
   Caixa arredondada que enche de verde ao marcar, com o tique desenhado
   em CSS. O texto NÃO fica riscado: na landing o item concluído continua
   legível e quem sinaliza é a caixa verde.
   ═══════════════════════════════════════════════════════════════════ */
.n-cl-item{gap:10px !important;padding:5px 4px !important;}
.n-cl-check{
  appearance:none;-webkit-appearance:none;
  width:17px !important;height:17px !important;flex-shrink:0;
  border-radius:5px;border:1.7px solid rgba(255,255,255,.28);
  background:transparent;cursor:pointer;position:relative;
  transition:background .18s,border-color .18s,transform .18s;}
.n-cl-check:hover{border-color:rgba(52,211,153,.6);}
.n-cl-check:checked{background:#34d399;border-color:#34d399;}
.n-cl-check:checked::after{
  content:'';position:absolute;left:5px;top:1.5px;width:4px;height:9px;
  border:solid #06281c;border-width:0 2px 2px 0;transform:rotate(42deg);}
.n-cl-check:active{transform:scale(.88);}
.n-cl-check:checked{animation:clPop .32s cubic-bezier(.34,1.4,.5,1);}
@keyframes clPop{0%{transform:scale(.75)}60%{transform:scale(1.12)}100%{transform:scale(1)}}
.n-cl-text{font-size:.79rem !important;color:rgba(255,255,255,.82) !important;}
.n-cl-item.done .n-cl-text{
  color:rgba(255,255,255,.55) !important;
  text-decoration:none !important;}
.n-cl-text::placeholder{color:rgba(255,255,255,.25);}
.n-checklist-head{letter-spacing:.9px;font-size:.58rem;color:rgba(255,255,255,.32);}
.n-checklist-add{transition:transform .15s,color .15s;}
.n-checklist-add:hover{transform:scale(1.18);color:#34d399;}
@media(prefers-reduced-motion:reduce){.n-cl-check:checked{animation:none;}}

/* ═══════════════════════════════════════════════════════════════════
   BARRA DE FERRAMENTAS ACIMA DO QUADRO
   z-index só tem efeito em elemento posicionado. A barra era `static`,
   então o z-index:500 dela nunca valeu de nada: qualquer nota, que é
   `position:absolute`, era pintada por cima dela. Bastava a nota estar
   perto do topo (ou o quadro rolar) para a barra sumir atrás do card.
   ═══════════════════════════════════════════════════════════════════ */
#toolbar{position:relative;z-index:600;}
#crm-dashboard,#crm-view{position:relative;z-index:1;}

/* ═══════════════════════════════════════════════════════════════════
   LINHAS DA PASTA — mais texto do título visível
   O título recebe o nome inteiro; quem cortava era o CSS. Três medidas:
   deixa quebrar em duas linhas, encolhe o respiro lateral e esconde os
   dois botões de ação até passar o mouse (eles sozinhos comiam ~50px).
   ═══════════════════════════════════════════════════════════════════ */
.stack-card-row{gap:9px !important;padding:10px 12px !important;align-items:flex-start !important;}
.stack-card-row-title{
  white-space:normal !important;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;
  overflow:hidden;line-height:1.3;word-break:break-word;
  padding-top:1px;}
.stack-card-row-color,.stack-card-row-status{margin-top:2px;}
.stack-card-row-status{max-width:96px;overflow:hidden;}

/* Botões só aparecem no hover: fora dele, o espaço é do título. */
.stack-card-row-expand,.stack-card-row-unstack{
  opacity:0 !important;width:0 !important;min-width:0;padding:0 !important;
  margin:0 !important;overflow:hidden;transition:opacity .14s,width .14s;}
.stack-card-row:hover .stack-card-row-expand,
.stack-card-row:hover .stack-card-row-unstack{opacity:1 !important;width:24px !important;}

/* Em tela sensível ao toque não existe hover — os botões ficam visíveis. */
@media (pointer:coarse){
  .stack-card-row-expand,.stack-card-row-unstack{opacity:1 !important;width:24px !important;}
}

/* Item de fundo bloqueado (vídeo, só Premium) */
/* Item bloqueado — o cadeado é um SELO no canto, não uma tampa.
   Antes ele ocupava a miniatura inteira sobre um fundo escuro liso: os quatro
   fundos em vídeo viravam quatro quadradinhos idênticos com um cadeado, sem
   nenhuma pista do que estavam bloqueando. Agora a prévia aparece — só que
   escurecida e dessaturada, que é o que diz "existe, mas não é seu ainda". */
.wp-gallery-swatch.wp-travado{position:relative;opacity:1;filter:saturate(.65) brightness(.62);}
.wp-gallery-swatch.wp-travado:hover{filter:saturate(.9) brightness(.8);}
.wp-gallery-swatch.wp-travado::after{content:'🔒';position:absolute;right:2px;bottom:1px;
  font-size:.62rem;line-height:1;padding:2px 3px;border-radius:5px;
  background:rgba(0,0,0,.66);box-shadow:0 1px 4px rgba(0,0,0,.5);}


/* ═══════════════════════════════════════════════════════════════════
   INTERRUPTOR DE LEMBRETES POR E-MAIL (Painel pessoal)
   ═══════════════════════════════════════════════════════════════════ */
.ev-lembrete{display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:10px 0 4px;padding:11px 13px;border:1px solid rgba(255,255,255,.08);
  border-radius:11px;background:rgba(255,255,255,.03);}
.ev-lembrete-txt b{display:block;font-family:'Inter',sans-serif;font-size:.79rem;color:rgba(255,255,255,.9);}
.ev-lembrete-txt span{display:block;font-size:.66rem;color:rgba(255,255,255,.42);margin-top:2px;}
.ev-switch{flex-shrink:0;width:40px;height:22px;border-radius:20px;border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.07);cursor:pointer;padding:0;position:relative;transition:background .18s,border-color .18s;}
.ev-switch i{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;
  background:rgba(255,255,255,.5);transition:transform .18s,background .18s;}
.ev-switch.on{background:rgba(52,211,153,.28);border-color:rgba(52,211,153,.55);}
.ev-switch.on i{transform:translateX(18px);background:#34d399;}

/* ═══════════════════════════════════════════════════════════════════
   RELATÓRIO FINANCEIRO
   ═══════════════════════════════════════════════════════════════════
   Peça impressa: fundo branco, tinta escura, números tabulares e uma
   hierarquia só — cabeçalho, número-herói com a composição, indicadores,
   tabelas. As cores de estado (recebido/a receber/atrasado) passaram no
   validador de paleta e nunca aparecem sozinhas: todo segmento e toda
   linha trazem o rótulo escrito, para quem imprime em preto e branco ou
   não distingue as cores.
   ═══════════════════════════════════════════════════════════════════ */
.crm-report-btn{display:inline-flex;align-items:center;gap:7px;background:rgba(99,102,241,.14);
  border:1px solid rgba(99,102,241,.32);color:#a5b4fc;border-radius:9px;padding:8px 13px;
  font-family:'Inter',sans-serif;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .15s;}
.crm-report-btn:hover{background:rgba(99,102,241,.24);}
.crm-report-btn svg{width:14px;height:14px;}

#crm-relatorio{display:none;}
#crm-relatorio.aberto{display:block;position:fixed;inset:0;z-index:9000;overflow:auto;
  background:rgba(6,6,10,.92);backdrop-filter:blur(5px);padding:30px 16px 104px;}

.rel-folha{--tinta:#14141c;--fraca:#6b6b7b;--linha:#e4e4ea;--pago:#0f7a52;--pend:#c98a04;
  --atraso:#b3261e;--barra:#4f46e5;
  max-width:820px;margin:0 auto;background:#fff;color:var(--tinta);border-radius:10px;
  padding:52px 54px 40px;font-family:'Inter',sans-serif;box-shadow:0 30px 90px rgba(0,0,0,.55);
  font-variant-numeric:tabular-nums;}

.rel-masthead{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;
  border-bottom:2px solid var(--tinta);padding-bottom:16px;margin-bottom:34px;}
.rel-eyebrow{font-size:.62rem;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;
  color:var(--barra);margin-bottom:7px;}
.rel-masthead h1{font-family:'Syne',sans-serif;font-size:1.62rem;letter-spacing:-.6px;margin:0 0 8px;}
.rel-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.74rem;color:var(--fraca);}
.rel-ref{font-family:'JetBrains Mono',monospace;font-size:.68rem;}
.rel-logo{font-family:'Syne',sans-serif;font-weight:800;font-size:1.15rem;color:var(--barra);flex-shrink:0;}

.rel-hero-rot{font-size:.64rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--fraca);}
.rel-hero-num{font-family:'Syne',sans-serif;font-size:2.5rem;font-weight:800;letter-spacing:-1.5px;
  line-height:1.1;margin:6px 0 18px;}
.rel-comp{display:flex;gap:2px;height:11px;margin-bottom:14px;}
.rel-comp-seg{border-radius:3px;min-width:3px;}
.rel-comp-seg.s-pago{background:var(--pago);} .rel-comp-seg.s-pendente{background:var(--pend);}
.rel-comp-seg.s-atraso{background:var(--atraso);}
.rel-comp-leg{display:flex;gap:30px;flex-wrap:wrap;margin-bottom:34px;}
.rel-comp-item{display:flex;align-items:baseline;gap:7px;font-size:.78rem;}
.rel-comp-item i{width:9px;height:9px;border-radius:3px;flex-shrink:0;align-self:center;}
.rel-comp-item i.s-pago{background:var(--pago);} .rel-comp-item i.s-pendente{background:var(--pend);}
.rel-comp-item i.s-atraso{background:var(--atraso);}
.rel-comp-item b{font-weight:600;} .rel-comp-item span{color:var(--fraca);}

.rel-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:38px;}
.rel-kpi{background:#f8f8fb;border-radius:9px;padding:14px 15px;}
.rel-kpi span{display:block;font-size:.6rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  color:var(--fraca);margin-bottom:7px;}
.rel-kpi b{display:block;font-size:1.06rem;font-weight:700;letter-spacing:-.3px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rel-kpi em{display:block;font-style:normal;font-size:.72rem;color:var(--fraca);margin-top:3px;}
.rel-kpi.alerta b{color:var(--atraso);}

.rel-folha section{margin-bottom:34px;}
.rel-folha h2{font-family:'Syne',sans-serif;font-size:.82rem;letter-spacing:1.2px;text-transform:uppercase;
  margin:0 0 12px;display:flex;align-items:center;gap:9px;}
.rel-cont{font-family:'Inter',sans-serif;font-size:.68rem;font-weight:600;color:var(--fraca);
  background:#f0f0f5;border-radius:20px;padding:2px 9px;letter-spacing:0;}

.rel-tab{width:100%;border-collapse:collapse;font-size:.8rem;}
.rel-tab th{text-align:left;font-size:.6rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  color:var(--fraca);border-bottom:1.5px solid var(--tinta);padding:0 8px 7px;}
.rel-tab td{padding:9px 8px;border-bottom:1px solid var(--linha);vertical-align:middle;}
.rel-tab .num{text-align:right;white-space:nowrap;}
.rel-tab tfoot td{border-bottom:none;border-top:1.5px solid var(--tinta);font-weight:700;padding-top:11px;}
.rel-zebra tbody tr:nth-child(even){background:#fafafc;}
.rel-tab td em{display:block;font-style:normal;font-size:.68rem;color:var(--fraca);margin-top:2px;}
.rel-mes{text-transform:capitalize;white-space:nowrap;}
.rel-venc{color:var(--fraca);white-space:nowrap;}
.rel-w{width:34%;}
.rel-minibar{display:block;height:8px;border-radius:3px;background:var(--barra);min-width:2px;}
.rel-pill{display:inline-block;font-size:.66rem;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap;}
.rel-pill.s-pago{background:rgba(15,122,82,.12);color:var(--pago);}
.rel-pill.s-pendente{background:rgba(201,138,4,.14);color:#8a5f03;}
.rel-pill.s-atraso{background:rgba(179,38,30,.12);color:var(--atraso);}

.rel-rodape{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;
  border-top:1px solid var(--linha);padding-top:14px;font-size:.66rem;color:var(--fraca);}

.rel-acoes{position:fixed;left:0;right:0;bottom:0;display:flex;gap:10px;justify-content:center;
  padding:14px;background:rgba(10,10,16,.95);border-top:1px solid rgba(255,255,255,.08);}
.rel-acoes button{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;
  border-radius:9px;padding:10px 20px;font-family:'Inter',sans-serif;font-size:.84rem;cursor:pointer;
  transition:background .15s;}
.rel-acoes button:hover{background:rgba(255,255,255,.12);}
.rel-acoes button.primario{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;font-weight:700;}

@media(max-width:720px){
  .rel-folha{padding:32px 24px;}
  .rel-kpis{grid-template-columns:repeat(2,1fr);}
  .rel-w{display:none;}
}

/* No papel: só a folha, sem fundo escuro nem botões. */
@media print{
  body>*{display:none !important;}
  #crm-relatorio.aberto{display:block !important;position:static !important;background:#fff !important;
    backdrop-filter:none !important;padding:0 !important;overflow:visible !important;}
  .rel-folha{box-shadow:none !important;border-radius:0 !important;padding:0 !important;max-width:none !important;}
  .rel-acoes{display:none !important;}
  .rel-tab{page-break-inside:auto;}
  .rel-tab tr{page-break-inside:avoid;}
  .rel-folha section{page-break-inside:avoid;}
  .rel-zebra tbody tr:nth-child(even){background:#fafafc !important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .rel-comp-seg,.rel-minibar,.rel-comp-item i,.rel-pill{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
}
