:root{--purple:#6b36d7;--purple-dark:#4d20a9;--lilac:#f0eaff;--ink:#25203a;--muted:#8a849d;--line:#eeeaf5;--surface:#fff;--bg:#faf9fd;--green:#1fa884;--yellow:#f6b93b;--pink:#ed6d9a;--blue:#4b8ce8;--shadow:0 12px 40px rgba(56,31,100,.07);--radius:20px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #cbb7ff;outline-offset:2px}.hidden{display:none!important}.brand{display:flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-size:25px;font-weight:500;letter-spacing:-1.2px;color:var(--ink)}.brand-bold{font-weight:800;color:var(--purple)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,#8e62f1,#5a28c5);color:#fff;font-size:26px;box-shadow:0 7px 18px #7544d540}.brand-light{color:#fff}.brand-light .brand-bold{color:#f3c9ff}.brand-light .brand-mark{background:#ffffff22;box-shadow:none;border:1px solid #ffffff36}.eyebrow,.section-kicker{font-size:10px;letter-spacing:1.7px;font-weight:800}.purple{color:var(--purple)}.muted{color:var(--muted);line-height:1.6}.small{font-size:12px}.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(390px,47%) 1fr;background:#fff}.auth-art{position:relative;overflow:hidden;padding:42px 8%;background:radial-gradient(circle at 20% 90%,#a66ff5 0,transparent 34%),linear-gradient(145deg,#5122ae 0%,#6c35d5 54%,#a052d4 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.auth-copy{position:relative;z-index:1;max-width:480px;margin:auto 0;padding:55px 0}.auth-copy .eyebrow{color:#e4ceff}.auth-copy h1{font-family:Manrope,sans-serif;font-size:clamp(40px,4.6vw,64px);line-height:1.1;letter-spacing:-2.8px;margin:20px 0}.auth-copy h1 em{font-style:normal;color:#f5cbff}.auth-copy p{max-width:380px;font-size:16px;line-height:1.8;color:#e8ddff}.floating-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.floating-pills span{padding:11px 15px;border-radius:30px;background:#ffffff18;border:1px solid #ffffff29}.auth-art-bottom{font-size:12px;color:#e6d7ff}.auth-panel{padding:40px 8%;display:flex;flex-direction:column;justify-content:center;position:relative}.auth-form-wrap{width:min(100%,390px);margin:auto}.auth-form-wrap h2{font-family:Manrope,sans-serif;font-size:30px;letter-spacing:-1px;margin:12px 0 5px}.auth-form-wrap>p{margin:0 0 30px}.brand-mobile{display:none;margin-bottom:35px}.form-stack{display:flex;flex-direction:column;gap:18px}.form-stack label,.modal-fields label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:#4e4762}.form-stack input,.modal-fields input,.modal-fields select,.modal-fields textarea,.select-filter{width:100%;border:1px solid #e8e2f1;border-radius:12px;background:#fff;padding:13px 14px;color:var(--ink);outline:none;transition:.2s}.form-stack input:focus,.modal-fields input:focus,.modal-fields textarea:focus,.modal-fields select:focus{border-color:#9c7bea;box-shadow:0 0 0 4px #f1ebff}.btn{border:0;border-radius:12px;padding:12px 17px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .18s,box-shadow .18s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#7947e4,#5c2ac5);color:white;box-shadow:0 7px 16px #713bd529}.btn-primary:hover{box-shadow:0 10px 22px #713bd540}.btn-full{width:100%;padding:15px}.btn-full span{font-size:18px;margin-left:auto}.btn-soft{background:#f3effa;color:#5b4c79}.text-button{border:0;background:none;color:var(--purple);font-size:12px;font-weight:800;padding:2px}.auth-note{display:flex;gap:12px;background:#faf7ff;border:1px solid #eee5ff;border-radius:14px;padding:14px;margin-top:26px;color:#756b8a;font-size:11px;line-height:1.6}.note-icon{font-size:18px}.auth-error{color:#c93659;font-size:12px;min-height:16px}.auth-footer{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#aaa3b8;text-align:center}.auth-footer span{color:#c8b9e9;margin:0 7px}.app-shell{min-height:100vh}.sidebar{width:258px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid #f0edf6;padding:24px 16px 18px;display:flex;flex-direction:column;z-index:20}.sidebar-top{display:flex;align-items:center;justify-content:space-between;padding:0 8px 27px}.sidebar .brand{font-size:24px}.house-chip{display:flex;align-items:center;gap:11px;padding:13px 10px;border-radius:15px;background:#faf7ff;border:1px solid #f0e9ff;margin-bottom:23px}.house-avatar{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:#eee4ff;font-size:21px}.house-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.house-meta strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.house-meta small{font-size:10px;color:var(--muted);text-transform:capitalize}.online-dot{width:7px;height:7px;background:#2dc69a;border-radius:50%;align-self:flex-start;margin-top:5px}.nav-menu{overflow:auto;flex:1;padding:0 2px}.nav-label{font-size:9px;letter-spacing:1.5px;color:#aaa3bb;font-weight:800;padding:14px 12px 8px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;border:0;background:transparent;text-align:left;color:#7e778f;padding:11px 12px;border-radius:12px;margin:2px 0;font-weight:600;font-size:12px;transition:.18s}.nav-item:hover{background:#faf7ff;color:var(--purple)}.nav-item.active{background:#eee7ff;color:#5b2ac6;font-weight:800}.nav-icon{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:#f4f0fb;font-size:15px}.nav-item.active .nav-icon{background:#fff}.nav-count{margin-left:auto;background:#fff;border-radius:20px;padding:3px 7px;font-size:10px}.sidebar-bottom{padding-top:16px}.help-card{display:flex;align-items:center;gap:10px;padding:13px 11px;background:linear-gradient(120deg,#fbf1ff,#f3efff);border-radius:14px;margin-bottom:12px}.help-card>span{font-size:22px}.help-card div{display:flex;flex-direction:column;gap:4px}.help-card strong{font-size:11px}.help-card small{font-size:10px;color:var(--muted)}.logout-button{display:flex;align-items:center;gap:12px;width:100%;padding:11px 13px;background:none;border:0;color:#8b829b;text-align:left;font-weight:700;font-size:12px}.logout-button span{font-size:19px}.main-area{margin-left:258px;min-height:100vh;padding:0 34px 20px;display:flex;flex-direction:column}.topbar{height:103px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0edf5;flex-shrink:0}.topbar-left{display:flex;align-items:center;gap:14px}.breadcrumb{font-size:9px;letter-spacing:1.4px;color:#a29bb3;font-weight:800;margin-bottom:7px}.breadcrumb span{padding:0 8px;color:#d2c9e3}.breadcrumb b{color:#756b8a}.topbar h1{font:800 25px Manrope,sans-serif;letter-spacing:-.7px;margin:0}.topbar-right{display:flex;align-items:center;gap:16px}.today-chip{display:flex;align-items:center;gap:8px;color:#827991;font-size:11px;background:#fff;border:1px solid #eeeaf5;padding:10px 13px;border-radius:12px}.today-chip span:first-child{color:#f3b13c;font-size:17px}.user-avatar{width:39px;height:39px;border-radius:14px;background:linear-gradient(135deg,#f5c4e6,#d9c5ff);display:grid;place-items:center;color:#6034b7;font-weight:800}.icon-button{width:36px;height:36px;border:1px solid #eee8f6;background:#fff;border-radius:11px;color:#756a8b;font-size:18px;display:grid;place-items:center}.menu-toggle,.mobile-close{display:none}.page-content{padding-top:25px;flex:1}.welcome-banner{position:relative;overflow:hidden;min-height:178px;border-radius:22px;padding:30px 34px;background:linear-gradient(110deg,#6732cd,#8550e3 64%,#a35ee0);color:#fff;display:flex;align-items:center;justify-content:space-between}.welcome-banner .eyebrow{color:#e8d9ff}.welcome-banner h2{font:800 clamp(22px,2.3vw,30px) Manrope,sans-serif;letter-spacing:-1px;margin:12px 0 8px;position:relative;z-index:2}.welcome-banner p{margin:0;color:#e8dcff;font-size:12px;position:relative;z-index:2}.welcome-flower{position:relative;z-index:2;font-size:106px;line-height:1;color:#f4d7ff;text-shadow:0 10px 28px #42139a44;transform:rotate(-13deg);margin-right:35px}.banner-orb{position:absolute;border-radius:50%;border:1px solid #ffffff20}.orb-one{width:270px;height:270px;right:5%;top:-120px}.orb-two{width:190px;height:190px;right:17%;bottom:-140px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:20px 0}.stat-card{background:#fff;border:1px solid #f0edf5;border-radius:18px;padding:18px;box-shadow:0 4px 15px #4e288b05;min-width:0}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.stat-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;font-size:19px}.stat-trend{font-size:9px;color:#26a780;background:#eafaf4;padding:5px 7px;border-radius:7px;font-weight:800}.stat-value{font:800 26px Manrope,sans-serif;margin:13px 0 3px;letter-spacing:-.8px}.stat-label{font-size:11px;color:#8d849e}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.9fr);gap:16px;margin-bottom:16px}.panel,.table-panel{background:#fff;border:1px solid #f0edf5;border-radius:18px;padding:21px;box-shadow:0 4px 15px #4e288b05}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.section-kicker{color:#a49bb7;font-size:9px}.panel-heading h3{font:800 16px Manrope,sans-serif;margin:5px 0 0;letter-spacing:-.3px}.link-button{border:0;background:none;color:var(--purple);font-size:10px;font-weight:800;white-space:nowrap}.event-list{display:flex;flex-direction:column;gap:11px}.event-row{display:flex;align-items:center;gap:12px;padding:11px;background:#fcfbfe;border-radius:13px}.event-date{width:45px;height:48px;flex-shrink:0;border-radius:11px;background:#f0eaff;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b36d7}.event-date strong{font:800 18px Manrope}.event-date small{font-size:8px;text-transform:uppercase;font-weight:800}.event-info{min-width:0;flex:1}.event-info strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-info small{display:block;font-size:10px;color:#968da7;margin-top:5px}.event-tag{font-size:9px;padding:6px 8px;border-radius:8px;background:#eafaf4;color:#168d6d;font-weight:800}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.quick-action{min-height:142px;border:1px solid #eee7f6;border-radius:17px;padding:18px 12px;background:linear-gradient(160deg,#fff 0%,#fcfaff 100%);display:flex;align-items:center;justify-content:flex-start;flex-direction:column;gap:10px;color:#514565;font-size:12px;font-weight:700;text-align:center;transition:transform .18s,border-color .18s,box-shadow .18s;box-shadow:0 5px 16px #4e288b08}.quick-action:hover{border-color:#cdb8ff;background:#fbf8ff;transform:translateY(-3px);box-shadow:0 12px 24px #4e288b12}.quick-action span{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;font-size:25px;flex-shrink:0}.quick-action strong{font-size:12px;line-height:1.35}.quick-action small{font-size:10px;line-height:1.4;color:#9a90ac;font-weight:500}.activity-list{display:flex;flex-direction:column}.activity-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid #f5f2f8}.activity-row:first-child{border-top:0}.activity-symbol{width:35px;height:35px;border-radius:12px;background:#f3efff;display:grid;place-items:center;font-size:16px}.activity-copy{flex:1;min-width:0}.activity-copy strong{display:block;font-size:11px}.activity-copy small{display:block;color:#9c94ad;font-size:10px;margin-top:4px}.activity-date{font-size:10px;color:#9c94ad}.soft-badge{font-size:9px;padding:7px 9px;border-radius:8px;background:#eafaf4;color:#218e70;font-weight:800}.empty-state{padding:25px 10px;text-align:center;color:#9a91ab}.empty-state>span{font-size:27px}.empty-state p{font-size:11px}.empty-state.compact{padding:14px}.module-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.module-intro p{font-size:12px;color:#8e859f;margin:7px 0 0}.module-stats{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.mini-stat{padding:11px 15px;border-radius:12px;background:#fff;border:1px solid #f0edf5;font-size:11px;color:#8c829c}.mini-stat strong{font-size:15px;color:var(--ink);margin-right:7px}.table-panel{padding:0;overflow:hidden}.table-toolbar{padding:17px 19px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #f2eef7}.search-box{display:flex;align-items:center;gap:8px;border:1px solid #eee9f5;background:#fcfbfe;padding:0 12px;border-radius:11px;width:min(330px,100%);color:#a198b2}.search-box span{font-size:22px}.search-box input{border:0;background:transparent;outline:0;padding:10px 0;width:100%;min-width:0;color:var(--ink)}.toolbar-right{display:flex;align-items:center;gap:9px}.select-filter{width:auto;min-width:145px;padding:10px;font-size:11px;color:#766b89}.records-container{overflow-x:auto}.records-table{width:100%;border-collapse:collapse;white-space:nowrap}.records-table th{background:#fcfbfe;color:#a098b1;font-size:9px;letter-spacing:1px;text-align:left;padding:13px 19px;font-weight:800}.records-table td{padding:14px 19px;border-top:1px solid #f3f0f7;font-size:11px;color:#665d78}.records-table tr:hover td{background:#fdfbff}.primary-cell{font-weight:800;color:#39304f!important}.table-sub{display:block;color:#aaa2b8;font-size:10px;margin-top:4px}.status-pill{display:inline-block;border-radius:7px;padding:6px 9px;font-size:9px;font-weight:800;background:#f2eff8;color:#756b8a}.status-pill.paid,.status-pill.pago,.status-pill.confirmado,.status-pill.ativo,.status-pill.aprovado{background:#e8faf3;color:#168c69}.status-pill.pendente,.status-pill.agendado,.status-pill.em-aberto{background:#fff4dc;color:#b77a13}.status-pill.atrasado,.status-pill.cancelado,.status-pill.vencido{background:#ffe9ef;color:#c44568}.row-actions{display:flex;gap:5px}.tiny-action{border:1px solid #eee8f5;background:#fff;border-radius:8px;padding:6px 8px;color:#7a6b94;font-size:10px}.tiny-action.delete{color:#c84c70}.records-empty{text-align:center;padding:50px 20px;color:#9a91ab}.records-empty span{font-size:35px}.records-empty h3{font-size:14px;color:#514665}.records-empty p{font-size:11px}.app-footer{display:flex;justify-content:space-between;gap:12px;padding:22px 3px 4px;color:#aaa2b7;font-size:10px}.app-footer span:first-child{font-weight:800;letter-spacing:1px;color:#8a7da5}.modal-backdrop{position:fixed;inset:0;background:#21163780;backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;z-index:60;overflow:auto}.modal-card{width:min(100%,640px);max-height:min(90vh,850px);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 25px 90px #23123d40;padding:25px}.modal-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:22px}.modal-header h2{font:800 23px Manrope,sans-serif;letter-spacing:-.6px;margin:7px 0}.modal-header p{font-size:11px;color:#948aa5;margin:0}.modal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.modal-fields .full-field{grid-column:1/-1}.modal-fields textarea{min-height:95px;resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid #f0edf5}.setup-card{width:min(100%,480px)}.toast{position:fixed;z-index:100;top:20px;right:20px;max-width:min(380px,calc(100% - 40px));background:#2c2142;color:#fff;padding:13px 17px;border-radius:12px;box-shadow:var(--shadow);font-size:12px;opacity:0;transform:translateY(-10px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#b52f57}.sidebar-scrim{display:none}
@media(max-width:1150px){.sidebar{width:235px}.main-area{margin-left:235px;padding:0 24px 20px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}.welcome-flower{margin-right:10px}.auth-layout{grid-template-columns:42% 1fr}.auth-art{padding:35px 7%}.auth-panel{padding:35px 6%}}
@media(max-width:760px){.auth-layout{display:block}.auth-art{min-height:auto;padding:25px 25px 18px}.auth-copy{padding:28px 0 24px}.auth-copy h1{font-size:39px;letter-spacing:-1.8px;margin:12px 0}.auth-copy p{font-size:13px;margin-bottom:0}.floating-pills{margin-top:17px}.auth-art-bottom{display:none}.auth-panel{padding:30px 25px 20px;min-height:490px}.brand-mobile{display:flex}.auth-form-wrap h2{font-size:26px}.auth-footer{margin-top:20px}.sidebar{transform:translateX(-100%);transition:transform .25s;width:min(290px,86vw);box-shadow:15px 0 50px #28134412}.sidebar.open{transform:translateX(0)}.sidebar-scrim.show{display:block;position:fixed;inset:0;background:#20133566;z-index:19}.mobile-close{display:grid}.main-area{margin-left:0;padding:0 15px 18px}.topbar{height:82px}.menu-toggle{display:grid}.topbar-left{gap:10px}.topbar h1{font-size:21px}.breadcrumb{font-size:8px}.today-chip{display:none}.page-content{padding-top:17px}.welcome-banner{padding:24px 22px;min-height:160px}.welcome-banner h2{font-size:23px;max-width:310px}.welcome-banner p{max-width:260px;line-height:1.5}.welcome-flower{position:absolute;right:-5px;bottom:15px;font-size:66px;opacity:.55}.stats-grid{gap:10px;margin:13px 0}.stat-card{padding:14px;border-radius:15px}.stat-icon{width:33px;height:33px;font-size:16px}.stat-value{font-size:23px;margin-top:11px}.stat-label{font-size:10px}.panel{padding:16px;border-radius:15px}.panel-heading h3{font-size:15px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-action{min-height:125px;font-size:11px;padding:14px 9px}.quick-action span{width:44px;height:44px;font-size:22px}.quick-action strong{font-size:11px}.quick-action small{font-size:9px}.dashboard-columns{gap:12px;margin-bottom:12px}.activity-panel{padding:16px}.activity-date,.soft-badge{display:none}.module-intro{align-items:flex-start;flex-direction:column}.module-intro .btn{width:100%}.table-toolbar{padding:12px;flex-direction:column;align-items:stretch}.search-box{width:100%}.toolbar-right{width:100%}.select-filter{flex:1}.records-table th,.records-table td{padding:12px 14px}.app-footer{font-size:9px;line-height:1.5}.app-footer span:last-child{text-align:right}.modal-card{padding:20px;border-radius:18px}.modal-fields{grid-template-columns:1fr;gap:13px}.modal-fields .full-field{grid-column:auto}.modal-header h2{font-size:21px}.modal-actions{position:sticky;bottom:-20px;background:#fff;padding:15px 0 0}.setup-card{margin:auto 0}.house-chip{margin-bottom:15px}}
@media(min-width:761px){.sidebar{transform:none!important}}
