:root{--bg:#f5f7fb;--surface:#fff;--text:#152033;--muted:#6f7c91;--line:#e5eaf2;--primary:#2457e6;--primary2:#1745c7;--success:#16845b;--danger:#c23a47;--shadow:0 10px 30px rgba(20,31,52,.06);--radius:18px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#111a2e;color:#fff;padding:22px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;padding:5px 8px 24px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;background:linear-gradient(135deg,#3973ff,#6c8dff);border-radius:12px;font-weight:800}.brand strong,.brand small{display:block}.brand small{font-size:11px;opacity:.65;margin-top:2px}.sidebar nav{display:grid;gap:7px}.nav-item{padding:12px 14px;border-radius:12px;display:flex;gap:12px;color:#d9e1f2}.nav-item:hover{background:#1b2741}.nav-item.muted{opacity:.55}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.09);padding-top:16px}.user-mini{display:flex;gap:10px;align-items:center}.user-mini strong,.user-mini small{display:block;font-size:12px}.user-mini small{opacity:.6;margin-top:2px}.avatar{width:36px;height:36px;border-radius:50%;background:#2c3a5c;display:grid;place-items:center}.logout{display:block;margin-top:14px;font-size:12px;color:#aab7cc}.main{min-width:0}.topbar{padding:26px 34px 10px;display:flex;justify-content:space-between;gap:16px;align-items:center}.topbar h1{font-size:26px;margin:0}.topbar p{margin:5px 0 0;color:var(--muted)}.chip{background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:999px;color:var(--muted);font-size:12px}.content{padding:18px 34px 40px}.grid{display:grid;gap:18px}.metrics{grid-template-columns:repeat(4,1fr)}.two{grid-template-columns:1.5fr 1fr;margin-top:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.metric{padding:22px}.metric span,.metric small{display:block;color:var(--muted)}.metric strong{display:block;font-size:27px;margin:8px 0 4px}.card h3{margin:0}.card p{color:var(--muted)}.card-head{display:flex;justify-content:space-between}.two>.card{padding:22px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.quick-grid a{border:1px solid var(--line);padding:14px;border-radius:12px;font-weight:600}.quick-grid a:hover{border-color:#b9c7ec;background:#f8faff}.roadmap{display:grid;gap:10px;margin-top:16px}.roadmap span{padding:11px 12px;background:#f7f9fd;border-radius:10px;color:#4d5c74}.toolbar{display:flex;justify-content:flex-end;margin-bottom:14px}.btn{border:0;border-radius:11px;padding:11px 15px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary2)}.btn.ghost{background:#fff;border:1px solid var(--line);color:#39475f}.btn.full{width:100%}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:15px 17px;border-bottom:1px solid var(--line);font-size:14px}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:#fafbfe}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.badge.success{background:#e9f7f1;color:var(--success)}.empty{text-align:center;color:var(--muted);padding:30px}.form-card{padding:22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.span-2{grid-column:span 2}label{font-size:13px;font-weight:700;color:#3b4a62}input,select,textarea{width:100%;margin-top:7px;border:1px solid #dbe2ec;background:#fff;border-radius:11px;padding:12px 13px;font:inherit;color:var(--text);outline:none}input:focus,select:focus{border-color:#7c9cf4;box-shadow:0 0 0 3px rgba(36,87,230,.08)}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.stack{display:grid;gap:16px}.section-title{margin-bottom:16px}.section-title h3{margin:0}.section-title p{margin:5px 0 0;color:var(--muted);font-size:13px}.comp-row{display:grid;grid-template-columns:2fr 1fr 1fr 40px;gap:10px;align-items:end;margin-bottom:10px}.comp-row input,.comp-row select{margin:0}.icon-btn{height:42px;border:1px solid var(--line);background:#fff;border-radius:10px;font-size:21px;cursor:pointer}.alert{padding:13px 15px;border-radius:12px;margin-bottom:14px;font-weight:600}.alert.success{background:#eaf8f2;color:#126a4c}.alert.error{background:#fff0f1;color:#a52f3a}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#eaf0ff,transparent 35%),#f5f7fb;padding:20px}.login-card{width:min(420px,100%);background:#fff;padding:32px;border-radius:22px;border:1px solid var(--line);box-shadow:0 24px 60px rgba(24,39,75,.12)}.login-brand{padding:0 0 26px;color:#14203a}.login-card h1{margin:0 0 6px}.login-card>p{color:var(--muted);margin:0 0 22px}.login-card form{display:grid;gap:14px}.login-note{display:block;text-align:center;margin-top:18px;color:var(--muted)}@media(max-width:980px){.app-shell{grid-template-columns:76px 1fr}.sidebar{padding:18px 10px}.sidebar .brand div,.sidebar nav span,.user-mini div:not(.avatar),.logout{display:none}.brand{padding-left:8px}.nav-item{justify-content:center}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.app-shell{display:block}.sidebar{position:fixed;z-index:10;bottom:0;top:auto;height:68px;width:100%;padding:8px 10px;flex-direction:row}.brand,.sidebar-footer{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(6,1fr);width:100%;gap:3px}.nav-item{padding:10px 4px;font-size:18px}.nav-item span{display:none}.main{padding-bottom:80px}.topbar{padding:20px 18px 8px}.topbar h1{font-size:22px}.topbar p{font-size:12px}.content{padding:14px 18px 28px}.metrics,.two,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.comp-row{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr}.top-actions{display:none}}
/* Fase 2 */
.nav-item.active{background:#243250;color:#fff;box-shadow:inset 3px 0 0 #6f91ff}.nav-icon{width:20px;text-align:center}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#71809a;padding:18px 14px 5px}.subnav{display:flex;gap:8px;align-items:center;margin-bottom:18px;overflow:auto;padding-bottom:2px}.subnav a{white-space:nowrap;padding:9px 12px;border:1px solid var(--line);background:#fff;border-radius:10px;color:#58677d;font-size:13px;font-weight:700}.subnav a.active{background:#eef3ff;border-color:#c7d5ff;color:#244fc6}.metrics.five{grid-template-columns:repeat(5,1fr)}.metric.danger-soft{background:#fffafb}.panel{padding:22px}.two.equal{grid-template-columns:1fr 1fr}.text-link{font-size:13px;font-weight:800;color:var(--primary)}.mini-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.mini-metrics>div{border:1px solid var(--line);border-radius:14px;padding:15px;background:#fafbfe}.mini-metrics small,.mini-metrics strong{display:block}.mini-metrics small{color:var(--muted);font-size:12px}.mini-metrics strong{font-size:24px;margin-top:6px}.warn-block{background:#fff8ed!important;border-color:#f5d7a6!important}.compact-list{display:grid;border-top:1px solid var(--line)}.compact-list>a{display:flex;justify-content:space-between;gap:15px;padding:12px 2px;border-bottom:1px solid var(--line);align-items:center}.compact-list>a:hover strong{color:var(--primary)}.compact-list strong,.compact-list small{display:block}.compact-list small{color:var(--muted);margin-top:3px}.compact-list span{font-size:12px;color:var(--muted);white-space:nowrap}.phase-badge{margin-top:18px;border-top:1px solid var(--line);padding-top:14px;color:#75839a;font-size:11px;letter-spacing:.08em;font-weight:800}.filterbar{display:grid;grid-template-columns:minmax(240px,1fr) 190px auto auto;gap:10px;margin-bottom:14px}.filterbar input,.filterbar select{margin:0}.table-sub{display:block;color:var(--muted);margin-top:3px;font-size:11px}.click-row{cursor:pointer}.click-row:hover td{background:#f8faff}.stage-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--stage);margin-right:7px}.badge.info{background:#edf4ff;color:#285cb4}.badge.neutral{background:#f0f2f5;color:#667085}.text-danger{color:var(--danger)!important;font-weight:700}.kanban{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,1fr);gap:14px;overflow-x:auto;padding-bottom:14px}.kanban-col{background:#eef1f6;border:1px solid #e0e5ed;border-radius:16px;padding:10px;min-height:480px}.kanban-head{display:flex;justify-content:space-between;align-items:center;padding:7px 7px 12px;font-size:13px;font-weight:800}.kanban-head span{display:flex;align-items:center;gap:8px}.kanban-head i{width:9px;height:9px;border-radius:50%;background:var(--stage)}.kanban-head b{background:#fff;border:1px solid var(--line);border-radius:999px;padding:3px 8px;font-size:11px}.kanban-list{display:grid;gap:9px}.lead-card{display:block;background:#fff;border:1px solid #e1e6ef;border-radius:13px;padding:14px;box-shadow:0 4px 14px rgba(30,41,59,.035)}.lead-card:hover{border-color:#b8c8ef;transform:translateY(-1px)}.lead-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.lead-card p{font-size:12px;margin:10px 0 5px;color:#475569}.lead-card small{display:block;color:#7a8699}.temp{font-size:9px;text-transform:uppercase;font-weight:900;padding:4px 6px;border-radius:999px}.temp.frio{background:#eef2f7;color:#64748b}.temp.morno{background:#fff4dc;color:#9a6700}.temp.quente{background:#ffebec;color:#b42335}.next-contact{display:block;margin-top:10px;font-size:11px;color:#60708a}.next-contact.late{color:var(--danger);font-weight:800}.kanban-empty{padding:24px 8px;text-align:center;color:#99a3b2;font-size:12px}.lead-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:18px}.lead-summary{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.09em;color:var(--muted);font-weight:800}.lead-summary h2{font-size:25px;margin:5px 0 9px}.contact-links{display:flex;gap:12px;flex-wrap:wrap}.contact-links a{font-size:13px;color:var(--primary);font-weight:700}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:22px}.info-grid>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:#fafbfe}.info-grid small,.info-grid strong{display:block}.info-grid small{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:5px}.info-grid strong{font-size:13px}.capitalize{text-transform:capitalize}.note-box{margin-top:16px;background:#f7f9fd;border-radius:12px;padding:14px}.note-box small{font-weight:800;color:var(--muted)}.note-box p{margin:6px 0 0;color:#39475f}.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:18px 1fr;gap:9px;position:relative;padding:0 0 18px}.timeline-item:before{content:"";position:absolute;left:5px;top:10px;bottom:-2px;width:1px;background:#dfe5ee}.timeline-item:last-child:before{display:none}.timeline-dot{width:11px;height:11px;border-radius:50%;background:#dbe5ff;border:3px solid #6f91ff;margin-top:4px;z-index:1}.timeline-meta{display:flex;justify-content:space-between;gap:10px}.timeline-meta span{font-size:11px;color:var(--muted)}.timeline-item p{margin:6px 0 0;color:#45536a;font-size:13px}.top-gap{margin-top:14px}.field-help{display:block;color:var(--muted);margin-top:6px;font-size:11px}.context-banner{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#edf4ff;border:1px solid #cad9ff;padding:14px 16px;border-radius:14px;margin-bottom:16px}.context-banner strong,.context-banner span{display:block}.context-banner span{font-size:12px;color:#60708a;margin-top:3px}.context-banner a{font-size:12px;color:var(--primary);font-weight:800}.inline-check{display:flex!important;align-items:center;gap:8px;margin-top:9px;color:#60708a;font-size:12px;font-weight:500}.inline-check input{width:auto!important;margin:0}.empty-state{padding:50px;text-align:center}.empty-state>strong{font-size:44px;color:#a3afc1}.empty-state p{margin-bottom:20px}.clean{margin:0 -22px -22px}.clean table th:first-child,.clean table td:first-child{padding-left:22px}.clean table th:last-child,.clean table td:last-child{padding-right:22px}
@media(max-width:1200px){.metrics.five{grid-template-columns:repeat(3,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.metrics.five{grid-template-columns:repeat(2,1fr)}.lead-layout{grid-template-columns:1fr}.filterbar{grid-template-columns:1fr 180px auto}.filterbar .btn.primary{grid-column:1/-1}}
@media(max-width:640px){.sidebar nav{display:flex;grid-template-columns:none;overflow-x:auto;gap:4px}.sidebar .nav-label{display:none}.sidebar .nav-item{min-width:58px;flex:1}.metrics.five{grid-template-columns:1fr 1fr}.two.equal{grid-template-columns:1fr}.filterbar{grid-template-columns:1fr}.filterbar .btn.primary{grid-column:auto}.lead-summary{display:grid}.info-grid{grid-template-columns:1fr 1fr}.timeline-meta{display:grid;gap:2px}.context-banner{align-items:flex-start}.subnav{margin-left:-18px;margin-right:-18px;padding:0 18px 4px}}
/* Fase 3 - Financeiro Master */
.badge.danger{background:#fff0f1;color:var(--danger)}.finance-metrics{grid-template-columns:repeat(3,1fr)}.account-balance-list{display:grid;margin-top:16px}.account-balance-list>div{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.account-balance-list strong,.account-balance-list small{display:block}.account-balance-list small{font-size:11px;color:var(--muted);margin-top:3px}.account-balance-list b{font-size:16px}.finance-filter{display:flex;align-items:center}.filter-inline{display:grid;grid-template-columns:minmax(260px,1fr) 180px auto;gap:10px;flex:1}.filter-inline input,.filter-inline select{margin:0}.finance-title{margin:8px 0 4px}.account-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.account-card{padding:20px}.account-card small,.account-card span{display:block;color:var(--muted)}.account-card h3{margin:5px 0 18px}.account-card>strong{font-size:25px;display:block;margin-bottom:3px}.config-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 2px;border-bottom:1px solid var(--line)}.config-row strong,.config-row small{display:block}.config-row small{color:var(--muted);font-size:11px;margin-top:3px}.period-filter{display:flex;gap:10px;align-items:end;margin-bottom:16px}.period-filter label{min-width:155px}.period-filter input,.period-filter select{margin-top:5px}.money-in{color:var(--success)}.money-out{color:var(--danger)}.dre-card{display:grid;gap:0}.dre-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.dre-row.minor{color:#59677d}.dre-row.subtotal{font-size:16px;font-weight:800;background:#f8faff;margin:0 -22px;padding:14px 22px}.dre-row.result{font-size:18px;font-weight:900;border-bottom:0;padding-top:20px}.dre-row.result strong{color:var(--primary)}.profit-highlight{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:300px}.profit-highlight>span{color:var(--muted);font-weight:800}.profit-highlight>strong{font-size:52px;margin:8px 0}.warning-card{display:flex;justify-content:space-between;gap:16px;align-items:center;background:#fff8ed;border:1px solid #f3d6a8;border-radius:14px;padding:14px 16px;margin-bottom:16px}.warning-card span{font-size:12px;color:#80643b}.finance-subnav{scrollbar-width:none}
@media(max-width:1200px){.account-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.finance-metrics{grid-template-columns:repeat(2,1fr)}.finance-filter{display:grid;gap:10px}.filter-inline{grid-template-columns:1fr 160px auto}}
@media(max-width:640px){.finance-metrics,.account-cards{grid-template-columns:1fr 1fr}.filter-inline,.period-filter{display:grid;grid-template-columns:1fr}.warning-card{display:grid}.profit-highlight{min-height:220px}.profit-highlight>strong{font-size:40px}}
.btn-link-danger{border:0;background:none;color:var(--danger);font-weight:800;cursor:pointer;padding:0}.btn-link-danger:hover{text-decoration:underline}
.break-even{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:8px 0 18px;width:100%}.break-even small,.break-even b{display:block}.break-even small{color:var(--muted);font-weight:700}.break-even b{font-size:22px;margin-top:4px}


/* Fase 4 - Cobrança Automática */
.collection-status{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 16px;margin-bottom:16px;box-shadow:var(--shadow)}
.collection-status>div{display:grid;grid-template-columns:12px auto;column-gap:9px;align-items:center}.collection-status strong,.collection-status small{grid-column:2}.collection-status small{color:var(--muted);font-size:11px;margin-top:2px}.collection-status .btn{margin-left:auto}
.status-dot{width:10px;height:10px;border-radius:50%;display:inline-block;background:#a6b0bf}.status-dot.ok{background:#1b9a68;box-shadow:0 0 0 4px #e8f6f0}.status-dot.warn{background:#d99817;box-shadow:0 0 0 4px #fff5df}.status-dot.off{background:#c84c59;box-shadow:0 0 0 4px #ffeff1}
.collection-metrics{grid-template-columns:repeat(5,1fr)}.collection-grid{grid-template-columns:1.7fr .8fr}.collection-actions{display:grid;margin-top:12px}.collection-action{padding:15px 0;border-bottom:1px solid var(--line);display:grid;gap:10px}.collection-action strong{display:block;margin:4px 0}.collection-action p{font-size:12px;line-height:1.45;margin:5px 0;color:#4f5e74}.collection-action small{color:var(--muted);font-size:11px}.btn.compact{padding:7px 10px;font-size:11px;width:max-content}
.collection-info{grid-template-columns:repeat(4,1fr)}.issue-charge{margin-top:22px;border-top:1px solid var(--line);padding-top:20px}.issue-charge p{font-size:12px}.charge-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.pay-option{border:1px solid var(--line);background:#fafbfe;padding:15px;border-radius:13px;text-align:left;cursor:pointer;color:var(--text)}.pay-option:hover{border-color:#a9bbec;background:#f5f8ff}.pay-option strong,.pay-option span{display:block}.pay-option span{font-size:11px;color:var(--muted);margin-top:4px}
.gateway-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.gateway-head small{font-size:10px;color:var(--muted)}.pix-box{display:grid;place-items:center;margin:18px 0;background:#fafbfe;border:1px solid var(--line);border-radius:14px;padding:18px}.pix-box img{width:190px;max-width:100%;background:#fff;border-radius:10px}.pix-box strong{margin-top:9px}.pix-box small{color:var(--muted);font-size:11px}.copy-field{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start}.copy-field textarea{min-height:82px;margin-top:7px;resize:vertical}.copy-field .btn{margin-top:7px}.payment-links{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.settlement-state{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.settlement-state>div{background:#f8faff;border:1px solid var(--line);border-radius:12px;padding:12px}.settlement-state small,.settlement-state strong{display:block}.settlement-state small{color:var(--muted);font-size:10px}.settlement-state strong{margin-top:4px;font-size:13px}.compact-empty{padding:28px}
.gateway-health{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gateway-health>div{display:grid;grid-template-columns:12px 1fr;gap:2px 9px;background:#fafbfe;border:1px solid var(--line);padding:12px;border-radius:12px}.gateway-health .status-dot{grid-row:1/3;margin-top:4px}.gateway-health strong,.gateway-health small{grid-column:2}.gateway-health small{font-size:10px;color:var(--muted)}.env-sample{background:#111a2e;color:#dfe8ff;border-radius:12px;padding:14px;margin-top:14px;overflow:auto;font-size:12px;line-height:1.6}.form-actions.left{justify-content:flex-start}.switch-row{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--line);background:#fafbfe;border-radius:12px;padding:13px}.switch-row strong,.switch-row small{display:block}.switch-row small{color:var(--muted);font-size:11px;margin-top:2px}.switch-row input{width:auto;margin:0;transform:scale(1.15)}
.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.rule-card{border:1px solid var(--line);border-radius:13px;padding:14px;background:#fafbfe}.rule-card>div{display:flex;justify-content:space-between;align-items:center}.rule-card strong{display:block;margin-top:10px}.rule-card p{font-size:11px;line-height:1.45;margin:6px 0 0}.rule-day{font-weight:900;color:var(--primary)}.inset-card{padding:18px;box-shadow:none;background:#fcfdff}.row-check{width:auto;margin:0}.payer-toggle{font-weight:700!important}
@media(max-width:1200px){.collection-metrics{grid-template-columns:repeat(3,1fr)}.rules-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.collection-grid{grid-template-columns:1fr}.collection-info{grid-template-columns:repeat(2,1fr)}.charge-options{grid-template-columns:1fr}.gateway-health{grid-template-columns:1fr}}
@media(max-width:640px){.collection-status{display:grid;gap:12px}.collection-status .btn{margin-left:0}.collection-metrics{grid-template-columns:1fr 1fr}.rules-grid{grid-template-columns:1fr}.settlement-state{grid-template-columns:1fr}.copy-field{grid-template-columns:1fr}.copy-field .btn{margin-top:0}}

/* Fase 5 - MultiWhats + Sender */
.whatsapp-subnav{scrollbar-width:none}.wa-health{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:16px;box-shadow:var(--shadow)}.wa-health>div{display:grid;grid-template-columns:12px auto;gap:2px 9px}.wa-health>div:nth-child(2){display:block;margin-left:10px}.wa-health strong,.wa-health small{grid-column:2;display:block}.wa-health small{font-size:11px;color:var(--muted)}.wa-health .btn{margin-left:auto}.wa-metrics{grid-template-columns:repeat(5,1fr)}.wa-recent-list{display:grid;margin-top:8px}.wa-recent,.wa-inbox-row{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:13px 2px;border-bottom:1px solid var(--line)}.wa-recent:last-child,.wa-inbox-row:last-child{border-bottom:0}.wa-recent:hover,.wa-inbox-row:hover{background:#f8faff}.wa-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e9f0ff,#f1f5ff);color:#3157d5;font-weight:900}.wa-recent strong,.wa-recent small{display:block}.wa-recent p{margin:3px 0;color:#536177;font-size:12px}.wa-recent small{font-size:10px;color:var(--muted)}.wa-unread{min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#2457e6;color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center}.wa-sector-list{display:grid;margin-top:8px}.wa-sector-row{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.wa-sector-row:last-child{border-bottom:0}.wa-sector-row strong,.wa-sector-row small{display:block}.wa-sector-row small{font-size:10px;color:var(--muted);margin-top:2px}.wa-sector-row b{font-size:20px}.wa-sector-dot{width:10px;height:10px;border-radius:50%;background:var(--sector,#526174);display:inline-block}.wa-sector-dot.inline{width:7px;height:7px;margin-right:5px}.wa-filter{display:grid;grid-template-columns:minmax(180px,1fr) 150px 190px 1fr auto;gap:10px;align-items:center;padding:12px 14px;margin-bottom:14px}.wa-filter select{margin:0}.wa-filter .inline-check{margin:0}.wa-inbox-card{padding:4px 22px}.wa-inbox-main>div{display:flex;justify-content:space-between;gap:12px}.wa-inbox-main>div span{font-size:10px;color:var(--muted)}.wa-inbox-main p{font-size:12px;color:#536177;margin:4px 0}.wa-inbox-main small{font-size:10px;color:var(--muted)}.wa-inbox-row.unread strong{color:#173fae}.wa-chat-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:18px}.wa-chat{overflow:hidden;min-height:680px;display:grid;grid-template-rows:auto 1fr auto}.wa-chat-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.wa-chat-head strong,.wa-chat-head small{display:block}.wa-chat-head small{font-size:11px;color:var(--muted);margin-top:3px}.wa-messages{padding:18px;background:linear-gradient(180deg,#f8faff,#f4f7fb);overflow:auto;max-height:620px;display:flex;flex-direction:column;gap:8px}.wa-message{display:flex}.wa-message.saida{justify-content:flex-end}.wa-message.sistema{justify-content:center}.wa-message>div{max-width:min(72%,620px);background:#fff;border:1px solid var(--line);border-radius:15px 15px 15px 4px;padding:10px 12px;box-shadow:0 4px 16px rgba(20,31,52,.04)}.wa-message.saida>div{background:#e9f1ff;border-color:#cfddff;border-radius:15px 15px 4px 15px}.wa-message.sistema>div{background:#eef1f5;border-radius:999px;padding:6px 12px}.wa-message p{margin:0;color:#28364c;font-size:13px;line-height:1.48}.wa-message small{display:block;margin-top:5px;font-size:9px;color:#8490a1}.wa-type{font-weight:900;text-transform:uppercase;letter-spacing:.05em}.wa-composer{border-top:1px solid var(--line);padding:12px 14px;background:#fff}.wa-compose-form{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.wa-compose-form textarea{margin:0;resize:none}.wa-quick{display:flex;gap:6px;overflow:auto;margin-top:8px}.wa-quick-btn{cursor:pointer}.wa-side .card{padding:18px}.info-list{display:grid}.info-list>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.info-list small{color:var(--muted)}.info-list strong{font-size:12px;text-align:right}.wa-notes{display:grid;margin-top:12px}.wa-notes>div{padding:10px 0;border-top:1px solid var(--line)}.wa-notes strong,.wa-notes small{font-size:10px}.wa-notes p{font-size:12px;margin:4px 0;color:#475569}.wa-notes small{color:var(--muted)}.wa-sector-config{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.wa-sector-config select[multiple]{min-height:130px}.page-actions{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}.page-actions h2{margin:0}.page-actions p{margin:4px 0 0;color:var(--muted);font-size:12px}.block{display:block;color:var(--muted);font-size:10px;margin-top:3px}.narrow{max-width:900px;padding:22px}.muted{color:var(--muted);font-size:12px}.wa-live-pulse{animation:waPulse .9s ease}@keyframes waPulse{0%{background:#dce8ff}100%{background:transparent}}
@media(max-width:1200px){.wa-metrics{grid-template-columns:repeat(3,1fr)}.wa-sector-config{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.wa-chat-layout{grid-template-columns:1fr}.wa-chat{min-height:600px}.wa-filter{grid-template-columns:1fr 1fr}.wa-filter .inline-check{grid-column:1/2}.wa-filter .btn{grid-column:2/3}}
@media(max-width:640px){.wa-health{display:grid;gap:10px}.wa-health .btn{margin-left:0}.wa-metrics{grid-template-columns:1fr 1fr}.wa-filter{grid-template-columns:1fr}.wa-filter .inline-check,.wa-filter .btn{grid-column:auto}.wa-inbox-card{padding:0 12px}.wa-inbox-row{grid-template-columns:38px 1fr auto}.wa-avatar{width:38px;height:38px}.wa-chat{min-height:70vh}.wa-chat-head{align-items:flex-start}.wa-message>div{max-width:88%}.wa-compose-form{grid-template-columns:1fr}.wa-sector-config{grid-template-columns:1fr}.page-actions{align-items:flex-start}.narrow{padding:16px}}

/* Fase 6 - Acadêmico Master */
.badge.warning{background:#fff4dc;color:#9a6700}.academic-subnav{scrollbar-width:none}.academic-metrics{grid-template-columns:repeat(4,1fr)}.academic-course-metrics{grid-template-columns:repeat(4,1fr)}.academic-agenda{display:grid;margin-top:8px}.agenda-row{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.agenda-row:last-child{border-bottom:0}.agenda-row:hover strong{color:var(--primary)}.agenda-date{width:48px;height:48px;border-radius:13px;background:#eef3ff;display:grid;place-items:center;align-content:center;color:#244fc6}.agenda-date b{font-size:18px;line-height:1}.agenda-date small{font-size:9px;margin-top:3px}.agenda-row strong,.agenda-row small{display:block}.agenda-row small{color:var(--muted);font-size:11px;margin-top:3px}.agenda-time{font-weight:800;color:#536177}.academic-list{display:grid;margin-top:10px}.academic-list>div,.academic-list>a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.academic-list>div:last-child,.academic-list>a:last-child{border-bottom:0}.academic-list strong,.academic-list small{display:block}.academic-list small{font-size:11px;color:var(--muted);margin-top:3px}.inline-form{display:grid;grid-template-columns:minmax(180px,1fr) 90px 110px auto;gap:8px;align-items:end}.inline-form input{margin:0}.academic-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.academic-class-card{padding:20px;transition:.15s ease}.academic-class-card:hover{transform:translateY(-2px);border-color:#c8d5f8}.class-card-head,.class-footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.class-card-head small{color:var(--muted)}.academic-class-card h3{font-size:20px;margin:18px 0 4px}.academic-class-card>p{margin:0;color:var(--muted)}.class-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.class-meta span{border:1px solid var(--line);background:#fafbfe;padding:10px;border-radius:10px;font-size:10px;color:var(--muted)}.class-meta b{display:block;color:#34425a;font-size:12px;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis}.class-footer{border-top:1px solid var(--line);padding-top:13px;font-size:11px;color:var(--muted)}.academic-class-context{padding:15px 18px;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.academic-class-context strong,.academic-class-context small{display:block}.academic-class-context small{color:var(--muted);margin-top:3px}.attendance-list{display:grid;margin-top:12px}.attendance-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.attendance-row>div:first-child{display:grid;grid-template-columns:160px 1fr;gap:10px;align-items:center}.attendance-row input{margin:0}.attendance-options{display:flex;gap:6px;flex-wrap:wrap}.attendance-pill{font-size:11px;font-weight:800;cursor:pointer}.attendance-pill input{display:none}.attendance-pill span{display:inline-flex;padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#69758a}.attendance-pill input:checked+span{border-color:#9db3f5;background:#edf3ff;color:#244fc6}.attendance-pill.falta input:checked+span{border-color:#f0b8be;background:#fff0f1;color:var(--danger)}.attendance-pill.justificada input:checked+span{border-color:#f2d29b;background:#fff8ea;color:#926316}.attendance-pill.reposicao input:checked+span{border-color:#a9d8c5;background:#eaf8f2;color:#126a4c}.academic-eval-head{display:flex;justify-content:space-between}.academic-eval-head strong,.academic-eval-head small{display:block}.academic-eval-head small{color:var(--muted);margin-top:4px}.filter-bar{padding:14px;display:grid;grid-template-columns:170px 170px auto;gap:10px;align-items:end}.filter-bar input{margin-top:5px}.calendar-list{display:grid}.calendar-row{display:grid;grid-template-columns:65px 1fr 100px 65px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.calendar-row:last-child{border-bottom:0}.calendar-day{display:grid}.calendar-day b{font-size:20px}.calendar-day small{font-size:9px;color:var(--muted)}.calendar-row strong,.calendar-row small{display:block}.calendar-row small{font-size:11px;color:var(--muted);margin-top:3px}.risk-explain{padding:16px 18px;background:#f8faff}.risk-explain p{font-size:12px;margin:5px 0 0;line-height:1.5}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.inline-action{display:inline}.button-link{background:none;border:0;padding:0;cursor:pointer}.form-grid textarea{margin-top:7px}.academic-subnav a:first-child{font-weight:900}
@media(max-width:1200px){.academic-card-grid{grid-template-columns:repeat(2,1fr)}.academic-course-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.attendance-row{grid-template-columns:1fr}.attendance-row>div:first-child{grid-template-columns:1fr}.inline-form{grid-template-columns:1fr 1fr}.academic-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.academic-card-grid,.academic-course-metrics,.academic-metrics{grid-template-columns:1fr}.class-meta{grid-template-columns:1fr 1fr}.attendance-options{display:grid;grid-template-columns:1fr 1fr}.attendance-pill span{justify-content:center}.inline-form,.filter-bar{grid-template-columns:1fr}.calendar-row{grid-template-columns:52px 1fr auto}.calendar-row>span:last-child{display:none}}

.certificate-actions{display:flex;justify-content:flex-end;gap:10px;margin-bottom:14px}.certificate-sheet{background:#fff;border:1px solid #dfe5ee;border-radius:22px;padding:54px;min-height:700px;box-shadow:var(--shadow);position:relative;overflow:hidden}.certificate-sheet:before,.certificate-sheet:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:#eef3ff;z-index:0}.certificate-sheet:before{right:-130px;top:-130px}.certificate-sheet:after{left:-160px;bottom:-160px}.certificate-sheet>*{position:relative;z-index:1}.certificate-brand{display:flex;gap:12px;align-items:center}.certificate-brand strong,.certificate-brand small{display:block}.certificate-brand small{color:var(--muted)}.certificate-eyebrow{text-align:center;margin-top:65px;font-size:12px;letter-spacing:.25em;font-weight:900;color:#5870a8}.certificate-sheet h2{text-align:center;font-size:18px;font-weight:500;margin:22px 0 6px;color:#667085}.certificate-sheet h1{text-align:center;font-size:40px;margin:0;color:#152033}.certificate-sheet>p{text-align:center;max-width:760px;margin:24px auto;line-height:1.75;color:#475569;font-size:16px}.certificate-stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:680px;margin:36px auto;gap:12px}.certificate-stats>div{background:#f8faff;border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center}.certificate-stats small,.certificate-stats strong{display:block}.certificate-stats small{color:var(--muted);font-size:10px}.certificate-stats strong{margin-top:5px}.certificate-signatures{display:grid;grid-template-columns:1fr 1fr;gap:80px;max-width:680px;margin:70px auto 30px}.certificate-signatures>div{text-align:center}.certificate-signatures span{display:block;border-top:1px solid #8f99aa;margin-bottom:8px}.certificate-signatures strong,.certificate-signatures small{display:block}.certificate-signatures small{color:var(--muted);margin-top:3px}.certificate-code{text-align:center;font-size:10px;color:#7c8798;margin-top:40px}
@media(max-width:640px){.certificate-sheet{padding:26px 18px}.certificate-sheet h1{font-size:28px}.certificate-stats{grid-template-columns:1fr}.certificate-signatures{grid-template-columns:1fr;gap:42px}.certificate-actions{justify-content:stretch}.certificate-actions>*{flex:1}}
@media print{body{background:#fff}.sidebar,.topbar,.academic-subnav,.certificate-actions,.alert{display:none!important}.app-shell{display:block}.main{padding:0}.content{padding:0}.certificate-sheet{border:0;box-shadow:none;border-radius:0;min-height:100vh;padding:55px}.certificate-sheet:before,.certificate-sheet:after{display:none}}

.verify-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#eaf0ff,transparent 35%),#f5f7fb;padding:20px}.verify-card{width:min(720px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 60px rgba(24,39,75,.12);padding:30px}.verify-card h1{margin:28px 0 6px}.verify-card>p{color:var(--muted)}.verify-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:20px}.verify-form input{margin:0}.verify-result{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start;margin-top:22px;padding:18px;border-radius:14px}.verify-result.valid{background:#eaf8f2;border:1px solid #bfe6d5}.verify-result.invalid{background:#fff0f1;border:1px solid #efc3c8}.verify-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:22px;font-weight:900}.verify-result h2{margin:5px 0}.verify-result p{margin:0 0 5px}.verify-result small{color:var(--muted)}
@media(max-width:640px){.verify-form{grid-template-columns:1fr}}
/* Fase 7 - Portal do Aluno e Responsavel */
.portal-body{background:#f3f6fb}.portal-shell{min-height:100vh;display:grid;grid-template-columns:248px 1fr}.portal-sidebar{background:#15203a;color:#fff;padding:24px 17px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.portal-brand{display:flex;gap:11px;align-items:center;padding:0 7px 24px}.portal-brand>span,.portal-login-logo>span{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#3169f4,#7da1ff);font-weight:900;color:white}.portal-brand strong,.portal-brand small{display:block}.portal-brand small{opacity:.62;font-size:11px;margin-top:2px}.portal-student-picker,.portal-current-student{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;margin-bottom:18px}.portal-student-picker label,.portal-current-student small{display:block;color:#9caccc;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.portal-student-picker select{background:#1d2a48;border-color:#354464;color:#fff;padding:9px;margin-top:6px}.portal-current-student strong,.portal-current-student span{display:block;margin-top:4px}.portal-current-student span{color:#95a4c3;font-size:11px}.portal-sidebar nav{display:grid;gap:6px}.portal-sidebar nav a{display:flex;gap:12px;align-items:center;padding:12px 13px;border-radius:11px;color:#ced8eb;font-weight:650;font-size:14px}.portal-sidebar nav a.active,.portal-sidebar nav a:hover{background:#223152;color:#fff}.portal-sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:14px;display:flex;justify-content:space-between;font-size:12px;color:#aebbd1}.portal-main{min-width:0}.portal-top{padding:27px 34px 12px;display:flex;justify-content:space-between;gap:20px;align-items:center}.portal-top h1{margin:3px 0;font-size:27px}.portal-top>div>small,.portal-top p{color:#76849b}.portal-top p{margin:0}.portal-user{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:9px 12px}.portal-user>span{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#eaf0ff;color:#2457e6;font-weight:900}.portal-user strong,.portal-user small{display:block}.portal-user small{font-size:11px;color:var(--muted)}.portal-content{padding:18px 34px 42px}.portal-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.portal-metric{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:0 8px 26px rgba(26,42,74,.045)}.portal-metric span,.portal-metric small{display:block;color:var(--muted)}.portal-metric strong{display:block;font-size:25px;margin:8px 0 5px}.portal-pay-card{margin-top:16px;background:linear-gradient(120deg,#18284a,#284e9c);color:#fff;border-radius:20px;padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 16px 38px rgba(33,67,132,.16)}.portal-pay-card small{opacity:.65}.portal-pay-card h2{font-size:31px;margin:4px 0}.portal-pay-card p{margin:0;opacity:.76}.portal-pay-actions{display:flex;gap:9px;flex-wrap:wrap}.portal-pay-card .btn.ghost{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff}.portal-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.portal-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 26px rgba(26,42,74,.04);overflow:hidden}.portal-section{padding:22px}.portal-card-head{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:17px}.portal-card-head small{font-size:10px;letter-spacing:.08em;color:#8090aa}.portal-card-head h2,.portal-card-head h3{margin:4px 0}.portal-card-head p{margin:3px 0;color:var(--muted)}.portal-card-head>a{color:var(--primary);font-size:12px;font-weight:800}.portal-list{display:grid}.portal-list>div{display:flex;justify-content:space-between;gap:10px;padding:14px 0;border-top:1px solid var(--line)}.portal-list strong,.portal-list small{display:block}.portal-list small{color:var(--muted);margin-top:4px}.portal-progress-label{font-weight:900;color:var(--primary)}.portal-notices{display:grid;gap:10px}.notice{border:1px solid var(--line);border-left:4px solid #9ba9bd;border-radius:12px;padding:13px 14px}.notice.importante{border-left-color:#d89b27}.notice.urgente{border-left-color:#cf4651}.notice small,.notice strong{display:block}.notice small{font-size:10px;color:var(--muted);margin-bottom:5px}.notice p{margin:6px 0 0;color:#5f6c80;font-size:13px}.portal-request-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.portal-request-grid>div{padding:13px;border:1px solid var(--line);border-radius:12px}.portal-request-grid strong,.portal-request-grid small{display:block;margin-top:6px}.portal-request-grid small{color:var(--muted)}.portal-summary{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:16px}.portal-summary>div{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px}.portal-summary span,.portal-summary strong{display:block}.portal-summary span{color:var(--muted)}.portal-summary strong{font-size:27px;margin-top:6px}.portal-finance-list{display:grid}.portal-finance-list article{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 0;border-top:1px solid var(--line)}.portal-fin-main{display:flex;gap:11px;align-items:center}.portal-fin-main strong,.portal-fin-main small{display:block}.portal-fin-main small{color:var(--muted);margin-top:4px}.portal-fin-value{text-align:right}.portal-fin-value>strong{display:block;font-size:17px}.portal-fin-value div{display:flex;gap:10px;justify-content:flex-end;margin-top:5px}.portal-fin-value a,.link-button{border:0;background:none;padding:0;color:var(--primary);font:inherit;font-size:12px;font-weight:800;cursor:pointer}.portal-course-card{padding:22px;margin-bottom:16px}.course-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.course-stats>div{padding:15px;border:1px solid var(--line);border-radius:13px;background:#fafbfe}.course-stats span,.course-stats strong,.course-stats small{display:block}.course-stats span,.course-stats small{color:var(--muted)}.course-stats strong{font-size:23px;margin:5px 0}.portal-timeline{display:grid}.portal-timeline article{display:grid;grid-template-columns:58px 1fr;gap:16px;padding:17px 0;border-top:1px solid var(--line)}.portal-timeline time{width:54px;height:58px;background:#eef3ff;border-radius:13px;display:grid;place-items:center;align-content:center;color:#2857cb}.portal-timeline time strong{font-size:21px;line-height:1}.portal-timeline time span{font-size:9px;font-weight:900;margin-top:4px}.portal-timeline h3{margin:7px 0 3px}.portal-timeline p{font-size:13px}.portal-doc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.portal-doc{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center}.portal-doc>span{width:44px;height:44px;border-radius:12px;background:#edf3ff;display:grid;place-items:center;color:#2758d1;font-size:20px}.portal-doc small,.portal-doc strong,.portal-doc p{display:block;margin:0}.portal-doc small{font-size:9px;letter-spacing:.08em;color:var(--muted)}.portal-doc strong{margin:4px 0}.portal-doc p{font-size:11px;color:var(--muted)}.portal-doc>b{font-size:12px;color:var(--primary)}.portal-form{display:grid;gap:13px;margin-top:15px}.request-answer{background:#f3f7ff;border-radius:10px;padding:10px;margin-top:10px}.request-answer p{margin:4px 0}.portal-empty-state{background:#fff;border:1px dashed #ccd6e5;border-radius:18px;padding:36px;text-align:center;color:var(--muted)}.portal-empty-state strong{display:block;color:var(--text);font-size:18px}.portal-login-body{margin:0;min-height:100vh;background:#eef3fa;display:grid;place-items:center;padding:24px}.portal-login-wrap{width:min(940px,100%);min-height:570px;background:#fff;border-radius:26px;overflow:hidden;display:grid;grid-template-columns:1.12fr .88fr;box-shadow:0 28px 70px rgba(27,43,78,.14)}.portal-login-hero{background:linear-gradient(145deg,#142039,#203866 70%,#315ab1);color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:space-between}.portal-login-logo{display:flex;align-items:center;gap:10px;font-size:18px}.portal-login-hero h1{font-size:42px;line-height:1.05;margin:10px 0 16px;max-width:480px}.portal-login-hero p{font-size:16px;line-height:1.6;color:#c7d2e9;max-width:470px}.portal-login-hero>div>small{color:#93a9d4;letter-spacing:.1em;font-weight:800}.portal-login-features{display:flex;gap:16px;flex-wrap:wrap;color:#cbd6ea;font-size:12px}.portal-login-card{padding:46px 40px;display:flex;flex-direction:column;justify-content:center}.portal-login-card h2{font-size:28px;margin:0 0 5px}.portal-login-card>div>p{margin:0 0 24px;color:var(--muted)}.portal-login-card form{display:grid;gap:15px}.compact-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.compact-row strong,.compact-row small{display:block}.compact-row small{margin-top:3px;color:var(--muted)}
@media(max-width:900px){.portal-shell{grid-template-columns:78px 1fr}.portal-sidebar{padding:18px 10px}.portal-brand div,.portal-student-picker,.portal-current-student,.portal-sidebar nav span,.portal-sidebar-footer{display:none}.portal-brand{padding-left:9px}.portal-sidebar nav a{justify-content:center;font-size:18px}.portal-metrics{grid-template-columns:1fr 1fr}.portal-doc-grid{grid-template-columns:1fr}.portal-login-wrap{grid-template-columns:1fr}.portal-login-hero{display:none}}
@media(max-width:640px){.portal-shell{display:block}.portal-sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;height:70px;z-index:20;padding:7px;background:#15203a}.portal-brand,.portal-sidebar-footer{display:none}.portal-sidebar nav{grid-template-columns:repeat(7,1fr);gap:2px}.portal-sidebar nav a{padding:12px 2px;font-size:17px}.portal-main{padding-bottom:78px}.portal-top{padding:18px 18px 5px}.portal-top h1{font-size:22px}.portal-top p{font-size:12px}.portal-user{display:none}.portal-content{padding:13px 18px 28px}.portal-metrics,.portal-grid-2,.portal-summary,.course-stats,.portal-request-grid{grid-template-columns:1fr}.portal-pay-card{align-items:flex-start;flex-direction:column}.portal-pay-actions{width:100%}.portal-pay-actions .btn{flex:1}.portal-finance-list article{align-items:flex-start}.portal-doc{grid-template-columns:40px 1fr}.portal-doc>b{display:none}.portal-login-body{padding:0;background:#fff}.portal-login-wrap{min-height:100vh;border-radius:0}.portal-login-card{padding:32px 24px}.portal-timeline article{grid-template-columns:50px 1fr}}

/* Fase 8 - Contratos + EAD */
.block-muted{display:block;color:var(--muted);font-size:11px;margin-top:4px}.contract-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px;color:var(--muted);font-size:12px}.contract-paper{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:42px;line-height:1.72;white-space:normal;margin-bottom:18px;max-width:980px}.contract-paper code{font-size:11px}.inline-details{margin-top:15px;border-top:1px solid var(--line);padding-top:12px}.inline-details summary{cursor:pointer;color:var(--primary);font-weight:800}.check-line{display:flex;gap:9px;align-items:flex-start}.check-line input{width:auto;margin:3px 0 0}.ead-course-grid,.ead-student-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.ead-course-admin,.ead-student-card{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.ead-course-admin small,.ead-student-card small{color:var(--muted)}.ead-course-admin h3,.ead-student-card h3{margin:7px 0 20px}.ead-course-admin>div{display:flex;gap:9px}.ead-course-admin>div span{background:#f3f6fb;padding:7px 9px;border-radius:9px;font-size:11px}.progress-track{height:8px;border-radius:99px;background:#e8edf5;overflow:hidden;margin:16px 0 10px}.progress-track span{display:block;height:100%;background:var(--primary);border-radius:inherit}.ead-student-card>div:last-child{display:flex;justify-content:space-between;align-items:center}.ead-lesson-list{display:grid}.ead-lesson-list a{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.ead-lesson-list strong,.ead-lesson-list small{display:block}.ead-lesson-list small{color:var(--muted);margin-top:4px}.lesson-state{width:38px;height:38px;border-radius:50%;background:#edf2fb;display:grid;place-items:center;color:var(--primary);font-weight:900}.lesson-state.done{background:#e9f7f1;color:var(--success)}.ead-lesson-list b{font-size:12px;color:var(--primary)}.ead-player{padding:25px}.ead-player-head h2{font-size:27px;margin:6px 0}.ead-player-head p{color:var(--muted)}.ead-content{margin-top:20px}.video-frame{position:relative;padding-top:56.25%;border-radius:17px;overflow:hidden;background:#101827}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.lesson-text{background:#fafbfe;border:1px solid var(--line);padding:22px;border-radius:14px;line-height:1.75;margin-top:18px}
@media(max-width:900px){.ead-course-grid,.ead-student-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ead-course-grid,.ead-student-grid{grid-template-columns:1fr}.contract-paper{padding:22px}.portal-sidebar nav{grid-template-columns:repeat(9,1fr);overflow-x:auto}.portal-sidebar nav a{min-width:42px}.ead-lesson-list a{grid-template-columns:38px 1fr}.ead-lesson-list b{display:none}}

/* Fase 9 - EAD Master */
.ead-toolbar{gap:9px;flex-wrap:wrap}.answer-option{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;margin-top:8px}.answer-option input[type=radio]{width:auto;margin:0}.answer-option input[type=text],.answer-option input:not([type]){margin:0}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:14px 0}.question-picker{display:grid;gap:10px;max-height:420px;overflow:auto;padding:4px}.question-card h3,.exam-question h2{font-size:18px;line-height:1.5;margin:8px 0 14px}.student-answer{background:#f7f9fd;border:1px solid var(--line);border-radius:13px;padding:14px;margin:13px 0}.student-answer p{margin:6px 0 0;line-height:1.6}.mini-progress{height:8px;background:#e7ecf5;border-radius:999px;overflow:hidden;min-width:120px}.mini-progress span{display:block;height:100%;background:var(--primary)}.ead-lesson-locked{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid var(--line);opacity:.66}.ead-lesson-locked strong,.ead-lesson-locked small{display:block}.ead-lesson-locked small{color:var(--muted);margin-top:4px}.ead-lesson-locked b{font-size:12px}.module-assessments{border-top:1px solid var(--line);margin-top:10px;padding-top:14px}.module-assessments>small{font-size:10px;letter-spacing:.08em;color:var(--muted);font-weight:900}.assessment-line{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.assessment-line>span{width:38px;height:38px;border-radius:11px;background:#eef3ff;display:grid;place-items:center;color:var(--primary);font-weight:900}.assessment-line strong,.assessment-line small{display:block}.assessment-line small{color:var(--muted);margin-top:4px}.assessment-line b{font-size:12px;color:var(--primary)}.assessment-line.locked{opacity:.62}.exam-hero{display:grid;grid-template-columns:1.4fr .6fr;gap:18px}.exam-icon{width:46px;height:46px;border-radius:14px;background:#edf3ff;display:grid;place-items:center;color:var(--primary);font-size:20px}.exam-hero h2{font-size:28px;margin:7px 0}.exam-meta{display:grid;gap:10px}.exam-meta span{padding:13px;border:1px solid var(--line);border-radius:13px;color:var(--muted)}.exam-meta strong{display:block;color:var(--text);font-size:20px}.exam-options{display:grid;gap:9px;margin-top:12px}.exam-options label{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:#fff}.exam-options label:hover{background:#f8faff;border-color:#bdc9e7}.exam-options input{width:auto;margin:3px 0 0}.exam-timer{position:sticky;top:10px;z-index:8;display:flex;justify-content:space-between;align-items:center;background:#101a31;color:#fff;border-radius:14px;padding:12px 16px;margin-bottom:14px;box-shadow:0 12px 30px rgba(16,26,49,.18)}.exam-timer span{opacity:.7}.exam-timer strong{font-size:21px}.result-card{text-align:center;padding:30px}.result-card span{color:var(--muted)}.result-card h2{font-size:38px;margin:8px 0}.answer-key{background:#edf8f2;border-radius:10px;padding:10px;color:#176f51}
@media(max-width:760px){.check-grid,.exam-hero{grid-template-columns:1fr}.assessment-line,.ead-lesson-locked{grid-template-columns:38px 1fr}.assessment-line b,.ead-lesson-locked b{display:none}.mini-progress{min-width:90px}}

/* ============================================================
   AJUSTE VISUAL 2026-09-25
   - Sidebar administrativa com fundo até o fim
   - Novo login do Portal do Aluno / Responsável
   ============================================================ */

/* Sidebar: mantém todo o menu dentro do fundo escuro mesmo quando a
   quantidade de itens passa da altura visível da tela. */
.sidebar{
    height:100dvh;
    min-height:100vh;
    overflow-y:auto;
    overflow-x:hidden;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.16) transparent;
    overscroll-behavior:contain;
}
.sidebar::-webkit-scrollbar{width:5px}
.sidebar::-webkit-scrollbar-track{background:transparent}
.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:99px}
.sidebar nav{flex:0 0 auto}
.sidebar .nav-label{color:#8997b3}
.sidebar .sidebar-footer{flex:0 0 auto}

/* ---------- Portal Login V2 ---------- */
.portal-login-body.portal-login-v2{
    --portal-navy:#10233e;
    --portal-blue:#2764ed;
    --portal-blue-2:#3e8df5;
    --portal-copy:#536680;
    --portal-border:#d9e4f2;
    --portal-soft:#edf5ff;
    margin:0;
    min-height:100vh;
    display:block;
    padding:0;
    overflow-x:hidden;
    background:
        radial-gradient(circle at 73% 28%,rgba(116,177,255,.24),transparent 26%),
        radial-gradient(circle at 90% 74%,rgba(82,147,239,.16),transparent 28%),
        linear-gradient(116deg,#fff 0%,#fbfdff 48%,#edf6ff 100%);
    color:var(--portal-navy);
}

.portal-login-v2 .portal-login-wrap{
    position:relative;
    width:100%;
    min-height:100vh;
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(440px,.88fr);
    background:transparent;
    border-radius:0;
    box-shadow:none;
    overflow:hidden;
}

.portal-login-v2 .portal-login-wrap::before{
    content:"";
    position:absolute;
    width:740px;
    height:740px;
    right:-245px;
    top:160px;
    border-radius:50%;
    border:115px solid rgba(123,181,253,.12);
    pointer-events:none;
}

.portal-login-v2 .portal-login-wrap::after{
    content:"";
    position:absolute;
    width:600px;
    height:220px;
    left:-90px;
    bottom:-110px;
    border-radius:50%;
    border:66px solid rgba(120,182,255,.17);
    transform:rotate(7deg);
    pointer-events:none;
}

.portal-login-v2 .portal-login-hero{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    min-width:0;
    padding:clamp(34px,5vw,78px) clamp(34px,6vw,104px) 0;
    background:transparent;
    color:var(--portal-navy);
}

.portal-login-brand{
    display:flex;
    align-items:center;
    gap:14px;
    width:max-content;
}

.portal-login-brand-mark{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    color:#2781ec;
    filter:drop-shadow(0 8px 13px rgba(43,115,222,.2));
}
.portal-login-brand-mark svg{width:54px;height:54px}
.portal-login-brand strong{
    display:block;
    font-size:30px;
    line-height:1;
    letter-spacing:-.04em;
    color:#122540;
}
.portal-login-brand span{
    display:block;
    margin-top:7px;
    color:#74839a;
    font-size:11px;
    font-weight:800;
    letter-spacing:.035em;
}

.portal-login-copy{margin-top:clamp(38px,6vh,72px)}
.portal-login-v2 .portal-login-copy h1{
    max-width:720px;
    margin:0;
    font-size:clamp(44px,4.7vw,74px);
    line-height:.98;
    letter-spacing:-.052em;
    font-weight:850;
    color:#0f2340;
}
.portal-login-v2 .portal-login-copy h1 em{
    display:inline-block;
    color:var(--portal-blue);
    font-style:normal;
    margin-top:10px;
}
.portal-login-v2 .portal-login-copy p{
    max-width:720px;
    margin:28px 0 0;
    color:#536680;
    font-size:clamp(17px,1.5vw,23px);
    line-height:1.48;
    font-weight:450;
}

.portal-login-v2 .portal-login-features{
    display:grid;
    grid-template-columns:repeat(2,minmax(220px,1fr));
    gap:15px 42px;
    width:min(720px,100%);
    margin-top:30px;
    color:#1d385e;
}
.portal-login-feature{
    display:flex;
    align-items:center;
    gap:15px;
    min-width:0;
    font-size:16px;
    font-weight:650;
}
.feature-icon{
    flex:0 0 48px;
    width:48px;
    height:48px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:linear-gradient(145deg,#eef6ff,#deedff);
    color:#2d76e8;
    box-shadow:inset 0 0 0 1px rgba(62,129,231,.06);
}
.feature-icon svg{
    width:25px;
    height:25px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.portal-login-illustration{
    position:relative;
    width:min(620px,90%);
    height:250px;
    margin-top:auto;
    z-index:1;
}
.portal-login-illustration svg{
    position:relative;
    z-index:2;
    width:100%;
    height:100%;
    display:block;
}
.illustration-glow{
    position:absolute;
    left:-110px;
    bottom:-95px;
    width:660px;
    height:250px;
    border-radius:50%;
    background:rgba(160,206,255,.2);
    filter:blur(1px);
}

.portal-login-panel{
    position:relative;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px clamp(35px,6vw,105px) 40px 28px;
}

.portal-login-v2 .portal-login-card{
    width:min(590px,100%);
    padding:54px 55px 48px;
    display:block;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(217,228,242,.92);
    border-radius:30px;
    box-shadow:0 28px 75px rgba(44,89,151,.14);
    backdrop-filter:blur(12px);
}
.portal-login-card-head h2{
    margin:0;
    color:#10233e;
    font-size:clamp(34px,3vw,45px);
    line-height:1.05;
    letter-spacing:-.04em;
}
.portal-login-card-head p{
    margin:13px 0 30px;
    color:#73849b;
    font-size:17px;
}
.portal-login-mobile-mark{display:none}

.portal-login-form{display:grid;gap:22px}
.portal-login-field{
    display:grid;
    gap:9px;
    color:#142a49;
    font-size:14px;
    font-weight:800;
}
.portal-input-wrap{
    position:relative;
    display:flex;
    align-items:center;
}
.portal-input-wrap input{
    width:100%;
    height:60px;
    margin:0;
    padding:0 52px 0 56px;
    border:1px solid #cfdbeb;
    border-radius:14px;
    background:#fff;
    color:#172d4b;
    font-size:16px;
    font-weight:500;
    outline:none;
    box-shadow:0 2px 7px rgba(44,77,122,.025);
    transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.portal-input-wrap input::placeholder{color:#a4b1c2;font-weight:500}
.portal-input-wrap input:focus{
    border-color:#6d9af2;
    box-shadow:0 0 0 4px rgba(39,100,237,.09),0 6px 18px rgba(45,94,161,.06);
    background:#fff;
}
.portal-input-icon{
    position:absolute;
    left:19px;
    z-index:2;
    display:grid;
    place-items:center;
    color:#7d8da4;
    pointer-events:none;
}
.portal-input-icon svg,.portal-password-toggle svg{
    width:23px;
    height:23px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.85;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.portal-password-toggle{
    position:absolute;
    right:14px;
    z-index:3;
    width:40px;
    height:40px;
    border:0;
    border-radius:10px;
    display:grid;
    place-items:center;
    background:transparent;
    color:#7d8da4;
    cursor:pointer;
}
.portal-password-toggle:hover{background:#f3f7fc;color:#315f9f}
.portal-password-toggle .eye-closed{display:none}
.portal-password-toggle.showing .eye-open{display:none}
.portal-password-toggle.showing .eye-closed{display:block}

.portal-login-submit{
    width:100%;
    min-height:61px;
    margin-top:0;
    border:0;
    border-radius:14px;
    background:linear-gradient(110deg,#245df1,#2569ef 55%,#2e73f1);
    color:#fff;
    font:inherit;
    font-size:16px;
    font-weight:850;
    cursor:pointer;
    box-shadow:0 13px 28px rgba(37,100,238,.22);
    transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.portal-login-submit:hover{
    transform:translateY(-1px);
    box-shadow:0 16px 33px rgba(37,100,238,.29);
    filter:saturate(1.08);
}
.portal-login-submit:active{transform:translateY(0)}
.portal-login-help{
    margin:30px 0 0;
    text-align:center;
    color:#71829a;
    font-size:13px;
    line-height:1.5;
}
.portal-login-alert{margin:0 0 20px}

@media(max-width:1180px){
    .portal-login-v2 .portal-login-wrap{grid-template-columns:minmax(0,1fr) minmax(400px,.82fr)}
    .portal-login-v2 .portal-login-hero{padding-left:45px;padding-right:30px}
    .portal-login-panel{padding-right:42px}
    .portal-login-v2 .portal-login-copy h1{font-size:52px}
    .portal-login-v2 .portal-login-copy p{font-size:18px}
    .portal-login-v2 .portal-login-features{gap:12px 20px}
}

@media(max-width:900px){
    .portal-login-v2 .portal-login-wrap{
        min-height:100vh;
        grid-template-columns:1fr;
        align-items:center;
    }
    .portal-login-v2 .portal-login-hero{display:none}
    .portal-login-panel{
        min-height:100vh;
        padding:32px 22px;
        background:
            radial-gradient(circle at 20% 12%,rgba(116,177,255,.24),transparent 30%),
            linear-gradient(150deg,#f9fcff,#edf5ff);
    }
    .portal-login-v2 .portal-login-card{max-width:530px;padding:44px 38px}
    .portal-login-mobile-mark{
        display:grid;
        place-items:center;
        width:54px;
        height:54px;
        margin-bottom:25px;
        color:#2879e7;
    }
    .portal-login-mobile-mark svg{width:54px;height:54px}
}

@media(max-width:560px){
    .portal-login-panel{padding:18px 14px}
    .portal-login-v2 .portal-login-card{
        width:100%;
        padding:34px 23px 28px;
        border-radius:23px;
        box-shadow:0 18px 48px rgba(44,89,151,.12);
    }
    .portal-login-card-head h2{font-size:32px}
    .portal-login-card-head p{font-size:15px;margin-bottom:25px}
    .portal-input-wrap input{height:56px}
    .portal-login-submit{min-height:56px}
}

@media(prefers-reduced-motion:reduce){
    .portal-login-submit,.portal-input-wrap input{transition:none}
}

/* ============================================================
   FASE 10 - INSTRUTORES MASTER
   ============================================================ */
.instructor-subnav{margin-bottom:20px}.instructor-toolbar{display:flex;gap:14px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}.instructor-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap;flex:1}.instructor-filter>input{max-width:340px;margin:0}.instructor-filter>select{max-width:220px;margin:0}.instructor-filter label{min-width:150px}.instructor-filter label input,.instructor-filter label select{margin-top:6px}.entity-link strong,.entity-link small{display:block}.entity-link small{color:var(--muted);margin-top:4px}.table-actions,.doc-actions,.profile-actions,.contract-actions,.contract-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn-sm{padding:7px 10px;font-size:12px}.btn.danger,.danger{background:#c23a47;color:#fff}.btn.danger-soft,.danger-soft{background:#fff0f1;color:#a52f3a;border:1px solid #f3c6ca}.badge.warning{background:#fff5df;color:#996300}.badge.info{background:#edf3ff;color:#3d5f9d}.choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:8px}.choice-card{display:flex;align-items:center;gap:9px;border:1px solid var(--line);padding:11px 12px;border-radius:12px;background:#fafbfe}.choice-card input,.toggle-line input{width:auto;margin:0}.toggle-line{display:flex;gap:9px;align-items:center}.instructor-profile-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.instructor-profile-id{display:flex;align-items:center;gap:14px}.instructor-profile-id h2{margin:0}.instructor-profile-id p{margin:4px 0 0;color:var(--muted)}.instructor-avatar{width:52px;height:52px;font-size:20px;background:linear-gradient(135deg,#2457e6,#6d93ff)}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.detail-grid>div,.detail-block{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafbfe}.detail-grid small,.detail-block small{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.detail-grid strong,.detail-block strong{font-size:14px}.tag-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.tag-list span{font-size:11px;background:#eef3ff;color:#365ebc;border-radius:999px;padding:6px 9px}.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline-form input,.inline-form select{margin:0;width:auto;min-width:160px}.compact-form{margin-bottom:14px}.compact-list>div{display:flex;justify-content:space-between;gap:12px;padding:12px 2px;border-bottom:1px solid var(--line);align-items:center}.compact-list>div strong,.compact-list>div small{display:block}.compact-list>div small{color:var(--muted);margin-top:4px}.document-list .doc-actions form,.inline-delete{display:inline}.danger-zone{display:flex;justify-content:space-between;align-items:center;gap:20px;border-color:#f0c8ce;margin-top:18px}.danger-zone p{margin:5px 0 0}.legal-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.legal-unit-card{border:1px solid var(--line);border-radius:15px;padding:18px;background:#fafbfe}.legal-unit-card h4{margin:0 0 14px}.tag-code-grid{display:flex;flex-wrap:wrap;gap:8px}.tag-code-grid code{padding:8px 10px;background:#111a2e;color:#dce6ff;border-radius:9px;cursor:pointer;font-size:11px}.terminal-edit-row td{background:#fafbfe}.warning-card{display:flex;gap:10px;align-items:flex-start;background:#fff8e8;border:1px solid #f3db9f;color:#775100;border-radius:14px;padding:14px 16px;margin:14px 0}.warning-card strong,.warning-card span{display:block}.warning-card span{color:#8a6c28}.daily-hours{display:grid}.daily-hour-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);align-items:center}.daily-hour-row strong,.daily-hour-row small{display:block}.daily-hour-row small{color:var(--muted);margin-top:4px}.closing-total,.closing-grand-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.closing-total strong,.closing-grand-total strong{font-size:27px}.closing-grand-total{background:#eef4ff;border:1px solid #cddcff;padding:18px;border-radius:14px;margin-bottom:18px}.closing-receipt-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.closing-receipt-head small{color:var(--muted)}.closing-receipt-head h2{margin:5px 0}.contract-doc-meta{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid #e7e8ed;padding-bottom:12px;margin-bottom:20px}.contract-doc-meta span{font-size:10px;color:#6d778b;background:#f6f7fa;padding:5px 7px;border-radius:6px}.instructor-contract-paper{max-width:900px;margin:0 auto 18px}.instructor-contract-paper .contract-text{font-size:14px;line-height:1.75;text-align:justify}.no-print{display:block}

/* Terminal público */
.point-kiosk-body{min-height:100vh;margin:0;background:radial-gradient(circle at 20% 10%,#e8f1ff,transparent 35%),linear-gradient(140deg,#f9fbff,#eaf3ff);display:grid;place-items:center;padding:20px;color:#11233f}.point-kiosk{width:min(520px,100%);background:#fff;border:1px solid #dfe8f5;border-radius:28px;box-shadow:0 30px 80px rgba(29,65,122,.16);padding:34px}.point-kiosk-brand{display:flex;gap:12px;align-items:center}.point-kiosk-brand>span{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#2457e6,#50a4ff);color:#fff;display:grid;place-items:center;font-weight:900;font-size:23px}.point-kiosk-brand strong,.point-kiosk-brand small{display:block}.point-kiosk-brand strong{font-size:23px}.point-kiosk-brand small{color:#74839a;font-size:10px;letter-spacing:.07em;margin-top:3px}.point-clock{text-align:center;font-size:58px;font-weight:850;letter-spacing:-.04em;margin-top:34px}.point-date{text-align:center;color:#6f7c91}.point-unit{text-align:center;margin:14px 0 26px;font-weight:800;color:#2457e6}.point-kiosk form{display:grid;gap:14px}.point-kiosk label{font-size:13px}.point-kiosk input{font-size:24px;text-align:center;letter-spacing:.04em;padding:15px}.point-main-btn{padding:15px}.point-help,.point-terminal-name{display:block;text-align:center;color:#8793a6;font-size:11px}.point-terminal-name{margin-top:20px}.point-message{padding:13px;border-radius:12px;margin:16px 0;text-align:center;font-weight:700}.point-message.success{background:#eaf8f2;color:#126a4c}.point-message.error{background:#fff0f1;color:#a52f3a}.point-type-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.point-entry{background:#17815d;color:#fff}.point-exit{background:#273650;color:#fff}

@media(max-width:900px){.legal-unit-grid,.choice-grid{grid-template-columns:1fr 1fr}.instructor-profile-grid{grid-template-columns:1fr}}
@media(max-width:640px){.choice-grid,.legal-unit-grid,.detail-grid{grid-template-columns:1fr}.instructor-toolbar,.instructor-profile-head,.danger-zone{align-items:stretch;flex-direction:column}.instructor-filter{display:grid;grid-template-columns:1fr;width:100%}.instructor-filter>input,.instructor-filter>select{max-width:none}.profile-actions,.contract-actions,.contract-toolbar{width:100%}.inline-form{display:grid;grid-template-columns:1fr;width:100%}.inline-form input,.inline-form select{width:100%}.point-kiosk{padding:24px}.point-clock{font-size:48px}.point-type-buttons{grid-template-columns:1fr}}

@media print{
  .sidebar,.topbar,.subnav,.contract-toolbar,.no-print,.btn,.form-actions{display:none!important}
  .app-shell{display:block}.main{display:block}.content{padding:0}.contract-paper,.instructor-contract-paper,.closing-receipt{box-shadow:none;border:0;max-width:none;margin:0;padding:18mm;background:#fff}.contract-text{font-size:12pt!important;line-height:1.6!important}.card{box-shadow:none}.closing-receipt .metrics{display:grid;grid-template-columns:repeat(4,1fr)}
}

/* ============================================================
   FASE 10.0.2 - TERMINAL DE PONTO / NOVO VISUAL
   ============================================================ */
.point-kiosk-v2{
  display:block;
  min-height:100vh;
  padding:0;
  background:#f4f8fd;
  color:#10294d;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.point-kiosk-v2 *{box-sizing:border-box}
.point-page-shell{position:relative;min-height:100vh;overflow:hidden;padding-bottom:28px}
.point-hero{
  position:relative;
  min-height:315px;
  padding:46px 24px 126px;
  overflow:hidden;
  text-align:center;
  color:#fff;
  background:
    radial-gradient(circle at 50% -40%,rgba(56,151,255,.58),transparent 44%),
    linear-gradient(135deg,#0d448b 0%,#0b3777 43%,#0a2f68 100%);
}
.point-hero:after{
  content:"";position:absolute;inset:auto 0 0;height:92px;
  background:linear-gradient(180deg,transparent,rgba(0,25,65,.05));pointer-events:none;
}
.point-hero-decoration{position:absolute;color:#6fb6ff;pointer-events:none}
.point-hero-decoration-left{left:3.5%;top:24px;width:210px}
.point-hero-decoration-right{right:5%;top:30px;width:160px}
.point-brand-v2{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:17px}
.point-brand-icon{width:62px;height:58px;color:#57aaff;display:grid;place-items:center}
.point-brand-icon svg{width:100%;height:100%}
.point-brand-v2 strong{font-size:42px;line-height:1;letter-spacing:-.045em;font-weight:900;color:#fff}
.point-brand-v2 strong span{color:#39a3ff}
.point-hero h1{position:relative;z-index:2;margin:0;font-size:clamp(29px,3vw,39px);line-height:1.1;letter-spacing:-.025em;color:#fff}
.point-hero p{position:relative;z-index:2;margin:12px 0 0;font-size:17px;color:#c7dcf5}

.point-kiosk-v2 .point-kiosk-card-v2{
  position:relative;z-index:4;
  width:min(1160px,calc(100% - 40px));
  margin:-88px auto 0;
  padding:30px 32px 32px;
  border:1px solid #e1eaf5;
  border-radius:24px;
  background:rgba(255,255,255,.985);
  box-shadow:0 24px 65px rgba(22,64,117,.14);
}
.point-overview{
  display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:center;
  min-height:126px;padding:17px 26px;border:1px solid #edf3fa;border-radius:18px;
  background:linear-gradient(120deg,#f8fbff,#eef6ff);
}
.point-overview-item{display:flex;align-items:center;gap:22px;padding:4px 10px;min-width:0}
.point-overview-icon{
  flex:0 0 auto;width:67px;height:67px;border-radius:50%;display:grid;place-items:center;
  background:#e4f1ff;color:#1461d4;
}
.point-overview-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.point-overview-item small{display:block;margin-bottom:2px;color:#5f7491;font-size:14px;font-weight:500}
.point-overview-item strong{display:block;color:#0e2d59;font-weight:850;line-height:1.07}
.point-kiosk-v2 .point-clock{margin:0;text-align:left;font-size:35px;letter-spacing:-.03em}
.point-kiosk-v2 .point-date{margin:0;text-align:left;font-size:27px;color:#0e2d59}
.point-weekday{display:block;margin-top:5px;color:#536d91;font-size:14px}
.point-kiosk-v2 .point-unit{margin:0;text-align:left;color:#0e2d59;font-size:22px;white-space:normal;overflow-wrap:anywhere}
.point-overview-divider{width:1px;height:76px;background:#d8e4f2}

.point-alert-v2{
  display:flex;align-items:center;gap:18px;text-align:left!important;
  margin:24px 0 0!important;padding:18px 22px!important;border-radius:14px!important;font-weight:400!important;
}
.point-alert-v2.error{border:1px solid #f2bfc3;background:#fff1f2;color:#b31925}
.point-alert-v2.success{border:1px solid #bfe8d4;background:#ecfbf4;color:#11734f}
.point-alert-icon{
  flex:0 0 auto;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:#d92331;color:#fff;font-weight:900;font-size:22px;
}
.point-alert-v2.success .point-alert-icon{background:#139466}
.point-alert-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.point-alert-v2 strong,.point-alert-v2 span{display:block}
.point-alert-v2 strong{font-size:17px;line-height:1.25}
.point-alert-v2 span{margin-top:5px;color:#b44e57;font-size:13px;font-weight:500}
.point-alert-v2.success span{color:#4d806d}

.point-form-v2{display:grid!important;gap:0!important;margin-top:26px}
.point-field-label{display:block;margin:0 0 9px!important;color:#102b52!important;font-size:15px!important;font-weight:800!important}
.point-input-wrap{position:relative;display:flex;align-items:center}
.point-input-icon{position:absolute;left:19px;z-index:2;color:#6682ae;display:grid;place-items:center}
.point-input-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.point-kiosk-v2 .point-input-wrap input{
  width:100%;height:63px;margin:0;padding:0 20px 0 58px;text-align:left;
  border:1px solid #a9c3e9;border-radius:13px;background:#fff;color:#142e54;
  font-size:21px;font-weight:600;letter-spacing:.025em;outline:none;
  box-shadow:0 2px 6px rgba(20,73,145,.025);transition:border-color .18s ease,box-shadow .18s ease;
}
.point-kiosk-v2 .point-input-wrap input::placeholder{color:#8297b7;font-weight:450}
.point-kiosk-v2 .point-input-wrap input:focus{border-color:#2d72df;box-shadow:0 0 0 4px rgba(37,103,213,.10)}
.point-action-btn{
  width:100%;min-height:67px;border:0;border-radius:13px;margin-top:21px;padding:15px 22px;
  display:flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;
  color:#fff;font:inherit;font-size:18px;font-weight:850;
  box-shadow:0 10px 22px rgba(23,96,224,.20);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
}
.point-action-btn:hover{transform:translateY(-1px);filter:saturate(1.05);box-shadow:0 14px 27px rgba(23,96,224,.25)}
.point-main-btn-v2{background:linear-gradient(100deg,#1266ed,#216eef 58%,#1471ed)}
.point-button-clock{display:grid;place-items:center}
.point-button-clock svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.point-type-buttons-v2{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:0}
.point-type-buttons-v2 .point-action-btn{margin-top:21px}
.point-type-buttons-v2 .point-entry{background:linear-gradient(100deg,#15966b,#16a172)}
.point-type-buttons-v2 .point-exit{background:linear-gradient(100deg,#31445f,#22334e)}
.point-info-box{
  display:flex;align-items:center;gap:18px;margin-top:24px;padding:18px 22px;border:1px solid #cce0f8;
  border-radius:13px;background:#eef6ff;color:#1853a2;
}
.point-info-icon{flex:0 0 auto;width:36px;height:36px;border:3px solid #1665d8;border-radius:50%;display:grid;place-items:center;color:#1665d8;font-size:20px;font-family:Georgia,serif;font-weight:900}
.point-info-box strong,.point-info-box span{display:block}
.point-info-box strong{font-size:14px;color:#1456ad}
.point-info-box span{margin-top:4px;color:#506d96;font-size:13px}

.point-footer-v2{
  width:min(1160px,calc(100% - 40px));margin:25px auto 0;padding:0 2px;
  display:flex;justify-content:space-between;gap:30px;color:#34577f;
}
.point-footer-v2>div{display:flex;align-items:center;gap:13px;max-width:420px}
.point-footer-icon{width:38px;height:38px;display:grid;place-items:center;color:#104fa6;flex:0 0 auto}
.point-footer-icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.point-footer-v2 strong,.point-footer-v2 span{display:block}
.point-footer-v2 strong{font-size:13px;color:#0f407d}
.point-footer-v2 span{margin-top:3px;font-size:11px;color:#7086a2}
.point-terminal-name-v2{text-align:center;margin:16px auto 0;color:#9aabc0;font-size:10px;letter-spacing:.03em}

@media(max-width:900px){
  .point-hero{min-height:285px;padding-bottom:105px}
  .point-hero-decoration{opacity:.55}
  .point-kiosk-v2 .point-kiosk-card-v2{margin-top:-72px;padding:24px}
  .point-overview{grid-template-columns:1fr;gap:0;padding:8px 20px}
  .point-overview-item{padding:16px 4px}
  .point-overview-divider{width:100%;height:1px}
  .point-overview-icon{width:55px;height:55px}
  .point-kiosk-v2 .point-clock{font-size:31px}
  .point-kiosk-v2 .point-date{font-size:23px}
  .point-footer-v2{flex-direction:column;gap:15px}
}
@media(max-width:620px){
  .point-hero{min-height:255px;padding:32px 18px 95px}
  .point-brand-icon{width:48px;height:45px}
  .point-brand-v2 strong{font-size:34px}
  .point-hero h1{font-size:25px}
  .point-hero p{font-size:14px}
  .point-hero-decoration-left{left:-38px;width:160px}
  .point-hero-decoration-right{right:-35px;width:125px}
  .point-kiosk-v2 .point-kiosk-card-v2{width:calc(100% - 22px);margin-top:-58px;padding:17px;border-radius:19px}
  .point-overview{border-radius:15px;padding:6px 12px}
  .point-overview-item{gap:14px}
  .point-overview-icon{width:48px;height:48px}
  .point-overview-icon svg{width:24px;height:24px}
  .point-overview-item small{font-size:12px}
  .point-kiosk-v2 .point-clock{font-size:27px}
  .point-kiosk-v2 .point-date{font-size:20px}
  .point-kiosk-v2 .point-unit{font-size:18px}
  .point-alert-v2{padding:15px!important;gap:13px}
  .point-alert-icon{width:36px;height:36px}
  .point-alert-v2 strong{font-size:14px}
  .point-kiosk-v2 .point-input-wrap input{height:58px;font-size:18px}
  .point-action-btn{min-height:59px;font-size:16px}
  .point-type-buttons-v2{grid-template-columns:1fr!important}
  .point-type-buttons-v2 .point-action-btn:first-child{margin-bottom:-8px}
  .point-info-box{padding:15px;gap:13px;align-items:flex-start}
  .point-footer-v2{width:calc(100% - 28px);margin-top:20px}
}

/* FASE 10.1 - Calendário como canal de comunicação */
.calendar-row-rich{grid-template-columns:58px minmax(220px,1fr) auto auto 68px auto;gap:12px;align-items:center}.calendar-main strong,.calendar-main small{display:block}.calendar-main small{color:var(--muted);margin-top:3px}.calendar-read-mini{color:#52688e!important;font-weight:700}.btn-sm{padding:8px 10px;font-size:11px}.calendar-audience-box{margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fafcff}.calendar-audience-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.audience-option{position:relative}.audience-option input{position:absolute;opacity:0;pointer-events:none}.audience-option span{display:block;height:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:14px;cursor:pointer;transition:.15s ease}.audience-option b,.audience-option small{display:block}.audience-option small{color:var(--muted);font-weight:500;margin-top:5px;line-height:1.35}.audience-option input:checked+span{border-color:#7294ef;background:#eef3ff;box-shadow:0 0 0 3px rgba(36,87,230,.07);color:#214fc3}.calendar-target-panel{margin-top:14px;padding:14px;border-radius:13px;background:#fff;border:1px solid var(--line)}.calendar-target-panel select[multiple]{min-height:170px}.field-help{display:block;color:var(--muted);font-size:11px;margin-top:7px}.calendar-portal-toggle{display:flex;align-items:flex-start;gap:11px;margin-top:15px;padding:14px;border:1px solid #cdd9f7;background:#f1f5ff;border-radius:13px}.calendar-portal-toggle input{width:18px;height:18px;margin:1px 0 0}.calendar-portal-toggle span{display:block}.calendar-portal-toggle b,.calendar-portal-toggle small{display:block}.calendar-portal-toggle small{color:var(--muted);font-weight:500;margin-top:3px}.calendar-message-head h2{font-size:26px;margin:10px 0 5px}.calendar-message-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.calendar-message-body{margin-top:18px;padding:18px;border-radius:14px;background:#f8faff;border:1px solid var(--line);line-height:1.65}.calendar-read-metrics{margin-top:18px}.table-sub{display:block;color:var(--muted);font-size:11px;margin-top:3px}.portal-calendar-list article{border-radius:13px;padding-left:10px;padding-right:10px}.portal-calendar-list article.calendar-priority-importante{background:#fffaf0;border-left:4px solid #d89b27}.portal-calendar-list article.calendar-priority-urgente{background:#fff6f7;border-left:4px solid #cf4651}.portal-calendar-badges{display:flex;gap:6px;flex-wrap:wrap}.portal-calendar-open{display:inline-flex;margin-top:8px;color:var(--primary);font-weight:800;font-size:12px}.portal-back{margin-bottom:12px}.portal-back a{color:var(--primary);font-weight:800;font-size:12px}.portal-calendar-message{overflow:visible}.portal-calendar-message.calendar-priority-importante{border-top:4px solid #d89b27}.portal-calendar-message.calendar-priority-urgente{border-top:4px solid #cf4651}.portal-calendar-message-body{font-size:15px;line-height:1.75;color:#36445b;padding:12px 0 22px}.portal-calendar-receipt{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:14px}.portal-calendar-receipt span,.portal-calendar-receipt strong{font-size:12px;color:var(--muted)}.portal-calendar-receipt strong{color:var(--success)}
@media(max-width:1100px){.calendar-audience-grid{grid-template-columns:repeat(2,1fr)}.calendar-row-rich{grid-template-columns:58px minmax(200px,1fr) auto 60px auto}.calendar-row-rich>.badge:nth-of-type(2){display:none}}
@media(max-width:640px){.calendar-audience-grid{grid-template-columns:1fr}.calendar-row-rich{grid-template-columns:50px 1fr auto}.calendar-row-rich>span:nth-last-of-type(1),.calendar-row-rich>.btn{grid-column:2/4}.calendar-message-title,.portal-calendar-receipt{flex-direction:column;align-items:flex-start}.portal-calendar-receipt form,.portal-calendar-receipt .btn{width:100%}}

.badge.muted{background:#eef1f5;color:#68758a}

/* Fase 10.2 - Notas promissorias */
.inline-form{display:inline;margin:0}.promissoria-actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.promissoria-sheet{max-width:980px;margin:0 auto;background:#fff;border:1px solid #dbe4f0;border-radius:18px;padding:34px 42px;box-shadow:0 12px 34px rgba(15,34,67,.08);color:#17233d;position:relative}.promissoria-sheet.is-cancelled:after{content:'CANCELADA';position:absolute;inset:42% 8%;font-size:84px;font-weight:900;letter-spacing:12px;color:rgba(185,28,28,.11);transform:rotate(-12deg);text-align:center;pointer-events:none}.promissoria-head{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:2px solid #173b76;padding-bottom:20px}.promissoria-kicker{font-size:13px;letter-spacing:2px;font-weight:800;color:#2463d6}.promissoria-head h2{font-size:25px;margin:5px 0 0}.promissoria-value{text-align:right;background:#edf5ff;border-radius:14px;padding:12px 18px;min-width:180px}.promissoria-value small,.promissoria-block small,.promissoria-ref small{display:block;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.7px}.promissoria-value strong{font-size:24px;color:#0b4ec2}.promissoria-meta{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px;margin:18px 0}.promissoria-meta>div{background:#f7f9fc;border:1px solid #e4eaf2;border-radius:12px;padding:12px}.promissoria-meta small{display:block;color:#64748b}.promissoria-text{font-size:17px;line-height:1.8;text-align:justify;margin:30px 0}.promissoria-block{display:flex;flex-direction:column;gap:4px;border-top:1px solid #e4eaf2;padding:16px 0}.promissoria-block strong{font-size:17px}.promissoria-ref{background:#f8fafc;border-radius:12px;padding:12px 15px;margin-top:10px}.promissoria-date{text-align:right;margin-top:28px}.promissoria-sign{width:420px;max-width:100%;margin:70px 0 20px auto;text-align:center}.promissoria-sign>span{display:block;border-top:1px solid #334155;margin-bottom:7px}.promissoria-sign small{display:block;color:#64748b}.promissoria-hash{border-top:1px dashed #cbd5e1;padding-top:10px;margin-top:30px;font-size:10px;color:#94a3b8;word-break:break-all}.cancel-note-form{margin-top:18px;display:grid;grid-template-columns:1.2fr 2fr auto;gap:16px;align-items:end}.info-box{display:flex;flex-direction:column;gap:4px;background:#eff6ff;border:1px solid #cfe0ff;border-radius:12px;padding:14px;color:#244a87;margin-top:16px}
@media(max-width:700px){.promissoria-sheet{padding:22px 18px;border-radius:12px}.promissoria-head{flex-direction:column;gap:14px}.promissoria-value{text-align:left;width:100%}.promissoria-meta{grid-template-columns:1fr}.promissoria-text{font-size:15px}.cancel-note-form{grid-template-columns:1fr}.promissoria-actions{flex-wrap:wrap}}
@media print{.promissoria-sheet{box-shadow:none;border:1px solid #bbb;max-width:none;margin:0;padding:24px}.promissoria-actions,.cancel-note-form,.subnav,.sidebar,.topbar{display:none!important}.main{margin:0!important;padding:0!important}.content{padding:0!important}.promissoria-sheet.is-cancelled:after{color:rgba(185,28,28,.15)}}
/* Ajuste visual da Nota Promissória - patch complementar */
.promissoria-sheet-v2{max-width:1020px;margin:0 auto;background:#fff;border:1px solid #cfd9e7;border-radius:12px;padding:28px 34px 22px;box-shadow:0 12px 34px rgba(15,34,67,.08);position:relative;color:#13233d}
.promissoria-sheet-v2 .promissoria-topline{height:8px;background:linear-gradient(90deg,#153c7a,#2a63d4);border-radius:999px;margin-bottom:22px}
.promissoria-v2-head{display:grid;grid-template-columns:1.4fr .9fr;gap:18px;align-items:start;margin-bottom:18px}
.promissoria-v2-kicker{display:inline-block;font-size:11px;font-weight:800;letter-spacing:1.5px;color:#2a63d4;text-transform:uppercase;margin-bottom:8px}
.promissoria-v2-title h1{font-size:30px;letter-spacing:.5px;margin:0 0 10px;color:#0f2242}
.promissoria-v2-number{display:inline-block;border:1px solid #d5e0ef;background:#f8fbff;padding:9px 14px;border-radius:10px;font-weight:700;color:#183c74}
.promissoria-v2-valuebox{border:2px solid #173b76;border-radius:12px;padding:14px 16px;background:#f5f9ff;text-align:right}
.promissoria-v2-valuebox .label,.promissoria-v2-grid-meta .label,.promissoria-v2-reference .label{display:block;font-size:11px;font-weight:800;letter-spacing:1px;color:#50627e;text-transform:uppercase;margin-bottom:6px}
.promissoria-v2-valuebox strong{display:block;font-size:31px;line-height:1.1;color:#0a4dbf}
.promissoria-v2-valuebox small{display:block;margin-top:8px;font-size:11px;line-height:1.45;color:#43556f;text-align:left}
.promissoria-v2-grid-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0 18px}
.promissoria-v2-grid-meta .meta-card{border:1px solid #dde5f0;border-radius:10px;background:#fafcff;padding:12px 14px;min-height:76px}
.promissoria-v2-grid-meta .meta-card strong{display:block;font-size:16px;color:#152f59;line-height:1.4}
.promissoria-v2-body{border:1px solid #dbe3ee;border-radius:12px;padding:20px 20px 18px}
.promissoria-v2-legal{font-size:16px;line-height:1.8;text-align:justify;margin:0 0 18px;color:#1c2f4d}
.promissoria-v2-parties{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px}
.party-box{border:1px solid #dce6f2;border-radius:10px;overflow:hidden;background:#fff}
.party-head{background:#eef4ff;border-bottom:1px solid #dce6f2;padding:10px 14px;font-size:12px;font-weight:800;letter-spacing:1px;color:#244a87;text-transform:uppercase}
.party-content{padding:14px;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5;color:#24364f}
.party-content strong{font-size:17px;color:#112443}
.promissoria-v2-reference{margin-top:14px;border:1px dashed #cfd9e7;border-radius:10px;background:#fcfdff;padding:12px 14px;font-size:14px;color:#36485f}
.promissoria-v2-place-date{margin-top:26px;text-align:right;font-size:15px;color:#20324e}
.promissoria-v2-signatures{display:flex;justify-content:flex-end;margin-top:54px}
.signature-box{width:420px;max-width:100%;text-align:center;padding-top:6px}
.signature-line{display:block;border-top:1px solid #24364f;margin-bottom:10px}
.signature-box strong{display:block;font-size:16px;color:#122746}
.signature-box small{display:block;color:#607089;font-size:12px;line-height:1.45}
.promissoria-v2-footer{border-top:1px dashed #c6d2e0;margin-top:28px;padding-top:12px;display:grid;grid-template-columns:auto auto 1fr;gap:12px;font-size:10px;color:#6c7a90;align-items:start}
.promissoria-v2-footer .hash{word-break:break-all}
@media(max-width:780px){.promissoria-sheet-v2{padding:20px 16px}.promissoria-v2-head{grid-template-columns:1fr}.promissoria-v2-grid-meta,.promissoria-v2-parties,.promissoria-v2-footer{grid-template-columns:1fr}.promissoria-v2-valuebox{text-align:left}.promissoria-v2-signatures{justify-content:center}.promissoria-v2-title h1{font-size:25px}.promissoria-v2-valuebox strong{font-size:26px}}
@media print{.promissoria-sheet-v2{box-shadow:none;border:1px solid #a8b3c2;padding:18px}.promissoria-v2-body{border-color:#b7c2d2}.promissoria-v2-head{gap:12px}.promissoria-v2-title h1{font-size:26px}.promissoria-v2-valuebox strong{font-size:28px}.promissoria-v2-legal{font-size:15px}.party-content{font-size:13px}.promissoria-v2-footer{font-size:9px}.promissoria-v2-signatures{margin-top:42px}.promissoria-actions,.cancel-note-form,.subnav,.sidebar,.topbar{display:none!important}.main,.content{margin:0!important;padding:0!important}}

/* ============================================================
   APP MOBILE UI - versão estilo aplicativo
   ============================================================ */
:root{
  --app-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,Inter,Arial,sans-serif;
}
html{-webkit-text-size-adjust:100%}
body,.btn,input,select,textarea,table{font-family:var(--app-font)}
body.app-body{overflow-x:hidden}
.mobile-overlay,.mobile-appbar,.mobile-bottom-nav,.sidebar-close-mobile{display:none}

@media (max-width: 820px){
  body{background:#eef3fb}
  .app-shell{display:block;min-height:100vh}
  .mobile-appbar{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    position:sticky;top:0;z-index:45;
    padding:calc(env(safe-area-inset-top,0px) + 10px) 14px 10px;
    background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(18px);
    border-bottom:1px solid rgba(213,223,237,.9)
  }
  .mobile-appbar-btn,.mobile-appbar-user{
    width:42px;height:42px;border:none;border-radius:14px;background:#edf3ff;color:#1b4fc8;
    display:grid;place-items:center;font-size:21px;font-weight:800;box-shadow:0 6px 18px rgba(43,84,166,.08)
  }
  .mobile-appbar-copy{flex:1;min-width:0}
  .mobile-appbar-copy strong{display:block;font-size:17px;line-height:1.15;color:#16253d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-appbar-copy small{display:block;margin-top:2px;font-size:12px;color:#71829a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topbar{display:none}
  .content{padding:14px 14px calc(96px + env(safe-area-inset-bottom,0px))}
  .card,.panel,.metric,.portal-summary>div,.portal-doc,.portal-pay-card,.portal-course-card,.point-kiosk,.promissoria-sheet,.promissoria-sheet-v2{
    border-radius:22px !important;
    box-shadow:0 10px 28px rgba(15,34,67,.08)
  }
  .sidebar{
    position:fixed !important;left:0;top:0;bottom:0;z-index:60;
    width:min(86vw,330px);height:auto !important;min-height:100dvh;
    padding:16px 14px 14px;
    background:linear-gradient(180deg,#101a30,#0d1830 78%);
    transform:translateX(-104%);transition:transform .26s ease, box-shadow .26s ease;
    border-radius:0 26px 26px 0;
    box-shadow:none;display:flex;flex-direction:column
  }
  .sidebar-open .sidebar{transform:translateX(0);box-shadow:0 16px 42px rgba(3,10,23,.38)}
  .mobile-overlay{display:block;opacity:0;pointer-events:none;position:fixed;inset:0;z-index:55;background:rgba(7,16,31,.42);transition:opacity .22s ease}
  .sidebar-open .mobile-overlay{opacity:1;pointer-events:auto}
  .sidebar-close-mobile{display:grid;place-items:center;align-self:flex-end;width:40px;height:40px;border:none;border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-size:26px;line-height:1;cursor:pointer;margin-bottom:8px}
  .brand{padding:0 6px 18px}
  .brand-mark{width:44px;height:44px;border-radius:14px;font-size:18px}
  .brand strong{font-size:17px}
  .brand small{font-size:12px;opacity:.7}
  .sidebar nav{display:grid;grid-template-columns:1fr;width:100%;gap:6px;overflow:auto;padding-right:2px}
  .nav-item{min-height:48px;padding:13px 14px;font-size:16px;border-radius:14px;justify-content:flex-start}
  .nav-item span{display:block !important}
  .nav-icon{width:22px;font-size:16px}
  .nav-label{padding:14px 12px 4px;font-size:10px;color:#8ea0bf}
  .sidebar-footer{display:block;margin-top:auto;padding-top:14px}
  .user-mini strong,.user-mini small,.logout{display:block !important}
  .user-mini strong{font-size:13px}
  .user-mini small{font-size:12px}
  .logout{font-size:13px;padding:8px 0}

  .mobile-bottom-nav{
    display:grid;grid-template-columns:repeat(6,1fr);gap:6px;align-items:end;
    position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:50;
    padding:8px;background:rgba(12,24,48,.96);backdrop-filter:saturate(180%) blur(16px);
    border:1px solid rgba(255,255,255,.06);border-radius:24px;box-shadow:0 18px 44px rgba(6,15,31,.28)
  }
  .mini-nav-item{
    border:none;background:transparent;color:#dbe7ff;text-align:center;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    min-height:58px;padding:6px 2px;border-radius:16px;font:inherit
  }
  .mini-nav-item span{font-size:18px;line-height:1}
  .mini-nav-item b{font-size:10px;font-weight:700;letter-spacing:.01em}
  .mini-nav-item.active{background:linear-gradient(180deg,#2e63da,#1f4fbd);color:#fff;box-shadow:0 8px 20px rgba(30,79,189,.32)}
  .mini-nav-more{cursor:pointer}

  .topbar h1,.portal-top h1{font-size:22px}
  h2{font-size:22px}
  h3{font-size:18px}
  p,li,td,th,input,select,textarea,.chip,.badge,.nav-item,.compact-list strong,.compact-list small{font-size:15px}
  label{font-size:14px}
  small,.table-sub,.nav-label,.badge,.chip{font-size:12px}
  table{font-size:14px}
  th,td{padding:13px 12px}
  input,select,textarea{padding:14px 14px;border-radius:14px;font-size:16px}
  .btn{min-height:46px;border-radius:14px;font-size:15px;padding:12px 15px}
  .metrics,.two,.grid.two,.quick-grid,.form-grid,.filterbar,.portal-summary,.portal-grid-2,.course-stats,.portal-request-grid,.mini-metrics,.detail-grid,.calendar-audience-grid{grid-template-columns:1fr !important}
  .filterbar{gap:10px}
}

@media (max-width: 460px){
  .mobile-bottom-nav{left:8px;right:8px;gap:4px;padding:7px}
  .mini-nav-item b{font-size:9px}
  .mini-nav-item span{font-size:17px}
  .content{padding-left:12px;padding-right:12px}
}

/* ============================================================
   Fase 10.5 - Gestão de Feedbacks, Reuniões e Atas
   ============================================================ */
.gestao-metrics .metric{display:block}.gestao-entry{position:relative;overflow:hidden}.gestao-entry-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:#edf3ff;color:#2457e6;font-size:23px;margin-bottom:14px}.gestao-actions,.gestao-doc-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.gestao-doc-actions{justify-content:flex-end;margin-bottom:14px}.gestao-doc-actions form{margin:0}.gestao-form{display:grid;gap:22px}.field-help{display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:500}.gestao-sbi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gestao-sbi-grid label{border:1px solid var(--line);border-radius:16px;padding:15px;background:#fbfcff}.gestao-sbi-grid textarea{border:0;background:#fff;box-shadow:none}.sbi-step{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#2457e6;color:#fff;margin-right:8px;font-size:12px}.gestao-extra-fields{padding-top:4px}.gestao-document{max-width:1050px;margin:0 auto;padding:30px 34px}.gestao-document>header{display:flex;justify-content:space-between;gap:22px;border-bottom:2px solid #e5ebf4;padding-bottom:20px;margin-bottom:22px}.gestao-document>header small{font-size:10px;letter-spacing:.12em;color:#64748b;font-weight:800}.gestao-document>header h2{font-size:27px;margin:5px 0}.gestao-document>header p{margin:0}.gestao-sbi-view,.gestao-doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.gestao-sbi-view section,.gestao-doc-grid section{border:1px solid #e2e8f0;border-radius:14px;padding:16px;background:#fafcff}.gestao-doc-grid{grid-template-columns:1fr 1fr;margin-top:14px}.gestao-sbi-view b,.gestao-doc-grid b{display:block;margin-bottom:8px;color:#1b4385}.gestao-sbi-view p,.gestao-doc-grid p{margin:0;line-height:1.65;color:#3e4f68}.gestao-signatures,.gestao-actions-list{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.signer-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.signer-row strong,.signer-row small{display:block}.signer-row small{color:var(--muted);margin-top:3px}.gestao-hash{margin-top:24px;border-top:1px dashed #cbd5e1;padding-top:10px;color:#94a3b8;font-size:10px;word-break:break-all}.meeting-actions-form{display:grid;gap:9px}.meeting-action-row{display:grid;grid-template-columns:2fr 1fr 160px;gap:10px}.meeting-action-row input{margin:0}.action-task{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}.action-task.done{opacity:.58}.action-task.done strong{text-decoration:line-through}.task-check{width:34px;height:34px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#2457e6;font-weight:900;cursor:pointer}.action-task strong,.action-task small{display:block}.action-task small{color:var(--muted);margin-top:4px}
.gestao-sign-body{min-height:100vh;margin:0;padding:28px;background:radial-gradient(circle at 20% 10%,#e8f0ff,transparent 35%),#f3f6fb;display:grid;place-items:center}.gestao-sign-card{width:min(760px,100%);background:#fff;border:1px solid #dfe6ef;border-radius:24px;box-shadow:0 28px 70px rgba(20,38,75,.14);padding:32px}.gestao-sign-brand{display:flex;gap:10px;align-items:center;margin-bottom:24px}.gestao-sign-brand>span{display:grid;place-items:center;width:42px;height:42px;background:linear-gradient(135deg,#3973ff,#6c8dff);color:#fff;border-radius:13px;font-weight:900}.gestao-sign-brand strong,.gestao-sign-brand small{display:block}.gestao-sign-brand small{color:#71829a}.gestao-sign-card h1{margin:12px 0 4px}.gestao-sign-date{color:#71829a}.gestao-sign-preview{margin:20px 0;display:grid;gap:12px}.gestao-sign-preview section{padding:14px 16px;border:1px solid #e2e8f0;border-radius:14px;background:#fafcff}.gestao-sign-preview p{line-height:1.65;margin:7px 0 0}.gestao-accept{display:flex;gap:10px;align-items:flex-start;margin:16px 0}.gestao-accept input{width:auto;margin:3px 0 0}.gestao-accept span{font-weight:500;line-height:1.5}.signature-complete{padding:18px;border-radius:16px;background:#eaf8f2;color:#126a4c;margin-top:18px}.signature-complete strong,.signature-complete small{display:block}.gestao-sign-foot{display:block;text-align:center;color:#8b98aa;margin-top:18px}.gestao-sign-card form{display:grid;gap:12px}
@media(max-width:800px){.gestao-sbi-grid,.gestao-doc-grid{grid-template-columns:1fr}.gestao-sbi-grid section,.gestao-doc-grid .span-2{grid-column:auto}.meeting-action-row{grid-template-columns:1fr}.signer-row{grid-template-columns:1fr auto}.signer-row .btn{grid-column:1/3}.gestao-document{padding:22px 18px}.gestao-document>header{flex-direction:column}.gestao-sign-body{padding:12px}.gestao-sign-card{padding:24px 18px;border-radius:20px}}
@media print{.gestao-document{box-shadow:none;border:0;max-width:none;padding:10mm}.gestao-doc-actions,.subnav,.sidebar,.topbar,.mobile-appbar,.mobile-bottom-nav{display:none!important}.gestao-signatures .btn{display:none!important}.main,.content{padding:0!important;margin:0!important}}

/* Gestão 10.5.1 - Visualização profissional */
.gestao-feedback-document{max-width:1120px;padding:0;overflow:hidden;border-radius:22px}.gestao-doc-hero{display:grid!important;grid-template-columns:58px minmax(0,1fr) auto;gap:18px;align-items:center!important;border:0!important;margin:0!important;padding:28px 30px!important;background:linear-gradient(135deg,#102445,#173c77 62%,#2457a9);color:#fff}.gestao-doc-hero-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);font-size:26px}.gestao-eyebrow{display:block;font-size:10px;letter-spacing:.16em;font-weight:850;color:#abc8ff;margin-bottom:7px}.gestao-doc-hero h2{margin:0 0 8px!important;font-size:29px!important;line-height:1.13;color:#fff!important}.gestao-doc-meta{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:12px;color:#d7e3f7}.gestao-doc-meta b{color:#fff}.gestao-status-pill{align-self:start;display:inline-flex;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:850;text-transform:uppercase;background:#eef3ff;color:#234f9e}.status-concluido,.status-concluida{background:#dff7ec;color:#126a4c}.status-rascunho{background:#f2f4f7;color:#59677a}.status-aguardando_assinaturas{background:#fff4dc;color:#956500}.gestao-section-title{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:center;padding:26px 30px 14px}.gestao-section-title>div:first-child span{width:38px;height:38px;border-radius:12px;background:#edf3ff;color:#2457e6;display:grid;place-items:center;font-weight:900;font-size:12px}.gestao-section-title small{font-size:9px;color:#2457e6;letter-spacing:.14em;font-weight:850}.gestao-section-title h3{margin:3px 0 2px;font-size:18px}.gestao-section-title p{margin:0;color:#718096;font-size:12px}.section-spaced{padding-top:30px}.gestao-sbi-view-pro{padding:0 30px;gap:14px}.gestao-sbi-view-pro section{position:relative;padding:20px 18px 18px 58px!important;background:#f8fbff!important;border-color:#dce7f5!important;min-height:155px}.sbi-number{position:absolute;left:18px;top:18px;width:28px;height:28px;border-radius:10px;background:#2457e6;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}.gestao-sbi-view-pro b{font-size:14px;color:#153d7c}.gestao-sbi-view-pro p{font-size:14px;line-height:1.7;color:#42526a}.gestao-doc-grid-pro{padding:0 30px;margin-top:0!important}.gestao-doc-grid-pro section{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:18px!important;background:#fff!important}.doc-card-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:900}.positive-card .doc-card-icon{background:#e9f7f1;color:#16845b}.development-card .doc-card-icon{background:#fff4dc;color:#9a6700}.gestao-agreement-card{margin:16px 30px 0;padding:18px 20px;display:grid;grid-template-columns:44px 1fr;gap:14px;border:1px solid #cfe0ff;border-radius:16px;background:linear-gradient(135deg,#f5f9ff,#edf4ff)}.agreement-icon{width:42px;height:42px;border-radius:13px;background:#2457e6;color:#fff;display:grid;place-items:center;font-weight:900}.gestao-agreement-card small{font-size:9px;letter-spacing:.12em;color:#2457e6;font-weight:850}.gestao-agreement-card p{margin:6px 0 0;color:#263f64;line-height:1.7;font-size:14px}.gestao-signatures-pro{margin:0 30px 30px!important;padding-top:0!important;border:0!important;display:grid;gap:10px}.gestao-signer-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto auto;gap:13px;align-items:center;padding:14px 15px;border:1px solid #e1e8f2;border-radius:16px;background:#fff}.gestao-signer-card.signed{border-color:#ccebdc;background:#fbfffd}.signer-avatar{width:44px;height:44px;border-radius:14px;background:#edf3ff;color:#2457e6;display:grid;place-items:center;font-weight:900}.gestao-signer-card.signed .signer-avatar{background:#e9f7f1;color:#16845b}.signer-main strong,.signer-main small,.signer-date{display:block}.signer-main small,.signer-date{color:#718096;font-size:11px;margin-top:3px}.gestao-hash-pro{margin:0!important;padding:14px 30px 20px!important;background:#f8fafc;border-top:1px solid #e5eaf2!important;display:grid;grid-template-columns:160px 1fr;gap:14px}.gestao-hash-pro strong,.gestao-hash-pro span{display:block}.gestao-hash-pro code{font-size:9px;color:#7a8798;word-break:break-all}.gestao-doc-grid-meeting{padding:28px 30px 0;margin-top:0!important}.decision-card{background:#f5f9ff!important;border-color:#cfe0ff!important}.success-copy{background:#e9f7f1!important;color:#126a4c!important;border-color:#bde5d3!important}@media(max-width:800px){.gestao-doc-hero{grid-template-columns:48px 1fr!important;padding:22px 18px!important}.gestao-status-pill{grid-column:1/3}.gestao-sbi-view-pro,.gestao-doc-grid-pro{padding:0 18px}.gestao-agreement-card{margin:14px 18px 0}.gestao-signatures-pro{margin:0 18px 22px!important}.gestao-signer-card{grid-template-columns:44px 1fr auto}.gestao-signer-card .btn{grid-column:1/4;width:100%}.gestao-hash-pro{grid-template-columns:1fr;padding:14px 18px 18px!important}.gestao-doc-grid-meeting{padding:22px 18px 0}}

/* ============================================================
   Fase 10.6 - Governança, ações e ficha da matrícula
   ============================================================ */
.table-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.table-actions form{margin:0}.btn.small{min-height:34px;padding:7px 10px;border-radius:10px;font-size:12px}.btn.danger{background:#fff1f2;color:#b42335;border:1px solid #fecdd3}.btn.danger:hover{background:#ffe4e6}.record-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.record-hero{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.record-hero small{font-size:10px;letter-spacing:.12em;color:#6e7f98;font-weight:800}.record-hero h2{margin:5px 0 4px;font-size:24px}.record-hero p{margin:0;color:#6f7c91}.record-hero-status{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.record-hero-status strong{font-size:24px;color:#153f8d}.record-details{margin:14px 0 18px}.record-details>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.record-details span,.record-details strong{display:block}.record-details span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.record-details strong{font-size:15px;margin-top:5px}.record-columns{align-items:start}.financial-list{border-top:0}.financial-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.financial-row small{display:block;color:var(--muted);margin-top:4px}.financial-row-right{text-align:right;display:flex;align-items:center;gap:10px}.financial-row-right strong{white-space:nowrap}.top-gap{margin-top:14px}.timeline-list{display:grid;margin-top:15px}.timeline-list article{display:grid;grid-template-columns:16px 1fr;gap:11px;padding:0 0 18px}.timeline-dot{width:10px;height:10px;margin-top:6px;border-radius:50%;background:#2a61dc;box-shadow:0 0 0 4px #eaf1ff}.timeline-head{display:flex;justify-content:space-between;gap:12px}.timeline-head span{color:var(--muted);font-size:12px}.timeline-list article small{color:var(--muted)}.timeline-list article p{margin:6px 0 0;color:#46566e}.audit-mini-list{display:grid;margin-top:12px}.audit-mini-list>div{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.audit-mini-list small{color:var(--muted);text-align:right}.audit-filter{grid-template-columns:1fr 180px auto}.audit-note{padding:11px 13px;border-radius:12px;background:#f0f5ff;border:1px solid #dce8ff;color:#45618e;font-size:12px;margin-bottom:12px}
@media(max-width:760px){.record-actions,.record-hero,.financial-row,.timeline-head{align-items:stretch;flex-direction:column}.record-hero-status{align-items:flex-start;text-align:left}.financial-row-right{justify-content:space-between}.audit-mini-list>div{grid-template-columns:1fr}.audit-mini-list small{text-align:left}.audit-filter{grid-template-columns:1fr}.table-actions{min-width:190px}}

/* Fase 10.7 - Colaboradores e Permissões */
.profile-permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.permission-profile-card{padding:20px;display:flex;justify-content:space-between;gap:16px;align-items:end}.permission-profile-card h3{margin:10px 0 4px}.permission-profile-card p{margin:0}.permission-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.permission-toolbar>div:last-child{display:flex;gap:10px}.permission-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.permission-check{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fafbfe}.permission-check input{width:auto;margin:3px 0 0}.permission-check strong,.permission-check small{display:block}.permission-check small{font-size:10px;color:var(--muted);margin-top:3px}.employee-profile-head{padding:24px;display:flex;align-items:center;gap:16px}.employee-photo{width:76px;height:76px;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#3973ff,#6c8dff);display:grid;place-items:center;color:#fff;font-size:28px;font-weight:900;flex:0 0 auto}.employee-photo img,.profile-photo img,.table-avatar-photo{width:100%;height:100%;object-fit:cover}.employee-main{flex:1}.employee-main h2{margin:0 0 5px}.employee-main p{margin:0;color:var(--muted)}.employee-tags{display:flex;gap:7px;margin-top:9px}.employee-section{margin-top:18px}.compact-employee-form{background:#f8faff;border:1px solid #e4eaf3;border-radius:14px;padding:15px;margin:15px 0}.employee-list{display:grid}.employee-list>article{padding:16px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr auto;gap:15px;align-items:start}.employee-list strong,.employee-list small{display:block}.employee-list small{color:var(--muted);margin-top:4px}.transport-values{display:flex;gap:14px;flex-wrap:wrap}.transport-values span{font-size:12px;color:var(--muted)}.transport-values b{display:block;font-size:15px;color:var(--text);margin-top:3px}.inline-payment-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;margin-top:10px}.inline-payment-form input,.inline-payment-form select{margin:0}.employee-timeline{display:grid}.employee-timeline article{display:grid;grid-template-columns:135px 1fr;gap:18px;padding:16px 0;border-top:1px solid var(--line)}.employee-timeline time{font-size:12px;color:var(--muted);font-weight:700}.employee-timeline p{margin:5px 0}.document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.user-cell{display:flex;align-items:center;gap:10px}.user-cell span:last-child strong,.user-cell span:last-child small{display:block}.user-cell small{color:var(--muted);margin-top:2px}.table-avatar{width:34px;height:34px;border-radius:11px;background:#edf3ff;color:#2457e6;display:grid;place-items:center;font-weight:800;overflow:hidden;flex:0 0 auto}.row-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.row-actions form{margin:0}.employee-metrics{margin-top:18px}.employee-metrics .metric strong{font-size:20px}.profile-photo{overflow:hidden}
@media(max-width:1000px){.profile-permission-grid,.permission-check-grid{grid-template-columns:1fr 1fr}.employee-list>article{grid-template-columns:1fr}.document-grid{grid-template-columns:1fr}}
@media(max-width:640px){.profile-permission-grid,.permission-check-grid{grid-template-columns:1fr}.permission-toolbar,.employee-profile-head{align-items:stretch;flex-direction:column}.employee-photo{width:84px;height:84px}.profile-actions,.profile-actions .btn{width:100%}.inline-payment-form{grid-template-columns:1fr}.employee-timeline article{grid-template-columns:1fr;gap:6px}.row-actions{display:grid;grid-template-columns:1fr 1fr}.row-actions .btn{width:100%}}

/* Fase 10.9 - Gestão de Colaboradores Master */
.section-title-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.finance-employee-list article{grid-template-columns:minmax(0,1fr) auto auto}.finance-employee-values{display:flex;align-items:center;gap:10px;white-space:nowrap}.finance-employee-values b{font-size:17px}.employee-inline-actions{display:flex;align-items:center;gap:10px}.employee-inline-actions form{margin:0}.employee-document-paper{max-width:980px;margin:0 auto;padding:34px}.employee-doc-head{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #173b76;padding-bottom:18px}.employee-doc-head small{font-size:11px;letter-spacing:1.2px;font-weight:800;color:#2c5dc3}.employee-doc-head h2{font-size:27px;margin:5px 0}.employee-doc-head p{margin:0;color:var(--muted)}.employee-doc-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.employee-doc-meta>div{background:#f8faff;border:1px solid var(--line);border-radius:13px;padding:14px}.employee-doc-meta small,.employee-doc-meta strong{display:block}.employee-doc-meta small{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.employee-doc-meta strong{margin-top:5px}.employee-doc-body{white-space:pre-wrap;line-height:1.75;font-size:15px;padding:20px 0}.employee-doc-hash{font-size:10px;color:#8390a3;border-top:1px dashed #cbd5e1;padding-top:10px;word-break:break-all}.employee-signature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}.signature-status-card{border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:9px}.signature-status-card small{color:var(--muted)}.switch-line{display:flex;align-items:center;gap:8px}.switch-line input{width:auto;margin:0}
@media(max-width:760px){.section-title-actions{flex-direction:column}.finance-employee-list article{grid-template-columns:1fr}.employee-doc-head{flex-direction:column}.employee-doc-meta,.employee-signature-grid{grid-template-columns:1fr}.employee-document-paper{padding:22px 18px}}
@media print{.employee-document-paper{box-shadow:none;border:0;max-width:none;padding:10mm}.employee-signature-grid .btn{display:none!important}.toolbar,.sidebar,.topbar,.mobile-appbar,.mobile-bottom-nav{display:none!important}.main,.content{margin:0!important;padding:0!important}}

/* Fase 10.10 - Pendências e relatório de atividades do colaborador */
.employee-metric-link{display:block;color:inherit;transition:.18s ease}.employee-metric-link:hover{transform:translateY(-2px);border-color:#b9caef;box-shadow:0 14px 32px rgba(28,60,120,.11)}.employee-metric-link.pending{background:linear-gradient(145deg,#fff,#fffaf0)}.employee-metric-link.pending small{color:#96651b}.activity-tab-highlight{background:#edf3ff!important;border-color:#c8d7ff!important;color:#2457e6!important}.employee-activity-callout{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:linear-gradient(120deg,#f7faff,#fff)}.employee-activity-callout small{display:block;color:#3764be;font-weight:800;letter-spacing:.08em}.employee-activity-callout h3{margin:5px 0}.employee-activity-callout p{margin:0}.activity-toolbar{display:flex;justify-content:space-between;gap:10px;margin-bottom:14px}.activity-profile-mini{margin-bottom:18px}.activity-metrics{grid-template-columns:repeat(3,1fr);margin-bottom:18px}.activity-filter{display:grid;grid-template-columns:1.1fr 1.1fr 1fr 1fr auto;gap:10px;align-items:end;margin-bottom:18px}.activity-filter input,.activity-filter select{margin-top:6px}.activity-report{padding:22px}.activity-timeline{position:relative;display:grid}.activity-event{display:grid;grid-template-columns:50px 1fr;gap:14px;padding:17px 0;border-top:1px solid var(--line)}.activity-event:first-child{border-top:0}.activity-icon{width:42px;height:42px;border-radius:14px;background:#edf3ff;color:#2457e6;display:grid;place-items:center;font-size:18px;font-weight:900}.activity-event.pendente .activity-icon,.activity-event.previsto .activity-icon{background:#fff3d9;color:#9a6700}.activity-event-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.activity-event-head>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.activity-event time{font-size:12px;color:var(--muted);font-weight:700}.activity-event h4{font-size:16px;margin:8px 0 4px}.activity-event p{margin:0;color:#607089;font-size:13px}.activity-event-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px}.activity-event-foot strong{font-size:16px}.metrics.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:920px){.activity-filter{grid-template-columns:1fr 1fr}.activity-filter .btn{grid-column:1/-1}.activity-metrics,.metrics.three{grid-template-columns:1fr 1fr}.employee-activity-callout{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.activity-toolbar{flex-direction:column}.activity-filter,.activity-metrics,.metrics.three{grid-template-columns:1fr}.activity-event{grid-template-columns:42px 1fr;gap:10px}.activity-event-head{align-items:flex-start;flex-direction:column}.activity-event-foot{align-items:flex-start;flex-direction:column}.employee-activity-callout .btn{width:100%}}
@media print{.activity-filter,.activity-toolbar,.mobile-bottom-nav,.mobile-appbar,.sidebar,.topbar{display:none!important}.activity-report{box-shadow:none;border:0;padding:0}.activity-event{break-inside:avoid}.content{padding:0!important}.main{margin:0!important}}

/* Fase 10.11 - Pendências acionáveis */
.badge.warning{background:#fff3d8;color:#945f00}.activity-event.action-required{border:1px solid #f0d79a;background:linear-gradient(180deg,#fffdf8,#fff)}.pending-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin:14px 0}.pending-detail-grid>div{border:1px solid #e3e9f2;background:#f8fafd;border-radius:12px;padding:12px}.pending-detail-grid small,.pending-detail-grid strong{display:block}.pending-detail-grid small{color:var(--muted);font-size:11px;margin-bottom:5px}.pending-detail-grid strong{font-size:15px;color:#192b48}.required-action{display:flex;flex-direction:column;gap:4px;background:#fff5df;border:1px solid #f1d48d;border-radius:12px;padding:12px 14px;margin:12px 0;color:#704d08}.required-action span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.required-action strong{font-size:14px;line-height:1.45}.pending-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.pending-actions form{margin:0}.pending-actions .btn{min-height:38px;padding:9px 12px;font-size:12px}.btn.danger{background:#b42335;color:#fff}.btn.danger:hover{background:#921d2b}.transport-edit-card{max-width:860px}.activity-event-foot{align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:760px){.pending-detail-grid{grid-template-columns:1fr 1fr}.pending-actions{display:grid;grid-template-columns:1fr 1fr}.pending-actions .btn,.pending-actions form,.pending-actions form .btn{width:100%}}
@media(max-width:460px){.pending-detail-grid,.pending-actions{grid-template-columns:1fr}}

/* Fase 10.12 - Conexões WhatsApp */
.wa-connection-manager{overflow:hidden}.wa-method-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.wa-method-card{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:16px;background:#fff}.wa-method-card.official{background:#f7fbff;border-color:#cfe1ff}.wa-method-card.experimental{background:#fffaf2;border-color:#f2ddb5}.wa-method-icon{width:46px;height:46px;border-radius:13px;background:#edf3ff;display:grid;place-items:center;font-size:22px;color:#285ac7}.wa-method-card.experimental .wa-method-icon{background:#fff0d5;color:#9a6500}.wa-method-card p{margin:4px 0 0;font-size:13px}.badge.warning{background:#fff2d8;color:#946200}.badge.danger{background:#fff0f1;color:#a52f3a}.alert.warn{background:#fff7e8;color:#82580b;border:1px solid #f2deb5}.wa-qr-warning{margin:0 0 16px}.wa-connections-list{display:grid;gap:12px}.wa-connection-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,.7fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:15px;background:#fbfcff}.wa-connection-main{display:flex;gap:11px;align-items:center}.wa-connection-main strong,.wa-connection-main small,.wa-connection-status strong,.wa-connection-status small{display:block}.wa-connection-main small,.wa-connection-status small{color:var(--muted);margin-top:3px;font-size:12px}.wa-connection-status{text-align:left}.wa-connection-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.wa-connection-actions form{margin:0}.wa-qr-box{grid-column:1/-1;display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center;background:#fff;border:1px dashed #bfd0eb;border-radius:16px;padding:18px}.wa-qr-box img{width:190px;height:190px;object-fit:contain;background:#fff;border-radius:12px}.wa-qr-box p{margin:8px 0}.compact-alert{grid-column:1/-1;margin:0}.status-dot.warn{background:#e2a21a;box-shadow:0 0 0 4px rgba(226,162,26,.12)}
@media(max-width:850px){.wa-method-cards{grid-template-columns:1fr}.wa-connection-row{grid-template-columns:1fr}.wa-connection-actions{justify-content:flex-start}.wa-qr-box{grid-template-columns:1fr;text-align:center}.wa-qr-box img{margin:auto}}
