:root{color-scheme:dark;--bg:#091319;--side:#0c1920;--panel:#101f27;--panel2:#142730;--panel3:#1b323d;--line:#243943;--text:#e8f4f4;--muted:#91aab2;--dim:#657f89;--accent:#48d6cc;--accent2:#229c99;--blue:#68b9df;--purple:#bba4ee;--amber:#e7b971;--red:#fa8081;--green:#62cba9;--shadow:0 18px 55px rgba(0,0,0,.23);--radius:17px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.46 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}input,select,textarea{background:#0d2029;border:1px solid #2b4652;border-radius:11px;color:var(--text);padding:12px 13px;outline:0;min-width:0;width:100%;transition:border .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent2);box-shadow:0 0 0 3px #48d6cc18}select option{background:#11222a}input[type=date],input[type=month]{color-scheme:dark}textarea{resize:vertical;min-height:88px}label{font-size:12px;font-weight:660;color:#b8cdd2;display:block;margin-bottom:6px}h1,h2,h3,p{margin:0}h1{font-size:26px;letter-spacing:-.8px;line-height:1.23}h2{font-size:18px;letter-spacing:-.3px}h3{font-size:15px}.muted{color:var(--muted)}.tiny{font-size:11px}.xs{font-size:12px}.mono{font-variant-numeric:tabular-nums}.text-end{text-align:right}.nowrap{white-space:nowrap}.flex{display:flex}.grow{flex:1}.center{align-items:center}.between{justify-content:space-between}.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.gap16{gap:16px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hide{display:none!important}.mobile-only{display:none}.icon{display:inline-flex;vertical-align:middle;flex:0 0 auto;width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.icon.sm{width:16px;height:16px}.icon.lg{width:22px;height:22px}.layout{display:flex;min-height:100dvh}.sidebar{width:246px;flex:0 0 246px;padding:27px 14px 18px;background:var(--side);border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:12px;margin:0 10px 37px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#0e3a43,#126e70);color:#7af4e4;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #6de2d63b}.brand-mark svg{width:29px;height:29px}.brand-name{font-size:20px;letter-spacing:-.65px;font-weight:790}.brand-sub{font-size:10px;letter-spacing:1.45px;font-weight:760;color:var(--accent);text-transform:uppercase}.nav-label{font-size:10px;letter-spacing:1.55px;color:#6c8992;font-weight:750;text-transform:uppercase;margin:0 13px 11px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:transparent;color:#a5b9bf;padding:12px;border:1px solid transparent;border-radius:12px;font-weight:630;margin:2px 0}.nav-item:hover{background:#1a3039;color:var(--text)}.nav-item.active{color:#78eee1;background:#173238;border-color:#2c625f}.nav-item .spacer{flex:1}.count{font-size:11px;background:#29414c;border-radius:6px;padding:1px 6px;color:#aec5cb}.side-foot{margin-top:auto;padding:14px 10px 0;border-top:1px solid var(--line)}.avatar{height:34px;width:34px;border-radius:11px;background:#254852;color:#8ef1e4;display:grid;place-items:center;font-weight:760}.user-label{font-size:12px;color:#bed0d4;font-weight:680}.main{flex:1;min-width:0;padding:32px 35px 60px;max-width:1700px;margin:auto}.topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}.breadcrumb{font-size:12px;color:var(--dim);margin-bottom:8px;font-weight:650}.heading-sub{font-size:13px;color:var(--muted);margin-top:7px}.btn{border:1px solid #36545e;color:var(--text);background:#192e37;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:690;padding:11px 16px;border-radius:11px;min-height:41px;transition:background .14s,transform .14s;text-decoration:none;white-space:nowrap}.btn:hover:not(:disabled){background:#25404a}.btn:active:not(:disabled){transform:translateY(1px)}.btn.primary{color:#052b2e;background:var(--accent);border-color:var(--accent)}.btn.primary:hover:not(:disabled){background:#75eee0}.btn.danger{color:#ffadad;background:#46272b;border-color:#6c343a}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover{color:var(--text);background:#1a3038}.btn.sm{min-height:34px;padding:7px 11px;font-size:12px;border-radius:9px}.btn.square{width:38px;min-width:38px;height:38px;padding:0}.btn.wide{width:100%}.pill{border:1px solid var(--line);border-radius:7px;background:#1b3039;padding:4px 8px;font-size:11px;color:#c0d4d7;font-weight:720;white-space:nowrap}.pill.blue{color:#8ed9fc;background:#183340;border-color:#265266}.pill.violet{color:#cbb5f4;background:#302a41;border-color:#4c3e62}.pill.amber{color:#f5ce87;background:#3a3025;border-color:#5e4932}.pill.green{color:#7ce3ba;background:#1c3c35;border-color:#28574b}.pill.red{color:#ffa7ab;background:#45282e;border-color:#6a393c}.banner{padding:12px 14px;border:1px solid #6c573b;background:#332b1e;color:#f3d4a0;border-radius:12px;font-size:12px;margin:-8px 0 23px;display:flex;gap:10px;align-items:center}.stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin:0 0 25px}.stat{background:var(--panel);border:1px solid var(--line);padding:17px 16px 15px;border-radius:15px;min-height:106px}.stat-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);font-weight:635}.stat-number{font-size:29px;line-height:1.2;font-weight:730;letter-spacing:-.6px;margin-top:11px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.dot.prod{background:var(--blue)}.dot.prova{background:var(--purple)}.dot.pend{background:var(--amber)}.dot.ent{background:var(--green)}.dot.atraso{background:var(--red)}.toolbar{display:flex;align-items:center;gap:10px;margin:0 0 20px;flex-wrap:wrap}.searchbox{position:relative;min-width:240px;flex:1}.searchbox>.icon{position:absolute;left:13px;top:12px;color:#718f98}.searchbox input{padding-left:40px;background:var(--panel)}.filter-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.selectcompact{width:auto;max-width:185px;padding:11px 29px 11px 12px;background:var(--panel);font-size:12px}.filter-button{font-size:12px}.filter-button.selected{color:#ffc2c3;border-color:#9b494f;background:#402b2f}.morefilters{display:flex;flex-wrap:wrap;gap:10px;padding:15px;background:var(--panel);border:1px solid var(--line);border-radius:13px;margin-bottom:18px}.morefilters>.field{min-width:160px;flex:1}.section-head{display:flex;justify-content:space-between;align-items:center;margin:15px 0}.section-head .muted{font-size:12px}.board{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:13px;align-items:start}.lane{background:#0d1c24;border:1px solid #20333d;border-radius:15px;min-width:0;min-height:290px;padding:11px}.lane-head{display:flex;align-items:center;justify-content:space-between;padding:8px 7px 13px}.lane-title{font-size:13px;font-weight:730;display:flex;align-items:center;gap:8px}.lane.dragover{outline:2px dashed var(--accent);outline-offset:-4px;background:#16343d}.lane-total{background:#20343e;color:#aac4ca;border-radius:8px;padding:2px 8px;font-size:11px}.work-list{display:flex;flex-direction:column;gap:9px}.work-card{background:var(--panel2);border:1px solid #2a3d46;border-radius:12px;padding:14px 13px 12px;box-shadow:0 2px 10px #030c1019;cursor:pointer;transition:background .15s,border-color .15s}.work-card:hover{background:#1c353f;border-color:#43717b}.work-card[draggable=true]{cursor:grab}.work-card.late{border-left:3px solid var(--red)}.card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:7px}.card-name{font-size:14px;font-weight:720;line-height:1.2;word-break:break-word}.card-clinic{color:#a4bbc2;font-size:11px;margin-top:5px;word-break:break-word}.card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:12px 0}.card-bottom{border-top:1px solid #2b424b;padding-top:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:#9fb4bc;font-size:11px}.price{font-weight:730;color:#daeeee;font-variant-numeric:tabular-nums}.overdue{color:#ff9e9e!important}.lane-empty{font-size:12px;color:#6f8b94;text-align:center;padding:45px 8px;line-height:1.6}.lane-more{width:100%;padding:11px 8px;margin-top:8px;background:#192c35;color:var(--accent);border:1px solid #30505b;border-radius:9px;font-size:12px;font-weight:720}.lane-more:hover{background:#243e47}.mobile-tabs{display:none;gap:8px;overflow-x:auto;margin-bottom:16px;padding-bottom:3px;scrollbar-width:none}.mobile-tab{border:1px solid var(--line);background:var(--panel);padding:10px 14px;border-radius:10px;white-space:nowrap;color:#b2c6cb;font-weight:700}.mobile-tab.active{background:#194340;color:#80f4e4;border-color:#368b85}.content-card{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:23px;margin-bottom:17px}.content-card h2{margin-bottom:6px}.page-intro{font-size:13px;color:var(--muted);margin-bottom:20px}.clinic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:13px}.clinic-card{padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:14px}.clinic-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#1c3e43;color:#6fe4d4}.clinic-card h3{font-size:15px;word-break:break-word}.clinic-card .muted{font-size:12px}.chip{font-size:10px;border-radius:7px;padding:4px 7px;background:#1c343d;color:#9bb8c1}.report-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.report-preview{margin-top:22px;background:#0c1c23;border:1px dashed #39535d;border-radius:13px;padding:18px}.report-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;padding:12px 4px;border-bottom:1px solid #253c46;font-size:12px}.report-row.head{color:#87a8b3;font-size:11px;font-weight:700}.report-row strong{font-weight:700}.report-total{display:flex;justify-content:space-between;align-items:center;padding-top:17px;font-size:16px;font-weight:770}.hint{font-size:12px;color:var(--muted);line-height:1.65}.empty-state{padding:50px 20px;border:1px dashed #2c4650;border-radius:14px;text-align:center;color:var(--muted)}.empty-state .icon{color:#55999c;width:35px;height:35px;margin-bottom:12px}.modal-backdrop{position:fixed;inset:0;background:#02080bc9;display:flex;justify-content:center;align-items:center;z-index:50;padding:20px;backdrop-filter:blur(5px)}.modal{width:min(680px,100%);max-height:min(91dvh,900px);display:flex;flex-direction:column;overflow:hidden;background:#11232b;border:1px solid #32505a;border-radius:19px;box-shadow:0 30px 100px #0008}.modal.narrow{max-width:465px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:21px 24px 17px;border-bottom:1px solid #2a424b}.modal-head h2{font-size:19px}.modal-body{padding:22px 24px;overflow-y:auto}.modal-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:15px 24px;border-top:1px solid #2a424b;flex-wrap:wrap}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field.span2{grid-column:1/-1}.req{color:#e99b92}.field-help{color:#91a9b2;font-size:11px;margin-top:6px}.attachment-list{display:flex;flex-direction:column;gap:8px;margin-top:9px}.attachment-item{display:flex;align-items:center;justify-content:space-between;border:1px solid #304e56;border-radius:9px;padding:9px 11px;gap:7px;color:#bed3d7;font-size:12px}.attachment-item .attachment-name{max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.small-link{background:transparent;border:0;color:#75dfd3;font-weight:650;padding:4px}.login-page{min-height:100dvh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 20% 12%,#16383e 0,#091319 54%)}.login-card{background:#10242b;border:1px solid #2b4852;border-radius:20px;max-width:420px;width:100%;padding:32px;box-shadow:var(--shadow)}.login-card .brand{margin:0 0 27px}.login-card h1{font-size:23px;margin-bottom:7px}.login-card form{margin-top:25px;display:flex;flex-direction:column;gap:14px}.login-msg{background:#4a242b;border:1px solid #813c45;color:#ffc0c2;padding:10px;border-radius:10px;font-size:12px;margin-top:12px}.top-actions{display:flex;align-items:center;gap:8px}.mobile-header{display:none}.modal-close{border:0;color:#9fb6bc;background:transparent;padding:6px}.modal-close:hover{color:white}.vline{width:1px;height:27px;background:var(--line)}#toast-root{position:fixed;z-index:90;bottom:24px;right:24px;display:flex;gap:8px;flex-direction:column}.toast{max-width:380px;color:#def9f4;background:#1d3c41;border:1px solid #3f807b;border-radius:11px;padding:12px 16px;box-shadow:var(--shadow);font-size:13px;animation:toastIn .2s ease}.toast.error{background:#4a2b2d;border-color:#875054;color:#ffdddd}@keyframes toastIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.form-error{color:#ffadae;font-size:12px;margin:8px 0}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.summary-box{background:#19333b;border:1px solid #2e545d;border-radius:12px;padding:12px}.summary-box .value{font-size:21px;font-weight:760;margin-top:4px}.format-group{display:flex;gap:8px}.format-group .btn.selected{border-color:#5ebec0;background:#19494b;color:#90f0e9}.settings-row{display:flex;gap:14px;align-items:flex-end}.settings-row>.field{flex:1}.kbd{background:#243942;border:1px solid #3b5560;border-radius:5px;padding:2px 6px;font-size:10px}.footer-note{font-size:11px;color:var(--dim);margin-top:23px}.report-grid-clinics{display:grid;gap:10px;margin-top:15px}.report-mini-clinic{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:10px;background:#142730}.report-mini-clinic strong{font-size:13px}.report-mini-clinic .muted{font-size:11px}.status-dot{height:8px;width:8px;border-radius:50%;flex-shrink:0;background:var(--green)}.status-dot.draft{background:var(--amber)}
@media(max-width:1340px){.sidebar{width:215px;flex-basis:215px}.main{padding:28px 23px 48px}.board{gap:9px}.lane{padding:8px}.work-card{padding:12px 10px}.stats{gap:8px}.stat{padding:14px}}
@media(max-width:1100px){.board{grid-template-columns:repeat(2,minmax(240px,1fr))}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.layout{display:block}.sidebar{display:none}.main{padding:18px 15px 100px}.mobile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.mobile-header .brand{margin:0;gap:9px}.mobile-header .brand-mark{width:35px;height:35px;border-radius:11px}.mobile-header .brand-mark svg{width:23px;height:23px}.mobile-header .brand-name{font-size:17px}.mobile-header .brand-sub{font-size:8px}.topline{margin-bottom:18px;align-items:flex-start}.topline h1{font-size:23px}.topline .heading-sub{font-size:12px}.top-actions .desktop-label{display:none}.mobile-only{display:inline}.btn.top-add{padding:11px 12px}.stats{display:flex;overflow-x:auto;margin:0 -15px 20px;padding:0 15px 4px;scroll-snap-type:x mandatory;scrollbar-width:none}.stat{flex:0 0 136px;min-height:92px;scroll-snap-align:start}.stat-number{font-size:26px}.toolbar{gap:8px}.searchbox{flex-basis:100%;width:100%;min-width:0}.filter-wrap{width:100%;display:grid;grid-template-columns:1fr 1fr}.selectcompact{max-width:none;width:100%}.filter-button{width:100%}.mobile-tabs{display:flex}.board{display:block}.board .lane{display:none}.board .lane.mobile-active{display:block;min-height:150px;background:none;border:0;padding:0}.board .lane-head{display:none}.work-list{gap:10px}.work-card{padding:16px}.card-name{font-size:15px}.card-meta{margin:14px 0}.mobile-bottom{position:fixed;bottom:0;left:0;right:0;background:#102129f5;border-top:1px solid #2c454f;display:flex;padding:10px max(10px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom));z-index:15;backdrop-filter:blur(14px)}.mobile-bottom button{flex:1;background:transparent;border:0;color:#93acb4;display:flex;align-items:center;flex-direction:column;gap:3px;font-size:10px;font-weight:700}.mobile-bottom button.active{color:#72e8dc}.mobile-bottom .icon{width:21px;height:21px}.content-card{padding:17px}.clinic-grid{grid-template-columns:1fr}.report-form{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr 1fr}.modal-backdrop{align-items:flex-end;padding:0}.modal{width:100%;max-height:94dvh;border-radius:18px 18px 0 0;border-bottom:0}.modal-head{padding:18px 18px 14px}.modal-body{padding:18px}.modal-foot{padding:14px 18px calc(14px + env(safe-area-inset-bottom))}.form-grid{gap:13px}.form-grid.two-mobile{grid-template-columns:1fr 1fr}.form-grid:not(.two-mobile){grid-template-columns:1fr}.form-grid:not(.two-mobile) .field.span2{grid-column:1}.settings-row{display:block}.settings-row button{margin-top:12px;width:100%}.report-row{grid-template-columns:1.6fr 1fr .8fr}.report-row>div{word-break:break-word}}
@media(max-width:390px){.form-grid.two-mobile{grid-template-columns:1fr}.topline .top-actions{gap:5px}.btn.top-add{font-size:12px}.stat{flex-basis:123px}.report-row{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.quickmove{background:#173039;border:1px solid #34515c;border-radius:12px;padding:13px 14px;margin:0 0 19px}.quickmove label{margin:0 0 8px}.quickmove-controls{display:flex;gap:8px}.quickmove-controls select{flex:1}.quickmove-controls .btn{flex-shrink:0}

.report-clinic-group{background:#10232b;border:1px solid #29414b;border-radius:12px;overflow:hidden}.report-clinic-group .report-mini-clinic{border:0;border-radius:0}.report-detail-list{padding:0 14px 11px;overflow-x:auto}.report-detail-row{min-width:460px;display:grid;grid-template-columns:1.7fr 1.25fr .9fr 1fr;gap:12px;padding:9px 8px;border-bottom:1px solid #253b44;font-size:12px;color:#c9dcdf}.report-detail-row:last-child{border-bottom:0}.report-detail-head{font-size:10px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;color:#84a4ad}


/* DentaFlow v1.2 — ajustes responsivos e ergonomia */
body.modal-open { overflow: hidden; }
.error-banner { border-color: #954a52; background: #38232b; color: #ffd9da; }
.work-card, .work-card * { min-width: 0; }
.card-bottom > span:first-child { display: inline-flex; gap: 5px; align-items: center; flex-wrap: wrap; }
.card-bottom .price { white-space: nowrap; flex-shrink: 0; }
.topline, .topline > div:first-child { min-width: 0; }
.topline h1 { overflow-wrap: anywhere; }
.modal-body { min-height: 0; overscroll-behavior: contain; }
.modal-foot { flex-shrink: 0; }
.attachment-item { min-width: 0; }
.attachment-name { min-width: 0; overflow-wrap: anywhere; }
.report-mini-clinic > div { min-width: 0; }
.report-mini-clinic strong { overflow-wrap: anywhere; }
.mobile-logout { display: none; }
button:focus-visible, .work-card:focus-visible, .mobile-tab:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

@media (max-width: 700px) {
  html,body { max-width: 100%; overflow-x: clip; }
  .main { padding: 16px 13px calc(104px + env(safe-area-inset-bottom)); width: 100%; }
  .mobile-header { padding-bottom: 12px; margin-bottom: 16px; border-bottom: 1px solid var(--line); }
  .topline { gap: 9px; align-items: flex-start; }
  .topline > div:first-child { flex: 1 1 0; }
  .topline h1 { font-size: clamp(20px,5.6vw,24px); line-height: 1.17; }
  .topline .heading-sub { max-width: 40ch; }
  .topline .top-actions { flex: 0 0 auto; }
  .top-add { min-height: 44px; border-radius: 12px; }
  .stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: visible; gap: 9px; margin: 0 0 18px; padding: 0; }
  .stat { min-height: 82px; padding: 13px 14px; min-width: 0; }
  .stat:last-child { grid-column: 1/-1; min-height: 68px; display: flex; align-items: center; justify-content: space-between; border-color:#603944; background:#29212a; }
  .stat:last-child .stat-number { margin: 0; color: #ffacaf; }
  .stat-number { font-size: 26px; margin-top: 7px; }
  .toolbar { margin-bottom: 16px; }
  .filter-wrap { gap: 7px; }
  .filter-wrap > * { min-height: 44px; }
  .selectcompact { font-size: 13px; }
  .morefilters { padding: 12px; }
  .morefilters .field { flex-basis: 100%; }
  .morefilters .btn { width: 100%; }
  .mobile-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); overflow: visible; gap: 8px; margin-bottom: 13px; padding: 0; }
  .mobile-tab { min-height: 45px; padding: 9px 5px; border-radius: 11px; text-align: center; white-space: normal; font-size: 12px; }
  .mobile-tab.active { background:#174d4b; color:#b2fff3; border-color:#4bbeb3; box-shadow:inset 0 0 0 1px #4bbeb322; }
  .section-head { gap: 7px; margin: 14px 0 11px; }
  .section-head h2 { font-size: 17px; }
  .section-head .muted { text-align: right; }
  .board .lane.mobile-active { min-height: 120px; }
  .work-card { padding: 15px 14px; border-radius: 13px; touch-action:pan-y; }
  .work-card[draggable=true] { cursor: pointer; }
  .card-name { font-size: 16px; }
  .card-clinic { font-size: 12px; }
  .card-bottom { font-size: 12px; flex-wrap: wrap; }
  .card-bottom > span:first-child { flex: 1 1 145px; }
  .lane-empty { padding: 35px 12px; }
  .mobile-bottom { justify-content: space-around; gap: 4px; padding: 7px 10px calc(7px + env(safe-area-inset-bottom)); }
  .mobile-bottom button { min-width:0; min-height: 54px; border-radius: 11px; justify-content: center; gap: 4px; }
  .mobile-bottom button.active { background:#183c3d; color:#9bfff0; }
  .mobile-bottom .icon { height: 20px; width: 20px; }
  .content-card { padding: 15px; border-radius: 14px; }
  .clinic-card { padding: 15px; }
  .clinic-card .flex.gap8 { flex-wrap: wrap; }
  .report-form { gap: 11px; }
  .summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .summary-box { min-width:0; }
  .summary-box:last-child { grid-column:1/-1; }
  .summary-box .value { overflow-wrap: anywhere; }
  .report-mini-clinic { align-items: flex-start; flex-wrap: wrap; }
  .report-detail-list { overflow: visible; padding: 0 12px 10px; }
  .report-detail-head { display:none; }
  .report-detail-row:not(.report-detail-head) { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 8px; padding:12px 0; font-size:12px; }
  .report-detail-row:not(.report-detail-head) span { min-width:0; overflow-wrap:anywhere; }
  .report-detail-row:not(.report-detail-head) span:first-child { grid-column:1/-1; font-size:13px; font-weight:750; color:var(--text); }
  .report-detail-row:not(.report-detail-head) span:nth-child(2) { grid-column:1; grid-row:2; }
  .report-detail-row:not(.report-detail-head) span:nth-child(3) { grid-column:2; grid-row:2; text-align:right; }
  .report-detail-row:not(.report-detail-head) span:nth-child(4) { grid-column:1/-1; grid-row:3; text-align:right; font-size:14px; font-weight:750; color:var(--accent); }
  .report-detail-row:not(.report-detail-head) span:nth-child(3)::before { content:'Entrega: '; color:var(--muted); font-weight:400; }
  .report-detail-row:not(.report-detail-head) span:nth-child(4)::before { content:'Valor: '; color:var(--muted); font-weight:400; font-size:12px; }
  .quickmove { padding: 12px; }
  .quickmove-controls { flex-direction:column; }
  .quickmove-controls > * { width:100%; min-height:44px; }
  .modal-backdrop { padding:0; }
  .modal { border-radius:18px 18px 0 0; height:auto; max-height: min(94dvh, 850px); }
  .modal-head { padding:15px 16px 12px; }
  .modal-head h2 { font-size:17px; overflow-wrap:anywhere; }
  .modal-body { padding:15px 16px; flex: 1 1 auto; overflow:auto; }
  .modal-foot { padding:11px 16px calc(11px + env(safe-area-inset-bottom)); gap:8px; }
  .modal-foot .btn { min-height:44px; }
  .modal-foot .btn.primary { flex:1 0 140px; }
  .modal-foot .btn.danger { margin-right:auto; }
  .form-grid { gap:12px; }
  input,select,textarea { font-size:16px; } /* evita zoom involuntário no iPhone */
  .attachment-item { align-items:flex-start; flex-direction:column; }
  .attachment-item > .flex { width:100%; justify-content:flex-end; }
  .attachment-item .attachment-name { max-width:100%; white-space:normal; }
  .mobile-logout { display:inline-flex; width:100%; margin-top:18px; }
  #toast-root { bottom: calc(83px + env(safe-area-inset-bottom)); right:12px; left:12px; }
  #toast-root .toast { max-width: none; width:100%; }
}
@media(max-width: 380px) {
  .mobile-tab { font-size:11px; }
  .stat-label { font-size:11px; }
  .btn.top-add { padding:9px; }
  .modal-foot .btn { font-size:12px; padding:8px 10px; }
}

/* DentaFlow 1.3: observações legíveis, vínculo de dentistas e arquivo mensal. */
.card-observation{display:flex;flex-direction:column;gap:4px;margin:0 0 13px;padding:10px 11px;border:1px solid #376069;border-radius:10px;background:#17343e;font-size:12px;color:#dceced;overflow-wrap:anywhere}
.card-observation strong{font-size:11px;color:#8fe6df}
.card-observation span{white-space:pre-wrap;line-height:1.55}
.card-dentist{margin-top:5px;color:#8ce0d7;font-size:11px;overflow-wrap:anywhere}
.clinic-dentists{font-size:12px;color:#a7c3c7;margin:0 0 17px;line-height:1.5;overflow-wrap:anywhere}
.dentists-block{border-top:1px solid var(--line);margin-top:18px;padding-top:17px}
.dentists-block b{font-size:13px}.dentists-block .field-help{margin-top:3px}.dentist-rows{display:grid;gap:8px;margin-top:14px}
.dentist-row{display:flex;align-items:center;gap:8px}.dentist-row input{flex:1}.dentist-remove{flex-shrink:0}
.month-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:-5px 0 19px;padding:14px 16px;background:var(--panel);border:1px solid #31535b;border-radius:14px}
.month-bar-copy{display:grid;gap:4px}.month-bar-copy b{font-size:14px;color:#d6f5f1}.month-bar-copy span{font-size:11px;color:var(--muted);max-width:510px}
.month-nav{display:flex;align-items:center;gap:6px}.month-nav input{min-width:142px;width:154px;padding:9px;font-size:13px}.month-nav .btn{flex-shrink:0}
.reopen-btn{background:#193b3b;border-color:#3d7b77;color:#a1ebe4}
.report-patient small{display:block;font-size:10px;font-weight:450;color:#9eb9bf;margin-top:3px;line-height:1.4}
@media(max-width:850px){.month-bar{flex-direction:column;align-items:stretch}.month-nav{justify-content:space-between}.month-nav input{flex:1}}
@media(max-width:700px){.month-bar{padding:13px;gap:12px}.month-nav .btn{min-width:35px;padding:8px}.month-nav input{min-width:0}.month-nav .btn:last-child{font-size:11px}.card-observation{font-size:13px}.modal-foot .reopen-btn{order:1;flex:1 1 100%;justify-content:center}.modal-foot .btn.primary{order:2}.modal-foot .btn:not(.primary):not(.reopen-btn){order:2}.dentists-block>.flex{align-items:flex-start}.dentists-block>.flex>div{flex:1;min-width:0}}
@media(max-width:350px){.month-nav{flex-wrap:wrap}.month-nav input{flex-basis:calc(100% - 98px)}.month-nav .btn:last-child{width:100%}}

/* V1.4 — cadastro dos tipos de trabalho: desktop e celular */
.type-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.type-title .page-intro{margin:5px 0 0}
.type-title>.pill{flex-shrink:0}
.work-type-create{display:flex;align-items:end;gap:10px;margin:18px 0 16px}
.work-type-create .field{flex:1;min-width:0}
.work-type-create .btn{margin-bottom:0}
.work-type-list{display:flex;flex-direction:column;gap:8px}
.work-type-row{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:12px 13px;background:#142730;border:1px solid #2b4450;border-radius:12px}
.work-type-info{flex:1;min-width:150px;display:flex;flex-direction:column;gap:3px}
.work-type-info strong{overflow-wrap:anywhere}
.work-type-actions{display:flex;gap:7px;flex-wrap:wrap}
.type-help{margin-top:12px;line-height:1.55}
.type-label-row{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:6px}
.type-label-row label{margin-bottom:0}
.type-inline-add{padding:3px 0;border:none;background:transparent;color:var(--accent);font-size:12px;font-weight:750;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.type-inline-add:hover{text-decoration:underline}
@media(max-width:700px){
  .work-type-create{display:flex;flex-direction:column;align-items:stretch}
  .work-type-create .field{width:100%}
  .work-type-create .btn{width:100%}
  .work-type-row{gap:8px}
  .work-type-info{flex-basis:calc(100% - 100px);min-width:0}
  .work-type-actions{width:100%;justify-content:flex-end}
  .work-type-actions .btn{flex:1}
}
