@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap";
:root{--ouro-mudo:#b89a67;--ouro-hover:#a08553;--ouro-light:#b89a671f;--ouro-glow:#b89a6740;--antracite:#1a1a1a;--antracite-soft:#2a2a2a;--creme:#faf9f6;--creme-warm:#f5f2ec;--success:#4caf50;--success-bg:#4caf501a;--warning:#f5a623;--warning-bg:#f5a6231a;--danger:#e74c3c;--danger-bg:#e74c3c1a;--info:#5b9bd5;--info-bg:#5b9bd51a;--status-agendado:#5b9bd5;--status-confirmado:#8e7cc3;--status-em-andamento:#f5a623;--status-executado:#4caf50;--status-cancelado:#e74c3c;--status-pendente:#f5a623;--status-pago:#4caf50;--status-atrasado:#e74c3c;--font-display:"Cormorant Garamond",Georgia,serif;--font-stat:"Outfit","DM Sans","Inter",sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--sidebar-width:260px;--topbar-height:64px;--shadow-sm:0 1px 3px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 8px 30px #00000014;--shadow-glow:0 0 20px #b89a6726;--ease:cubic-bezier(.4,0,.2,1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:var(--font-body);color:var(--antracite);background-color:var(--creme);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.2}h1{letter-spacing:.02em;font-size:2rem}h2{letter-spacing:.015em;font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.1rem}a{color:var(--ouro-mudo);transition:color .2s var(--ease);text-decoration:none}a:hover{color:var(--ouro-hover)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--ouro-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ouro-mudo)}.login-page{background:linear-gradient(135deg,var(--antracite)0%,var(--antracite-soft)50%,#333 100%);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";background:radial-gradient(circle,var(--ouro-glow)0%,transparent 70%);pointer-events:none;width:600px;height:600px;position:absolute;top:-50%;right:-20%}.login-page:after{content:"";pointer-events:none;background:radial-gradient(circle,#b89a6714 0%,#0000 70%);width:400px;height:400px;position:absolute;bottom:-30%;left:-10%}.login-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1;background:#ffffff08;border:1px solid #b89a6733;border-radius:16px;width:100%;max-width:440px;padding:48px 40px;position:relative;box-shadow:0 20px 60px #0000004d}.login-logo{text-align:center;margin-bottom:36px}.login-logo svg{margin-bottom:16px}.login-logo h1{font-family:var(--font-display);color:var(--creme);letter-spacing:6px;font-size:2.8rem;font-weight:600}.login-logo .tagline{font-family:var(--font-body);color:var(--ouro-mudo);letter-spacing:3px;text-transform:uppercase;margin-top:4px;font-size:.7rem}.login-divider{background:linear-gradient(90deg,transparent,var(--ouro-mudo),transparent);opacity:.4;height:1px;margin:28px 0}.login-role-selector{margin-bottom:24px}.login-role-selector label{color:#faf9f680;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-size:.7rem;display:block}.role-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.role-option{text-align:center;cursor:pointer;transition:all .3s var(--ease);color:#faf9f699;background:#ffffff08;border:1px solid #b89a6726;border-radius:10px;padding:14px 12px;font-size:.82rem;font-weight:500}.role-option:hover{border-color:var(--ouro-mudo);color:var(--creme);background:#b89a6714}.role-option.active{border-color:var(--ouro-mudo);color:var(--ouro-mudo);box-shadow:var(--shadow-glow);background:#b89a6726}.role-option .role-icon{margin-bottom:6px;font-size:1.4rem;display:block}.login-field{margin-bottom:16px}.login-field label{color:#faf9f680;text-transform:uppercase;letter-spacing:2px;margin-bottom:8px;font-size:.7rem;display:block}.login-field input{width:100%;color:var(--creme);font-family:var(--font-body);transition:all .3s var(--ease);background:#ffffff0d;border:1px solid #b89a6733;border-radius:8px;outline:none;padding:12px 16px;font-size:.9rem}.login-field input::placeholder{color:#faf9f640}.login-field input:focus{border-color:var(--ouro-mudo);background:#b89a670f;box-shadow:0 0 0 3px #b89a671a}.login-btn{background:linear-gradient(135deg,var(--ouro-mudo),var(--ouro-hover));width:100%;color:var(--antracite);font-family:var(--font-body);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .3s var(--ease);border:none;border-radius:8px;margin-top:8px;padding:14px;font-size:.85rem;font-weight:600}.login-btn:hover{transform:translateY(-1px);box-shadow:0 8px 25px #b89a6759}.login-btn:active{transform:translateY(0)}.dashboard-layout{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--antracite);color:var(--creme);z-index:100;height:100vh;transition:transform .3s var(--ease);flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar-logo{border-bottom:1px solid #b89a671f;align-items:center;gap:14px;padding:24px 24px 20px;display:flex}.sidebar-logo h2{font-family:var(--font-display);letter-spacing:4px;color:var(--creme);font-size:1.6rem}.sidebar-logo .role-tag{color:var(--ouro-mudo);text-transform:uppercase;letter-spacing:2px;font-size:.6rem;font-family:var(--font-body);font-weight:500}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto}.nav-section-label{text-transform:uppercase;letter-spacing:2px;color:#faf9f64d;padding:16px 12px 8px;font-size:.6rem;font-weight:600}.nav-item{color:#faf9f699;cursor:pointer;transition:all .2s var(--ease);border-radius:8px;align-items:center;gap:12px;margin-bottom:2px;padding:11px 14px;font-size:.85rem;font-weight:400;text-decoration:none;display:flex}.nav-item:hover{color:var(--creme);background:#b89a6714}.nav-item.active{color:var(--ouro-mudo);background:#b89a6726;font-weight:500}.nav-item .nav-icon{text-align:center;justify-content:center;align-items:center;width:20px;font-size:1.1rem;display:flex}.nav-item .badge{background:var(--ouro-mudo);color:var(--antracite);text-align:center;border-radius:10px;min-width:18px;margin-left:auto;padding:2px 7px;font-size:.65rem;font-weight:700}.sidebar-footer{border-top:1px solid #b89a671f;padding:16px 20px}.sidebar-user{align-items:center;gap:10px;display:flex}.sidebar-user .avatar{background:var(--ouro-light);width:36px;height:36px;color:var(--ouro-mudo);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:flex}.sidebar-user .user-info{flex:1}.sidebar-user .user-name{color:var(--creme);font-size:.82rem;font-weight:500}.sidebar-user .user-role{color:#faf9f666;text-transform:uppercase;letter-spacing:1px;font-size:.65rem}.logout-btn{color:#faf9f666;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1rem;transition:color .2s}.logout-btn:hover{color:var(--danger)}.main-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh}.topbar{height:var(--topbar-height);z-index:50;background:#fff;border-bottom:1px solid #1a1a1a0f;justify-content:space-between;align-items:center;padding:0 32px;display:flex;position:sticky;top:0}.topbar-title{font-family:var(--font-display);color:var(--antracite);font-size:1.3rem}.topbar-actions{align-items:center;gap:16px;display:flex}.topbar-date{color:#888;font-size:.8rem}.topbar-notification{cursor:pointer;color:#666;background:0 0;border:none;padding:6px;font-size:1.15rem;transition:color .2s;position:relative}.topbar-notification:hover{color:var(--ouro-mudo)}.topbar-notification .notif-dot{background:var(--danger);color:#fff;border:2px solid var(--creme);border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.62rem;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-6px}.page-content{padding:28px 32px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:28px;display:grid}.stat-card{box-shadow:var(--shadow-sm);transition:all .3s var(--ease);background:#fff;border:1px solid #1a1a1a0a;border-radius:12px;padding:24px}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card .stat-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.stat-card .stat-icon{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.2rem;display:flex;background:0 0!important}.stat-card .stat-trend{border-radius:12px;padding:3px 8px;font-size:.72rem;font-weight:600}.stat-card .stat-trend.up{color:var(--success);background:var(--success-bg)}.stat-card .stat-trend.down{color:var(--danger);background:var(--danger-bg)}.stat-card .stat-value{font-family:var(--font-stat);color:var(--antracite);letter-spacing:-.01em;margin-bottom:4px;font-size:1.9rem;font-weight:600}.stat-card .stat-label{color:#888;font-size:.78rem;font-weight:400}.card{box-shadow:var(--shadow-sm);background:#fff;border:1px solid #1a1a1a0a;border-radius:12px;overflow:hidden}.card-header{border-bottom:1px solid #1a1a1a0a;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.card-header h3{font-family:var(--font-display);color:var(--antracite);font-size:1.15rem}.card-header .card-action{color:var(--ouro-mudo);cursor:pointer;font-size:.75rem;font-weight:500;transition:color .2s}.card-header .card-action:hover{color:var(--ouro-hover)}.card-body{padding:20px 24px}.grid-2{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;display:grid}.grid-3{grid-template-columns:2fr 1fr;gap:20px;margin-bottom:28px;display:grid}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;width:100%}table th{text-align:left;text-transform:uppercase;letter-spacing:1.5px;color:#888;border-bottom:1px solid #1a1a1a0f;padding:12px 16px;font-size:.7rem;font-weight:600}table td{color:var(--antracite);border-bottom:1px solid #1a1a1a08;padding:14px 16px;font-size:.85rem}table tr:last-child td{border-bottom:none}table tr{transition:background .15s}table tr:hover{background:#b89a6708}.badge-status{white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-status:before{content:"";border-radius:50%;width:6px;height:6px}.badge-agendado{background:var(--info-bg);color:var(--status-agendado)}.badge-agendado:before{background:var(--status-agendado)}.badge-confirmado{color:var(--status-confirmado);background:#8e7cc31a}.badge-confirmado:before{background:var(--status-confirmado)}.badge-em-andamento{background:var(--warning-bg);color:var(--status-em-andamento)}.badge-em-andamento:before{background:var(--status-em-andamento)}.badge-executado{background:var(--success-bg);color:var(--status-executado)}.badge-executado:before{background:var(--status-executado)}.badge-cancelado{background:var(--danger-bg);color:var(--status-cancelado)}.badge-cancelado:before{background:var(--status-cancelado)}.badge-pendente{background:var(--warning-bg);color:var(--status-pendente)}.badge-pendente:before{background:var(--status-pendente)}.badge-pago{background:var(--success-bg);color:var(--status-pago)}.badge-pago:before{background:var(--status-pago)}.badge-atrasado{background:var(--danger-bg);color:var(--status-atrasado)}.badge-atrasado:before{background:var(--status-atrasado)}.badge-aprovado{background:var(--success-bg);color:var(--success)}.badge-aprovado:before{background:var(--success)}.badge-analise{background:var(--warning-bg);color:var(--warning)}.badge-analise:before{background:var(--warning)}.badge-ativo{background:var(--success-bg);color:var(--success)}.badge-ativo:before{background:var(--success)}.progress-bar{background:var(--creme-warm);border-radius:3px;width:100%;height:6px;overflow:hidden}.progress-bar .fill{background:linear-gradient(90deg,var(--ouro-mudo),var(--ouro-hover));height:100%;transition:width .6s var(--ease);border-radius:3px}.timeline{padding-left:28px;position:relative}.timeline:before{content:"";background:linear-gradient(180deg,var(--ouro-mudo),#b89a671a);width:2px;position:absolute;top:0;bottom:0;left:8px}.timeline-item{padding-bottom:24px;position:relative}.timeline-item:before{content:"";border:2px solid var(--ouro-mudo);background:#fff;border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-24px}.timeline-item.executado:before{background:var(--status-executado);border-color:var(--status-executado)}.timeline-item.agendado:before{background:var(--status-agendado);border-color:var(--status-agendado)}.timeline-item.em-andamento:before{background:var(--status-em-andamento);border-color:var(--status-em-andamento)}.timeline-date{color:#999;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;font-size:.7rem;font-weight:500}.timeline-title{color:var(--antracite);margin-bottom:2px;font-size:.9rem;font-weight:500}.timeline-desc{color:#777;font-size:.8rem}.chart-container{padding:20px 0}.bar-chart{align-items:flex-end;gap:12px;height:180px;padding:0 8px;display:flex}.bar-group{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.bar-pair{justify-content:center;align-items:flex-end;gap:4px;width:100%;display:flex}.bar{width:16px;transition:height .6s var(--ease);border-radius:4px 4px 0 0;min-height:4px}.bar.realized{background:var(--ouro-mudo)}.bar.projected{background:var(--ouro-light);border:1px dashed var(--ouro-mudo)}.bar-label{color:#999;margin-top:6px;font-size:.65rem;font-weight:500}.chart-legend{justify-content:center;gap:20px;margin-top:16px;display:flex}.chart-legend-item{color:#777;align-items:center;gap:6px;font-size:.72rem;display:flex}.chart-legend-item .dot{border-radius:2px;width:10px;height:10px}.chart-legend-item .dot.realized{background:var(--ouro-mudo)}.chart-legend-item .dot.projected{background:var(--ouro-light);border:1px dashed var(--ouro-mudo)}.mini-calendar{font-size:.78rem}.mini-calendar .cal-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.mini-calendar .cal-header h4{font-family:var(--font-display);font-size:1rem}.mini-calendar .cal-nav{gap:6px;display:flex}.mini-calendar .cal-nav button{cursor:pointer;color:#666;background:0 0;border:1px solid #1a1a1a1a;border-radius:6px;padding:4px 8px;font-size:.75rem;transition:all .2s}.mini-calendar .cal-nav button:hover{border-color:var(--ouro-mudo);color:var(--ouro-mudo)}.cal-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-grid .day-name{text-transform:uppercase;color:#aaa;letter-spacing:1px;padding:6px 0;font-size:.6rem;font-weight:600}.cal-grid .day{cursor:pointer;border-radius:6px;padding:8px 4px;transition:all .2s;position:relative}.cal-grid .day:hover{background:var(--ouro-light)}.cal-grid .day.today{background:var(--ouro-mudo);color:#fff;font-weight:600}.cal-grid .day.other-month{color:#ccc}.cal-grid .day.has-event:after{content:"";background:var(--ouro-mudo);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.commission-item{border-bottom:1px solid #1a1a1a0a;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.commission-item:last-child{border-bottom:none}.commission-info{align-items:center;gap:12px;display:flex}.commission-avatar{background:var(--ouro-light);width:36px;height:36px;color:var(--ouro-mudo);border-radius:50%;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex}.commission-name{font-size:.85rem;font-weight:500}.commission-detail{color:#999;font-size:.72rem}.commission-value{text-align:right}.commission-amount{font-family:var(--font-display);color:var(--ouro-mudo);font-size:1.1rem;font-weight:600}.commission-percent{color:#999;font-size:.68rem}.approval-item{border-bottom:1px solid #1a1a1a0a;align-items:center;gap:14px;padding:14px 0;display:flex}.approval-item:last-child{border-bottom:none}.approval-icon{border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.approval-text{flex:1}.approval-title{font-size:.85rem;font-weight:500}.approval-desc{color:#999;font-size:.72rem}.approval-actions{gap:6px;display:flex}.btn-approve,.btn-reject{cursor:pointer;border:none;border-radius:6px;padding:6px 12px;font-size:.72rem;font-weight:600;transition:all .2s}.btn-approve{background:var(--success-bg);color:var(--success)}.btn-approve:hover{background:var(--success);color:#fff}.btn-reject{background:var(--danger-bg);color:var(--danger)}.btn-reject:hover{background:var(--danger);color:#fff}.patient-item{border-bottom:1px solid #1a1a1a0a;align-items:center;gap:14px;padding:14px 0;display:flex}.patient-item:last-child{border-bottom:none}.patient-avatar{background:linear-gradient(135deg,var(--ouro-light),var(--ouro-glow));width:40px;height:40px;color:var(--ouro-mudo);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:flex}.patient-info{flex:1}.patient-name{font-size:.88rem;font-weight:500}.patient-detail{color:#999;font-size:.72rem}.patient-progress{width:120px}.patient-weeks{color:#777;text-align:right;margin-bottom:4px;font-size:.7rem}.financial-item{border-bottom:1px solid #1a1a1a0a;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.financial-item:last-child{border-bottom:none}.financial-info{align-items:center;gap:12px;display:flex}.financial-icon{background:var(--ouro-light);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.financial-title{font-size:.85rem;font-weight:500}.financial-due{color:#999;font-size:.72rem}.financial-amount{font-family:var(--font-display);font-size:1rem;font-weight:600}@media (max-width:1024px){.grid-2,.grid-3{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.availability-grid{grid-template-columns:80px repeat(5,1fr)}.service-directory{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.sidebar-wrapper{z-index:200;width:260px;height:100vh;transition:transform .3s;position:fixed;transform:translate(-100%)}.sidebar-wrapper .sidebar{width:100%;height:100%;position:static;transform:none}.sidebar-wrapper.sidebar-mobile-open{transform:translate(0)}.main-content{margin-left:0}.page-content{padding:16px}.topbar{height:56px;padding:0 16px}.topbar-title{font-size:1rem}.topbar-date{display:none}.stats-grid{grid-template-columns:1fr;gap:12px}.stat-card{padding:18px}.stat-card .stat-value{font-size:1.5rem}.card-header{flex-wrap:wrap;gap:8px;padding:14px 16px}.card-body{padding:14px 16px}.table-wrapper{-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px;overflow-x:auto}table{min-width:600px}table th{padding:10px 12px;font-size:.65rem}table td{padding:10px 12px;font-size:.8rem}.form-row{grid-template-columns:1fr;gap:0}.form-group input,.form-group textarea,.form-group select{font-size:16px}.login-card{margin:16px;padding:32px 24px}.login-logo h1{letter-spacing:4px;font-size:2.2rem}.role-grid{grid-template-columns:1fr 1fr}.modal{border-radius:16px 16px 0 0;width:100%;max-width:100vw;max-height:100vh;position:fixed;bottom:0;left:0;right:0}.modal-overlay{align-items:flex-end}.topbar-actions>div>div:not(.sidebar-overlay){width:calc(100vw - 32px)!important;right:-60px!important}.filter-bar{flex-direction:column;align-items:stretch}.filter-bar select,.filter-bar input{width:100%;font-size:16px}.filter-chips{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.filter-chip{white-space:nowrap;flex-shrink:0}.quick-actions{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin:0 -16px 16px;padding-bottom:4px;padding-left:16px;padding-right:16px;overflow-x:auto}.quick-action-btn{white-space:nowrap;flex-shrink:0;padding:8px 14px;font-size:.75rem}.service-directory{grid-template-columns:1fr}.service-card{padding:16px}.availability-grid{grid-template-columns:60px repeat(3,1fr);font-size:.65rem}.cal-grid .day{padding:6px 2px;font-size:.75rem}.patient-item{flex-wrap:wrap;gap:10px}.patient-progress{width:100%}.approval-item{flex-wrap:wrap;gap:8px}.approval-actions{justify-content:flex-end;width:100%}.financial-item,.commission-item{flex-wrap:wrap;gap:8px}.timeline{padding-left:20px}.bar-chart{gap:6px;height:140px}.bar{width:10px}.toast-notification{justify-content:center;bottom:16px;left:16px;right:16px}.breadcrumb{white-space:nowrap;font-size:.72rem;overflow-x:auto}.calendar-legend{flex-wrap:wrap;gap:8px;font-size:.68rem}.upload-area{padding:16px;font-size:.78rem}}@media (max-width:375px){.login-card{margin:8px;padding:24px 16px}.login-logo h1{font-size:1.8rem}.role-grid{grid-template-columns:1fr}.stat-card .stat-value{font-size:1.3rem}.topbar-title{font-size:.88rem}.page-content{padding:12px}}.hamburger-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:6px;padding:4px;transition:all .2s;display:none}.hamburger-btn:hover{color:#333;background:#1a1a1a0d}@media (max-width:768px){.hamburger-btn{justify-content:center;align-items:center;display:flex}}.sidebar-overlay{z-index:150;animation:fadeIn .3s var(--ease);background:#0006;display:none;position:fixed;inset:0}@media (max-width:768px){.sidebar-overlay{display:block}}.toast-notification{z-index:9999;animation:toastIn .4s var(--ease),toastOut .4s var(--ease)2.6s forwards;border-radius:12px;align-items:center;gap:10px;padding:14px 24px;font-size:.85rem;font-weight:500;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 8px 30px #0000002e}.toast-success{color:#4caf50;background:#fff;border:1px solid #4caf5033}.toast-error{color:#f44336;background:#fff;border:1px solid #f4433633}.toast-info{color:var(--ouro-mudo);background:#fff;border:1px solid #b89a6733}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.quick-actions{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.quick-action-btn{color:var(--ouro-mudo);cursor:pointer;transition:all .2s var(--ease);background:#b89a670a;border:1.5px solid #b89a6733;border-radius:10px;align-items:center;gap:8px;padding:10px 18px;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}.quick-action-btn:hover{background:var(--ouro-mudo);color:#fff;border-color:var(--ouro-mudo);transform:translateY(-1px);box-shadow:0 4px 12px #b89a6740}.empty-state{text-align:center;opacity:.6;flex-direction:column;justify-content:center;align-items:center;padding:48px 20px;display:flex}.empty-state svg{opacity:.5;margin-bottom:16px}.empty-state-title{color:#666;margin-bottom:6px;font-size:1rem;font-weight:600}.empty-state-desc{color:#999;max-width:280px;font-size:.82rem}.skeleton-text{width:80%;height:14px;margin-bottom:8px}.skeleton-text.short{width:50%}.skeleton-card{border-radius:12px;height:120px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.breadcrumb{align-items:center;gap:6px;margin-bottom:16px;font-size:.78rem;display:flex}.breadcrumb a{color:#999;text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--ouro-mudo)}.breadcrumb .separator{color:#ccc}.breadcrumb .current{color:#333;font-weight:500}.filter-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.filter-bar select,.filter-bar input{background:#fff;border:1px solid #1a1a1a1a;border-radius:8px;outline:none;padding:8px 14px;font-size:.82rem;transition:border-color .2s}.filter-bar select:focus,.filter-bar input:focus{border-color:var(--ouro-mudo)}.btn-export{color:#666;cursor:pointer;background:#fff;border:1px solid #1a1a1a1a;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:.78rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-export:hover{border-color:var(--ouro-mudo);color:var(--ouro-mudo)}.badge-risco{border-radius:12px;align-items:center;gap:4px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-risco-alto{color:#e74c3c;background:#e74c3c1a}.badge-risco-medio{color:#f5a623;background:#f5a6231a}.badge-risco-baixo{color:#4caf50;background:#4caf501a}.flag-icon{color:#e74c3c;margin-left:6px;font-size:.85rem;animation:2s ease-in-out infinite flagPulse;display:inline-flex}@keyframes flagPulse{0%,to{opacity:1}50%{opacity:.5}}.filter-chips{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.filter-chip{color:#666;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #1a1a1a1a;border-radius:20px;align-items:center;gap:5px;padding:6px 14px;font-size:.78rem;font-weight:500;transition:all .2s;display:inline-flex}.filter-chip:hover{border-color:var(--ouro-mudo);color:var(--ouro-mudo)}.filter-chip.active{background:var(--ouro-mudo);color:#fff;border-color:var(--ouro-mudo)}.filter-chip .chip-count{background:#0000001f;border-radius:10px;padding:1px 7px;font-size:.68rem;font-weight:700}.filter-chip.active .chip-count{background:#ffffff40}.modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;animation:.2s modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:16px;width:560px;max-width:95vw;max-height:85vh;animation:.3s modalSlideUp;overflow-y:auto;box-shadow:0 20px 60px #00000026}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #1a1a1a0f;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{margin:0;font-size:1.05rem;font-weight:600}.modal-close{color:#999;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.4rem;line-height:1}.modal-close:hover{color:#333}.modal-body{padding:24px}.modal-footer{border-top:1px solid #1a1a1a0f;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.form-group{margin-bottom:16px}.form-group label{color:#555;margin-bottom:6px;font-size:.78rem;font-weight:600;display:block}.form-group input,.form-group textarea,.form-group select{width:100%;font-size:.85rem;font-family:var(--font-body);box-sizing:border-box;background:#fff;border:1px solid #1a1a1a1f;border-radius:8px;outline:none;padding:10px 14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--ouro-mudo)}.form-group textarea{resize:vertical;min-height:80px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.btn-primary{background:var(--ouro-mudo);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 22px;font-size:.82rem;font-weight:600;transition:all .2s;box-shadow:0 2px 8px #b89a6740}.btn-primary:hover{background:var(--ouro-hover);transform:translateY(-1px)}.btn-secondary{color:#666;cursor:pointer;background:#fff;border:1px solid #1a1a1a1f;border-radius:8px;padding:10px 22px;font-size:.82rem;font-weight:500;transition:all .2s}.btn-secondary:hover{color:#333;border-color:#999}.btn-sm{padding:6px 14px;font-size:.75rem}.btn-danger{background:var(--danger);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 22px;font-size:.82rem;font-weight:600}.service-directory{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.service-card{cursor:pointer;box-shadow:var(--shadow-sm);background:#fff;border:1px solid #1a1a1a0d;border-radius:12px;padding:20px;transition:all .2s}.service-card:hover{box-shadow:var(--shadow-md);border-color:#b89a6733;transform:translateY(-2px)}.service-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.service-card-title{color:var(--antracite);font-size:.92rem;font-weight:600}.service-card-category{background:var(--ouro-light);color:var(--ouro-mudo);border-radius:12px;padding:3px 10px;font-size:.68rem;font-weight:600;display:inline-block}.service-card-provider{color:#888;margin-bottom:8px;font-size:.78rem}.service-card-desc{color:#666;margin-bottom:12px;font-size:.78rem;line-height:1.5}.service-card-meta{border-top:1px solid #1a1a1a0a;align-items:center;gap:16px;padding-top:12px;display:flex}.service-card-price{color:var(--ouro-mudo);font-size:.92rem;font-weight:700}.service-card-duration{color:#999;font-size:.75rem}.service-card-rating{color:#f5a623;font-size:.78rem;font-weight:600}.attachment-badge{color:#5b9bd5;background:#5b9bd514;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:.68rem;font-weight:500;display:inline-flex}.availability-grid{background:#1a1a1a0f;border-radius:12px;grid-template-columns:80px repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.availability-grid .hour-label{color:#999;text-align:right;background:#fafafa;padding:8px 6px;font-size:.7rem;font-weight:500}.availability-grid .day-header{text-align:center;color:#555;background:#fafafa;padding:10px 8px;font-size:.75rem;font-weight:600}.slot{cursor:pointer;background:#fff;border-left:3px solid #0000;min-height:36px;padding:3px 6px;font-size:.68rem;transition:background .15s;position:relative}.slot:hover{background:#b89a670a}.slot.slot-available{background:#4caf500f;border-left-color:#4caf50}.slot.slot-booked{background:#5b9bd50f;border-left-color:#5b9bd5}.slot.slot-blocked{background:#1a1a1a0a;border-left-color:#999}.slot-text{white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;font-weight:500;overflow:hidden}.calendar-legend{gap:16px;margin:12px 0;font-size:.75rem;display:flex}.legend-item{align-items:center;gap:6px;display:flex}.legend-dot{border-radius:3px;width:10px;height:10px}.report-card{box-shadow:var(--shadow-sm);background:#fff;border:1px solid #1a1a1a0d;border-radius:12px;padding:24px}.report-item{border-bottom:1px solid #1a1a1a0a;align-items:center;gap:16px;padding:14px 0;display:flex}.report-item:last-child{border-bottom:none}.report-pending-badge{color:#f5a623;background:#f5a6231a;border-radius:12px;align-items:center;gap:4px;padding:3px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.upload-area{text-align:center;cursor:pointer;color:#999;border:2px dashed #1a1a1a1f;border-radius:10px;padding:20px;font-size:.82rem;transition:all .2s}.upload-area:hover{border-color:var(--ouro-mudo);color:var(--ouro-mudo)}.uploaded-file{color:#5b9bd5;background:#5b9bd514;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:500;display:inline-flex}.skeleton{background:linear-gradient(90deg,#1a1a1a0f 25%,#1a1a1a1a 50%,#1a1a1a0f 75%) 0 0/200% 100%;border-radius:8px;animation:1.5s ease-in-out infinite shimmer}.skeleton-text{border-radius:4px;height:14px;margin-bottom:8px}.skeleton-text:last-child{width:70%}.skeleton-title{border-radius:6px;width:50%;height:22px;margin-bottom:12px}.skeleton-stat{border-radius:6px;width:80px;height:42px;margin-bottom:6px}.skeleton-card{box-shadow:var(--shadow-sm);background:#fff;border:1px solid #1a1a1a0a;border-radius:12px;padding:24px}.skeleton-avatar{border-radius:50%;width:42px;height:42px}.skeleton-row{border-bottom:1px solid #1a1a1a08;align-items:center;gap:16px;padding:14px 0;display:flex}.skeleton-row:last-child{border-bottom:none}.skeleton-btn{border-radius:8px;width:120px;height:38px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-in,.stats-grid>.stat-card{animation:fadeInUp .4s var(--ease)both}.stats-grid>.stat-card:first-child{animation-delay:0s}.stats-grid>.stat-card:nth-child(2){animation-delay:60ms}.stats-grid>.stat-card:nth-child(3){animation-delay:.12s}.stats-grid>.stat-card:nth-child(4){animation-delay:.18s}.stats-grid>.stat-card:nth-child(5){animation-delay:.24s}.page-content>.card,.page-content>.grid-2,.page-content>.grid-3{animation:fadeInUp .45s var(--ease)both;animation-delay:.15s}.quick-actions{animation:fadeInUp .4s var(--ease)both;animation-delay:.1s}.breadcrumb{color:#999;align-items:center;gap:6px;font-size:.78rem;display:flex}.breadcrumb-item{color:#999;text-decoration:none;transition:color .15s}.breadcrumb-item:hover{color:var(--ouro-mudo)}.breadcrumb-item.active{color:var(--antracite);font-weight:500}.breadcrumb-sep{color:#ccc;font-size:.7rem}.confirm-overlay{z-index:2000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073;justify-content:center;align-items:center;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.confirm-dialog{width:90%;max-width:420px;animation:fadeInUp .25s var(--ease);background:#fff;border-radius:16px;padding:32px;box-shadow:0 20px 60px #00000026}.confirm-icon{border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:16px;font-size:1.5rem;display:flex}.confirm-icon.danger{background:#e74c3c1a}.confirm-icon.warning{background:#f5a6231a}.confirm-title{font-family:var(--font-display);color:var(--antracite);margin-bottom:8px;font-size:1.2rem;font-weight:600}.confirm-message{color:#666;margin-bottom:24px;font-size:.88rem;line-height:1.6}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.confirm-btn-cancel{color:#666;cursor:pointer;background:#fff;border:1px solid #1a1a1a1a;border-radius:8px;padding:10px 20px;font-size:.85rem;font-weight:500;transition:all .15s}.confirm-btn-cancel:hover{background:#f5f5f5}.confirm-btn-action{cursor:pointer;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:.85rem;font-weight:600;transition:all .15s}.confirm-btn-action.danger{background:#e74c3c}.confirm-btn-action.danger:hover{background:#c0392b}.confirm-btn-action.warning{background:#f5a623}.confirm-btn-action.warning:hover{background:#e09015}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;animation:.4s fadeIn;display:flex}.empty-state-icon{background:#b89a6714;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:16px;font-size:2rem;display:flex}.empty-state-title{font-family:var(--font-display);color:var(--antracite);margin-bottom:6px;font-size:1.1rem;font-weight:600}.empty-state-desc{color:#999;max-width:320px;font-size:.85rem;line-height:1.6}.empty-state-action{margin-top:16px}.pregnancy-timeline{background:#fff;border:1px solid #1a1a1a0f;border-radius:16px;margin-bottom:20px;padding:24px 28px 20px;box-shadow:0 1px 4px #00000008}.timeline-header{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.timeline-title{font-family:var(--font-display);color:var(--antracite);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.timeline-subtitle{align-items:center;gap:12px;display:flex}.timeline-trimester{color:var(--ouro-mudo);letter-spacing:.5px;background:#b89a671a;border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:700}.timeline-week-label{color:#999;font-size:.82rem}.timeline-week-label strong{color:var(--ouro-mudo);font-weight:700}.timeline-track-container{margin-bottom:28px}.timeline-track{background:#1a1a1a0d;border-radius:8px;height:8px;position:relative;overflow:visible}.timeline-fill{background:linear-gradient(90deg,#d4b483,#b89a67,#9f8654);border-radius:8px;height:100%;transition:width 1s;position:absolute;top:0;left:0}.timeline-current{z-index:3;position:absolute;top:50%;transform:translate(-50%,-50%)}.timeline-current-dot{background:var(--ouro-mudo);border:3px solid #fff;border-radius:50%;width:18px;height:18px;animation:2s ease-in-out infinite timelinePulse;box-shadow:0 0 0 3px #b89a6740,0 2px 8px #b89a674d}.timeline-current-label{color:var(--ouro-mudo);white-space:nowrap;background:#b89a671a;border-radius:10px;padding:2px 8px;font-size:.65rem;font-weight:700;position:absolute;top:-26px;left:50%;transform:translate(-50%)}@keyframes timelinePulse{0%,to{box-shadow:0 0 0 3px #b89a6740,0 2px 8px #b89a674d}50%{box-shadow:0 0 0 6px #b89a671f,0 2px 12px #b89a6733}}.timeline-divider{z-index:1;background:#1a1a1a1a;width:1px;height:16px;position:absolute;top:-4px}.timeline-trimesters{justify-content:space-between;margin-top:8px;padding:0 4px;display:flex}.timeline-trimesters span{color:#bbb;font-size:.65rem;font-weight:500}.timeline-milestones{height:62px;position:relative}.timeline-milestone{cursor:default;flex-direction:column;align-items:center;gap:3px;transition:transform .2s;display:flex;position:absolute;transform:translate(-50%)}.timeline-milestone:hover{transform:translate(-50%)scale(1.1)}.milestone-dot{border:2px solid;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:all .3s;display:flex}.timeline-milestone.future .milestone-dot{opacity:.5}.milestone-label{color:#888;white-space:nowrap;text-align:center;text-overflow:ellipsis;max-width:56px;font-size:.58rem;font-weight:600;overflow:hidden}.timeline-milestone.past .milestone-label{color:#555}.milestone-week{color:#bbb;font-size:.52rem;font-weight:500}.timeline-milestone.scheduled .milestone-dot{animation:2s ease-in-out infinite milestonePulse}@keyframes milestonePulse{0%,to{box-shadow:0 0 0 2px #5b9bd533}50%{box-shadow:0 0 0 5px #5b9bd51a}}.timeline-legend{border-top:1px solid #1a1a1a0a;justify-content:center;gap:16px;margin-top:8px;padding-top:12px;display:flex}.legend-item{color:#999;align-items:center;gap:5px;font-size:.65rem;font-weight:500;display:flex}.legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}
