/* TekPrax shared identity. Layouts keep their own workspace behavior. */
:root{--tp-canvas:#f7f5ef;--tp-surface:#fffdf9;--tp-ink:#352343;--tp-copy:#594c63;--tp-muted:#695a73;--tp-line:#ded3e8;--tp-accent:#6535bb;--tp-accent-dark:#512797;--tp-lavender:#eee5f8;--tp-lime:#eaf0d7;--tp-column:1200px;--tp-gutter:24px;--tp-radius:22px}
body{background:var(--tp-canvas);color:var(--tp-copy)}
#app .navbar{background:#30223f!important;border-bottom:1px solid #665078;box-shadow:none!important}#app .navbar .nav-brand{color:#fff!important}#app .navbar .btn-primary{background:#dcecac!important;color:#354122!important}#app .navbar .btn-outline{color:#fff!important;border-color:#ac91cd!important}
#app .site-footer{background:#30223f;color:#e5d9ef;border:0}#app .site-footer a{color:#ecdef8!important;text-decoration:underline;text-underline-offset:3px}
#app :is(.btn-primary,.tp-data-primary,.tp-privacy-primary,.tp-legal-primary){background:var(--tp-accent);border-color:var(--tp-accent);color:#fff;border-radius:11px;box-shadow:none}#app :is(.btn-primary,.tp-data-primary,.tp-privacy-primary,.tp-legal-primary):hover{background:var(--tp-accent-dark);color:#fff}
#app .btn-outline{border-color:#bba4ce;color:#59367c;border-radius:11px}#app :is(.input-group input,.input-group select,.input-group textarea,.form-input){background:#fffdfb;color:var(--tp-ink);border-color:#cdbdd9;border-radius:10px}#app :is(.input-group label,.form-container label){color:var(--tp-copy)}#app :is(.input-group input,.input-group textarea)::placeholder{color:#73677c;opacity:1}
#app :is(button,a,input,textarea,select):focus-visible{outline:3px solid #956bca;outline-offset:3px}
/* Shared edges for full-width content, guide and subscription blocks. */
#app :is(.discover-page,.tp-legal-page,.tp-privacy-page,.tp-data-page){padding-left:var(--tp-gutter);padding-right:var(--tp-gutter);background:var(--tp-canvas)}
#app :is(.discover-shell,.tp-legal-shell,.tp-privacy-shell,.tp-data-shell){width:100%;max-width:var(--tp-column);margin-inline:auto}
#app .tp-how-card{width:100%;max-width:var(--tp-column);margin:24px auto;box-sizing:border-box}
#app main>.tp-how-card{width:calc(100% - var(--tp-gutter)*2)}
#app :is(.discover-shell,.vela-page,.tools-page)>.tp-how-card{width:100%}
#app .tp-r21-news{width:calc(100% - var(--tp-gutter)*2);max-width:var(--tp-column);padding:0;margin:24px auto 36px;box-sizing:border-box}
#app #discover-newsletter-slot .tp-r21-news{width:100%;margin:24px 0 0}
#app .tp-r21-news-card{width:100%;box-sizing:border-box}
#app .vela-page{width:100%;max-width:calc(var(--tp-column) + var(--tp-gutter)*2);padding-inline:var(--tp-gutter);margin-inline:auto}
#app :is(.tp-promo-card,.tp-discover-card){max-width:none;width:100%;box-sizing:border-box}
/* FAQ: one aligned column, even when the client-specific content is shown. */
#app .tp-faq-page{background:var(--tp-canvas)!important;padding:28px 0 8px!important;min-height:0!important}
#app .tp-faq-page>:is(.tp-faq-hero,.tp-faq-content,.tp-how-card){width:calc(100% - var(--tp-gutter)*2)!important;max-width:var(--tp-column)!important;margin:0 auto 24px!important;box-sizing:border-box}
#app .tp-faq-hero{background:radial-gradient(ellipse at 90% 10%,#674880,transparent 65%),#352343!important;border:1px solid #654979;border-radius:26px;padding:48px 32px!important;color:#fff}
#app .tp-faq-hero h1{color:#fff;letter-spacing:-1.2px;line-height:1.15}#app .tp-faq-hero p{color:#e8dff0!important}#app .tp-faq-hero>div>div{color:#e1edb5!important;border-color:#8b799b!important;background:#ffffff12!important}
#app .tp-faq-content{background:var(--tp-surface)!important;border:1px solid var(--tp-line)!important;border-radius:var(--tp-radius)!important;padding:32px!important;box-shadow:0 5px 0 #e8e0ed!important}
#app .tp-faq-content>h2{color:var(--tp-ink)!important;border-color:var(--tp-line)!important;line-height:1.3}
#app .tp-faq-content>div[style*="display:grid"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
#app .tp-faq-content>div[style*="display:grid"]>div{background:var(--tp-lavender)!important;border:1px solid #d9c7e9!important;border-radius:16px!important;padding:22px!important;min-width:0}
#app .tp-faq-content>div[style*="display:grid"]>div:nth-child(2){background:var(--tp-lime)!important;border-color:#d1dcb8!important}
#app .tp-faq-content>div[style*="display:grid"] strong{color:var(--tp-ink)!important}#app .tp-faq-content>div[style*="display:grid"] span{color:var(--tp-copy)!important}
#app .tp-faq-content>div[style*="display:grid"] a{background:var(--tp-accent)!important;color:#fff!important;white-space:normal!important;min-height:44px}
#app .faq-accordion{background:transparent;border-color:var(--tp-line);border-radius:12px}#app .faq-accordion:hover,#app .faq-accordion.is-open{background:#f5effb}#app .faq-btn{color:var(--tp-ink);padding:22px 16px;line-height:1.55;font-size:16px}#app .faq-btn .symbol{color:var(--tp-accent);background:#ede2f8;display:grid;place-items:center;min-width:28px;height:28px;border-radius:50%}#app .faq-panel{background:transparent;padding:0 18px 25px}#app .faq-panel :is(p,li){color:var(--tp-copy)}#app .faq-panel a{color:#613493}#app .faq-table th{background:var(--tp-lavender);color:var(--tp-ink)}#app .faq-table :is(th,td){border-color:var(--tp-line)}
/* Legal and account-information pages. */
#app :is(.tp-legal-shell,.tp-privacy-shell,.tp-data-shell){background:var(--tp-surface);border-color:var(--tp-line);border-radius:26px;box-shadow:0 5px 0 #e8e0ed}
#app :is(.tp-legal-head,.tp-privacy-head,.tp-data-head){background:linear-gradient(125deg,#352343,#604277);color:#fff}#app :is(.tp-legal-head,.tp-privacy-head,.tp-data-head) :is(h1,.badge){color:#fff}#app :is(.tp-legal-head,.tp-privacy-head,.tp-data-head) p{color:#e8dff0}
#app :is(.tp-legal-intro,.tp-privacy-intro,.tp-data-callout,.tp-legal-note,.tp-privacy-card){background:var(--tp-lavender);border-color:#b896d4;color:var(--tp-copy)}
#app :is(.tp-legal-section,.tp-privacy-section,.tp-data-section){border-color:var(--tp-line)}#app :is(.tp-legal-section,.tp-privacy-section,.tp-data-section) :is(h2,h3,strong){color:var(--tp-ink)}#app :is(.tp-legal-section,.tp-privacy-section,.tp-data-section) :is(p,li){color:var(--tp-copy)}
#app :is(.tp-legal-section,.tp-privacy-section,.tp-legal-links,.tp-privacy-links,.tp-legal-intro,.tp-privacy-intro) a{color:#613493}#app .tp-privacy-grid>div{background:#f7f1fb;border-color:var(--tp-line);border-radius:16px}#app .tp-privacy-grid b{color:var(--tp-ink)}
/* Reusable dashboard surfaces. Preserve success, warning and destructive colors. */
#app :is(.search-widget,.form-container,.admin-card,.projeto-card,.profissional-card,.frozen-funds-card){border-radius:var(--tp-radius);border-color:var(--tp-line);box-shadow:0 5px 18px #35234308}
#app :is(.search-widget,.form-container){background:var(--tp-surface)!important;border:1px solid var(--tp-line)}
#app :is(.search-widget,.form-container) :is(h1,h2,h3){color:var(--tp-ink)!important}
#app .wallet-hero-brl{background:linear-gradient(120deg,#352343,#604277);border:1px solid #6d527f;border-radius:24px;color:#fff}#app .wallet-hero-brl :is(h1,h2,h3,p,label){color:#f2eaf7}#app .wallet-hero-gold{background:linear-gradient(120deg,#e8edcf,#f7f3e4);border-color:#ccd7a5;border-radius:24px;color:#3e4e2c}
#app :is(.tp-commerce-block,.package-card){border-radius:22px;box-shadow:0 4px 16px #35234308}
#app :is(.modal-content,.tp-r21-card){border-radius:22px;border:1px solid var(--tp-line);background:var(--tp-surface)}
#app :is(.chat-sidebar,.chat-input-area){background:var(--tp-surface);border-color:var(--tp-line)}#app .chat-tabs{background:#f2ebf8;border-color:var(--tp-line)}#app .chat-tab-btn.active{color:var(--tp-accent);border-color:var(--tp-accent)}
/* Tool chrome only: document pages, image previews and authored colors stay editable. */
#app .tools-landing{background:linear-gradient(125deg,#352343,#604277);border-color:#694c80;border-radius:24px}#app .tools-landing :is(h1,h2,h3){color:#fff}#app .tools-landing :is(p,.tools-landing-kicker){color:#e8dff0}
#app :is(.tools-action-card,.tools-info-box){background:var(--tp-surface);border-color:var(--tp-line);border-radius:18px;box-shadow:0 4px 16px #35234308;color:var(--tp-ink)}#app .tools-action-card :is(h3,strong,.name){color:var(--tp-ink)}#app .tools-action-card p{color:var(--tp-copy)}#app .tools-action-card:hover{border-color:#b08bce;background:#f6effc}
#app :is(.tools-toolbar,.tools-editor-description,.tools-nav){background:#f3edf8;border-color:var(--tp-line);color:var(--tp-copy)}
#app .tp-drive-page{background:var(--tp-canvas)}#app .tp-drive-shell{border-color:var(--tp-line);border-radius:24px;background:var(--tp-surface);box-shadow:none}#app .tp-drive-head{background:linear-gradient(125deg,#352343,#604277);color:#fff}#app .tp-drive-head :is(h1,h2,p){color:#fff}#app :is(.tp-drive-toolbar,.tp-drive-sidebar){background:#f4eef9;border-color:var(--tp-line)}#app :is(.tp-drive-card,.tp-drive-folder-card){background:var(--tp-surface);border-color:var(--tp-line);border-radius:18px;box-shadow:0 4px 0 #e8e0ed}#app :is(.tp-drive-card,.tp-drive-folder-card) h3{color:var(--tp-ink)}#app :is(.tp-drive-meta,.tp-drive-folder-meta,.tp-drive-folder-hint){color:var(--tp-copy)}#app :is(.tp-drive-card,.tp-drive-folder-card).is-selected{background:var(--tp-lavender);border-color:#9365bb}
@media(max-width:700px){:root{--tp-gutter:18px}#app .tp-faq-hero{padding:32px 22px!important}#app .tp-faq-content{padding:20px 16px!important}#app .tp-faq-content>div[style*="display:grid"]{grid-template-columns:1fr!important}#app .faq-btn{font-size:15px;padding:18px 10px}#app :is(.tp-legal-shell,.tp-privacy-shell,.tp-data-shell){border:1px solid var(--tp-line);border-radius:22px}#app .tp-how-card{margin-block:20px}}
#app>main.feed-container{width:calc(100% - var(--tp-gutter)*2)!important;max-width:var(--tp-column)!important;margin-inline:auto;padding-inline:0!important}
#app .tp-faq-content>div[style*="display:grid"]:has(>div:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr))!important}
#app .tools-launch-card{background:var(--tp-surface);border-color:var(--tp-line);border-radius:18px;box-shadow:0 4px 0 #d8cbe3;color:var(--tp-ink)}#app .tools-launch-card :is(b,b span){color:var(--tp-ink)}#app .tools-launch-card>span{color:var(--tp-copy)}#app .tools-launch-card em{color:#613493}#app .tools-launch-card .tool-emoji{background:var(--tp-lavender);border-color:#d9c7e9}#app .tools-launch-card:hover{border-color:#b18dcb;box-shadow:0 7px 0 #d8cbe3}#app .tools-landing-head{border-color:#806390}
#app .tp-drive-primary{background:var(--tp-accent);color:#fff}#app .tp-drive-folder-create{background:#e1edb5;color:#3f5129;border-color:#c7d697}#app :is(.tp-drive-kicker,.tp-drive-drop-hint){color:#e1edb5}
#app .tools-main:not(.tools-main-editor){width:calc(100% - var(--tp-gutter)*2)!important;max-width:var(--tp-column)!important;margin-inline:auto;padding-inline:0!important}
#app .tools-main>.tp-how-card{width:100%}#app .tp-how-shell{width:100%;max-width:var(--tp-column)}#app .tp-how-page{padding-inline:var(--tp-gutter);background:var(--tp-canvas)}
@media(max-width:700px){#app .tp-faq-content>div[style*="display:grid"]:has(>div:nth-child(3)){grid-template-columns:1fr!important}}
#app .tools-launch-card{--card-accent:#9a76b9!important}#app .tools-launch-card:nth-child(3n+2){--card-accent:#91a369!important}#app .tools-launch-card:nth-child(3n){--card-accent:#b59270!important}#app .tools-launch-card::after{opacity:.25}#app .tools-landing-kicker{background:#ffffff12;border-color:#8b719e;color:#f0e6f8}#app .tools-landing-highlights :is(span,button){background:#f5eefb;color:#563373;border-color:#d6c1e6;box-shadow:none}
#app .wallet-hero .btn-primary{background:#e1edb5!important;color:#3d4e28!important;box-shadow:none!important;border-color:#c7d697}#app .wallet-hero .btn-primary+.btn-primary{background:#fffdf9!important;color:#563373!important}
#app #view-cliente>div[style*="background:linear-gradient"]{background:var(--tp-lime)!important;border-color:#cdd9ac!important;box-shadow:none!important;border-radius:20px!important}#app #view-cliente>div[style*="background:linear-gradient"] :is(strong,span){color:#435432!important}
#app .feed-container>h2,#app .feed-container>h1{color:var(--tp-ink)!important;border-color:var(--tp-line)!important}
#app :is(#bloco-depositos-pendentes-cli,#bloco-depositos-pendentes-prof){background:var(--tp-lavender)!important;border-color:var(--tp-line)!important}#app :is(#bloco-depositos-pendentes-cli,#bloco-depositos-pendentes-prof) h3{color:#59367c!important}
/* Orbital signature: the original moving rings, recolored for the current brand. */
#app .tp-orbital-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none;white-space:nowrap}
#app .tp-brand-atom{display:inline-flex;position:relative;width:44px;height:44px;flex:0 0 44px;margin:0;perspective:500px}
#app .tp-brand-atom .atom-orbit{border:2px solid #c5a7e8;width:100%;height:100%}
#app .tp-brand-atom .atom-orbit::before{width:7px;height:7px;top:-4px;background:#e1efa8;box-shadow:0 0 7px #dcecac60}
#app .tp-brand-atom .atom-nucleus{width:10px;height:10px;background:#e1efa8;box-shadow:0 0 10px #c4a2e760}
#app .tp-brand-atom .orbit-1{animation:spinOrbit1 3s linear infinite}#app .tp-brand-atom .orbit-2{animation:spinOrbit2 3s linear infinite}
#app .navbar .tp-brand-name{font-size:28px;font-weight:850;letter-spacing:-1px;color:#fff}
#app .tp-login-brand{display:inline-flex;gap:14px;align-items:center;text-decoration:none;letter-spacing:0}
#app .tp-login-brand .tp-brand-name{font-size:36px;font-weight:850;letter-spacing:-1.5px;align-self:center;margin:0;line-height:1.2;color:#352343}
#app .tp-login-brand sup{font-size:12px;vertical-align:super;letter-spacing:0;margin-left:3px}
#app .tp-login-brand .atom-orbit{border-color:#8154b1}#app .tp-login-brand .atom-orbit::before{background:#6535bb;box-shadow:0 0 6px #6535bb30}#app .tp-login-brand .atom-nucleus{background:#352343;box-shadow:none!important;filter:none!important}
#app .tp-footer-brand{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin:0 0 14px;color:#fff;font-size:21px;font-weight:800;letter-spacing:-.6px}
#app .tp-footer-brand img{object-fit:contain;width:38px;height:38px}#app .tp-footer-brand sup{font-size:9px;margin-left:2px}
#app .tp-page-brand-mark{display:block;width:48px;height:48px;object-fit:contain;margin:0 0 14px;flex-shrink:0}
#app .tp-auth-tab .tp-page-brand-mark{width:34px;height:34px;margin:0 8px 0 0}#app .tp-access-head .tp-page-brand-mark{margin:0 auto 12px}
#modal-suporte .teka-chat-card{border-color:#cdb8df;background:#fffdf9;box-shadow:0 24px 70px #35234335}
#modal-suporte .teka-composer{background:#fffdf9}#modal-suporte .teka-link-chip{color:#59367c;border-color:#cdb6df;background:#fffdf9}
#modal-suporte .teka-msg-time,#modal-suporte .teka-msg-status{opacity:1}#modal-suporte .teka-msg-actions button{color:#59367c}
#modal-suporte .teka-send-button:focus-visible,#modal-suporte .teka-link-chip:focus-visible,#modal-suporte .teka-close:focus-visible{outline:3px solid #bca0d8;outline-offset:3px}
#btn-floating-support.btn-floating-support{border-color:#d9c7e9!important;background:#eee5f8!important}
body:has(#modal-suporte[style*="display: flex"]) #btn-floating-support{visibility:hidden}
@media(max-width:700px){#app .navbar .tp-brand-name{font-size:24px}#app .tp-orbital-brand{gap:9px}#app .tp-brand-atom{width:35px;height:35px;flex-basis:35px}#app .tp-login-brand{gap:10px}#app .tp-login-brand .tp-brand-name{font-size:29px}}
@media(prefers-reduced-motion:reduce){#app .tp-brand-atom .atom-orbit{animation:none!important}}
#app .tp-login-brand .tp-brand-atom,#app .tp-brand-atom span{margin:0;align-self:auto}
#modal-suporte .teka-chat-card{padding:0!important}#modal-suporte .teka-chat-header{flex-shrink:0}#modal-suporte .teka-composer{flex-shrink:0}#modal-suporte #suporte-chat-mensagens{min-height:0}

/* Shared two-orbit loader, including the first paint before JavaScript starts. */
:is(#app,#tekprax-route-loader-native) .tp-loading-screen{background:#f7f5ef!important;color:#59367c}
:is(#app,#tekprax-route-loader-native) .tp-loading-screen .atom-orbit{border-color:#a881c6}
:is(#app,#tekprax-route-loader-native) .tp-loading-screen .atom-orbit::before{background:#6535bb;box-shadow:0 0 8px #9365bb55}
:is(#app,#tekprax-route-loader-native) .tp-loading-screen .atom-nucleus{background:#352343;box-shadow:none!important;filter:none!important}
:is(#app,#tekprax-route-loader-native) .tp-loading-screen h3{color:#59367c!important}
:is(#app,#tekprax-route-loader-native) .tp-loading-screen p{color:#695078!important}

#app .vela-hero:after{content:"";width:66px;height:66px;right:3%;bottom:3%;background:#665174;opacity:.4;transform:none;mask:url('/assets/img/brand/logo_roxa.png') center/contain no-repeat;-webkit-mask:url('/assets/img/brand/logo_roxa.png') center/contain no-repeat;pointer-events:none}

/* R10 — proportions and depth share the same art coordinate system. */
#app .vela-candelabro,#app .vela-mural-art{container-type:inline-size}
#app .vela-candelabro .vela-slot,#app .vela-mural-art .vela-mural-slot{width:19%;z-index:4}
#app .vela-slot-candle,#app .vela-mural-slot>span{width:100%}
#app .vela-candelabro .vela-slot-candle svg,
#app #mural-velas-tekprax .vela-mural-art .vela-mural-slot>span svg{width:100%!important;height:auto!important;max-width:none!important}
#app .vela-candelabro .vela-slot-1,#app .vela-mural-art .vela-mural-slot-1{z-index:10}
#app .vela-candelabro .vela-slot-2,#app .vela-candelabro .vela-slot-3,#app .vela-mural-art .vela-mural-slot-2,#app .vela-mural-art .vela-mural-slot-3{z-index:9;width:18.3%}
#app .vela-candelabro .vela-slot-4,#app .vela-candelabro .vela-slot-5,#app .vela-mural-art .vela-mural-slot-4,#app .vela-mural-art .vela-mural-slot-5{z-index:8;width:17.6%}
#app .vela-candelabro .vela-slot-6,#app .vela-candelabro .vela-slot-7,#app .vela-mural-art .vela-mural-slot-6,#app .vela-mural-art .vela-mural-slot-7{z-index:7;width:16.9%}
#app .vela-slot-label{bottom:calc(26cqw + 8px)}
#app .vela-candelabro-preview .vela-candelabro-base{top:16%}
#app .vela-hero{isolation:isolate}
#app .vela-hero:after{height:52%;width:auto;aspect-ratio:1;right:5%;bottom:16%;opacity:.24;z-index:0;background:#806491}
#app .vela-hero>div{position:relative;z-index:1}
#app .vela-hero-art{padding-bottom:28px}
#app .vela-hero-art>span{position:relative;top:27px;margin-top:14px}
#app #vela-publica-container .vela-tab-sheet{border-color:#ded3e8;background:#fffdfa;border-radius:0 0 26px 26px;padding:clamp(14px,3vw,28px);box-shadow:0 12px 32px #35234308}
#app #vela-publica-container .vela-stage{background:radial-gradient(ellipse at 50% 35%,#fff8e6,#f7f2ec 75%);border:1px solid #e4d7c6;border-radius:22px}
#app #vela-publica-container .vela-detail-panel{background:#faf6ff;border:1px solid #ded3e8;border-radius:22px;padding:clamp(18px,3vw,28px);color:#594c63}
#app #vela-publica-container .vela-detail-panel h1{color:#352343!important}
#app #vela-publica-container .vela-message{background:#eee5f7;border-color:#b899d0;color:#59367c}
#app .vela-page .tp-discover-card>div{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
#app .vela-page .tp-discover-card>div>div{background:transparent!important}
#app .vela-tab-more[open]{z-index:30}
#app .vela-tab-more-menu{width:min(360px,calc(100vw - 28px));box-sizing:border-box}
#vela-mural-more-menu[popover]{position:fixed!important;inset:auto;margin:0;box-sizing:border-box;width:min(360px,calc(100vw - 24px))!important;max-width:none!important;max-height:min(380px,60vh);color:#352343;border:1px solid #ded3e8;background:#fffdfa;z-index:100100}
#vela-mural-more-menu .vela-mural-more-item{white-space:normal;min-height:64px}
#vela-mural-more-menu .vela-mural-more-item span{white-space:normal;overflow:visible;text-overflow:clip}
@media(max-width:650px){#app .vela-hero:after{height:38%;bottom:5%;right:8%}}
#app .vela-hero-art{padding-bottom:0}
#app .vela-hero-art:before{bottom:55px}
#app .vela-hero-art>span{top:0;margin-top:28px}
#vela-mural-more-menu .vela-mural-more-item strong{color:#352343}
#vela-mural-more-menu .vela-mural-more-item>span>span{color:#695a73}
